This is an automated email from the ASF dual-hosted git repository.
kaxilnaik pushed a change to branch v3-1-stable
in repository https://gitbox.apache.org/repos/asf/airflow.git
from f969e6374da Fix connection access in triggerer for deferrable
operators (#57154)
add 1d65a657d60 [v3-1-test] Fix Outlet Event Extra Data is Empty in Task
Instance Success Listener (#54568) (#57031)
add ead0603244c [v3-1-test] Fix: Adjust PanelButtons spacing and alignment
(#56570) (#57062)
add 063b2ff7aca Manual backport 56177 (#57068)
add e9434b0c890 [v3-1-test] Fix grid links for tasks with retries (#57063)
(#57097)
add 16780a5487c [v3-1-test] Port Airflow Python client changes (#57103)
(#57107)
add cff8386e3e6 [v3-1-test] fix get latest serialized_dag model query to
prevent "Out of sort memory" error (#55589) (#57042)
add e06073f8c12 [v3-1-test] Use `exc_info` for task instance heartbeat
failure exception logging (#57172) (#57179)
add be8d921bdf8 [v3-1-test] Implement integration test for airflowctl with
3.1 (#56124) (#56986)
add 0a65c9cc7e2 [v3-1-test] Add possibility of removing extra translations
missing in en (#57060) (#57064)
add 19c72914c3e Upgrade CI/dev tooling to latest versions (#57245)
add 6a288d05c58 [v3-1-test] Bump zizmor version to 1.16.0 to fix CI
(#57190) (#57195)
add 51ff37d83fd [v3-1-test] Fix systemd service files issues (#57126)
(#57231)
add 8f415b40826 [v3-1-test] Make single workflow to run both AMD and ARM
builds (#56887) (#57232)
add e0c1056433d [v3-1-test] Automatically publish
"apache-airflow-providers" docs (#57229) (#57244)
add dfc40e70f84 [v3-1-test] CI: Fix workflow name (#57246) (#57251)
add bf48f9142d0 [v3-1-test] Review and modernize release check process for
Airflow: (#57203) (#57252)
add 1c9556bcd84 Close German translation gaps for full UI translation
2025-10-21 on v3-1-test 2nd (#57100)
add 0480e437387 [v3-1-test] Auto-compile UI assets on Breeze start-airflow
command (#57219) (#57253)
add 0f4a2f69b22 [v3-1-test] Update release docs for Helm Chart to use
breeze workflow-run (#57255) (#57257)
add 647c06ea6a9 Fix runner type assignment in selective checks (#57254)
(#57258)
add 3a8a4534110 [v3-1-test] Extract prek hooks for Providers (#57250)
(#57260)
add 735b89bc3cb [v3-1-test] Disable some integration tests for ARM
(#57259) (#57261)
add fdf6f0f789b [v3-1-test] Only show latest minor versions in version
drop-down in docs (#57243) (#57262)
add 79cc1e45430 Sync airflowctl from main to v3-1-test to include all
changes in integration tests (#57171)
add a065d6b59f5 [v3-1-test] Add better platform diagnostics to see which
platform is used (#57284) (#57285)
add f04ee0966b5 [v3-1-test] Fix 3-1-test breeze unit tests (#57300)
add 3222f28d8b8 [v3-1-test] Clean up some root discovery in prek scripts
(#57290) (#57291)
add 61e8c751d76 Upgrade Happy-Dom in Plugin Template as well (#57287)
(#57301)
add 0ccea39af2b [v3-1-test] Extract prek hooks for Task-SDK (#57264)
(#57282)
add 40c2555fa4f DagBag re-added to exclusion list for task-sdk imports
(#57304)
add b7d69a24e5b [v3-1-test] Extract prek hooks for Helm (#57263) (#57303)
add 132d83cb7e7 [v3-1-test] Replace last pylint usage by ruff rule
(#57294) (#57307)
add 9b3c71af395 [v3-1-test] Extract prek hooks for airflowctl (#57308)
(#57312)
add 39e8d8be526 [v3-1-test] Fix wrong path pattern after moving prek check
to chart folder (#57311) (#57313)
add 9902eaf3a17 fix: Add auto-refresh functionality to Required Actions
page (#56404) (#57207)
add 1b29dac0489 Fix dag processor crash by ignoring callbacks from other
bundles (#57192) (#57330)
add f2340f00d79 [v3-1-test] remove outdated note from upgrading docs
(#57338) (#57345)
add 73e77abfeab Move structlog imports into a TYPE_CHECKING block to untie
version bumps (#57335)
add 8f610c846ac [v3-1-test] Fix job label extraction from the workflow
jobs response (#57375) (#57376)
add 6b7d2ca9ace [v3-1-test] Add better logging for jobs label (#57378)
(#57379)
add 6a9a8b90eea [v3-1-test] Fix asset name overflow in DAG list view
(#57108) (#57363)
add 9d7df3783e4 [v3-1-test] Add initial docs for airflow-ctl release
process (#57318) (#57332)
add 84e4c57e700 [v3-1-test] Fix formatting of commands to download RAT and
unpacking it (#57327) (#57331)
add 8cc4cd2d379 [v3-1-test] Add typer-slim as a common development
dependency (#57383) (#57387)
add fe7f73c34b3 [v3-1-test] Add Content-Type to Request Header in Task SDK
calls (#57377) (#57386)
add 88ad427dec7 [v3-1-test] Fix memory leak in Client via SSL context
creation (#57334) (#57374)
add 1247ac2aa10 [v3-1-test] Move docker to /mnt for the "Publish docs"
workflow (#57371) (#57394)
add 2cba85d4269 [v3-1-test] Synchronize boto3 and sqlalchemy dependency
lower-binds (#57385) (#57396)
add 323fd8e863b [v3-1-test] Protect against reproducibility issue with
Python client (#57390) (#57391)
add 0fdf131be7f [v3-1-test] Upgrade prek to most recent version (#57384)
(#57395)
add 42491516e1a [v3-1-test] Update main with Airflow 3.1.1 release details
(#57392) (#57402)
add 70bb3b076aa [v3-1-test] fix: make _get_ssl_context_cached a static
method (#57401) (#57403)
add 5303ff15324 [v3-1-test] Improve clarity on api workers recommendation
in docs (#57273) (#57404)
add 91e731e892b [v3-1-test] Update reproducible hash (#57407)
add 7225ee400e6 [v3-1-test] Log execution API server URL at task startup
(#57343) (#57409)
add cdd58e928ed [v3-1-test] [API] Use BulkTaskInstanceBody for patching
tis with new state (#57226) (#57412)
add 77875646599 [v3-1-test] Fix n+1 queries in ui/dags endpoint and use a
compact response model. (#57425) (#57444)
add f72f2a6aac0 [v3-1-test] Feat: Add XCom 'Timestamp' and unify task
columns (#57053) (#57447)
add e4d4514aeee [v3-1-test] Fix text selection jumping in logs pane to
match text editor behavior (#57309) (#57453)
add 4444f0daf6d [v3-1-test] Add hover rotation animation to AirflowPin
(#57326) (#57440)
add 761f0d63d30 [v3-1-test] Add Guan-Ming as committer (#57462) (#57484)
add 40f93e23179 [v3-1-test] Add number of queries guard in public
connection list endpoints (#57442) (#57489)
add 55e47120f9b [v3-1-test] Add number of queries guard in public backfill
list endpoints (#57439) (#57482)
add e5d73fddf0a [v3-1-test] fix: dag_docs content not scrollable when too
long (#57509) (#57518)
add f30f0b6fbe7 [v3-1-test] chore: update navigation z-index using Chakra
token (#57493) (#57520)
add dcbfcff6236 [v3-1-test] [Doc] Fixing some typos and spelling errors
(#57225) (#57521)
add 8d9387fe33e [v3-1-test] Fix instance_name in UI docs (#57380) (#57523)
add d9b253ce1c6 [v3-1-test] Add number of queries guard in public dag tags
list endpoints (#57499) (#57540)
add 39156a992c8 Add query guard in public asset list endpoints (#57438)
(#57543)
add d5a6971ba5e [v3-1-test] Fix HITL operators failing when using
notifiers (#57494) (#57551)
add 5b5142a307a [v3-1-test] Better highlighting of selected task instance
and edges in grid view (#57275) (#57560)
add 0fb0180d93a [v3-1-test] Add number of queries guard in public xcom
entries list endpoints (#55936) (#57554)
add b42eba8a837 [v3-1-test] Fix pre-commit zizmor hook version update to
fix CI upgrade check failure. (#57476) (#57486)
add 19045270ad1 Fix n+1 query to fetch tags in the dags list page (#57270)
(#57570)
add fcf6d936bf3 [v3-1-test] Add number of queries guard in public import
errors list endpoints (#57557) (#57569)
add 59d8710bb94 [v3-1-test] Add number of queries guard in public dag
warnings list endpoint (#57503) (#57546)
add d60088251ad Fix connection retrieval in `DagProcessorManager` for
bundle initialization (#57459)
add 72e3effee94 [v3-1-test] Add `--answer` flag support to breeze run
command (#57589) (#57591)
add 5376f26599c [v3-1-test] Enable ruff PLW0120 rule (#57456) (#57525)
add bc6b3301a40 [v3-1-test] Remove duplicate trove classifier (#57595)
(#57597)
add 3f026eb93f0 ci(github-actions): Upgrade uv and ruff versions to fix CI
(#57602)
add d90550ebf23 Add number of queries guard in public dags list endpoints
(#57506) (#57556)
add c4c22d5e4ab Alias `task_display_name` for `EventLogResponse` (#55160)
(#57609)
add 297ef8a580b [v3-1-test] Add number of queries guard in public event
logs list endpoints (#57508) (#57558)
add 87fd56015de Add number of queries guard in public plugins list
endpoints (#57562) (#57617)
add df811c7d54a [v3-1-test] Add number of queries guard in public import
jobs endpoints (#57559) (#57611)
add 3374c84d1c2 [v3-1-test] Add number of queries guard in public dag
reports list endpoints (#57496) (#57612)
add 73336aa0eb0 [v3-1-test] SerDe: Check more strictly for pydantic model
(#56758) (#57616)
add 860aa6f8ab8 Reduce log level for Connection not found event from error
to debug in task-sdk. (#57548)
add faeb1bf3c20 Fix tasks unable to access triggering_user_name` (#56193)
add b2998c45242 Remove callbacks from DAG `default_args` when
serializating it (#57397)
add f556d27c105 Fix triggerer errors after Airflow 2 to 3 migration
(#55884)
add 96ab2f0a517 Migrate retry handler in task SDK API client to use
tenacity instead of retryhttp (#56762)
add 578c313bcfc Fix dag-processor crash when renaming DAG tag case on
MySQL (#57113)
add 07173625db1 Respect task retries for signal killed tasks (#55767)
add 8aece500c6a Optimize DAG list query for users with limited access
(#57460)
add 22e8f9bb914 Fix airflow macro list in template document (#57529)
add 5fc6dc6a6f6 UI - Download Tasks Logs button (#56771)
add 93dd13afbc0 Fix iterating through `ObjectStoragePath` (#57156)
add 9dc3096cb79 Fix task instances counting in task group header (#55670)
add 6c3a1d5e2ba Bump Airflow to 3.1.2 and Task SDK to 1.1.2
add 9c8ae2374d7 Refine the visual design, interaction, and accessibility
of the global navigation (#57455)(#57565)
add 1336cbc54ca Optimize dynamic DAG updates to avoid loading large
serialized DAGs (#57592)
add 0725199125d Add release notes for 3.1.2rc1
No new revisions were added by this update.
Summary of changes:
.dockerignore | 1 +
.github/ISSUE_TEMPLATE/1-airflow_bug_report.yml | 6 +-
.github/actions/breeze/action.yml | 2 +-
.github/actions/install-prek/action.yml | 4 +-
.github/workflows/additional-prod-image-tests.yml | 31 +
.github/workflows/basic-tests.yml | 2 +-
.github/workflows/{ci-amd.yml => ci-amd-arm.yml} | 150 ++--
.github/workflows/ci-arm.yml | 860 -------------------
.github/workflows/ci-notification.yml | 4 +-
.github/workflows/publish-docs-to-s3.yml | 9 +-
.github/workflows/release_dockerhub_image.yml | 2 +-
.gitignore | 8 +-
.pre-commit-config.yaml | 525 ++----------
.rat-excludes | 148 +++-
.vscode/extensions.json | 5 +
.vscode/settings.json | 38 +
Dockerfile | 7 +-
Dockerfile.ci | 7 +-
README.md | 42 +-
RELEASE_NOTES.rst | 62 ++
.../docs/administration-and-deployment/plugins.rst | 35 +-
airflow-core/docs/best-practices.rst | 2 +-
airflow-core/docs/howto/customize-ui.rst | 6 +-
.../docs/howto/docker-compose/docker-compose.yaml | 2 +
.../default_instance_name_configuration.png | Bin 68441 -> 19151 bytes
.../example_instance_name_configuration.png | Bin 68231 -> 18698 bytes
.../docs/installation/supported-versions.rst | 2 +-
.../docs/installation/upgrading_to_airflow3.rst | 2 +-
airflow-core/docs/project.rst | 1 +
airflow-core/docs/start.rst | 2 +-
airflow-core/docs/templates-ref.rst | 2 +-
airflow-core/pyproject.toml | 2 +-
airflow-core/src/airflow/__init__.py | 2 +-
.../src/airflow/api_fastapi/common/db/dags.py | 31 +-
.../api_fastapi/core_api/datamodels/event_logs.py | 3 +
.../api_fastapi/core_api/datamodels/ui/dag_runs.py | 8 +
.../api_fastapi/core_api/datamodels/ui/dags.py | 4 +-
.../api_fastapi/core_api/openapi/_private_ui.yaml | 140 +---
.../core_api/openapi/v2-rest-api-generated.yaml | 5 +
.../api_fastapi/core_api/routes/public/assets.py | 5 +-
.../api_fastapi/core_api/routes/public/dags.py | 1 +
.../core_api/routes/public/event_logs.py | 7 +-
.../core_api/routes/public/task_instances.py | 14 +-
.../api_fastapi/core_api/routes/public/xcom.py | 8 +-
.../airflow/api_fastapi/core_api/routes/ui/dags.py | 19 +-
.../api_fastapi/core_api/services/ui/grid.py | 17 +-
.../execution_api/datamodels/taskinstance.py | 1 +
.../api_fastapi/execution_api/versions/__init__.py | 4 +-
.../versions/{v2025_10_27.py => v2025_11_05.py} | 17 +-
.../src/airflow/cli/commands/db_command.py | 3 +-
.../src/airflow/config_templates/config.yml | 6 +-
airflow-core/src/airflow/configuration.py | 3 +-
.../src/airflow/dag_processing/collection.py | 24 +-
airflow-core/src/airflow/dag_processing/manager.py | 16 +-
.../src/airflow/dag_processing/processor.py | 4 +
.../src/airflow/jobs/triggerer_job_runner.py | 8 +-
airflow-core/src/airflow/models/log.py | 8 +
airflow-core/src/airflow/models/serialized_dag.py | 36 +-
airflow-core/src/airflow/models/xcom.py | 2 +-
.../airflow/serialization/serialized_objects.py | 17 +
airflow-core/src/airflow/serialization/typing.py | 8 +-
airflow-core/src/airflow/settings.py | 4 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 27 +-
.../airflow/ui/openapi-gen/requests/types.gen.ts | 4 +-
airflow-core/src/airflow/ui/public/i18n/README.md | 12 +
.../ui/public/i18n/locales/ar/components.json | 1 -
.../airflow/ui/public/i18n/locales/ar/dags.json | 3 +-
.../ui/public/i18n/locales/ca/components.json | 1 -
.../airflow/ui/public/i18n/locales/de/common.json | 5 -
.../airflow/ui/public/i18n/locales/de/hitl.json | 5 -
.../airflow/ui/public/i18n/locales/el/common.json | 3 -
.../airflow/ui/public/i18n/locales/en/common.json | 5 +
.../ui/public/i18n/locales/es/components.json | 1 -
.../airflow/ui/public/i18n/locales/es/dags.json | 3 +-
.../airflow/ui/public/i18n/locales/fr/dags.json | 3 +-
.../ui/public/i18n/locales/he/components.json | 1 -
.../airflow/ui/public/i18n/locales/he/dags.json | 3 +-
.../airflow/ui/public/i18n/locales/hi/common.json | 3 -
.../ui/public/i18n/locales/hi/components.json | 1 -
.../src/airflow/ui/public/i18n/locales/hi/dag.json | 5 +-
.../airflow/ui/public/i18n/locales/hi/dags.json | 3 +-
.../airflow/ui/public/i18n/locales/hu/common.json | 2 -
.../ui/public/i18n/locales/hu/components.json | 1 -
.../airflow/ui/public/i18n/locales/hu/dags.json | 3 +-
.../ui/public/i18n/locales/it/components.json | 1 -
.../airflow/ui/public/i18n/locales/it/dags.json | 3 +-
.../ui/public/i18n/locales/ko/components.json | 1 -
.../src/airflow/ui/public/i18n/locales/ko/dag.json | 2 -
.../ui/public/i18n/locales/nl/components.json | 1 -
.../airflow/ui/public/i18n/locales/nl/dags.json | 3 +-
.../airflow/ui/public/i18n/locales/pl/common.json | 2 -
.../airflow/ui/public/i18n/locales/pl/hitl.json | 3 -
.../ui/public/i18n/locales/pt/components.json | 1 -
.../airflow/ui/public/i18n/locales/pt/dags.json | 3 +-
.../airflow/ui/public/i18n/locales/th/common.json | 2 -
.../ui/public/i18n/locales/tr/components.json | 1 -
.../airflow/ui/public/i18n/locales/tr/dags.json | 3 +-
.../ui/public/i18n/locales/zh-CN/components.json | 1 -
.../airflow/ui/public/i18n/locales/zh-CN/dags.json | 3 +-
.../ui/public/i18n/locales/zh-TW/components.json | 1 -
.../src/airflow/ui/src/components/Graph/Edge.tsx | 6 +-
.../airflow/ui/src/components/Graph/TaskNode.tsx | 2 +-
.../ui/src/components/renderStructuredLog.tsx | 129 ++-
.../ui/src/components/ui/ResizableWrapper.tsx | 2 +
.../airflow/ui/src/layouts/Details/Grid/GridTI.tsx | 15 +-
.../layouts/Details/Grid/TaskInstancesColumn.tsx | 5 +-
.../ui/src/layouts/Details/PanelButtons.tsx | 14 +-
.../src/airflow/ui/src/layouts/Nav/AdminButton.tsx | 2 +-
.../airflow/ui/src/layouts/Nav/BrowseButton.tsx | 2 +-
.../src/airflow/ui/src/layouts/Nav/DocsButton.tsx | 13 +-
.../src/airflow/ui/src/layouts/Nav/Nav.tsx | 34 +-
.../src/airflow/ui/src/layouts/Nav/NavButton.tsx | 146 ++--
.../airflow/ui/src/layouts/Nav/PluginMenuItem.tsx | 19 +-
.../src/airflow/ui/src/layouts/Nav/PluginMenus.tsx | 6 +-
.../airflow/ui/src/layouts/Nav/SecurityButton.tsx | 2 +-
.../ui/src/layouts/Nav/TimezoneMenuItem.tsx | 7 +-
.../ui/src/layouts/Nav/UserSettingsButton.tsx | 145 ++--
.../src/airflow/ui/src/mocks/handlers/dags.ts | 22 +-
.../ui/src/pages/Dag/Overview/TaskLogPreview.tsx | 6 +-
.../ui/src/pages/DagsList/AssetSchedule.tsx | 11 +-
.../airflow/ui/src/pages/DagsList/DagCard.test.tsx | 30 +-
.../src/airflow/ui/src/pages/DagsList/DagCard.tsx | 2 +-
.../src/airflow/ui/src/pages/DagsList/DagsList.tsx | 2 +-
.../airflow/ui/src/pages/DagsList/RecentRuns.tsx | 4 +-
.../Dashboard/FavoriteDags/FavoriteDagCard.tsx | 4 +-
.../pages/HITLTaskInstances/HITLTaskInstances.tsx | 50 +-
.../ui/src/pages/TaskInstance/Logs/Logs.tsx | 68 +-
.../src/pages/TaskInstance/Logs/TaskLogContent.tsx | 25 +-
.../src/pages/TaskInstance/Logs/TaskLogHeader.tsx | 17 +
.../src/airflow/ui/src/pages/XCom/XCom.tsx | 13 +-
.../src/airflow/ui/src/queries/useLogs.tsx | 3 +-
.../tests/unit/api_fastapi/common/db/test_dags.py | 69 ++
.../core_api/routes/public/test_assets.py | 24 +-
.../core_api/routes/public/test_backfills.py | 6 +-
.../core_api/routes/public/test_connections.py | 6 +-
.../core_api/routes/public/test_dag_stats.py | 11 +-
.../core_api/routes/public/test_dag_tags.py | 4 +-
.../core_api/routes/public/test_dag_warning.py | 4 +-
.../core_api/routes/public/test_dags.py | 69 +-
.../core_api/routes/public/test_event_logs.py | 8 +-
.../core_api/routes/public/test_import_error.py | 7 +-
.../api_fastapi/core_api/routes/public/test_job.py | 4 +-
.../core_api/routes/public/test_plugins.py | 10 +-
.../core_api/routes/public/test_task_instances.py | 13 +
.../core_api/routes/public/test_xcom.py | 29 +-
.../api_fastapi/core_api/routes/ui/test_dags.py | 74 +-
.../api_fastapi/core_api/routes/ui/test_grid.py | 8 +-
.../versions/head/test_task_instances.py | 57 ++
.../versions/v2025_09_23/test_task_instances.py | 65 ++
.../tests/unit/dag_processing/test_collection.py | 32 +
.../tests/unit/dag_processing/test_manager.py | 46 +
airflow-core/tests/unit/jobs/test_triggerer_job.py | 32 +
.../tests/unit/models/test_serialized_dag.py | 84 ++
.../serialization/serializers/test_serializers.py | 22 +
.../unit/serialization/test_dag_serialization.py | 62 ++
.../pyproject.toml | 7 +-
.../tests/airflowctl_tests}/__init__.py | 8 +-
.../tests/airflowctl_tests/conftest.py | 253 ++++++
.../tests/airflowctl_tests}/constants.py | 6 +
.../airflowctl_tests/test_airflowctl_commands.py | 77 ++
airflow-ctl/.pre-commit-config.yaml | 51 ++
airflow-ctl/docs/cli-and-env-variables-ref.rst | 7 +
airflow-ctl/docs/howto/index.rst | 56 +-
airflow-ctl/docs/images/command_hashes.txt | 8 +-
...flowctl_api_network_architecture_diagram.md5sum | 1 +
...airflowctl_api_network_architecture_diagram.png | Bin 0 -> 63371 bytes
.../airflowctl_api_network_architecture_diagram.py | 86 ++
airflow-ctl/docs/images/output_backfill.svg | 125 +++
airflow-ctl/docs/images/output_backfills.svg | 125 ---
airflow-ctl/docs/images/output_dag.svg | 145 ----
airflow-ctl/docs/images/output_dags.svg | 145 ++++
airflow-ctl/docs/images/output_main.svg | 116 +--
airflow-ctl/docs/images/output_version.svg | 59 +-
airflow-ctl/pyproject.toml | 2 +-
airflow-ctl/src/airflowctl/__init__.py | 2 +-
airflow-ctl/src/airflowctl/api/client.py | 35 +-
.../src/airflowctl/api/datamodels/generated.py | 1 +
airflow-ctl/src/airflowctl/api/operations.py | 49 +-
airflow-ctl/src/airflowctl/ctl/cli_config.py | 48 +-
.../src/airflowctl/ctl/commands/version_command.py | 8 +-
.../tests/airflow_ctl/api/test_operations.py | 4 +-
.../airflow_ctl/ctl/commands/test_auth_command.py | 6 +-
.../ctl/commands/test_version_command.py | 11 +-
.../tests/airflow_ctl/ctl/test_cli_config.py | 13 +-
chart/.pre-commit-config.yaml | 115 +++
clients/python/CHANGELOG.md | 36 +
clients/python/version.txt | 2 +-
.../testing/task_sdk_integration_tests.rst | 2 +-
dev/README_RELEASE_AIRFLOW.md | 46 +-
dev/README_RELEASE_AIRFLOWCTL.md | 933 +++++++++++++++++++++
dev/README_RELEASE_HELM_CHART.md | 65 +-
dev/breeze/doc/05_test_commands.rst | 21 +-
dev/breeze/doc/ci/02_images.md | 6 +-
dev/breeze/doc/images/output_ci-image.svg | 4 +-
dev/breeze/doc/images/output_ci-image.txt | 2 +-
.../images/output_ci-image_export-mount-cache.svg | 2 +-
.../images/output_ci-image_export-mount-cache.txt | 2 +-
.../images/output_ci-image_import-mount-cache.svg | 2 +-
.../images/output_ci-image_import-mount-cache.txt | 2 +-
.../output_release-management_publish-docs.svg | 38 +-
.../output_release-management_publish-docs.txt | 2 +-
dev/breeze/doc/images/output_run.svg | 18 +-
dev/breeze/doc/images/output_run.txt | 2 +-
.../output_setup_check-all-params-in-groups.svg | 10 +-
.../output_setup_check-all-params-in-groups.txt | 2 +-
.../output_setup_regenerate-command-images.svg | 36 +-
.../output_setup_regenerate-command-images.txt | 2 +-
dev/breeze/doc/images/output_testing.svg | 30 +-
dev/breeze/doc/images/output_testing.txt | 2 +-
...utput_testing_airflow-ctl-integration-tests.svg | 144 ++++
...utput_testing_airflow-ctl-integration-tests.txt | 1 +
dev/breeze/pyproject.toml | 4 +-
.../airflow_breeze/commands/ci_image_commands.py | 4 +-
.../airflow_breeze/commands/developer_commands.py | 1 +
.../commands/release_management_commands.py | 37 +-
.../commands/release_management_commands_config.py | 2 -
.../airflow_breeze/commands/testing_commands.py | 56 ++
.../commands/testing_commands_config.py | 15 +-
.../airflow_breeze/commands/workflow_commands.py | 7 +-
dev/breeze/src/airflow_breeze/global_constants.py | 21 +-
dev/breeze/src/airflow_breeze/utils/packages.py | 3 +-
.../src/airflow_breeze/utils/publish_docs_to_s3.py | 35 +-
dev/breeze/src/airflow_breeze/utils/run_tests.py | 5 +
.../src/airflow_breeze/utils/selective_checks.py | 70 +-
dev/breeze/tests/test_selective_checks.py | 288 +++++++
dev/breeze/uv.lock | 587 ++++++-------
dev/check_files.py | 44 +-
dev/i18n/check_translations_completeness.py | 70 +-
.../react_plugin_template/package.json | 2 +-
devel-common/pyproject.toml | 4 +-
docker-stack-docs/README.md | 10 +-
.../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 +-
docker-tests/pyproject.toml | 1 -
docs/spelling_wordlist.txt | 2 +
generated/PYPI_README.md | 38 +-
kubernetes-tests/pyproject.toml | 1 -
providers/.pre-commit-config.yaml | 232 +++++
.../airflow/providers/amazon/aws/hooks/base_aws.py | 2 +-
.../providers/amazon/aws/hooks/batch_client.py | 10 +-
.../airflow/providers/amazon/aws/hooks/chime.py | 2 +-
.../airflow/providers/amazon/aws/hooks/datasync.py | 3 +-
.../amazon/aws/operators/cloud_formation.py | 4 +-
.../amazon/aws/transfers/azure_blob_to_s3.py | 4 +-
.../providers/apache/beam/operators/beam.py | 2 +-
.../providers/celery/executors/celery_executor.py | 2 +-
.../celery/executors/celery_executor_utils.py | 2 +-
.../tests/unit/common/sql/operators/test_sql.py | 2 +-
.../unit/elasticsearch/log/elasticmock/__init__.py | 3 +-
.../providers/google/cloud/hooks/bigquery.py | 17 +-
.../providers/google/cloud/hooks/cloud_sql.py | 4 +-
.../airflow/providers/google/cloud/hooks/gcs.py | 3 +-
.../cloud/hooks/vertex_ai/batch_prediction_job.py | 4 +-
.../google/cloud/operators/cloud_batch.py | 2 +-
.../providers/google/cloud/operators/cloud_run.py | 2 +-
.../providers/google/suite/hooks/calendar.py | 2 +-
providers/hashicorp/pyproject.toml | 2 +-
providers/http/docs/changelog.rst | 4 +-
.../jenkins/operators/jenkins_job_trigger.py | 8 +-
.../docs/auth-manager/manage/permissions.rst | 2 +-
providers/ssh/docs/changelog.rst | 2 +-
pyproject.toml | 15 +-
reproducible_build.yaml | 4 +-
.../ci/dockerfiles/apache-rat/build_and_push.sh | 4 +-
scripts/ci/install_breeze.sh | 2 +-
scripts/ci/prek/boring_cyborg.py | 10 +-
scripts/ci/prek/chart_schema.py | 5 +-
scripts/ci/prek/check_aiobotocore_optional.py | 2 -
.../ci/prek/check_airflow_v_imports_in_tests.py | 4 +-
scripts/ci/prek/check_imports_in_providers.py | 2 +-
scripts/ci/prek/check_init_in_tests.py | 7 +-
scripts/ci/prek/check_license.py | 12 +-
.../check_template_context_variable_in_sync.py | 18 +-
scripts/ci/prek/common_prek_utils.py | 3 +-
scripts/ci/prek/mypy.py | 8 +-
scripts/ci/prek/ruff_format.py | 2 +-
scripts/ci/prek/supported_versions.py | 10 +-
scripts/ci/prek/update_providers_build_files.py | 6 +-
scripts/ci/prek/update_providers_dependencies.py | 3 +-
scripts/ci/prek/upgrade_important_versions.py | 2 +-
scripts/ci/prek/vendor_k8s_json_schema.py | 3 +-
.../docker/install_airflow_when_building_images.sh | 1 +
scripts/in_container/in_container_utils.py | 3 +-
.../in_container/install_airflow_and_providers.py | 268 +++++-
.../in_container/run_capture_airflowctl_help.py | 4 +-
scripts/systemd/airflow-flower.service | 1 -
scripts/systemd/airflow-kerberos.service | 2 +-
scripts/systemd/airflow-triggerer.service | 9 +-
scripts/tools/setup_breeze | 2 +-
.../airflow_shared/logging/percent_formatter.py | 7 +-
task-sdk-tests/pyproject.toml | 1 -
task-sdk/.gitignore | 14 +
task-sdk/.pre-commit-config.yaml | 43 +
task-sdk/pyproject.toml | 6 +-
task-sdk/src/airflow/sdk/__init__.py | 2 +-
task-sdk/src/airflow/sdk/api/client.py | 57 +-
.../src/airflow/sdk/api/datamodels/_generated.py | 3 +-
task-sdk/src/airflow/sdk/execution_time/comms.py | 11 +
.../src/airflow/sdk/execution_time/supervisor.py | 22 +-
.../src/airflow/sdk/execution_time/task_runner.py | 13 +-
task-sdk/src/airflow/sdk/io/path.py | 5 +
task-sdk/src/airflow/sdk/types.py | 1 +
task-sdk/tests/task_sdk/api/test_client.py | 408 ++++-----
.../task_sdk/execution_time/test_supervisor.py | 76 +-
.../task_sdk/execution_time/test_task_runner.py | 140 +++-
task-sdk/tests/task_sdk/io/test_path.py | 9 +
316 files changed, 6609 insertions(+), 3337 deletions(-)
rename .github/workflows/{ci-amd.yml => ci-amd-arm.yml} (89%)
delete mode 100644 .github/workflows/ci-arm.yml
create mode 100644 .vscode/extensions.json
create mode 100644 .vscode/settings.json
copy
airflow-core/src/airflow/api_fastapi/execution_api/versions/{v2025_10_27.py =>
v2025_11_05.py} (66%)
copy {task-sdk-tests => airflow-ctl-tests}/pyproject.toml (92%)
copy {airflow-ctl/src/airflowctl =>
airflow-ctl-tests/tests/airflowctl_tests}/__init__.py (88%)
create mode 100644 airflow-ctl-tests/tests/airflowctl_tests/conftest.py
copy {docker-tests/tests/docker_tests =>
airflow-ctl-tests/tests/airflowctl_tests}/constants.py (84%)
create mode 100644
airflow-ctl-tests/tests/airflowctl_tests/test_airflowctl_commands.py
create mode 100644 airflow-ctl/.pre-commit-config.yaml
create mode 100644
airflow-ctl/docs/images/diagrams/airflowctl_api_network_architecture_diagram.md5sum
create mode 100644
airflow-ctl/docs/images/diagrams/airflowctl_api_network_architecture_diagram.png
create mode 100644
airflow-ctl/docs/images/diagrams/airflowctl_api_network_architecture_diagram.py
create mode 100644 airflow-ctl/docs/images/output_backfill.svg
delete mode 100644 airflow-ctl/docs/images/output_backfills.svg
delete mode 100644 airflow-ctl/docs/images/output_dag.svg
create mode 100644 airflow-ctl/docs/images/output_dags.svg
create mode 100644 chart/.pre-commit-config.yaml
create mode 100644 dev/README_RELEASE_AIRFLOWCTL.md
create mode 100644
dev/breeze/doc/images/output_testing_airflow-ctl-integration-tests.svg
create mode 100644
dev/breeze/doc/images/output_testing_airflow-ctl-integration-tests.txt
create mode 100644 providers/.pre-commit-config.yaml
create mode 100644 task-sdk/.gitignore
create mode 100644 task-sdk/.pre-commit-config.yaml