You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2025/04/27 20:15:08 UTC
(airflow) branch dependabot/pip/airflow-core/packaging-25.0 updated (e30a40d6c1c -> 2ab3664dce0)
This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a change to branch dependabot/pip/airflow-core/packaging-25.0
in repository https://gitbox.apache.org/repos/asf/airflow.git
discard e30a40d6c1c Bump packaging from 24.2 to 25.0 in /airflow-core
add 59260fe13a6 Add backcompat shim for get_current_context (#49630)
add 998f70036b9 Add read config permission to viewer role in `FabAuthManager` (#49581)
add fb270a997c7 Remove merge conflict symbols from the airflow codebase (#49564)
add 924f3fdb6e2 Better upgrade docs about flask/fab plugins in AF3 (#49628)
add cf16f69d0d7 Update plugin documentation for Airflow 3 plugins (#49632)
add cf831e5eb2b feat (airflowctl): Shortcircuit command call on error (#49438)
add d2755fc52e1 Bump stylelint (#49638)
add c35afd1f78b Fix SnowflakeSqlApiHook backwards compatibility for get_oauth_token method (#49482)
add 86cdef22b11 Add count to Stats Cards in Dashboard (#49519)
add bf47ede11e7 Update default Airflow version in Dockerfile to 3.0.0 (#49626)
add 405fbf34180 Prepare documentation to release common.compat 1.6.1 (#49624)
add 8b6b9b90adc Fix missing version substitution in docs (#49640)
add 20bdf5fc824 feature(ui): Make entire task box clickable to select the task in Air… (#49299)
add d391a6d1e28 Remove extra slash so that the runs tab is selected. (#49600)
add f15bebe51d6 Fix min-sqlalchemy tests (#49636)
add ba631cd556d Chart: Make Airflow 3.0.0 default Airflow version (#49593)
add c651b61d3cf AIP-38: enhance layout for `RunBackfillForm` (#49609)
add f73f895c28b Update standard provider doc operators in core operators-and-hooks-ref.rst (#49401)
add b4fdf6268d4 Update docs since --tree flag is tasks list command removed in Airflow 3. (#49623)
add 348eb455a9d Add autorefresh to health section for live updates. (#49645)
add d4b542b6caf Fix test_roundtrip_provider_example_dags (#49647)
add e889112f3e2 Fix Dag Code text selection bg (#49649)
add e840ffbbc1b Upgrade breeze deps (#49656)
add 2e3e714f6d9 Fix wrong link in standard provider yaml file (#49660)
add a497e7c6331 Remove .dev0 suffix from airflow version (#49621)
add b01e534195f Remove some lingering subdag references (#49663)
add ab037cb0a01 Add external logs link (#49475)
add 859c11e666d fix a few sqlalchemy deprecation warnings (#49477)
add d90bb69b02a Docs: Use `get_current_context` from Task SDK (#49654)
add 42f81ebc70f Switch to built-in dry-run/verbose commands for breeze release commands (#49616)
add e7d384d1902 Extract logic to redirect on login/logout to a method (#49604)
add 1b27c3b5d5d Remove the "dev0" usage from the CI (#49665)
add 4775b64b311 Remove the retries script - we do not use it any nore (#49687)
add dd2d8e5dea2 Add S3 docs publishing scripts (#47814)
add 78615a35f04 Make LatestOnlyOperator work for default data-interval-less DAGs (#49554)
add 4e3c964a0e2 bugfix: Add handling for unhealthy state in `AzureContainerInstancesOperator` (#49688)
add ab28a8b2ac1 feat: Add DAG versioning information to OpenLineage events (#48741)
add ba4398f23b7 Simplify logic flow of initialize_airflow_tests fixture (#49461)
add 5349d09321c Create Apache TinkerPop provider (#47446)
add 5923d9ce82b Update dev docs about merging PRs for Airflow 3.0 (#49701)
add c14b3c74078 Prepare docs for Apr ad hoc release of fab and common.compat providers (#49690)
add 1df5b41783e Tweak Execution API OpenAPI spec to improve code Generation (#49700)
add f3acdd28984 Improve caching strategy for inventory cache (#49693)
add 1cd86146eec Rename operation IDs for task instance endpoints to include map index… (#49608)
add 22755b47528 Confgure "suggest a change" links properly (#49702)
add c2bd43a2c37 Check for task concurrency parameters inside encoded object & partial_kwargs to handle dynamic tasks. (#49708)
add e564f1ba291 use NonNegativeInt for backfill_id (#49691)
add fb2fd0ff1f7 Display plugin import errors in the UI (#49643)
add 6e459b4b0b3 feat (airflowctl): Allow adding the same commands with custom action commands (#49674)
add 2372dcd07ca Fix k8s test: scheduler crash when using LocalExecutor (#49677)
add ed06d99c226 Better handle safe url redirects in login form for SimpleAuthManager (#49697)
add 102644dafa1 Improve AirflowRouter (#49712)
add 76edd92cc0a Fix infinite redirect caused by mistakenly setting token cookie as secure (#49721)
add 74cafa20b93 fix: PlugiuImportErrors assertion (#49719)
add 8ad08fa075e Fix infinite redirect in FAB AuthManager caused by mistakenly setting token cookie as secure (#49724)
add c708f8db620 include jti when generating jwt token (#49531)
add 3ba35c75b28 feat: add `polling_period_seconds` and `timeout_seconds` to the template fields of `CloudRunExecuteJobOperator` (#49704)
add 02e2514162f Fix Typo caused by #49721 (#49736)
add 79e98dcd257 Bump Task SDK to `1.1.0` (#49590)
add 8d347548f98 Remove on_finish_action from template fields (#49637)
add 7f6340a9453 Create operators for working with Ray for VertexAI (#47340)
add 003bf6d9a6b add SimpleAllAdminMiddleware to allow api usage without auth header in request (#49599)
add d12072959b5 Remove reference to root_dag_id in dagbag and restore logic (#49668)
add 912a7526db8 Bump openlineage-airflow from 1.31.0 to 1.32.0 (#49739)
add c7e5406415d Clear out the dag code and serialized_dag tables on 3.0 upgrade (#49563)
add 6a3bc01907b Bump react-router and react-router-dom (#49742)
add ae7b3c6abc8 Make default execution server URL be relative to API Base URL (#49747)
add 6a5d0d05b09 Add authentication section in Rest API documentation (#49745)
add d3aeae79bb7 Remove unused configurations (#49749)
add 72d391c25f3 Set execution api url in breeze config environment (#49753)
add e3c221d1357 Remove old dynamic attr accessing re dag resource in FAB provider (#49669)
add 77ce9fed6b1 fix: `get_uri` for oracle (#49533)
add b70ece0ae85 Add bundle_version to DagRun response (#49726)
add 34301f60f6d Minor doc fix in edge_executor (#49755)
add 98d2d461acf Temporarily install ray explicitly for python 3.12 (#49759)
add 3f0e48079b7 fix cli clear command (#49631)
add 16da57bcdb6 fix: `Stats` and `PluginImportErrors` layout (#49770)
add ec49402dd4c Common airflow.cfg files across all containers in default docker-compose.yaml (#49681)
add 7fc3cc55cfc Remove note about endpoint migration (#49767)
add d5b74860d16 Add redirects for old operators location to standard provider (#49776)
add 329f33c0012 Display bundle version in details tab (#49771)
add bd721d72816 Add correct redirects for rest api and upgrade docs (#49764)
add 8b9259f694f Add link to tag to filter dags associated with the tag. (#49680)
add 6e43633707a Fix timezone setting for logical date input on Trigger Run form (#49662)
add b79f3bb160e Update some missing config settings in edge executor (#49758)
add a06694df33b reset global auth_manager (#49757)
add c84e4a90fb1 Update `secure` in AWS auth manager (#49751)
add 7077bdf5704 Add using the rest api by referring to security/api.rst (#49675)
add 7846aab96a5 Update GlueJobOperator to inherit AWS base class (#49750)
add ea5197e9cd0 Display bundle version in Dag details tab (#49787)
add b5efb47161a Cleanup _OPERATOR_EXTRA_LINKS in serialized_objects (#49445)
add 415b31b543a Fix AWS system test names (#49791)
add 453dabcad2b Update boring cyborg with config templates label (#49789)
add e9005ce8c07 Open rename variable: hasJsonBody -> has_json_body (#49760)
add 62cf4070801 remove outdated comment in SimpleAllAdminMiddleware (#49756)
add 3b9ae489a56 Fix execution API server URL handling for relative paths (#49782)
add 36c8975522a Bump the fab-ui-package-updates group across 1 directory with 2 updates (#49792)
add e2c9f9ba6da Fix: SQLExecuteQueryOperator does not pass extra_dejson values to hook_params (#49282)
add bfa7aa36692 refactor: Removed duplicate test_generic_transfer from wrong standard provider (#49786)
add 1346ccc3a6a Remove ray extra from google aiplatform for Python 3.12 (#49797)
add 82769535408 Dev: Add tip for easily copying from tmux window (#49798)
add f81cd6fd90f Fix gcp remote log module import in airflow local settings (#49788)
add 59e76068505 Update max_consecutive_failed_dag_runs default value to zero in TaskSDK dag (#49795)
add f65a11bab41 Prevalidate presence of precommit cache tarball instead of hard failing (#49806)
add 19122e7be12 Fall back when a task cannot be expanded (#49772)
add 859c32b4643 Adding dependency on google-cloud-bigquery-storage temporarily for google (#49807)
add 9d5f569a645 Enable auto-merge feature (experimental) (#49746)
add 695576737f2 Remove branch protection for `v3-0-test` (#49811)
add 402a14f5a22 Remove unknown field in .asf.yaml (#49812)
add d73cf92a649 Fix `.asf.yaml` (#49813)
add f71cb98b186 Remove required status check entirely
add 67ce62214dc Fix docker compose tests (#49814)
add 1adf5afcc9c Proper (?) context for branch protection experiment (#49815)
add 156d0e8080c Another attempt to set the right context
add 14d60c7ce99 Maybe this one will work?
add 97c5d9cf33e Another attempt to set the right context
add af977853743 Another attempt to set the right context
add 4a074c1b177 Another attempt to set the right context
add c6a2b8eb9b5 Replace chicken-egg providers with automated use of unreleased packages (#49799)
add 517b29d8a79 Treat single task_ids in xcom_pull the same as multiple (#49692)
add 1c40e583097 Add basic tests as finalize Tests dependency (#49819)
add 2eb5928f64f Fixup to docker-compose tests improvements (#49821)
add cc2bb0d93ae Fix broken main - upgrade tool versions (#49825)
add fcacd1273ee Ensure K8s tests are completed before finalization (#49827)
add 121cb372e6d Update region and default value to exclude-docs (#49706)
add 5c41c8e6fe9 Fix typos and argument types (#49833)
add adb9c7010c9 Rename support to maintenance (#49842)
add 0cba6fcad6c Add missing airflow users command note (#49835)
add e34d24c3b2c Automatically refresh generated dependencies when needed (#49848)
add ab2cd7dfa26 Simplify pre-release version handling when preparing packages (#49829)
add ca321cc3605 Show K8S logs in CI on top of uploading them as artifacts (#49822)
add 9fb9ce04a7a Help `pip` with avoiding resolution too deep issues in Python 3.12 (#49853)
add 2ab3664dce0 Bump packaging from 24.2 to 25.0 in /airflow-core
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 (e30a40d6c1c)
\
N -- N -- N refs/heads/dependabot/pip/airflow-core/packaging-25.0 (2ab3664dce0)
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.
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 9 +
.../airflow_providers_bug_report.yml | 1 +
.github/actions/install-pre-commit/action.yml | 12 +-
.github/boring-cyborg.yml | 8 +
.github/workflows/additional-prod-image-tests.yml | 6 -
.github/workflows/basic-tests.yml | 28 +-
.github/workflows/ci-image-build.yml | 1 -
.github/workflows/ci-image-checks.yml | 13 +-
.github/workflows/ci.yml | 41 +-
.github/workflows/generate-constraints.yml | 31 +-
.github/workflows/k8s-tests.yml | 25 +-
.github/workflows/prod-image-build.yml | 33 +-
.github/workflows/prod-image-extra-checks.yml | 6 -
.github/workflows/publish-docs-to-s3.yml | 204 +++
.github/workflows/push-image-cache.yml | 2 -
.github/workflows/release_dockerhub_image.yml | 26 +-
.github/workflows/test-providers.yml | 9 +-
.pre-commit-config.yaml | 8 +-
Dockerfile | 14 +-
Dockerfile.ci | 16 +-
README.md | 16 +-
RELEASE_NOTES.rst | 30 -
.../docs/administration-and-deployment/plugins.rst | 92 +-
.../dynamic-task-mapping.rst | 2 +-
airflow-core/docs/conf.py | 11 +-
.../docs/core-concepts/auth-manager/index.rst | 2 +-
airflow-core/docs/extra-packages-ref.rst | 2 +
airflow-core/docs/faq.rst | 4 +-
.../docs/howto/docker-compose/docker-compose.yaml | 41 +-
airflow-core/docs/howto/docker-compose/index.rst | 22 +-
airflow-core/docs/howto/index.rst | 1 +
airflow-core/docs/img/airflow_erd.sha256 | 2 +-
.../docs/installation/supported-versions.rst | 20 +-
.../docs/installation/upgrading_to_airflow3.rst | 8 +-
airflow-core/docs/operators-and-hooks-ref.rst | 38 +-
airflow-core/docs/redirects.txt | 13 +-
airflow-core/docs/tutorial/fundamentals.rst | 4 +-
airflow-core/docs/tutorial/taskflow.rst | 2 +-
airflow-core/pyproject.toml | 7 +-
airflow-core/src/airflow/__init__.py | 3 +-
airflow-core/src/airflow/api_fastapi/app.py | 5 +-
.../auth/managers/models/resource_details.py | 4 +-
.../managers/simple/middleware.py} | 20 +-
.../auth/managers/simple/routes/login.py | 10 +-
.../auth/managers/simple/ui/package-lock.json | 23 +-
.../auth/managers/simple/ui/package.json | 2 +-
.../auth/managers/simple/ui/pnpm-lock.yaml | 24 +-
.../auth/managers/simple/ui/src/login/Login.tsx | 19 +-
.../src/airflow/api_fastapi/auth/tokens.py | 3 +
.../src/airflow/api_fastapi/common/router.py | 58 +-
.../src/airflow/api_fastapi/core_api/app.py | 6 +
.../api_fastapi/core_api/datamodels/backfills.py | 4 +-
.../api_fastapi/core_api/datamodels/dag_run.py | 1 +
.../airflow/api_fastapi/core_api/datamodels/log.py | 6 +
.../api_fastapi/core_api/datamodels/ui/config.py | 2 +
.../api_fastapi/core_api/openapi/_private_ui.yaml | 16 +
.../core_api/openapi/v1-rest-api-generated.yaml | 111 +-
.../core_api/routes/public/backfills.py | 9 +-
.../api_fastapi/core_api/routes/public/log.py | 37 +-
.../core_api/routes/public/task_instances.py | 6 +
.../api_fastapi/core_api/routes/ui/config.py | 4 +
.../src/airflow/api_fastapi/core_api/security.py | 3 +-
.../api_fastapi/core_api/services/ui/grid.py | 26 +-
.../src/airflow/api_fastapi/execution_api/app.py | 24 +-
.../execution_api/routes/asset_events.py | 5 +-
.../api_fastapi/execution_api/routes/assets.py | 5 +-
.../api_fastapi/execution_api/routes/dag_runs.py | 5 +-
.../api_fastapi/execution_api/routes/health.py | 4 +-
.../execution_api/routes/task_instances.py | 8 +-
.../execution_api/routes/task_reschedules.py | 5 +-
.../api_fastapi/execution_api/routes/xcoms.py | 7 +-
.../src/airflow/api_fastapi/logging/decorators.py | 12 +-
.../config_templates/airflow_local_settings.py | 2 +-
.../src/airflow/config_templates/config.yml | 40 +-
.../src/airflow/config_templates/unit_tests.cfg | 2 -
.../airflow/example_dags/example_latest_only.py | 2 +
.../example_dags/example_trigger_controller_dag.py | 4 +
.../src/airflow/executors/local_executor.py | 9 +-
.../versions/0047_3_0_0_add_dag_versioning.py | 306 +---
.../0059_3_0_0_remove_external_trigger_field.py | 2 +-
airflow-core/src/airflow/models/baseoperator.py | 2 +-
airflow-core/src/airflow/models/dag.py | 32 +-
airflow-core/src/airflow/models/dagbag.py | 12 +-
airflow-core/src/airflow/models/dagrun.py | 3 +-
airflow-core/src/airflow/models/taskinstance.py | 3 +-
airflow-core/src/airflow/operators/__init__.py | 1 +
airflow-core/src/airflow/security/permissions.py | 12 +-
.../airflow/serialization/serialized_objects.py | 27 +-
.../src/airflow/ui/openapi-gen/queries/common.ts | 71 +-
.../ui/openapi-gen/queries/ensureQueryData.ts | 53 +-
.../src/airflow/ui/openapi-gen/queries/prefetch.ts | 53 +-
.../src/airflow/ui/openapi-gen/queries/queries.ts | 95 +-
.../src/airflow/ui/openapi-gen/queries/suspense.ts | 65 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 42 +
.../ui/openapi-gen/requests/services.gen.ts | 79 +-
.../airflow/ui/openapi-gen/requests/types.gen.ts | 89 +-
.../ui/src/components/Banner/BackfillBanner.tsx | 12 +-
.../src/components/DagActions/RunBackfillForm.tsx | 69 +-
.../src/airflow/ui/src/components/ErrorAlert.tsx | 2 +-
.../airflow/ui/src/components/Graph/AssetNode.tsx | 6 +-
.../airflow/ui/src/components/Graph/DagNode.tsx | 13 +-
.../airflow/ui/src/components/Graph/TaskLink.tsx | 27 +-
.../airflow/ui/src/components/Graph/TaskNode.tsx | 22 +-
.../airflow/ui/src/components/LimitedItemsList.tsx | 23 +-
.../src/components/TriggerDag/TriggerDAGForm.tsx | 16 +-
.../ui/src/layouts/Details/DagBreadcrumb.tsx | 2 +-
.../src/airflow/ui/src/layouts/Nav/LogoutModal.tsx | 5 +-
.../ui/src/layouts/Nav/UserSettingsButton.tsx | 7 +-
airflow-core/src/airflow/ui/src/main.tsx | 9 +-
.../src/airflow/ui/src/pages/Dag/Code/Code.tsx | 11 +-
.../airflow/ui/src/pages/Dag/DagHeader.test.tsx | 10 +-
.../src/airflow/ui/src/pages/Dag/Details.tsx | 6 +
.../airflow/ui/src/pages/DagsList/DagCard.test.tsx | 2 +-
.../src/airflow/ui/src/pages/DagsList/DagTags.tsx | 8 +-
.../airflow/ui/src/pages/Dashboard/Dashboard.tsx | 14 +-
.../ui/src/pages/Dashboard/Health/Health.tsx | 7 +-
.../src/pages/Dashboard/Stats/DAGImportErrors.tsx | 68 +-
.../src/pages/Dashboard/Stats/DagFilterButton.tsx | 44 -
.../pages/Dashboard/Stats/PluginImportErrors.tsx | 86 ++
...ErrorsModal.tsx => PluginImportErrorsModal.tsx} | 26 +-
.../airflow/ui/src/pages/Dashboard/Stats/Stats.tsx | 106 +-
.../ui/src/pages/Dashboard/Stats/StatsCard.tsx | 80 +
airflow-core/src/airflow/ui/src/pages/Plugins.tsx | 9 +-
.../src/airflow/ui/src/pages/Run/Details.tsx | 6 +
.../ui/src/pages/TaskInstance/ExtraLinks.tsx | 2 +-
.../pages/TaskInstance/Logs/ExternalLogLink.tsx | 71 +
.../ui/src/pages/TaskInstance/Logs/Logs.tsx | 15 +
airflow-core/src/airflow/ui/src/utils/links.ts | 7 +
airflow-core/src/airflow/utils/db.py | 9 +
.../src/airflow/utils/deprecation_tools.py | 2 +
.../tests/unit/always/test_project_structure.py | 2 +
.../simple/{conftest.py => test_middleware.py} | 56 +-
.../tests/unit/api_fastapi/auth/test_tokens.py | 2 +
.../core_api/routes/public/test_assets.py | 1 +
.../core_api/routes/public/test_backfills.py | 40 +
.../core_api/routes/public/test_dag_run.py | 4 +
.../api_fastapi/core_api/routes/public/test_log.py | 52 +
.../api_fastapi/core_api/routes/ui/test_config.py | 2 +
.../api_fastapi/core_api/routes/ui/test_grid.py | 67 +-
.../unit/api_fastapi/execution_api/test_app.py | 2 +-
.../tests/unit/cli/commands/test_asset_command.py | 1 +
airflow-core/tests/unit/core/test_configuration.py | 1 -
.../tests/unit/core/test_logging_config.py | 30 +
.../tests/unit/dag_processing/test_manager.py | 2 +-
.../tests/unit/executors/test_local_executor.py | 47 +-
.../unit/serialization/test_dag_serialization.py | 2 +-
.../unit/serialization/test_serialized_objects.py | 39 +-
airflow-core/tests/unit/utils/test_task_group.py | 14 +-
airflow-ctl/src/airflowctl/__main__.py | 3 +-
airflow-ctl/src/airflowctl/api/client.py | 4 +-
.../src/airflowctl/api/datamodels/generated.py | 11 +-
airflow-ctl/src/airflowctl/ctl/cli_config.py | 71 +-
airflow-ctl/src/airflowctl/exceptions.py | 4 +
.../tests/airflow_ctl/api/test_operations.py | 6 +-
.../tests/airflow_ctl/ctl/test_cli_config.py | 80 +-
chart/Chart.yaml | 20 +-
chart/README.md | 2 +-
chart/docs/conf.py | 6 +-
chart/newsfragments/49593.significant.rst | 3 +
chart/values.schema.json | 4 +-
chart/values.yaml | 4 +-
contributing-docs/12_provider_distributions.rst | 14 -
contributing-docs/16_adding_api_endpoints.rst | 8 -
contributing-docs/testing/integration_tests.rst | 2 +
contributing-docs/testing/python_client_tests.rst | 2 +-
contributing-docs/testing/unit_tests.rst | 4 +-
dev/PROVIDER_DISTRIBUTIONS_DETAILS.md | 4 +-
dev/README_AIRFLOW3_DEV.md | 33 +-
dev/README_RELEASE_AIRFLOW.md | 40 +-
dev/README_RELEASE_PROVIDERS.md | 27 +-
dev/README_RELEASE_PYTHON_CLIENT.md | 2 +-
dev/breeze/README.md | 2 +-
dev/breeze/doc/02_customizing.rst | 10 +
dev/breeze/doc/03_developer_tasks.rst | 3 +
dev/breeze/doc/05_test_commands.rst | 2 +-
dev/breeze/doc/09_release_management_tasks.rst | 54 +
dev/breeze/doc/ci/02_images.md | 4 +-
dev/breeze/doc/ci/04_selective_checks.md | 159 +-
dev/breeze/doc/images/output-commands.svg | 2 +-
dev/breeze/doc/images/output_build-docs.svg | 116 +-
dev/breeze/doc/images/output_build-docs.txt | 2 +-
dev/breeze/doc/images/output_ci-image_build.svg | 150 +-
dev/breeze/doc/images/output_ci-image_build.txt | 2 +-
dev/breeze/doc/images/output_ci-image_pull.svg | 2 +-
dev/breeze/doc/images/output_ci-image_pull.txt | 2 +-
dev/breeze/doc/images/output_ci-image_verify.svg | 2 +-
dev/breeze/doc/images/output_ci-image_verify.txt | 2 +-
.../doc/images/output_k8s_build-k8s-image.svg | 2 +-
.../doc/images/output_k8s_build-k8s-image.txt | 2 +-
.../doc/images/output_k8s_configure-cluster.svg | 2 +-
.../doc/images/output_k8s_configure-cluster.txt | 2 +-
.../doc/images/output_k8s_create-cluster.svg | 2 +-
.../doc/images/output_k8s_create-cluster.txt | 2 +-
.../doc/images/output_k8s_deploy-airflow.svg | 2 +-
.../doc/images/output_k8s_deploy-airflow.txt | 2 +-
.../doc/images/output_k8s_run-complete-tests.svg | 2 +-
.../doc/images/output_k8s_run-complete-tests.txt | 2 +-
dev/breeze/doc/images/output_k8s_tests.svg | 2 +-
dev/breeze/doc/images/output_k8s_tests.txt | 2 +-
.../doc/images/output_k8s_upload-k8s-image.svg | 2 +-
.../doc/images/output_k8s_upload-k8s-image.txt | 2 +-
dev/breeze/doc/images/output_prod-image_build.svg | 192 +--
dev/breeze/doc/images/output_prod-image_build.txt | 2 +-
dev/breeze/doc/images/output_prod-image_pull.svg | 2 +-
dev/breeze/doc/images/output_prod-image_pull.txt | 2 +-
dev/breeze/doc/images/output_prod-image_verify.svg | 2 +-
dev/breeze/doc/images/output_prod-image_verify.txt | 2 +-
.../doc/images/output_release-management.svg | 20 +-
.../doc/images/output_release-management.txt | 2 +-
...tput_release-management_add-back-references.svg | 18 +-
...tput_release-management_add-back-references.txt | 2 +-
...tput_release-management_create-minor-branch.svg | 20 +-
...tput_release-management_create-minor-branch.txt | 2 +-
...put_release-management_generate-constraints.svg | 64 +-
...put_release-management_generate-constraints.txt | 2 +-
...management_generate-issue-content-providers.svg | 16 +-
...management_generate-issue-content-providers.txt | 2 +-
...ease-management_generate-providers-metadata.svg | 18 +-
...ease-management_generate-providers-metadata.txt | 2 +-
...e-management_install-provider-distributions.svg | 2 +-
...e-management_install-provider-distributions.txt | 2 +-
...anagement_prepare-airflow-ctl-distributions.svg | 30 +-
...anagement_prepare-airflow-ctl-distributions.txt | 2 +-
...se-management_prepare-airflow-distributions.svg | 30 +-
...se-management_prepare-airflow-distributions.txt | 2 +-
..._release-management_prepare-airflow-tarball.svg | 18 +-
..._release-management_prepare-airflow-tarball.txt | 2 +-
...e-management_prepare-provider-distributions.svg | 64 +-
...e-management_prepare-provider-distributions.txt | 2 +-
...e-management_prepare-provider-documentation.svg | 16 +-
...e-management_prepare-provider-documentation.txt | 2 +-
...ut_release-management_prepare-python-client.svg | 44 +-
...ut_release-management_prepare-python-client.txt | 2 +-
...e-management_prepare-task-sdk-distributions.svg | 30 +-
...e-management_prepare-task-sdk-distributions.txt | 2 +-
...utput_release-management_publish-docs-to-s3.svg | 142 ++
...utput_release-management_publish-docs-to-s3.txt | 1 +
.../output_release-management_publish-docs.svg | 20 +-
.../output_release-management_publish-docs.txt | 2 +-
...tput_release-management_release-prod-images.svg | 66 +-
...tput_release-management_release-prod-images.txt | 2 +-
.../output_release-management_start-rc-process.svg | 20 +-
.../output_release-management_start-rc-process.txt | 2 +-
.../output_release-management_start-release.svg | 20 +-
.../output_release-management_start-release.txt | 2 +-
.../output_sbom_build-all-airflow-images.svg | 2 +-
.../output_sbom_build-all-airflow-images.txt | 2 +-
...output_sbom_generate-providers-requirements.svg | 14 +-
...output_sbom_generate-providers-requirements.txt | 2 +-
.../images/output_sbom_update-sbom-information.svg | 2 +-
.../images/output_sbom_update-sbom-information.txt | 2 +-
.../output_setup_check-all-params-in-groups.svg | 22 +-
.../output_setup_check-all-params-in-groups.txt | 2 +-
.../output_setup_regenerate-command-images.svg | 22 +-
.../output_setup_regenerate-command-images.txt | 2 +-
dev/breeze/doc/images/output_shell.svg | 2 +-
dev/breeze/doc/images/output_shell.txt | 2 +-
dev/breeze/doc/images/output_start-airflow.svg | 2 +-
dev/breeze/doc/images/output_start-airflow.txt | 2 +-
.../doc/images/output_testing_core-tests.svg | 2 +-
.../doc/images/output_testing_core-tests.txt | 2 +-
.../images/output_testing_docker-compose-tests.svg | 26 +-
.../images/output_testing_docker-compose-tests.txt | 2 +-
.../output_testing_providers-integration-tests.svg | 4 +-
.../output_testing_providers-integration-tests.txt | 2 +-
.../doc/images/output_testing_providers-tests.svg | 2 +-
.../doc/images/output_testing_providers-tests.txt | 2 +-
dev/breeze/pyproject.toml | 5 +-
.../airflow_breeze/commands/ci_image_commands.py | 15 +-
.../commands/ci_image_commands_config.py | 2 +-
.../src/airflow_breeze/commands/common_options.py | 37 +-
.../airflow_breeze/commands/developer_commands.py | 19 +-
.../commands/developer_commands_config.py | 23 +-
.../airflow_breeze/commands/kubernetes_commands.py | 4 +-
.../src/airflow_breeze/commands/main_command.py | 2 +
.../commands/minor_release_command.py | 72 +-
.../commands/production_image_commands.py | 8 +-
.../commands/production_image_commands_config.py | 2 +-
.../commands/release_candidate_command.py | 77 +-
.../src/airflow_breeze/commands/release_command.py | 40 +-
.../commands/release_management_commands.py | 391 ++---
.../commands/release_management_commands_config.py | 29 +-
.../airflow_breeze/commands/testing_commands.py | 3 +
.../commands/testing_commands_config.py | 1 +
dev/breeze/src/airflow_breeze/global_constants.py | 66 +-
.../src/airflow_breeze/params/build_ci_params.py | 2 +-
.../airflow_breeze/params/common_build_params.py | 8 +-
.../src/airflow_breeze/params/shell_params.py | 8 +-
.../prepare_providers/provider_distributions.py | 106 +-
dev/breeze/src/airflow_breeze/utils/ci_group.py | 9 +-
.../airflow_breeze/utils/debug_pyproject_toml.py | 29 +-
.../src/airflow_breeze/utils/docs_publisher.py | 5 +-
dev/breeze/src/airflow_breeze/utils/packages.py | 260 +++-
.../src/airflow_breeze/utils/publish_docs_to_s3.py | 202 +++
dev/breeze/src/airflow_breeze/utils/run_tests.py | 6 +-
.../src/airflow_breeze/utils/selective_checks.py | 6 -
.../src/airflow_breeze/utils/version_utils.py | 28 -
dev/breeze/tests/test_packages.py | 158 ++
dev/breeze/tests/test_provider_dependencies.py | 4 +-
dev/breeze/tests/test_publish_docs_to_s3.py | 271 ++++
.../tests/test_pytest_args_for_test_types.py | 1 +
dev/breeze/tests/test_selective_checks.py | 4 +-
dev/breeze/uv.lock | 1544 ++++++++++----------
dev/refresh_images.sh | 4 +-
devel-common/pyproject.toml | 2 +-
devel-common/src/docs/build_docs.py | 35 +-
devel-common/src/docs/provider_conf.py | 3 +-
devel-common/src/docs/utils/conf_constants.py | 4 -
.../sphinx_exts/docs_build/fetch_inventories.py | 14 +-
devel-common/src/tests_common/pytest_plugin.py | 102 +-
docker-stack-docs/README.md | 10 +-
docker-stack-docs/conf.py | 3 +-
.../extending/add-airflow-configuration/Dockerfile | 2 +-
.../extending/add-apt-packages/Dockerfile | 2 +-
.../add-build-essential-extend/Dockerfile | 2 +-
.../extending/add-providers/Dockerfile | 2 +-
.../add-pypi-packages-constraints/Dockerfile | 2 +-
.../extending/add-pypi-packages-uv/Dockerfile | 2 +-
.../extending/add-pypi-packages/Dockerfile | 2 +-
.../extending/add-requirement-packages/Dockerfile | 2 +-
.../extending/custom-providers/Dockerfile | 2 +-
.../extending/embedding-dags/Dockerfile | 2 +-
.../extending/writable-directory/Dockerfile | 2 +-
docker-stack-docs/entrypoint.rst | 14 +-
.../test_docker_compose_quick_start.py | 93 +-
docs/spelling_wordlist.txt | 3 +
generated/.gitignore | 2 +-
.../helm_tests/airflow_aux/test_airflow_common.py | 5 +
.../helm_tests/airflow_aux/test_annotations.py | 37 +-
.../airflow_aux/test_basic_helm_chart.py | 235 +--
.../tests/helm_tests/airflow_core/test_env.py | 41 +-
.../helm_tests/airflow_core/test_scheduler.py | 4 +-
.../helm_tests/other/test_git_sync_scheduler.py | 23 +-
.../helm_tests/other/test_git_sync_webserver.py | 8 +-
helm-tests/tests/helm_tests/security/test_rbac.py | 8 +-
.../helm_tests/webserver/test_hpa_webserver.py | 4 +
.../tests/helm_tests/webserver/test_ingress_web.py | 33 +-
.../helm_tests/webserver/test_pdb_webserver.py | 1 +
.../tests/helm_tests/webserver/test_webserver.py | 116 +-
.../tests/kubernetes_tests/test_base.py | 25 +-
.../kubernetes_tests/test_kubernetes_executor.py | 2 +-
.../tests/kubernetes_tests/test_other_executors.py | 18 +-
performance/requirements.txt | 2 +-
providers-summary-docs/conf.py | 3 +-
providers/MANAGING_PROVIDERS_LIFECYCLE.rst | 74 -
providers/amazon/pyproject.toml | 2 +-
.../amazon/aws/auth_manager/routes/login.py | 2 +-
.../airflow/providers/amazon/aws/operators/glue.py | 104 +-
.../tests/system/amazon/aws/example_dynamodb.py | 2 +-
.../amazon/aws/example_redshift_s3_transfers.py | 2 +-
.../aws/auth_manager/test_aws_auth_manager.py | 2 +-
.../tests/unit/amazon/aws/operators/test_glue.py | 62 +
.../{standard => apache/tinkerpop}/README.rst | 17 +-
.../tinkerpop/docs/changelog.rst} | 12 +-
.../apache/tinkerpop/docs/commits.rst | 34 +-
providers/apache/{beam => tinkerpop}/docs/conf.py | 2 +-
.../tinkerpop/docs/connections/tinkerpop.rst | 88 ++
.../apache/{kylin => tinkerpop}/docs/index.rst | 38 +-
.../docs/installing-providers-from-sources.rst | 0
.../docs/operators/tinkerpop.rst} | 31 +-
.../apache/{beam => tinkerpop}/docs/security.rst | 0
providers/apache/{pig => tinkerpop}/provider.yaml | 55 +-
.../apache/{cassandra => tinkerpop}/pyproject.toml | 18 +-
.../apache/tinkerpop/src/airflow}/__init__.py | 0
.../tinkerpop/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../src/airflow/providers/apache/tinkerpop/LICENSE | 0
.../providers/apache/tinkerpop}/__init__.py | 4 +-
.../apache/tinkerpop}/get_provider_info.py | 30 +-
.../providers/apache/tinkerpop/hooks}/__init__.py | 0
.../providers/apache/tinkerpop/hooks/gremlin.py | 154 ++
.../apache/tinkerpop/operators}/__init__.py | 0
.../apache/tinkerpop/operators/gremlin.py} | 48 +-
.../tinkerpop}/tests/conftest.py | 0
.../tinkerpop/tests/integration}/__init__.py | 0
.../tests/integration/apache}/__init__.py | 0
.../integration/apache/tinkerpop}/__init__.py | 0
.../apache/tinkerpop/hooks}/__init__.py | 0
.../apache/tinkerpop/hooks/test_gremlin.py | 49 +
.../apache/tinkerpop/tests/system}/__init__.py | 0
.../tinkerpop/tests/system/apache}/__init__.py | 0
.../tests/system/apache/tinkerpop}/__init__.py | 0
.../apache/tinkerpop/example_gremlin_dag.py} | 26 +-
.../apache/tinkerpop/tests/unit}/__init__.py | 0
.../tinkerpop/tests/unit/apache}/__init__.py | 0
.../tests/unit/apache/tinkerpop}/__init__.py | 0
.../tests/unit/apache/tinkerpop/hooks}/__init__.py | 0
.../unit/apache/tinkerpop/hooks/test_gremlin.py | 151 ++
.../unit/apache/tinkerpop/operators}/__init__.py | 0
.../apache/tinkerpop/operators/test_gremlin.py | 66 +
providers/apprise/pyproject.toml | 2 +-
providers/atlassian/jira/pyproject.toml | 2 +-
.../celery/executors/celery_executor_utils.py | 8 +-
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 21 +
providers/common/compat/docs/commits.rst | 24 +-
providers/common/compat/docs/index.rst | 8 +-
providers/common/compat/provider.yaml | 3 +-
providers/common/compat/pyproject.toml | 6 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
providers/common/sql/docs/operators.rst | 14 +
.../airflow/providers/common/sql/operators/sql.py | 5 +
...xecute_query.py => example_generic_transfer.py} | 38 +-
.../tests/unit/common/sql/operators/test_sql.py | 22 +
providers/discord/pyproject.toml | 2 +-
providers/edge3/docs/edge_executor.rst | 1 +
.../src/airflow/providers/edge3/cli/api_client.py | 5 +-
.../airflow/providers/edge3/cli/edge_command.py | 10 +-
.../src/airflow/providers/edge3/worker_api/auth.py | 5 +-
providers/fab/README.rst | 6 +-
providers/fab/docs/changelog.rst | 25 +
providers/fab/docs/commits.rst | 18 +
providers/fab/docs/index.rst | 6 +-
providers/fab/provider.yaml | 3 +-
providers/fab/pyproject.toml | 6 +-
.../fab/src/airflow/providers/fab/__init__.py | 2 +-
.../providers/fab/auth_manager/fab_auth_manager.py | 34 +-
.../fab/auth_manager/security_manager/override.py | 24 +-
.../airflow/providers/fab/www/package-lock.json | 73 +-
.../fab/src/airflow/providers/fab/www/package.json | 4 +-
.../providers/fab/www/security/permissions.py | 25 +-
.../fab/src/airflow/providers/fab/www/views.py | 2 +-
.../tests/unit/fab/auth_manager/test_security.py | 1 +
providers/google/README.rst | 144 +-
.../google/docs/operators/cloud/vertex_ai.rst | 48 +
providers/google/provider.yaml | 4 +
providers/google/pyproject.toml | 8 +-
.../providers/google/cloud/hooks/vertex_ai/ray.py | 223 +++
.../providers/google/cloud/links/vertex_ai.py | 49 +
.../providers/google/cloud/log/gcs_task_handler.py | 6 +-
.../providers/google/cloud/operators/cloud_run.py | 11 +-
.../google/cloud/operators/kubernetes_engine.py | 2 +-
.../google/cloud/operators/vertex_ai/ray.py | 388 +++++
.../airflow/providers/google/get_provider_info.py | 4 +
.../cloud/vertex_ai/example_vertex_ai_ray.py | 119 ++
.../unit/google/cloud/hooks/vertex_ai/test_ray.py | 286 ++++
.../unit/google/cloud/links/test_vertex_ai.py | 89 ++
.../unit/google/cloud/operators/test_cloud_run.py | 2 +
.../cloud/operators/test_kubernetes_engine.py | 2 +-
.../unit/google/cloud/operators/test_vertex_ai.py | 143 ++
.../azure/operators/container_instances.py | 4 +
.../azure/operators/test_container_instances.py | 5 +-
providers/mysql/pyproject.toml | 6 +-
.../airflow/providers/openlineage/utils/utils.py | 32 +-
.../tests/unit/openlineage/utils/test_utils.py | 131 +-
providers/opsgenie/pyproject.toml | 2 +-
.../src/airflow/providers/oracle/hooks/oracle.py | 8 +-
.../oracle/tests/unit/oracle/hooks/test_oracle.py | 21 +-
providers/pagerduty/pyproject.toml | 2 +-
.../src/airflow/providers/redis/hooks/redis.py | 12 +-
providers/slack/pyproject.toml | 2 +-
providers/smtp/pyproject.toml | 2 +-
.../airflow/providers/snowflake/hooks/snowflake.py | 19 +-
.../providers/snowflake/hooks/snowflake_sql_api.py | 42 +-
.../tests/unit/snowflake/hooks/test_snowflake.py | 36 +-
.../unit/snowflake/hooks/test_snowflake_sql_api.py | 13 +-
providers/standard/README.rst | 6 +-
providers/standard/docs/changelog.rst | 32 +
providers/standard/docs/commits.rst | 21 +
providers/standard/docs/index.rst | 2 +-
.../bash.rst => operators/latest_only.rst} | 15 +-
.../bash.rst => operators/trigger_dag_run.rst} | 15 +-
providers/standard/provider.yaml | 10 +-
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../providers/standard/get_provider_info.py | 7 +
.../providers/standard/operators/latest_only.py | 72 +-
.../standard/operators/test_generic_transfer.py | 224 ---
.../operators/test_latest_only_operator.py | 107 +-
pyproject.toml | 14 +-
reproducible_build.yaml | 4 +-
scripts/ci/docker-compose/devcontainer.env | 2 +-
.../ci/docker-compose/gremlin/graph.properties | 19 +-
.../gremlin-entrypoint.sh} | 29 +-
.../ci/docker-compose/gremlin/gremlin-server.yaml | 63 +
.../docker-compose/gremlin/log4j-server.properties | 32 +
.../ci/docker-compose/gremlin/logback.xml | 30 +-
...tegration-drill.yml => integration-gremlin.yml} | 27 +-
scripts/ci/docker-compose/remove-sources.yml | 1 +
scripts/ci/docker-compose/tests-sources.yml | 1 +
scripts/ci/install_breeze.sh | 4 +-
scripts/ci/pre_commit/supported_versions.py | 9 +-
.../ci/pre_commit/update_providers_dependencies.py | 3 +-
.../ci/testing/run_breeze_command_with_retries.sh | 46 -
scripts/docker/common.sh | 2 +-
scripts/docker/entrypoint_ci.sh | 4 +-
scripts/in_container/check_environment.sh | 4 +
scripts/in_container/run_generate_constraints.py | 90 +-
.../run_prepare_airflow_distributions.py | 2 +-
.../in_container/run_update_fastapi_api_spec.py | 18 +
scripts/tools/setup_breeze | 2 +-
task-sdk/dev/generate_task_sdk_models.py | 4 +
task-sdk/pyproject.toml | 1 +
task-sdk/src/airflow/sdk/__init__.py | 2 +-
task-sdk/src/airflow/sdk/definitions/dag.py | 18 +-
.../airflow/sdk/execution_time/execute_workload.py | 5 +-
.../src/airflow/sdk/execution_time/task_runner.py | 6 +-
.../task_sdk/execution_time/test_task_runner.py | 50 +-
498 files changed, 9170 insertions(+), 4889 deletions(-)
create mode 100644 .github/workflows/publish-docs-to-s3.yml
copy airflow-core/src/airflow/api_fastapi/{core_api/datamodels/dag_tags.py => auth/managers/simple/middleware.py} (58%)
delete mode 100644 airflow-core/src/airflow/ui/src/pages/Dashboard/Stats/DagFilterButton.tsx
create mode 100644 airflow-core/src/airflow/ui/src/pages/Dashboard/Stats/PluginImportErrors.tsx
copy airflow-core/src/airflow/ui/src/pages/Dashboard/Stats/{DAGImportErrorsModal.tsx => PluginImportErrorsModal.tsx} (80%)
create mode 100644 airflow-core/src/airflow/ui/src/pages/Dashboard/Stats/StatsCard.tsx
create mode 100644 airflow-core/src/airflow/ui/src/pages/TaskInstance/Logs/ExternalLogLink.tsx
copy airflow-core/tests/unit/api_fastapi/auth/managers/simple/{conftest.py => test_middleware.py} (51%)
create mode 100644 chart/newsfragments/49593.significant.rst
create mode 100644 dev/breeze/doc/images/output_release-management_publish-docs-to-s3.svg
create mode 100644 dev/breeze/doc/images/output_release-management_publish-docs-to-s3.txt
copy helm-tests/tests/helm_tests/airflow_aux/test_chart_quality.py => dev/breeze/src/airflow_breeze/utils/debug_pyproject_toml.py (54%)
create mode 100644 dev/breeze/src/airflow_breeze/utils/publish_docs_to_s3.py
create mode 100644 dev/breeze/tests/test_publish_docs_to_s3.py
copy providers/{standard => apache/tinkerpop}/README.rst (75%)
copy providers/{amazon/docs/connections/index.rst => apache/tinkerpop/docs/changelog.rst} (88%)
copy dev/breeze/src/airflow_breeze/templates/PROVIDER_COMMITS_TEMPLATE.rst.jinja2 => providers/apache/tinkerpop/docs/commits.rst (58%)
copy providers/apache/{beam => tinkerpop}/docs/conf.py (98%)
create mode 100644 providers/apache/tinkerpop/docs/connections/tinkerpop.rst
copy providers/apache/{kylin => tinkerpop}/docs/index.rst (68%)
copy providers/apache/{beam => tinkerpop}/docs/installing-providers-from-sources.rst (100%)
copy providers/apache/{flink/docs/operators.rst => tinkerpop/docs/operators/tinkerpop.rst} (58%)
copy providers/apache/{beam => tinkerpop}/docs/security.rst (100%)
copy providers/apache/{pig => tinkerpop}/provider.yaml (51%)
copy providers/apache/{cassandra => tinkerpop}/pyproject.toml (90%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/src/airflow}/__init__.py (100%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/src/airflow/providers}/__init__.py (100%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/src/airflow/providers/apache}/__init__.py (100%)
copy LICENSE => providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/LICENSE (100%)
copy providers/apache/{cassandra/src/airflow/providers/apache/cassandra => tinkerpop/src/airflow/providers/apache/tinkerpop}/__init__.py (94%)
copy providers/apache/{cassandra/src/airflow/providers/apache/cassandra => tinkerpop/src/airflow/providers/apache/tinkerpop}/get_provider_info.py (58%)
copy {airflow-core/src/airflow/api/common => providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/hooks}/__init__.py (100%)
create mode 100644 providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/hooks/gremlin.py
copy {airflow-core/src/airflow/api/common => providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/operators}/__init__.py (100%)
copy providers/{neo4j/src/airflow/providers/neo4j/operators/neo4j.py => apache/tinkerpop/src/airflow/providers/apache/tinkerpop/operators/gremlin.py} (52%)
copy providers/{airbyte => apache/tinkerpop}/tests/conftest.py (100%)
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/integration}/__init__.py (100%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/tests/integration/apache}/__init__.py (100%)
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/integration/apache/tinkerpop}/__init__.py (100%)
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/integration/apache/tinkerpop/hooks}/__init__.py (100%)
create mode 100644 providers/apache/tinkerpop/tests/integration/apache/tinkerpop/hooks/test_gremlin.py
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/system}/__init__.py (100%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/tests/system/apache}/__init__.py (100%)
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/system/apache/tinkerpop}/__init__.py (100%)
copy providers/apache/{pig/tests/system/apache/pig/example_pig.py => tinkerpop/tests/system/apache/tinkerpop/example_gremlin_dag.py} (76%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/tests/unit}/__init__.py (100%)
copy {airflow-core/tests/integration => providers/apache/tinkerpop/tests/unit/apache}/__init__.py (100%)
copy {airflow-core/src/airflow/api => providers/apache/tinkerpop/tests/unit/apache/tinkerpop}/__init__.py (100%)
copy {airflow-core/src/airflow/api/common => providers/apache/tinkerpop/tests/unit/apache/tinkerpop/hooks}/__init__.py (100%)
create mode 100644 providers/apache/tinkerpop/tests/unit/apache/tinkerpop/hooks/test_gremlin.py
copy {airflow-core/src/airflow/api/common => providers/apache/tinkerpop/tests/unit/apache/tinkerpop/operators}/__init__.py (100%)
create mode 100644 providers/apache/tinkerpop/tests/unit/apache/tinkerpop/operators/test_gremlin.py
copy providers/common/sql/tests/system/common/sql/{example_sql_execute_query.py => example_generic_transfer.py} (63%)
create mode 100644 providers/google/src/airflow/providers/google/cloud/hooks/vertex_ai/ray.py
create mode 100644 providers/google/src/airflow/providers/google/cloud/operators/vertex_ai/ray.py
create mode 100644 providers/google/tests/system/google/cloud/vertex_ai/example_vertex_ai_ray.py
create mode 100644 providers/google/tests/unit/google/cloud/hooks/vertex_ai/test_ray.py
create mode 100644 providers/google/tests/unit/google/cloud/links/test_vertex_ai.py
copy providers/standard/docs/{sensors/bash.rst => operators/latest_only.rst} (72%)
copy providers/standard/docs/{sensors/bash.rst => operators/trigger_dag_run.rst} (71%)
delete mode 100644 providers/standard/tests/unit/standard/operators/test_generic_transfer.py
copy airflow-core/src/airflow/api_fastapi/auth/managers/models/base_user.py => scripts/ci/docker-compose/gremlin/graph.properties (62%)
copy scripts/ci/docker-compose/{keycloak/init-keycloak-db.sh => gremlin/gremlin-entrypoint.sh} (56%)
create mode 100644 scripts/ci/docker-compose/gremlin/gremlin-server.yaml
create mode 100644 scripts/ci/docker-compose/gremlin/log4j-server.properties
copy airflow-core/tests/unit/testconfig/conf/core-with-trash.xml => scripts/ci/docker-compose/gremlin/logback.xml (59%)
copy scripts/ci/docker-compose/{integration-drill.yml => integration-gremlin.yml} (60%)
delete mode 100755 scripts/ci/testing/run_breeze_command_with_retries.sh