You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ka...@apache.org on 2025/08/13 15:57:12 UTC
(airflow) branch v3-0-stable updated (367d8680af3 -> 52083d05092)
This is an automated email from the ASF dual-hosted git repository.
kaxilnaik pushed a change to branch v3-0-stable
in repository https://gitbox.apache.org/repos/asf/airflow.git
from 367d8680af3 Update release notes for Airflow 3.0.4
add 489cf274024 Set minimum version for common.messaging to 1.0.3 (#54160) (#54176)
add 8b43a9e6f45 [v3-0-test] Add IP validation to example_dag_decorator DAG (#54136) (#54208)
add 68ca65bb5fd [v3-0-test] Fix: Apply DAG permission filter to dashboard (closes #53938) (#54126) (#54215)
add 304b2cc3636 Fix: Validate and handle invalid `extra` field in connections UI and API (#53963) (#54034) (#54235)
add f8ba8ea6c2c [v3-0-test] Fix redirects (#54238) (#54251)
add ce22573e8e1 [v3-0-test] Fix reproducibility issue for tarballs with symlink (#54264) (#54267)
add c846511ae79 [v3-0-test] Fetch from remote before performing reproducible package checks for PMCs (#54206) (#54275)
add be5907a2a55 [v3-0-test] Connection Extra additional test case for validation (#54239) (#54244)
add 2770ad2fde2 [v3-0-test] Fix for Edit and Delete request issue 53681 (#53815) (#54268)
add e3637a216b5 [v3-0-test] Fix cherry-pick detection in airflow-github script (#54287) (#54289)
add b6f4621da80 [v3-0-test] Massively optimize airflow-github script performance (96% faster) (#54292) (#54293)
add b07017b0aab Restore proper DAG callback execution context (#53684)
add cd68819d59e [v3-0-test] Validate publish documentation versions (#54272) (#54282)
add 820cb2b7a04 Fix dag_versions property when created_dag_version is None with bundle_version set (#53952) (#54010)
add a30cc59c7bc [v3-0-test] Do not include GitHub bots in release test requests (#54137) (#54150)
add 834e03323b6 [v3-0-test] Add FAQ entry about testing connections and "Canary" Dag (#54110) (#54151)
add 45e9f33bad1 [v3-0-test] fix(UI): Correct illegible DAG params text in dark mode (#54245) (#54260)
add c27f253e673 Fix redirects repository urls, use head repo when running PR workflows (#54301) (#54303)
add ae3755511c0 [v3-0-test] Initialize custom variables before running db-reset (#54324) (#54327)
add 06f37b36a0e Bump uv and pre-commit versions (#54304) (#54328)
add 0a2f8cb6549 [v3-0-test] Use env var connections instead of mocks in kube system tests (#54261) (#54320)
add 15da8f750e5 Convert auth manager into cachable flag and configure it for more commands (#54325) (#54330)
add d47704734e6 Prevent `DetachedInstanceError` when processing executor event (#54334)
add d13713eb338 Allow `DEFAULT_QUEUE` to be configurable from airflow settings in Task SDK (#52786)
add 2d2eedd0def Fix task configuration defaults for AbstractOperator (#52871)
add 03a78e8bbef Add note about ruff rules and preview flag (#53331)
add 4ad2433c3c6 Fix broken link in advanced logging config docs (#53460)
add 257735fc790 Update dag bundles docs; add s3, fix git classpath (#53473)
add 18e17f2f37a Fixed Task group names duplication in Task's task_id for MappedOperator (#53532)
add 2b993bea5be Fix custom xcom backend serialize when BaseXCom.get_all is used (#53814)
add 2b34a654440 Restore ``get_previous_dagrun`` functionality for task context (#53655)
add cd60cfc5dfc Do not ignore `include_prior_dates` in xcom_pull when `map_indexes` is not specified (#53809)
add 3edbef7c083 Allow setting and deleting variables and xcoms from triggers (#53514)
add 8e2a348abe2 Fix type error with TIH when reading served log (#54114)
add 5c44ad069dc Bump uv and pre-commit versions (#54304)
add 364d2468a18 Fix `DetachedInstanceError` when accessing `DagRun.created_dag_version` (#54362)
add e2ecd8bccdb [v3-0-test] Fail upgrade pre-commit when pre-commits need to be updated (#54346) (#54373)
add af78c3d63ca [v3-0-test] Upgrade to latest Lucas Pre-commit (#54374) (#54375)
add 27cf1ccc24a [v3-0-test] Skip running db queries for Spans when they are disabled (#54075) (#54404)
add f34846c0186 [v3-0-test] Use env var connections instead of actual db connections in kube systests (#54385) (#54391)
add 72d92d454b2 [v3-0-test] Migrate `HiveToDynamoDBOperator` and `SqlToS3Operator` to use `get_df` (#50126) (#54409)
add f0017e75062 [v3-0-test] fix: corrects issues with edge rendering on the graph view (#53998) (#54412)
add d902c7f3a32 [v3-0-test] Improve condition for pushing the cache for images (#54415) (#54418)
add 22da4568502 [v3-0-test] Update selective checks to run core tests when serialization files changes (#54423) (#54426)
add 041128b6d13 [v3-0-test] Upgrade ruff to latest version (0.12.1) (#52562) (#54406)
add 5c0781193e8 [v3-0-test] Allow downgrading to 2.11 from 3.x (#54371) (#54399)
add ed7e05f2e7d [v3-0-test] Prevent repeated warning of triggers being added twice in triggerer (#54438) (#54441)
add 2d12289975d [v3-0-test] Explicitly set the JWTGenerator private_key field to None for service logs retrieval (#54442) (#54444)
add 13b25673ac4 [v3-0-test] Fix Certain DAG import errors ("role does not exist") don't persist in Airflow (#51511) (#54432)
add 60ee14c2c3d [v3-0-test] Allow failure callbacks for stuck in queued TIs that fail (#53435) (#54401)
add b6a11e70f33 [v3-0-test] Ensure TaskInstance.end_date and duration are populated before invoking failure callbacks (#52729) (#54458)
add ed08b530f8b [v3-0-test] Handle overflow in TaskInstance `next_retry_datetime` (#48557) (#54460)
add 9d41e5d9e48 [v3-0-test] Refactor example task to use context and logging for parameter access (#54450) (#54463)
add 63487122e8c Add ordering to AssetEvent query in SchedulerJobRunner (#52231)
add 5da6500cf04 Bump Airflow to 3.0.5 and Task SDK to 1.0.5
add 3251e68cf9c fix map_index is null dynamic task mapping bug (#54249)
add 0ab324086c7 fix: calculate TaskName indentation instead of using chakra spacing vars (#54419)
add 95bfa746504 [v3-0-test] Hide individual Public Interface subsections from sidebar navigation (#54457) (#54465)
add 9e58943a436 Add Release notes for Airflow 3.0.5 and Task SDK 1.0.5
add 12c94e29f18 Bump `zizmor` pre-commit to fix static checks (#54468)
add 52083d05092 Bump Task SDK to 1.0.5
No new revisions were added by this update.
Summary of changes:
.github/actions/install-pre-commit/action.yml | 4 +-
.github/workflows/basic-tests.yml | 4 +-
.github/workflows/ci-amd.yml | 9 +-
.github/workflows/ci-image-checks.yml | 29 +-
.github/workflows/finalize-tests.yml | 4 +-
.pre-commit-config.yaml | 24 +-
Dockerfile | 2 +-
Dockerfile.ci | 18 +-
README.md | 12 +-
RELEASE_NOTES.rst | 57 ++++
.../administration-and-deployment/dag-bundles.rst | 5 +-
.../advanced-logging-configuration.rst | 2 +-
airflow-core/docs/core-concepts/params.rst | 16 +-
airflow-core/docs/faq.rst | 35 +++
airflow-core/docs/index.rst | 2 +
.../docs/installation/supported-versions.rst | 2 +-
.../docs/installation/upgrading_to_airflow3.rst | 18 +-
airflow-core/docs/public-airflow-interface.rst | 8 +
airflow-core/docs/redirects.txt | 4 +-
airflow-core/docs/start.rst | 2 +-
airflow-core/pyproject.toml | 4 +-
airflow-core/src/airflow/__init__.py | 2 +-
.../api_fastapi/core_api/datamodels/connections.py | 23 ++
.../api_fastapi/core_api/routes/public/pools.py | 6 +-
.../api_fastapi/core_api/routes/ui/dashboard.py | 11 +-
.../execution_api/datamodels/taskinstance.py | 8 +-
.../api_fastapi/execution_api/routes/dag_runs.py | 45 ++-
.../execution_api/routes/task_instances.py | 11 +-
.../api_fastapi/execution_api/routes/xcoms.py | 2 +
.../api_fastapi/execution_api/versions/__init__.py | 9 +
.../execution_api/versions/v2025_08_10.py | 50 ++++
.../src/airflow/api_fastapi/logging/decorators.py | 9 +-
.../src/airflow/callbacks/callback_requests.py | 8 +
.../src/airflow/cli/commands/db_command.py | 30 +-
.../src/airflow/dag_processing/collection.py | 2 +-
.../src/airflow/dag_processing/processor.py | 64 ++++-
.../airflow/example_dags/example_dag_decorator.py | 12 +-
.../src/airflow/jobs/scheduler_job_runner.py | 107 +++++--
.../src/airflow/jobs/triggerer_job_runner.py | 21 ++
airflow-core/src/airflow/models/__init__.py | 21 ++
.../src/airflow/models/abstractoperator.py | 34 ---
airflow-core/src/airflow/models/dagrun.py | 87 +++++-
airflow-core/src/airflow/models/taskinstance.py | 18 +-
.../ui/src/components/Graph/useGraphLayout.ts | 15 +-
.../ui/src/components/RenderedJsonField.tsx | 6 +-
.../ui/src/layouts/Details/Grid/TaskNames.tsx | 6 +-
.../ui/src/pages/Connections/ConnectionForm.tsx | 11 +-
airflow-core/src/airflow/utils/db.py | 28 +-
airflow-core/src/airflow/utils/db_manager.py | 6 -
.../src/airflow/utils/log/file_task_handler.py | 7 +-
.../src/airflow/utils/log/logging_mixin.py | 6 +-
.../tests/unit/always/test_providers_manager.py | 10 +-
.../core_api/routes/public/test_connections.py | 45 +++
.../core_api/routes/public/test_pools.py | 89 +++++-
.../execution_api/versions/head/test_dag_runs.py | 139 +++++++++
.../versions/head/test_task_instances.py | 81 +++++-
.../execution_api/versions/head/test_xcoms.py | 49 ++++
.../tests/unit/callbacks/test_callback_requests.py | 195 +++++++++++++
.../tests/unit/cli/commands/test_db_command.py | 16 ++
airflow-core/tests/unit/core/test_configuration.py | 49 ++--
.../tests/unit/dag_processing/test_collection.py | 124 +++++++-
.../tests/unit/dag_processing/test_manager.py | 2 +
.../tests/unit/dag_processing/test_processor.py | 269 +++++++++++++++++-
airflow-core/tests/unit/datasets/test_dataset.py | 7 +-
airflow-core/tests/unit/jobs/test_scheduler_job.py | 83 ++++--
airflow-core/tests/unit/jobs/test_triggerer_job.py | 177 ++++++++++--
.../tests/unit/listeners/test_listeners.py | 12 +-
airflow-core/tests/unit/models/test_dagrun.py | 31 +-
.../tests/unit/models/test_taskinstance.py | 31 +-
airflow-core/tests/unit/models/test_timestamp.py | 4 +-
.../unit/serialization/test_dag_serialization.py | 2 +
airflow-core/tests/unit/utils/test_db.py | 14 -
airflow-core/tests/unit/utils/test_db_manager.py | 22 +-
airflow-core/tests/unit/utils/test_log_handlers.py | 12 +
airflow-core/tests/unit/utils/test_warnings.py | 2 +-
contributing-docs/08_static_code_checks.rst | 2 -
dev/README_RELEASE_AIRFLOW.md | 1 +
dev/airflow-github | 241 +++++++++++++---
dev/breeze/doc/ci/02_images.md | 4 +-
dev/breeze/doc/images/output-commands.svg | 162 ++++++-----
...tput_release-management_add-back-references.svg | 26 +-
...tput_release-management_add-back-references.txt | 2 +-
dev/breeze/doc/images/output_setup_config.svg | 28 +-
dev/breeze/doc/images/output_setup_config.txt | 2 +-
dev/breeze/doc/images/output_shell.svg | 316 +++++++++++----------
dev/breeze/doc/images/output_shell.txt | 2 +-
dev/breeze/doc/images/output_start-airflow.svg | 262 +++++++++--------
dev/breeze/doc/images/output_start-airflow.txt | 2 +-
dev/breeze/doc/images/output_static-checks.svg | 8 +-
dev/breeze/doc/images/output_static-checks.txt | 2 +-
.../src/airflow_breeze/commands/ci_commands.py | 4 +
.../src/airflow_breeze/commands/common_options.py | 10 +
.../airflow_breeze/commands/developer_commands.py | 15 +-
.../commands/developer_commands_config.py | 9 +-
.../src/airflow_breeze/commands/main_command.py | 2 +
.../commands/release_management_commands.py | 32 ++-
.../commands/release_management_commands_config.py | 2 +
.../src/airflow_breeze/commands/setup_commands.py | 8 +-
.../commands/setup_commands_config.py | 1 +
dev/breeze/src/airflow_breeze/global_constants.py | 4 +-
dev/breeze/src/airflow_breeze/pre_commit_ids.py | 1 -
.../airflow_breeze/utils/add_back_references.py | 24 +-
.../utils/docs_version_validation.py | 114 ++++++++
.../src/airflow_breeze/utils/publish_docs_to_s3.py | 2 +-
.../src/airflow_breeze/utils/reproducible.py | 23 +-
.../src/airflow_breeze/utils/selective_checks.py | 5 +
dev/breeze/tests/test_docs_version_validation.py | 56 ++++
dev/breeze/tests/test_selective_checks.py | 2 +-
devel-common/pyproject.toml | 2 +-
devel-common/src/sphinx_exts/redirects.py | 8 +-
devel-common/src/tests_common/pytest_plugin.py | 27 +-
devel-common/src/tests_common/test_utils/db.py | 22 +-
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 +-
docs/spelling_wordlist.txt | 1 +
generated/PYPI_README.md | 10 +-
.../airflow_aux/test_container_lifecycle.py | 3 +
.../airflow_aux/test_pod_template_file.py | 3 +
.../tests/kubernetes_tests/conftest.py | 17 ++
.../test_kubernetes_pod_operator.py | 105 +++----
providers/amazon/README.rst | 2 +-
providers/amazon/pyproject.toml | 12 +-
.../amazon/aws/transfers/hive_to_dynamodb.py | 2 +-
.../providers/amazon/aws/transfers/sql_to_s3.py | 8 +-
.../amazon/tests/unit/amazon/aws/hooks/test_eks.py | 3 +
.../amazon/aws/transfers/test_hive_to_dynamodb.py | 8 +-
.../unit/amazon/aws/transfers/test_sql_to_s3.py | 18 +-
.../amazon/aws/utils/test_connection_wrapper.py | 2 +-
.../unit/celery/executors/test_celery_executor.py | 2 +-
.../executors/test_kubernetes_executor.py | 2 +-
.../unit/databricks/hooks/test_databricks_sql.py | 3 +
.../providers/edge3/executors/edge_executor.py | 6 +-
.../providers/fab/auth_manager/models/db.py | 5 +
.../tests/unit/google/cloud/hooks/test_bigquery.py | 34 +--
.../cloud/hooks/vertex_ai/test_generative_model.py | 2 +-
.../unit/google/cloud/operators/test_automl.py | 4 +-
.../unit/google/cloud/operators/test_bigquery.py | 220 +++++++-------
.../google/cloud/operators/test_life_sciences.py | 8 +-
.../operators/vertex_ai/test_generative_model.py | 3 +
.../unit/microsoft/azure/operators/test_msgraph.py | 54 ++--
.../unit/microsoft/azure/sensors/test_msgraph.py | 28 +-
.../unit/openlineage/plugins/test_listener.py | 29 +-
.../slack/tests/unit/slack/hooks/test_slack.py | 6 +-
.../tests/unit/slack/hooks/test_slack_webhook.py | 6 +-
.../tests/unit/standard/decorators/test_bash.py | 4 +-
.../tests/unit/standard/decorators/test_python.py | 20 +-
.../tests/unit/standard/operators/test_python.py | 16 +-
.../tests/unit/standard/sensors/test_time_delta.py | 8 +-
pyproject.toml | 12 +-
reproducible_build.yaml | 4 +-
scripts/ci/install_breeze.sh | 2 +-
scripts/ci/pre_commit/supported_versions.py | 2 +-
.../ci/pre_commit/update_airflow_pyproject_toml.py | 2 +-
scripts/docker/entrypoint_ci.sh | 12 +-
scripts/in_container/check_environment.sh | 5 -
scripts/tools/setup_breeze | 2 +-
task-sdk/pyproject.toml | 4 +-
task-sdk/src/airflow/sdk/__init__.py | 2 +-
task-sdk/src/airflow/sdk/api/client.py | 21 ++
.../src/airflow/sdk/api/datamodels/_generated.py | 3 +-
task-sdk/src/airflow/sdk/bases/operator.py | 8 +-
task-sdk/src/airflow/sdk/bases/xcom.py | 16 +-
.../sdk/definitions/_internal/abstractoperator.py | 21 +-
.../sdk/definitions/decorators/__init__.pyi | 4 +-
.../src/airflow/sdk/definitions/mappedoperator.py | 10 +-
task-sdk/src/airflow/sdk/execution_time/comms.py | 18 ++
task-sdk/src/airflow/sdk/execution_time/context.py | 4 +-
.../src/airflow/sdk/execution_time/supervisor.py | 26 +-
.../src/airflow/sdk/execution_time/task_runner.py | 48 +++-
task-sdk/src/airflow/sdk/types.py | 2 +
task-sdk/tests/conftest.py | 2 +
task-sdk/tests/task_sdk/api/test_client.py | 82 ++++++
task-sdk/tests/task_sdk/bases/test_operator.py | 16 +-
task-sdk/tests/task_sdk/definitions/test_asset.py | 2 +-
.../task_sdk/definitions/test_mappedoperator.py | 22 ++
.../tests/task_sdk/execution_time/test_comms.py | 1 +
.../task_sdk/execution_time/test_supervisor.py | 73 ++++-
.../task_sdk/execution_time/test_task_runner.py | 269 +++++++++++++++++-
189 files changed, 3990 insertions(+), 1229 deletions(-)
create mode 100644 airflow-core/src/airflow/api_fastapi/execution_api/versions/v2025_08_10.py
delete mode 100644 airflow-core/src/airflow/models/abstractoperator.py
create mode 100755 dev/breeze/src/airflow_breeze/utils/docs_version_validation.py
create mode 100644 dev/breeze/tests/test_docs_version_validation.py