This is an automated email from the ASF dual-hosted git repository. potiuk pushed a change to branch v2-8-test in repository https://gitbox.apache.org/repos/asf/airflow.git
discard c080754770 Upgrade to FAB 4.3.11 new 12e4be2024 Upgrade to FAB 4.3.11 new 498c650ca2 Limit `atlassian-python-api` to <3.41.6 (#36815) new e04975cf63 Adding log to airflow-github for disabled progress bar (#36782) new 719b31928c Limit `pinecone-client` to <3.0 (#36818) new 5a380ffb8f Remove optimization to install wheel pacakges for affected providers (#36825) new ff2c67a30f AthenaSqlHook implementation (#36171) new 95a8e92153 Use lax `atlassian-python-api` limitation (#36841) new c73eb98e4d More complete FAQ and context about releasing next patchlevel release (#36858) new bc60a86e60 Limit `flask-session` to <0.6 (#36895) new c6cde0eb25 Add back envvars for mysql and postgres version options (#36914) new af86c10d76 Bump MySQL Innovation Release to 8.3 (#36893) new 172b88826e Fix providers validation in `check_files.py` after switch to the hatch builds (#36921) new 52c6ff4bcf Airflow 2.8.1 has been released (#36906) new e80d9dcc5a Bump min version of Alembic to 1.13.1 (#36928) new 7ad8380e60 Prevent templated field logic checks in __init__ of operators automatically (#33786) new f90f314734 Optionally use `client.files_upload_v2` in Slack Provider (#36757) new d7875fe8cc Fix typos in descriptions about next release (#36918) new 973eed2841 Move Breeze documentation to inside Breeze and split it. (#36936) new 18ec62a911 Force install hatch in Test Open API job (#36938) new d99795ace4 Fix small issues with breeze docs moved to new place (#36937) new 496a718096 Make Helm artifacts reproducible (#36930) new 846cee8f00 Fallback to bash if SHELL variable is not set for k8s shell (#36985) new 949bbb2c10 Fix broken links in release management Breeze docs (#36988) new 044942b870 Fix BOTH wrong links in Breeze docs and do it properly (#36989) new 4332857a18 Fix spelling of `airflow` (#36682) new c85b51bc61 Remove duplicated definitions of random volumes (#36993) new f4da5351bc Split contributing docs to multiple files (#36969) new 6070b55e2c Allow for helm plugin installation to be happening more than once (#37038) new 31266f6568 Move CI documentation to inside Breeze docs (#37039) new d90a0c4738 Limit moto to version below 5.0.0 (#37054) new c42d17dc38 Protect against manually updated generated dependencies (#37056) new 92f2727e1b Allow committer builds to use scripts/ci, dev and actions from the PR (#37057) new 8b28f221e1 Kubernetes version bump (#37040) new bd0e74fb55 Make Amazon Provider tests compatible with `moto>=5` (#37060) new df0eafdd23 Bump aiohttp min version to avoid CVE-2024-23829 and CVE-2024-23334 (#37110) new bf9806a544 Fixing a visual in breeze cheatsheet (#37083) new 87712017c6 Revert protection against back-compatibilty issue with google-core-api (#37111) new 04dc9a3363 Automatically upgrade various components in canary builds (#37113) new 73eda9f51d The "upgrade-on-failure" feature enabled by default in local environment (#37116) new f7f15ad706 docs: some grammatical improvements for providers index (#37095) new 2cbb437331 Nicer pyproject.toml dependency generation (#37114) new 6483fd458e Upgrade trove-classifier in build dependencies after it's released (#37147) new 5fdb5780bc Temporary limit `pytest` to `<8.0` (#37157) new ff4fa4fd88 Avoid `pendulum.from_timestamp` usage (#37160) new e4fc978e26 Add deferrable param in SFTPSensor (#37117) new cc367a52a9 Update supplementary chart images (#37187) new 47cd0ba01d Affixing exit summary to publish-docs command (#37172) new 56957ff8ee Update version of statsd image automatically in canary run (#37189) new 97d9776cac Update ruff to v0.2.1 (#37188) new 706c4e3f30 bump: kind 0.21.0 (#37159) new aa49223942 Limit docs publishing tests to canary run (#37196) new 514d243d02 Reorder settings in pyproject.toml (#37193) new 281bdc106f Upgrade arifacts upload action to v4 (#37199) new c5154fc834 Summarise publish-docs irrespective of --include-success-output (#37203) new ead80ca1d5 Avoid log-groomer container failures when log persistence is enabled (#37222) new 235255e79e Upgrade to FAB 4.3.11 (#37233) This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (c080754770) \ N -- N -- N refs/heads/v2-8-test (235255e79e) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 56 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .gitattributes | 9 +- .github/ISSUE_TEMPLATE/airflow_bug_report.yml | 2 +- .github/PULL_REQUEST_TEMPLATE.md | 2 +- .github/SECURITY.md | 31 +- .github/actions/build-ci-images/action.yml | 2 +- .github/actions/build-prod-images/action.yml | 4 +- .github/actions/post_tests_failure/action.yml | 6 +- .github/actions/post_tests_success/action.yml | 2 +- .github/boring-cyborg.yml | 17 +- .github/workflows/build-images.yml | 165 +- .github/workflows/ci.yml | 198 +- .pre-commit-config.yaml | 71 +- BREEZE.rst | 2879 +------------------- CI.rst | 654 ----- COMMITTERS.rst | 36 +- CONTRIBUTING.rst | 1613 +---------- Dockerfile | 4 +- Dockerfile.ci | 4 +- IMAGES.rst | 561 ---- INSTALL | 6 + README.md | 20 +- TESTING.rst | 2573 ----------------- airflow/providers/MANAGING_PROVIDERS_LIFECYCLE.rst | 8 +- airflow/providers/amazon/aws/hooks/athena_sql.py | 168 ++ airflow/providers/amazon/provider.yaml | 9 +- airflow/providers/apache/beam/README.md | 2 +- airflow/providers/apache/livy/provider.yaml | 2 +- airflow/providers/atlassian/jira/provider.yaml | 6 +- airflow/providers/cncf/kubernetes/provider.yaml | 4 +- airflow/providers/databricks/provider.yaml | 2 +- airflow/providers/dbt/cloud/provider.yaml | 2 +- .../elasticsearch/log/es_json_formatter.py | 6 +- airflow/providers/google/provider.yaml | 3 +- airflow/providers/http/provider.yaml | 2 +- airflow/providers/pinecone/provider.yaml | 5 +- airflow/providers/sftp/hooks/sftp.py | 170 +- airflow/providers/sftp/provider.yaml | 6 + airflow/providers/sftp/sensors/sftp.py | 55 +- .../sftp/triggers}/__init__.py | 0 airflow/providers/sftp/triggers/sftp.py | 137 + airflow/providers/slack/hooks/slack.py | 148 +- airflow/providers/slack/operators/slack.py | 40 +- airflow/providers/slack/provider.yaml | 2 +- airflow/providers/slack/transfers/sql_to_slack.py | 32 +- airflow/reproducible_build.yaml | 2 +- airflow/serialization/serialized_objects.py | 7 +- airflow/settings.py | 3 +- airflow/utils/db.py | 7 + airflow/utils/log/timezone_aware.py | 4 +- airflow/utils/timezone.py | 22 + airflow/www/templates/airflow/dags.html | 2 +- chart/README.md | 2 +- chart/reproducible_build.yaml | 2 + chart/values.schema.json | 4 +- chart/values.yaml | 4 +- contributing-docs/01_roles_in_airflow_project.rst | 177 ++ contributing-docs/02_how_to_communicate.rst | 152 ++ .../03_contributors_quick_start.rst | 207 +- contributing-docs/04_how_to_contribute.rst | 102 + contributing-docs/05_pull_requests.rst | 248 ++ contributing-docs/06_development_environments.rst | 160 ++ .../07_local_virtualenv.rst | 125 +- .../08_static_code_checks.rst | 152 +- contributing-docs/09_testing.rst | 56 + contributing-docs/10_working_with_git.rst | 199 ++ contributing-docs/11_provider_packages.rst | 233 ++ .../12_airflow_dependencies_and_extras.rst | 222 ++ contributing-docs/13_metadata_database_updates.rst | 53 + contributing-docs/14_node_environment_setup.rst | 118 + contributing-docs/15_architecture_diagrams.rst | 64 + contributing-docs/16_contribution_workflow.rst | 317 +++ contributing-docs/README.rst | 118 + .../images}/airflow_unit_test_mode.png | Bin .../images}/candidates_for_backtrack_triggers.png | Bin .../images}/database_view.png | Bin .../images}/disk_space_osx.png | Bin .../images}/docker_socket.png | Bin .../images}/docker_wsl_integration.png | Bin {images => contributing-docs/images}/fork.png | Bin .../images}/pycharm_debug_breeze.png | Bin .../images}/quick_start/add Interpreter.png | Bin .../images}/quick_start/add_configuration.png | Bin .../images}/quick_start/add_env_variable.png | Bin .../images}/quick_start/airflow_clone.png | Bin .../images}/quick_start/airflow_fork.png | Bin .../quick_start/airflow_gitpod_open_ports.png | Bin .../images}/quick_start/airflow_gitpod_url.png | Bin .../images}/quick_start/ci_tests.png | Bin .../images}/quick_start/click_on_clone.png | Bin .../images}/quick_start/creating_branch_1.png | Bin .../images}/quick_start/creating_branch_2.png | Bin .../images}/quick_start/local_airflow.png | Bin .../images}/quick_start/postgresql_connection.png | Bin .../images}/quick_start/pr1.png | Bin .../images}/quick_start/pr2.png | Bin .../images}/quick_start/pr3.png | Bin .../images}/quick_start/pycharm_clone.png | Bin .../images}/quick_start/start_airflow_tmux.png | Bin .../quick_start/start_airflow_tmux_gitpod.png | Bin .../quick_start/vscode_add_configuration_1.png | Bin .../quick_start/vscode_add_configuration_2.png | Bin .../quick_start/vscode_add_configuration_3.png | Bin .../quick_start/vscode_add_env_variable.png | Bin .../images}/quick_start/vscode_click_on_clone.png | Bin .../images}/quick_start/vscode_clone.png | Bin .../quick_start/vscode_creating_branch_1.png | Bin .../quick_start/vscode_creating_branch_2.png | Bin {images => contributing-docs/images}/rebase.png | Bin {images => contributing-docs/images}/review.png | Bin .../images}/run_unittests.png | Bin .../images}/setup_remote_debugging.png | Bin .../images}/source_code_mapping_ide.png | Bin {images => contributing-docs/images}/workflow.png | Bin contributing-docs/quick-start-ide/README.rst | 42 + .../contributors_quick_start_codespaces.rst | 4 +- .../contributors_quick_start_gitpod.rst | 2 +- .../contributors_quick_start_pycharm.rst | 2 +- .../contributors_quick_start_vscode.rst | 2 +- .../testing/README.rst | 15 +- contributing-docs/testing/dag_testing.rst | 63 + contributing-docs/testing/docker_compose_tests.rst | 103 + contributing-docs/testing/helm_unit_tests.rst | 111 + .../testing/images}/k9s.png | Bin .../testing/images}/kubeconfig-env.png | Bin .../testing/images}/kubernetes-virtualenv.png | Bin .../images}/pycharm/configure_test_runner.png | Bin .../images}/pycharm/pycharm_add_to_context.png | Bin .../images}/pycharm/pycharm_create_tool.png | Bin .../testing/images}/pycharm/running_unittests.png | Bin .../testing/images}/pytest-runner.png | Bin .../testing/images}/run-test.png | Bin .../testing/images}/vscode_add_pytest_settings.png | Bin .../images}/vscode_configure_python_tests.png | Bin .../images}/vscode_install_python_extension.png | Bin .../testing/images}/vscode_run_tests.png | Bin .../images}/vscode_select_pytest_framework.png | Bin contributing-docs/testing/integration_tests.rst | 171 ++ contributing-docs/testing/k8s_tests.rst | 662 +++++ contributing-docs/testing/system_tests.rst | 168 ++ contributing-docs/testing/testing_packages.rst | 123 + contributing-docs/testing/unit_tests.rst | 1152 ++++++++ ...UALLY_GENERATING_IMAGE_CACHE_AND_CONSTRAINTS.md | 16 +- dev/README_RELEASE_AIRFLOW.md | 2 +- dev/README_RELEASE_HELM_CHART.md | 329 ++- dev/README_RELEASE_PROVIDER_PACKAGES.md | 2 +- dev/WHAT_GOES_INTO_THE_NEXT_RELEASE.md | 131 + dev/airflow-github | 20 +- dev/breeze/README.md | 4 +- dev/breeze/doc/01_installation.rst | 468 ++++ dev/breeze/doc/02_customizing.rst | 130 + dev/breeze/doc/03_developer_tasks.rst | 560 ++++ dev/breeze/doc/04_troubleshooting.rst | 160 ++ dev/breeze/doc/05_test_commands.rst | 609 +++++ dev/breeze/doc/06_managing_docker_images.rst | 186 ++ dev/breeze/doc/07_breeze_maintenance_tasks.rst | 70 + dev/breeze/doc/08_ci_tasks.rst | 137 + dev/breeze/doc/09_release_management_tasks.rst | 603 ++++ dev/breeze/doc/10_advanced_breeze_topics.rst | 247 ++ dev/breeze/doc/README.rst | 56 + .../0002-implement-standalone-python-command.md | 2 +- ...-using-contributed-code-when-building-images.md | 2 +- dev/breeze/doc/ci/01_ci_environment.md | 129 + dev/breeze/doc/ci/02_images.md | 585 ++++ dev/breeze/doc/ci/03_github_variables.md | 74 + .../ci/04_selective_checks.md} | 166 +- dev/breeze/doc/ci/05_workflows.md | 325 +++ CI_DIAGRAMS.md => dev/breeze/doc/ci/06_diagrams.md | 25 +- dev/breeze/doc/ci/07_debugging.md | 63 + dev/breeze/doc/ci/08_running_ci_locally.md | 141 + dev/breeze/doc/ci/README.md | 29 + .../breeze/doc/images}/AirflowBreeze_logo.png | Bin .../breeze/doc/images}/output-commands-hash.txt | 0 .../breeze/doc/images}/output-commands.svg | 2 +- .../breeze/doc/images}/output_build-docs.svg | 0 .../breeze/doc/images}/output_build-docs.txt | 0 .../breeze/doc/images}/output_ci-image.svg | 0 .../breeze/doc/images}/output_ci-image.txt | 0 dev/breeze/doc/images/output_ci-image_build.svg | 436 +++ dev/breeze/doc/images/output_ci-image_build.txt | 1 + .../breeze/doc/images}/output_ci-image_pull.svg | 0 .../breeze/doc/images}/output_ci-image_pull.txt | 0 .../breeze/doc/images}/output_ci-image_verify.svg | 0 .../breeze/doc/images}/output_ci-image_verify.txt | 0 .../breeze => dev/breeze/doc/images}/output_ci.svg | 0 .../breeze => dev/breeze/doc/images}/output_ci.txt | 0 .../output_ci_find-backtracking-candidates.svg | 0 .../output_ci_find-backtracking-candidates.txt | 0 .../breeze/doc/images}/output_ci_fix-ownership.svg | 0 .../breeze/doc/images}/output_ci_fix-ownership.txt | 0 .../breeze/doc/images}/output_ci_free-space.svg | 0 .../breeze/doc/images}/output_ci_free-space.txt | 0 .../doc/images}/output_ci_get-workflow-info.svg | 0 .../doc/images}/output_ci_get-workflow-info.txt | 0 .../doc/images}/output_ci_resource-check.svg | 0 .../doc/images}/output_ci_resource-check.txt | 0 .../doc/images}/output_ci_selective-check.svg | 4 +- .../doc/images/output_ci_selective-check.txt | 1 + .../breeze/doc/images}/output_cleanup.svg | 0 .../breeze/doc/images}/output_cleanup.txt | 0 .../doc/images}/output_compile-www-assets.svg | 0 .../doc/images}/output_compile-www-assets.txt | 0 .../breeze/doc/images}/output_down.svg | 0 .../breeze/doc/images}/output_down.txt | 0 .../breeze/doc/images}/output_exec.svg | 0 .../breeze/doc/images}/output_exec.txt | 0 .../breeze/doc/images}/output_k8s.svg | 0 .../breeze/doc/images}/output_k8s.txt | 0 .../doc/images}/output_k8s_build-k8s-image.svg | 0 .../doc/images}/output_k8s_build-k8s-image.txt | 0 .../doc/images}/output_k8s_configure-cluster.svg | 6 +- .../doc/images/output_k8s_configure-cluster.txt | 1 + .../doc/images}/output_k8s_create-cluster.svg | 6 +- .../doc/images/output_k8s_create-cluster.txt | 1 + .../doc/images}/output_k8s_delete-cluster.svg | 4 +- .../doc/images/output_k8s_delete-cluster.txt | 1 + .../doc/images}/output_k8s_deploy-airflow.svg | 6 +- .../doc/images/output_k8s_deploy-airflow.txt | 1 + .../breeze/doc/images}/output_k8s_k9s.svg | 4 +- dev/breeze/doc/images/output_k8s_k9s.txt | 1 + .../breeze/doc/images}/output_k8s_logs.svg | 4 +- dev/breeze/doc/images/output_k8s_logs.txt | 1 + .../doc/images}/output_k8s_run-complete-tests.svg | 6 +- .../doc/images/output_k8s_run-complete-tests.txt | 1 + .../breeze/doc/images}/output_k8s_setup-env.svg | 0 .../breeze/doc/images}/output_k8s_setup-env.txt | 0 .../breeze/doc/images}/output_k8s_shell.svg | 4 +- dev/breeze/doc/images/output_k8s_shell.txt | 1 + .../breeze/doc/images}/output_k8s_status.svg | 4 +- dev/breeze/doc/images/output_k8s_status.txt | 1 + .../breeze/doc/images}/output_k8s_tests.svg | 6 +- dev/breeze/doc/images/output_k8s_tests.txt | 1 + .../doc/images}/output_k8s_upload-k8s-image.svg | 6 +- .../doc/images/output_k8s_upload-k8s-image.txt | 1 + .../breeze/doc/images}/output_prod-image.svg | 0 .../breeze/doc/images}/output_prod-image.txt | 0 .../breeze/doc/images}/output_prod-image_build.svg | 0 .../breeze/doc/images}/output_prod-image_build.txt | 0 .../breeze/doc/images}/output_prod-image_pull.svg | 0 .../breeze/doc/images}/output_prod-image_pull.txt | 0 .../doc/images}/output_prod-image_verify.svg | 0 .../doc/images}/output_prod-image_verify.txt | 0 .../doc/images}/output_release-management.svg | 54 +- .../doc/images/output_release-management.txt | 1 + ...tput_release-management_add-back-references.svg | 0 ...tput_release-management_add-back-references.txt | 0 ...ase-management_clean-old-provider-artifacts.svg | 0 ...ase-management_clean-old-provider-artifacts.txt | 0 ...tput_release-management_create-minor-branch.svg | 0 ...tput_release-management_create-minor-branch.txt | 0 ...put_release-management_generate-constraints.svg | 0 ...put_release-management_generate-constraints.txt | 0 ...management_generate-issue-content-providers.svg | 0 ...management_generate-issue-content-providers.txt | 0 ...ease-management_generate-providers-metadata.svg | 0 ...ease-management_generate-providers-metadata.txt | 0 ...elease-management_install-provider-packages.svg | 0 ...elease-management_install-provider-packages.txt | 0 ..._release-management_prepare-airflow-package.svg | 0 ..._release-management_prepare-airflow-package.txt | 0 ..._release-management_prepare-airflow-tarball.svg | 0 ..._release-management_prepare-airflow-tarball.txt | 0 ...lease-management_prepare-helm-chart-package.svg | 112 + ...lease-management_prepare-helm-chart-package.txt | 1 + ...lease-management_prepare-helm-chart-tarball.svg | 166 ++ ...lease-management_prepare-helm-chart-tarball.txt | 1 + ...e-management_prepare-provider-documentation.svg | 0 ...e-management_prepare-provider-documentation.txt | 0 ...elease-management_prepare-provider-packages.svg | 0 ...elease-management_prepare-provider-packages.txt | 0 ...ut_release-management_prepare-python-client.svg | 0 ...ut_release-management_prepare-python-client.txt | 0 .../output_release-management_publish-docs.svg | 0 .../output_release-management_publish-docs.txt | 0 ...tput_release-management_release-prod-images.svg | 0 ...tput_release-management_release-prod-images.txt | 0 .../output_release-management_start-rc-process.svg | 0 .../output_release-management_start-rc-process.txt | 0 .../output_release-management_start-release.svg | 0 .../output_release-management_start-release.txt | 0 ...utput_release-management_update-constraints.svg | 0 ...utput_release-management_update-constraints.txt | 0 ...release-management_verify-provider-packages.svg | 0 ...release-management_verify-provider-packages.txt | 0 .../breeze/doc/images}/output_sbom.svg | 0 .../breeze/doc/images}/output_sbom.txt | 0 .../output_sbom_build-all-airflow-images.svg | 0 .../output_sbom_build-all-airflow-images.txt | 0 ...output_sbom_generate-providers-requirements.svg | 68 +- ...output_sbom_generate-providers-requirements.txt | 1 + .../output_sbom_update-sbom-information.svg | 0 .../output_sbom_update-sbom-information.txt | 0 .../breeze/doc/images}/output_setup.svg | 0 .../breeze/doc/images}/output_setup.txt | 0 .../doc/images}/output_setup_autocomplete.svg | 0 .../doc/images}/output_setup_autocomplete.txt | 0 .../output_setup_check-all-params-in-groups.svg | 42 +- .../output_setup_check-all-params-in-groups.txt | 1 + .../breeze/doc/images}/output_setup_config.svg | 2 +- dev/breeze/doc/images/output_setup_config.txt | 1 + .../output_setup_regenerate-command-images.svg | 46 +- .../output_setup_regenerate-command-images.txt | 1 + .../doc/images}/output_setup_self-upgrade.svg | 0 .../doc/images}/output_setup_self-upgrade.txt | 0 .../output_setup_synchronize-local-mounts.svg | 0 .../output_setup_synchronize-local-mounts.txt | 0 .../breeze/doc/images}/output_setup_version.svg | 0 .../breeze/doc/images}/output_setup_version.txt | 0 .../breeze/doc/images}/output_shell.svg | 2 +- dev/breeze/doc/images/output_shell.txt | 1 + .../breeze/doc/images}/output_start-airflow.svg | 2 +- dev/breeze/doc/images/output_start-airflow.txt | 1 + .../breeze/doc/images}/output_static-checks.svg | 90 +- dev/breeze/doc/images/output_static-checks.txt | 1 + .../breeze/doc/images}/output_testing.svg | 0 .../breeze/doc/images}/output_testing.txt | 0 .../breeze/doc/images}/output_testing_db-tests.svg | 2 +- dev/breeze/doc/images/output_testing_db-tests.txt | 1 + .../output_testing_docker-compose-tests.svg | 0 .../output_testing_docker-compose-tests.txt | 0 .../doc/images}/output_testing_helm-tests.svg | 0 .../doc/images}/output_testing_helm-tests.txt | 0 .../images}/output_testing_integration-tests.svg | 2 +- .../images/output_testing_integration-tests.txt | 1 + .../doc/images}/output_testing_non-db-tests.svg | 0 .../doc/images}/output_testing_non-db-tests.txt | 0 .../breeze/doc/images}/output_testing_tests.svg | 2 +- dev/breeze/doc/images/output_testing_tests.txt | 1 + dev/breeze/pyproject.toml | 4 +- .../src/airflow_breeze/commands/ci_commands.py | 5 +- .../airflow_breeze/commands/ci_image_commands.py | 15 +- .../src/airflow_breeze/commands/common_options.py | 2 + .../airflow_breeze/commands/kubernetes_commands.py | 2 +- .../commands/release_candidate_command.py | 97 +- .../commands/release_management_commands.py | 324 ++- .../commands/release_management_commands_config.py | 30 + .../src/airflow_breeze/commands/setup_commands.py | 3 +- .../src/airflow_breeze/configure_rich_click.py | 5 +- dev/breeze/src/airflow_breeze/global_constants.py | 8 +- .../airflow_breeze/params/common_build_params.py | 6 +- .../src/airflow_breeze/params/shell_params.py | 6 +- dev/breeze/src/airflow_breeze/pre_commit_ids.py | 3 + .../templates/PROVIDER_INDEX_TEMPLATE.rst.jinja2 | 12 +- .../airflow_breeze/utils/docker_command_utils.py | 2 - .../src/airflow_breeze/utils/docs_publisher.py | 4 +- dev/breeze/src/airflow_breeze/utils/path_utils.py | 2 + .../src/airflow_breeze/utils/reproducible.py | 77 +- .../src/airflow_breeze/utils/selective_checks.py | 12 +- dev/breeze/src/airflow_breeze/utils/visuals.py | 5 +- dev/breeze/tests/test_selective_checks.py | 51 +- dev/check_files.py | 46 +- docker_tests/requirements.txt | 4 +- docs/README.rst | 35 +- .../connections/athena.rst | 63 + docs/apache-airflow-providers-amazon/index.rst | 1 + .../{athena.rst => athena/athena_boto.rst} | 4 +- .../operators/athena/athena_sql.rst | 63 + .../operators/athena/index.rst | 48 + .../operators/index.rst | 1 + docs/apache-airflow-providers-amazon/redirects.txt | 1 + .../sensors/sftp_sensor.rst | 8 + .../operators/slack_api.rst | 18 +- .../operators/sql_to_slack.rst | 18 + .../howto/create-custom-providers.rst | 2 +- docs/apache-airflow/howto/custom-operator.rst | 82 + docs/conf.py | 2 +- docs/docker-stack/README.md | 2 +- docs/docker-stack/build.rst | 2 +- docs/docker-stack/index.rst | 2 +- docs/spelling_wordlist.txt | 1 + generated/PYPI_README.md | 13 +- generated/README.md | 2 +- generated/provider_dependencies.json | 34 +- images/breeze/output_ci-image_build.svg | 420 --- images/breeze/output_ci-image_build.txt | 1 - images/breeze/output_ci_selective-check.txt | 1 - images/breeze/output_k8s_configure-cluster.txt | 1 - images/breeze/output_k8s_create-cluster.txt | 1 - images/breeze/output_k8s_delete-cluster.txt | 1 - images/breeze/output_k8s_deploy-airflow.txt | 1 - images/breeze/output_k8s_k9s.txt | 1 - images/breeze/output_k8s_logs.txt | 1 - images/breeze/output_k8s_run-complete-tests.txt | 1 - images/breeze/output_k8s_shell.txt | 1 - images/breeze/output_k8s_status.txt | 1 - images/breeze/output_k8s_tests.txt | 1 - images/breeze/output_k8s_upload-k8s-image.txt | 1 - images/breeze/output_release-management.txt | 1 - ...output_sbom_generate-providers-requirements.txt | 1 - .../output_setup_check-all-params-in-groups.txt | 1 - images/breeze/output_setup_config.txt | 1 - .../output_setup_regenerate-command-images.txt | 1 - images/breeze/output_shell.txt | 1 - images/breeze/output_start-airflow.txt | 1 - images/breeze/output_static-checks.txt | 1 - images/breeze/output_testing_db-tests.txt | 1 - images/breeze/output_testing_integration-tests.txt | 1 - images/breeze/output_testing_tests.txt | 1 - kubernetes_tests/test_kubernetes_pod_operator.py | 1 - pyproject.toml | 335 +-- scripts/ci/docker-compose/backend-mysql.yml | 1 - scripts/ci/docker-compose/backend-none.yml | 2 - scripts/ci/docker-compose/backend-postgres.yml | 1 - .../ci/docker-compose/backend-sqlite-no-volume.yml | 2 - scripts/ci/docker-compose/backend-sqlite.yml | 1 - .../ci/docker-compose/integration-cassandra.yml | 1 - scripts/ci/docker-compose/integration-celery.yml | 2 - scripts/ci/docker-compose/integration-kerberos.yml | 1 - scripts/ci/docker-compose/integration-mongo.yml | 1 - scripts/ci/docker-compose/integration-pinot.yml | 2 - scripts/ci/docker-compose/integration-statsd.yml | 4 +- scripts/ci/docker-compose/integration-trino.yml | 1 - scripts/ci/docker-compose/local.yml | 6 - scripts/ci/kubernetes/k8s_requirements.txt | 7 +- .../ci/pre_commit/pre_commit_breeze_cmd_line.py | 13 +- .../pre_commit_check_integrations_list.py | 4 +- .../pre_commit_check_pre_commit_hooks.py | 2 +- scripts/ci/pre_commit/pre_commit_insert_extras.py | 10 +- .../pre_commit_new_session_in_provide_session.py | 5 +- .../pre_commit_update_build_dependencies.py | 56 + .../pre_commit_update_chart_dependencies.py | 80 + .../pre_commit_update_providers_dependencies.py | 60 +- ..._commit_update_providers_dependencies.py.md5sum | 2 +- .../pre_commit_update_source_date_epoch.py | 29 +- .../pre_commit_validate_operators_init.py | 236 ++ scripts/docker/clean-logs.sh | 2 +- scripts/docker/entrypoint_ci.sh | 2 +- scripts/in_container/_in_container_utils.sh | 2 +- .../in_container/install_airflow_and_providers.py | 3 +- scripts/in_container/run_generate_constraints.py | 14 +- scripts/in_container/run_resource_check.py | 2 +- .../providers/amazon/aws/hooks/test_athena_sql.py | 150 + tests/providers/amazon/aws/hooks/test_base_aws.py | 30 +- .../amazon/aws/hooks/test_batch_waiters.py | 4 +- .../amazon/aws/hooks/test_cloud_formation.py | 9 +- tests/providers/amazon/aws/hooks/test_datasync.py | 6 +- tests/providers/amazon/aws/hooks/test_dynamodb.py | 6 +- tests/providers/amazon/aws/hooks/test_ec2.py | 34 +- tests/providers/amazon/aws/hooks/test_ecr.py | 4 +- tests/providers/amazon/aws/hooks/test_eks.py | 20 +- tests/providers/amazon/aws/hooks/test_emr.py | 16 +- .../providers/amazon/aws/hooks/test_eventbridge.py | 4 +- tests/providers/amazon/aws/hooks/test_glue.py | 6 +- .../amazon/aws/hooks/test_glue_catalog.py | 4 +- .../amazon/aws/hooks/test_glue_crawler.py | 16 +- .../amazon/aws/hooks/test_hooks_signature.py | 1 + tests/providers/amazon/aws/hooks/test_kinesis.py | 5 +- tests/providers/amazon/aws/hooks/test_logs.py | 4 +- tests/providers/amazon/aws/hooks/test_neptune.py | 52 + tests/providers/amazon/aws/hooks/test_rds.py | 4 +- .../amazon/aws/hooks/test_redshift_cluster.py | 14 +- tests/providers/amazon/aws/hooks/test_s3.py | 52 +- tests/providers/amazon/aws/hooks/test_sagemaker.py | 6 +- .../amazon/aws/hooks/test_secrets_manager.py | 4 +- tests/providers/amazon/aws/hooks/test_ses.py | 6 +- tests/providers/amazon/aws/hooks/test_sns.py | 4 +- tests/providers/amazon/aws/hooks/test_sqs.py | 4 +- tests/providers/amazon/aws/hooks/test_ssm.py | 4 +- .../amazon/aws/hooks/test_step_function.py | 4 +- .../amazon/aws/log/test_cloudwatch_task_handler.py | 8 +- .../amazon/aws/log/test_s3_task_handler.py | 9 +- .../amazon/aws/operators/test_datasync.py | 50 +- tests/providers/amazon/aws/operators/test_ec2.py | 26 +- .../amazon/aws/operators/test_glue_databrew.py | 4 +- .../providers/amazon/aws/operators/test_neptune.py | 152 ++ tests/providers/amazon/aws/operators/test_rds.py | 62 +- tests/providers/amazon/aws/operators/test_s3.py | 36 +- .../aws/operators/test_sagemaker_notebook.py | 4 +- tests/providers/amazon/aws/operators/test_sqs.py | 123 +- .../amazon/aws/secrets/test_secrets_manager.py | 20 +- .../amazon/aws/secrets/test_systems_manager.py | 14 +- .../amazon/aws/sensors/test_cloud_formation.py | 87 +- .../providers/amazon/aws/sensors/test_dynamodb.py | 49 +- tests/providers/amazon/aws/sensors/test_ec2.py | 10 +- .../aws/sensors/test_glue_catalog_partition.py | 12 +- tests/providers/amazon/aws/sensors/test_rds.py | 22 +- .../amazon/aws/sensors/test_redshift_cluster.py | 66 +- tests/providers/amazon/aws/sensors/test_sqs.py | 439 +-- .../amazon/aws/system/utils/test_helpers.py | 4 +- .../amazon/aws/transfers/test_azure_blob_to_s3.py | 4 +- .../amazon/aws/transfers/test_gcs_to_s3.py | 4 +- .../amazon/aws/transfers/test_hive_to_dynamodb.py | 8 +- .../amazon/aws/transfers/test_http_to_s3.py | 4 +- .../amazon/aws/transfers/test_local_to_s3.py | 6 +- .../amazon/aws/transfers/test_s3_to_sftp.py | 4 +- .../amazon/aws/transfers/test_sftp_to_s3.py | 4 +- .../amazon/aws/waiters/test_custom_waiters.py | 4 +- .../apache/hive/transfers/test_s3_to_hive.py | 4 +- tests/providers/sftp/hooks/test_sftp.py | 327 ++- .../providers/sftp/triggers}/__init__.py | 0 tests/providers/sftp/triggers/test_sftp.py | 203 ++ tests/providers/slack/hooks/test_slack.py | 332 ++- tests/providers/slack/operators/test_slack.py | 82 +- .../providers/slack/transfers/test_sql_to_slack.py | 14 +- tests/system/README.md | 39 +- tests/system/providers/sftp/example_sftp_sensor.py | 12 +- tests/system/providers/slack/example_slack.py | 1 + tests/utils/test_timezone.py | 46 +- tests/www/views/test_views_rendered.py | 2 +- 498 files changed, 15906 insertions(+), 10760 deletions(-) delete mode 100644 CI.rst delete mode 100644 IMAGES.rst delete mode 100644 TESTING.rst create mode 100644 airflow/providers/amazon/aws/hooks/athena_sql.py copy airflow/{api_connexion => providers/sftp/triggers}/__init__.py (100%) create mode 100644 airflow/providers/sftp/triggers/sftp.py create mode 100644 chart/reproducible_build.yaml create mode 100644 contributing-docs/01_roles_in_airflow_project.rst create mode 100644 contributing-docs/02_how_to_communicate.rst rename CONTRIBUTORS_QUICK_START.rst => contributing-docs/03_contributors_quick_start.rst (80%) create mode 100644 contributing-docs/04_how_to_contribute.rst create mode 100644 contributing-docs/05_pull_requests.rst create mode 100644 contributing-docs/06_development_environments.rst rename LOCAL_VIRTUALENV.rst => contributing-docs/07_local_virtualenv.rst (88%) rename STATIC_CODE_CHECKS.rst => contributing-docs/08_static_code_checks.rst (89%) create mode 100644 contributing-docs/09_testing.rst create mode 100644 contributing-docs/10_working_with_git.rst create mode 100644 contributing-docs/11_provider_packages.rst create mode 100644 contributing-docs/12_airflow_dependencies_and_extras.rst create mode 100644 contributing-docs/13_metadata_database_updates.rst create mode 100644 contributing-docs/14_node_environment_setup.rst create mode 100644 contributing-docs/15_architecture_diagrams.rst create mode 100644 contributing-docs/16_contribution_workflow.rst create mode 100644 contributing-docs/README.rst rename {images => contributing-docs/images}/airflow_unit_test_mode.png (100%) rename {images => contributing-docs/images}/candidates_for_backtrack_triggers.png (100%) rename {images => contributing-docs/images}/database_view.png (100%) rename {images => contributing-docs/images}/disk_space_osx.png (100%) rename {images => contributing-docs/images}/docker_socket.png (100%) rename {images => contributing-docs/images}/docker_wsl_integration.png (100%) rename {images => contributing-docs/images}/fork.png (100%) rename {images => contributing-docs/images}/pycharm_debug_breeze.png (100%) rename {images => contributing-docs/images}/quick_start/add Interpreter.png (100%) rename {images => contributing-docs/images}/quick_start/add_configuration.png (100%) rename {images => contributing-docs/images}/quick_start/add_env_variable.png (100%) rename {images => contributing-docs/images}/quick_start/airflow_clone.png (100%) rename {images => contributing-docs/images}/quick_start/airflow_fork.png (100%) rename {images => contributing-docs/images}/quick_start/airflow_gitpod_open_ports.png (100%) rename {images => contributing-docs/images}/quick_start/airflow_gitpod_url.png (100%) rename {images => contributing-docs/images}/quick_start/ci_tests.png (100%) rename {images => contributing-docs/images}/quick_start/click_on_clone.png (100%) rename {images => contributing-docs/images}/quick_start/creating_branch_1.png (100%) rename {images => contributing-docs/images}/quick_start/creating_branch_2.png (100%) rename {images => contributing-docs/images}/quick_start/local_airflow.png (100%) rename {images => contributing-docs/images}/quick_start/postgresql_connection.png (100%) rename {images => contributing-docs/images}/quick_start/pr1.png (100%) rename {images => contributing-docs/images}/quick_start/pr2.png (100%) rename {images => contributing-docs/images}/quick_start/pr3.png (100%) rename {images => contributing-docs/images}/quick_start/pycharm_clone.png (100%) rename {images => contributing-docs/images}/quick_start/start_airflow_tmux.png (100%) rename {images => contributing-docs/images}/quick_start/start_airflow_tmux_gitpod.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_add_configuration_1.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_add_configuration_2.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_add_configuration_3.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_add_env_variable.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_click_on_clone.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_clone.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_creating_branch_1.png (100%) rename {images => contributing-docs/images}/quick_start/vscode_creating_branch_2.png (100%) rename {images => contributing-docs/images}/rebase.png (100%) rename {images => contributing-docs/images}/review.png (100%) rename {images => contributing-docs/images}/run_unittests.png (100%) rename {images => contributing-docs/images}/setup_remote_debugging.png (100%) rename {images => contributing-docs/images}/source_code_mapping_ide.png (100%) rename {images => contributing-docs/images}/workflow.png (100%) create mode 100644 contributing-docs/quick-start-ide/README.rst rename CONTRIBUTORS_QUICK_START_CODESPACES.rst => contributing-docs/quick-start-ide/contributors_quick_start_codespaces.rst (89%) rename CONTRIBUTORS_QUICK_START_GITPOD.rst => contributing-docs/quick-start-ide/contributors_quick_start_gitpod.rst (97%) rename CONTRIBUTORS_QUICK_START_PYCHARM.rst => contributing-docs/quick-start-ide/contributors_quick_start_pycharm.rst (97%) rename CONTRIBUTORS_QUICK_START_VSCODE.rst => contributing-docs/quick-start-ide/contributors_quick_start_vscode.rst (98%) copy docs/apache-airflow-providers-amazon/operators/index.rst => contributing-docs/testing/README.rst (84%) create mode 100644 contributing-docs/testing/dag_testing.rst create mode 100644 contributing-docs/testing/docker_compose_tests.rst create mode 100644 contributing-docs/testing/helm_unit_tests.rst rename {images/testing => contributing-docs/testing/images}/k9s.png (100%) rename {images/testing => contributing-docs/testing/images}/kubeconfig-env.png (100%) rename {images/testing => contributing-docs/testing/images}/kubernetes-virtualenv.png (100%) rename {images => contributing-docs/testing/images}/pycharm/configure_test_runner.png (100%) rename {images => contributing-docs/testing/images}/pycharm/pycharm_add_to_context.png (100%) rename {images => contributing-docs/testing/images}/pycharm/pycharm_create_tool.png (100%) rename {images => contributing-docs/testing/images}/pycharm/running_unittests.png (100%) rename {images/testing => contributing-docs/testing/images}/pytest-runner.png (100%) rename {images/testing => contributing-docs/testing/images}/run-test.png (100%) rename {images => contributing-docs/testing/images}/vscode_add_pytest_settings.png (100%) rename {images => contributing-docs/testing/images}/vscode_configure_python_tests.png (100%) rename {images => contributing-docs/testing/images}/vscode_install_python_extension.png (100%) rename {images => contributing-docs/testing/images}/vscode_run_tests.png (100%) rename {images => contributing-docs/testing/images}/vscode_select_pytest_framework.png (100%) create mode 100644 contributing-docs/testing/integration_tests.rst create mode 100644 contributing-docs/testing/k8s_tests.rst create mode 100644 contributing-docs/testing/system_tests.rst create mode 100644 contributing-docs/testing/testing_packages.rst create mode 100644 contributing-docs/testing/unit_tests.rst create mode 100644 dev/WHAT_GOES_INTO_THE_NEXT_RELEASE.md create mode 100644 dev/breeze/doc/01_installation.rst create mode 100644 dev/breeze/doc/02_customizing.rst create mode 100644 dev/breeze/doc/03_developer_tasks.rst create mode 100644 dev/breeze/doc/04_troubleshooting.rst create mode 100644 dev/breeze/doc/05_test_commands.rst create mode 100644 dev/breeze/doc/06_managing_docker_images.rst create mode 100644 dev/breeze/doc/07_breeze_maintenance_tasks.rst create mode 100644 dev/breeze/doc/08_ci_tasks.rst create mode 100644 dev/breeze/doc/09_release_management_tasks.rst create mode 100644 dev/breeze/doc/10_advanced_breeze_topics.rst create mode 100644 dev/breeze/doc/README.rst create mode 100644 dev/breeze/doc/ci/01_ci_environment.md create mode 100644 dev/breeze/doc/ci/02_images.md create mode 100644 dev/breeze/doc/ci/03_github_variables.md rename dev/breeze/{SELECTIVE_CHECKS.md => doc/ci/04_selective_checks.md} (61%) create mode 100644 dev/breeze/doc/ci/05_workflows.md rename CI_DIAGRAMS.md => dev/breeze/doc/ci/06_diagrams.md (95%) create mode 100644 dev/breeze/doc/ci/07_debugging.md create mode 100644 dev/breeze/doc/ci/08_running_ci_locally.md create mode 100644 dev/breeze/doc/ci/README.md rename {images => dev/breeze/doc/images}/AirflowBreeze_logo.png (100%) rename {images/breeze => dev/breeze/doc/images}/output-commands-hash.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output-commands.svg (99%) rename {images/breeze => dev/breeze/doc/images}/output_build-docs.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_build-docs.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci-image.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci-image.txt (100%) create mode 100644 dev/breeze/doc/images/output_ci-image_build.svg create mode 100644 dev/breeze/doc/images/output_ci-image_build.txt rename {images/breeze => dev/breeze/doc/images}/output_ci-image_pull.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci-image_pull.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci-image_verify.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci-image_verify.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_find-backtracking-candidates.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_find-backtracking-candidates.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_fix-ownership.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_fix-ownership.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_free-space.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_free-space.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_get-workflow-info.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_get-workflow-info.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_resource-check.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_resource-check.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_ci_selective-check.svg (96%) create mode 100644 dev/breeze/doc/images/output_ci_selective-check.txt rename {images/breeze => dev/breeze/doc/images}/output_cleanup.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_cleanup.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_compile-www-assets.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_compile-www-assets.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_down.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_down.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_exec.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_exec.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s_build-k8s-image.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s_build-k8s-image.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s_configure-cluster.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_configure-cluster.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_create-cluster.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_create-cluster.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_delete-cluster.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_delete-cluster.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_deploy-airflow.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_deploy-airflow.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_k9s.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_k9s.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_logs.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_logs.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_run-complete-tests.svg (98%) create mode 100644 dev/breeze/doc/images/output_k8s_run-complete-tests.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_setup-env.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s_setup-env.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_k8s_shell.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_shell.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_status.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_status.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_tests.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_tests.txt rename {images/breeze => dev/breeze/doc/images}/output_k8s_upload-k8s-image.svg (97%) create mode 100644 dev/breeze/doc/images/output_k8s_upload-k8s-image.txt rename {images/breeze => dev/breeze/doc/images}/output_prod-image.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_build.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_build.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_pull.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_pull.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_verify.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_prod-image_verify.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management.svg (66%) create mode 100644 dev/breeze/doc/images/output_release-management.txt rename {images/breeze => dev/breeze/doc/images}/output_release-management_add-back-references.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_add-back-references.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_clean-old-provider-artifacts.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_clean-old-provider-artifacts.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_create-minor-branch.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_create-minor-branch.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-constraints.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-constraints.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-issue-content-providers.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-issue-content-providers.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-providers-metadata.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_generate-providers-metadata.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_install-provider-packages.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_install-provider-packages.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-airflow-package.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-airflow-package.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-airflow-tarball.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-airflow-tarball.txt (100%) create mode 100644 dev/breeze/doc/images/output_release-management_prepare-helm-chart-package.svg create mode 100644 dev/breeze/doc/images/output_release-management_prepare-helm-chart-package.txt create mode 100644 dev/breeze/doc/images/output_release-management_prepare-helm-chart-tarball.svg create mode 100644 dev/breeze/doc/images/output_release-management_prepare-helm-chart-tarball.txt rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-provider-documentation.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-provider-documentation.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-provider-packages.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-provider-packages.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-python-client.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_prepare-python-client.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_publish-docs.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_publish-docs.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_release-prod-images.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_release-prod-images.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_start-rc-process.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_start-rc-process.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_start-release.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_start-release.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_update-constraints.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_update-constraints.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_verify-provider-packages.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_release-management_verify-provider-packages.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom_build-all-airflow-images.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom_build-all-airflow-images.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom_generate-providers-requirements.svg (63%) create mode 100644 dev/breeze/doc/images/output_sbom_generate-providers-requirements.txt rename {images/breeze => dev/breeze/doc/images}/output_sbom_update-sbom-information.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_sbom_update-sbom-information.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_autocomplete.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_autocomplete.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_check-all-params-in-groups.svg (75%) create mode 100644 dev/breeze/doc/images/output_setup_check-all-params-in-groups.txt rename {images/breeze => dev/breeze/doc/images}/output_setup_config.svg (99%) create mode 100644 dev/breeze/doc/images/output_setup_config.txt rename {images/breeze => dev/breeze/doc/images}/output_setup_regenerate-command-images.svg (72%) create mode 100644 dev/breeze/doc/images/output_setup_regenerate-command-images.txt rename {images/breeze => dev/breeze/doc/images}/output_setup_self-upgrade.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_self-upgrade.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_synchronize-local-mounts.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_synchronize-local-mounts.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_version.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_setup_version.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_shell.svg (99%) create mode 100644 dev/breeze/doc/images/output_shell.txt rename {images/breeze => dev/breeze/doc/images}/output_start-airflow.svg (99%) create mode 100644 dev/breeze/doc/images/output_start-airflow.txt rename {images/breeze => dev/breeze/doc/images}/output_static-checks.svg (67%) create mode 100644 dev/breeze/doc/images/output_static-checks.txt rename {images/breeze => dev/breeze/doc/images}/output_testing.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_db-tests.svg (99%) create mode 100644 dev/breeze/doc/images/output_testing_db-tests.txt rename {images/breeze => dev/breeze/doc/images}/output_testing_docker-compose-tests.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_docker-compose-tests.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_helm-tests.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_helm-tests.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_integration-tests.svg (99%) create mode 100644 dev/breeze/doc/images/output_testing_integration-tests.txt rename {images/breeze => dev/breeze/doc/images}/output_testing_non-db-tests.svg (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_non-db-tests.txt (100%) rename {images/breeze => dev/breeze/doc/images}/output_testing_tests.svg (99%) create mode 100644 dev/breeze/doc/images/output_testing_tests.txt create mode 100644 docs/apache-airflow-providers-amazon/connections/athena.rst rename docs/apache-airflow-providers-amazon/operators/{athena.rst => athena/athena_boto.rst} (96%) create mode 100644 docs/apache-airflow-providers-amazon/operators/athena/athena_sql.rst create mode 100644 docs/apache-airflow-providers-amazon/operators/athena/index.rst delete mode 100644 images/breeze/output_ci-image_build.svg delete mode 100644 images/breeze/output_ci-image_build.txt delete mode 100644 images/breeze/output_ci_selective-check.txt delete mode 100644 images/breeze/output_k8s_configure-cluster.txt delete mode 100644 images/breeze/output_k8s_create-cluster.txt delete mode 100644 images/breeze/output_k8s_delete-cluster.txt delete mode 100644 images/breeze/output_k8s_deploy-airflow.txt delete mode 100644 images/breeze/output_k8s_k9s.txt delete mode 100644 images/breeze/output_k8s_logs.txt delete mode 100644 images/breeze/output_k8s_run-complete-tests.txt delete mode 100644 images/breeze/output_k8s_shell.txt delete mode 100644 images/breeze/output_k8s_status.txt delete mode 100644 images/breeze/output_k8s_tests.txt delete mode 100644 images/breeze/output_k8s_upload-k8s-image.txt delete mode 100644 images/breeze/output_release-management.txt delete mode 100644 images/breeze/output_sbom_generate-providers-requirements.txt delete mode 100644 images/breeze/output_setup_check-all-params-in-groups.txt delete mode 100644 images/breeze/output_setup_config.txt delete mode 100644 images/breeze/output_setup_regenerate-command-images.txt delete mode 100644 images/breeze/output_shell.txt delete mode 100644 images/breeze/output_start-airflow.txt delete mode 100644 images/breeze/output_static-checks.txt delete mode 100644 images/breeze/output_testing_db-tests.txt delete mode 100644 images/breeze/output_testing_integration-tests.txt delete mode 100644 images/breeze/output_testing_tests.txt create mode 100755 scripts/ci/pre_commit/pre_commit_update_build_dependencies.py create mode 100755 scripts/ci/pre_commit/pre_commit_update_chart_dependencies.py create mode 100755 scripts/ci/pre_commit/pre_commit_validate_operators_init.py create mode 100644 tests/providers/amazon/aws/hooks/test_athena_sql.py create mode 100644 tests/providers/amazon/aws/hooks/test_neptune.py create mode 100644 tests/providers/amazon/aws/operators/test_neptune.py copy {airflow/api_connexion => tests/providers/sftp/triggers}/__init__.py (100%) create mode 100644 tests/providers/sftp/triggers/test_sftp.py