This is an automated email from the ASF dual-hosted git repository.
dependabot[bot] pushed a change to branch
dependabot/gradle/java-sdk/java-sdk-security-updates-b5969151e9
in repository https://gitbox.apache.org/repos/asf/airflow.git
discard 2f0ae01cff7 Bump the java-sdk-security-updates group across 1
directory with 2 updates
add eccdab540cf Warn about oversized task state values from language SDK
tasks (#74945)
add c57e23956e3 Update minium uv version to 0.13.4 to address
untrustworthy intermediate CA (#75296)
add f3cf550b94b TS SDK: Bump to 1.0.0-beta1 and align README with the
guide (#74693)
add e6a2c9f4e78 Expose task instance loop pass and expansion size to
listeners (#75132)
add b1728b99f60 Add latest-package-managers flag to breeze ci upgrade and
upgrade check CI (#75298)
add 745bdbfb9bc UI: Add match-anywhere toggle to the tags filter (#73616)
add 7e0c1acb426 Bump certifi to 2026.10.19 to drop the compromised emSign
ECC Root CA - G3 (#75302)
add 6aa6db263b1 Bump uv used for release sdist checks to 0.13.4 (#75305)
add b3e91e8442c Bump markdown-it (#75306)
add 4c29b3beb43 Fix outdated commands and references in contributing docs
(#75294)
add e6aa11feff8 Bump the github-actions-updates group with 7 updates
(#75293)
add a9c7f5726be Bump the registry-package-updates group across 1 directory
with 2 updates (#75282)
add be056c2ead2 Fix ruff formatting in the upgrade important versions test
(#75314)
add 57aedbf8c97 Reveal selected Dag folders when names contain pipes
(#75196)
add 5c021ce5442 Clean up Dag Version Tab UX (#75244)
add e5bd3ba9aa4 Bump the react group across 1 directory with 2 updates
(#75281)
add 7d94a66507e Reject non-positive max_active_runs when creating a
backfill (#75071)
add b32158ccdab Bump the fab-ui-package-updates group across 1 directory
with 2 updates (#75234)
add 4425e1bbff8 Bump the auth-ui-package-updates group across 1 directory
with 6 updates (#75286)
add 4fb12b3af09 Include DMS stop reason in DmsTaskBaseSensor failure
message (#75240)
add a571ed0cb60 Add missing Taiwanese Mandarin UI translations (#75277)
add 80702895deb UI: Render Arabic durations with the correct plural form
(#72604)
add b99f4a9b3f8 Fix task instance filtering for null start dates (#75321)
add aee2d4d5122 Fix tasks clear --task-regex matching as a plain substring
(#72941)
add 27b075b9488 Prepare providers release 2026-10-20 (#75209)
add dcfaae090a6 Show errors when the task clear confirmation check fails
(#75269)
add a3a4c138a08 UI: Drop Arabic plural test cases that no longer go
through dayjs (#75330)
add 90f064fa244 Allow BedrockBatchInferenceOperator to wait until the job
is scheduled (#75230)
add 5dd712998d0 Report HTTP errors from binary downloads in
example_emr_eks (#75246)
add ed6344d9dda Deprecate deferrable overriding wait_for_completion in
Comprehend (#75226)
add 3ec479258c9 Link the durable and deferrable operators page from
Registry stats (#75322)
add 35e8183358a Add EKS operator for commands in existing Pods (#72542)
add ebe476eb127 Treat in-progress Bedrock batch inference jobs as
scheduled (#75264)
add 38193762bcf Wait for MWAA Serverless run to stop before deleting
workflow (#75349)
add e02acc44f4e Close German Translation Gaps 2026-10-19 (#75137)
add 92a9e5aad39 Wait for variable form validation before asserting Save is
enabled (#75239)
add 5472d642898 Fix Snowflake connections ignoring region with
`snowflake-connector-python` 5 (#75334)
add c81ca3c4c9e UI: Warn when the logical date is outside the Dag's dates
(#75223)
add 79d3afc82b5 Show source code lines in task log tracebacks (#75100)
add 6db0df87d7f Bump eslint-plugin-unicorn from 77.0.0 to 78.0.0 in
/airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui (#75287)
add c16474e39a6 Bump the edge-ui-package-updates group across 1 directory
with 11 updates (#75291)
add 599d7539369 Bump the ui-plugin-template-package-updates group across 1
directory with 8 updates (#75288)
add 66701706142 Bump eslint in /ts-sdk in the ts-sdk-package-updates group
(#75285)
add 9ce42121d0c Bump aiohttp in
/providers/informatica/dev/informatica_simulator (#75187)
add afb1ce5396b Fix ``DbApiHook.inspector`` keeping a database connection
open until process exit (#75327)
add 70b95a24582 Go SDK: Write the edge label text before the task (#75185)
add 0c43149e1b4 Bump vite (#75357)
add 6c8902b1ac5 Document per-set volumes for Celery workers (#74913)
add ab9a2facf76 Add missing Taiwanese Mandarin translations for Dag
start/end date trigger messages (#75371)
add 3fbc2639a12 Fix Google Cloud Logging task log reads before Airflow 3.4
(#74923)
add 597aff10d71 Enforce execution_timeout for tasks run by a language SDK
(#74869)
add 7483c23e9b7 Fix Edge workers not reporting the final state of deadline
callbacks (#74784)
add bf022cc64f2 Fix duplicate pending Dag runs for the same asset
partition key (#71074)
add b3db4d5201a Go SDK: Rewrite the user docs around Dag definition
(#74698)
add c558f4a60f3 TS SDK: Reject blank edge labels and label task edges into
groups (#75190)
add eda782f76ea Make Java SDK context signal-aware (#74690)
add 0fb5bfc4df1 Fill scheduler task batches after concurrency rejection
(#70307)
add 469800c11d2 Keep the multiselect filter pill's focus ring visible
(#75307)
add fc9c4b0b003 Java SDK: Let a native Java Dag set one queue for all its
tasks (#74538)
add a3cd2a59c23 Add an async upload to S3Hook: aload_bytes (#75242)
add 1e3a23293b8 Read a team's running task logs through the team's
executor (#75255)
add 4db39e4d7ea Fix breeze ci_group crash when the title is skipped in
GitHub Actions (#75401)
add e5d8cbbe679 Make JWTRefreshMiddleware extensible via
BaseAuthManager.get_jwt_refresh_middleware() (#70783)
add c510e4dab4c Let plugins add their own actions to Dag, run and task
instance rows (#75229)
add 3b6f02efd81 Migrate airflow-core to `httpx2` (#74244)
add c01a68cb1e3 Show secondary states of mapped tasks in Grid view (#74883)
add 40b5d3647df Revert "Make Java SDK context signal-aware (#74690)"
(#75421)
add 24a809533ba Fix lost transaction in SnowflakeHook when
`session_parameters` is set (#75425)
add f92b7c33851 Run full CI on release branches on a schedule instead of
every push (#75420)
add 5798f1f9ee0 Allow asking for human input from inside a Python task
(#75358)
add f1883a4829c Add missing Amazon provider unit tests (#73169)
add 0abd1616919 Run team tasks on the team executor when named by class or
path (#75362)
add 7ac92c98ce6 Add Databricks agent invocation operator and hook (#74386)
add a419633896d Java SDK: Rewrite the user docs around Dag definition
(#74701)
add 29bb1401c83 Show Dag version diff occurrence count on the path (#75433)
add 01907e047f5 fix stat timing (#72553)
add af76df38634 Allow TypeScript SDK releases from core release branches
(#75447)
add 52237589d0f Java SDK: register the Scala Spark example as task
handlers (#75444)
add ccbd215ff29 TypeScript SDK: take the task state store retention in
seconds (#75445)
add 09fafbcec98 Fix upgrade guide sections showing as separate pages in
the docs sidebar (#75468)
add 763cb20ddc1 Fix SageMaker credential failures being reported as
timeouts (#74867)
add e71a6fb4790 Disable branch protection on v3-4-stable (#75473)
add d977d20aae3 Bump sphinx-airflow-theme to 0.3.15 for a more readable
docs sidebar (#75471)
add 1a50a18a3c6 Go SDK: fail a task whose return-value XCom push fails
(#75443)
add 06130cdc7fe Re-enable branch protection on v3-4-stable (#75477)
add b7dfaf64261 Fix docs pages listing their sections as separate pages in
the sidebar (#75478)
add 719a685079c Add consolidated Language SDK compatibility matrix (#71757)
add 2fc4238b326 Add missing zh-TW translations for Dag version path
tooltips (#75450)
add 2846242adad Show states of task groups as stacked cards in Grid view
(#75442)
add a5160a97038 Remove the gap above docs pages left from the old site
banner (#75485)
add 99bdeabe3db Show the filtered task count in the Dag Tasks tab heading
(#75448)
add a0be43d3b00 Link task instances of task loops to their own page
(#75458)
add d41a7c8e400 Bump sphinx-airflow-theme to 0.3.16 to align the docs' On
this page list (#75491)
add 6570b8282f2 Skip S3 keys that map to the local sync directory (#74322)
add d12021da679 Allow ECS exit codes to fail tasks without retrying
(#73885)
add d613e999dee Limit the CLI reference's page contents to top-level
commands (#75483)
add d81ba9c7f4e Complete German UI translations (#75301)
add b43705cccee Decide min_one_success trigger rules per index in mapped
task groups (#75417)
add 139324e3c99 Bump the java-sdk-security-updates group across 1
directory with 2 updates
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 (2f0ae01cff7)
\
N -- N -- N
refs/heads/dependabot/gradle/java-sdk/java-sdk-security-updates-b5969151e9
(139324e3c99)
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:
.agents/skills/airflow-java-sdk/SKILL.md | 9 +-
.github/workflows/airflow-e2e-tests.yml | 2 +-
.github/workflows/asf-allowlist-check.yml | 2 +-
.github/workflows/basic-tests.yml | 37 +-
.github/workflows/ci-amd.yml | 124 +-
.github/workflows/ci-arm.yml | 128 +-
.github/workflows/ci-image-build.yml | 8 +-
.github/workflows/ci-image-checks.yml | 25 +-
.github/workflows/codeql-analysis.yml | 8 +-
.../java-sdk-dependabot-verification-metadata.yml | 2 +-
.github/workflows/java-sdk-dependency-security.yml | 2 +-
.github/workflows/java-sdk-release-verify.yml | 6 +-
.github/workflows/k8s-tests.yml | 2 +-
.github/workflows/prod-image-build.yml | 2 +-
.github/workflows/publish-docs-to-s3.yml | 2 +-
.github/workflows/refresh-image-registry-cache.yml | 11 +-
.github/workflows/release-branch-ci.yml | 161 ++
.../scheduled-legacy-prod-image-canary.yml | 2 +-
.github/workflows/ts-sdk-release.yml | 14 +-
.github/workflows/upgrade-check.yml | 1 +
.pre-commit-config.yaml | 29 +
Dockerfile | 2 +-
Dockerfile.ci | 2 +-
.../dagfile-processing.rst | 12 +-
.../logging-monitoring/metrics.rst | 2 +-
.../docs/administration-and-deployment/plugins.rst | 49 +
.../authoring-and-scheduling/language-sdks/go.rst | 998 ++++++-----
.../language-sdks/index.rst | 251 +++
.../language-sdks/java.rst | 1729 ++++++++------------
.../language-sdks/typescript.rst | 138 +-
.../docs/authoring-and-scheduling/loops.rst | 32 +
airflow-core/docs/cli-and-env-variables-ref.rst | 3 +
airflow-core/docs/core-concepts/debug.rst | 2 +-
airflow-core/docs/core-concepts/tasks.rst | 8 +-
.../docs/howto/create-custom-decorator.rst | 2 +-
airflow-core/docs/howto/custom-action-plugin.rst | 348 ++++
airflow-core/docs/howto/custom-view-plugin.rst | 22 +-
airflow-core/docs/howto/customize-ui.rst | 12 +-
airflow-core/docs/howto/index.rst | 1 +
airflow-core/docs/howto/notifications.rst | 2 +-
airflow-core/docs/howto/set-config.rst | 2 +-
.../docs/installation/upgrading_to_airflow3.rst | 6 +-
airflow-core/docs/migrations-ref.rst | 5 +-
airflow-core/pyproject.toml | 11 +-
.../src/airflow/api/client/local_client.py | 6 +-
airflow-core/src/airflow/api_fastapi/app.py | 18 +
.../api_fastapi/auth/managers/base_auth_manager.py | 14 +
.../auth/managers/simple/ui/package.json | 14 +-
.../auth/managers/simple/ui/pnpm-lock.yaml | 623 ++++---
.../managers/simple/ui/src/alert/ErrorAlert.tsx | 4 +-
.../api_fastapi/auth/middlewares/refresh_token.py | 77 +-
.../src/airflow/api_fastapi/auth/tokens.py | 4 +-
.../src/airflow/api_fastapi/core_api/app.py | 8 +-
.../api_fastapi/core_api/datamodels/backfills.py | 2 +-
.../api_fastapi/core_api/datamodels/plugins.py | 58 +-
.../core_api/openapi/v2-rest-api-generated.yaml | 100 ++
.../core_api/routes/public/task_instances.py | 14 +-
.../execution_api/datamodels/taskinstance.py | 52 +-
.../api_fastapi/execution_api/in_process.py | 1 -
.../execution_api/routes/task_instances.py | 32 +-
.../execution_api/services/task_instances.py | 32 +-
.../api_fastapi/execution_api/versions/__init__.py | 4 +
.../execution_api/versions/v2026_10_30.py | 28 +
airflow-core/src/airflow/assets/manager.py | 281 ++--
.../src/airflow/cli/commands/task_command.py | 12 +-
airflow-core/src/airflow/dag_processing/manager.py | 2 +-
.../airflow/example_dags/example_dag_decorator.py | 4 +-
.../src/airflow/executors/executor_loader.py | 36 +
.../src/airflow/jobs/scheduler_job_runner.py | 138 +-
...0148_3_4_0_add_pending_partition_key_to_apdr.py | 84 +
..._job.py => 0149_3_5_0_add_session_id_to_job.py} | 4 +-
airflow-core/src/airflow/models/asset.py | 33 +-
airflow-core/src/airflow/models/dynamic_region.py | 19 +-
.../src/airflow/models/task_coordinates.py | 83 +-
airflow-core/src/airflow/models/taskinstance.py | 21 +-
airflow-core/src/airflow/plugins_manager.py | 109 +-
.../airflow/serialization/serialized_objects.py | 9 +-
.../src/airflow/ti_deps/deps/trigger_rule_dep.py | 32 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 143 ++
.../airflow/ui/openapi-gen/requests/types.gen.ts | 36 +-
airflow-core/src/airflow/ui/package.json | 4 +-
airflow-core/src/airflow/ui/pnpm-lock.yaml | 284 ++--
.../src/airflow/ui/public/i18n/locales/ca/dag.json | 1 -
.../airflow/ui/public/i18n/locales/de/admin.json | 2 +
.../airflow/ui/public/i18n/locales/de/common.json | 4 +
.../src/airflow/ui/public/i18n/locales/de/dag.json | 25 +-
.../airflow/ui/public/i18n/locales/de/dags.json | 1 +
.../src/airflow/ui/public/i18n/locales/el/dag.json | 1 -
.../ui/public/i18n/locales/en/components.json | 6 +
.../src/airflow/ui/public/i18n/locales/en/dag.json | 5 +-
.../src/airflow/ui/public/i18n/locales/fr/dag.json | 1 -
.../src/airflow/ui/public/i18n/locales/he/dag.json | 1 -
.../src/airflow/ui/public/i18n/locales/hi/dag.json | 1 -
.../src/airflow/ui/public/i18n/locales/ko/dag.json | 1 -
.../src/airflow/ui/public/i18n/locales/pl/dag.json | 1 -
.../ui/public/i18n/locales/zh-TW/admin.json | 2 +
.../ui/public/i18n/locales/zh-TW/common.json | 1 +
.../ui/public/i18n/locales/zh-TW/components.json | 6 +
.../airflow/ui/public/i18n/locales/zh-TW/dag.json | 5 +-
.../ui/src/components/AdvancedSearchToggle.tsx | 6 +-
.../ClearTaskInstanceConfirmationDialog.test.tsx | 185 +++
.../ClearTaskInstanceConfirmationDialog.tsx | 20 +-
.../FilterBar/filters/MultiSelectPill.tsx | 24 +-
.../FilterBar/filters/TagsFilter.test.tsx | 143 ++
.../components/FilterBar/filters/TagsFilter.tsx | 3 +
.../airflow/ui/src/components/FilterBar/types.ts | 4 +-
.../ui/src/components/JsonPreviewBadges.tsx | 42 +-
.../PluginActions/PluginActionBoundary.tsx | 63 +
.../components/PluginActions/PluginActionIcon.tsx | 36 +-
.../PluginActions/PluginActions.test.tsx | 431 +++++
.../src/components/PluginActions/PluginActions.tsx | 90 +
.../PluginActions/PluginActionsContext.tsx | 45 +
.../components/PluginActions/PluginLinkAction.tsx | 96 ++
.../components/PluginActions/PluginReactAction.tsx | 98 ++
.../{Breadcrumb => PluginActions}/index.ts | 7 +-
.../PluginActions/pluginActionContext.test.ts | 138 ++
.../PluginActions/pluginActionContext.ts | 97 ++
.../ui/src/components/PluginActions/types.ts | 82 +
.../ui/src/components/RenderedJsonField.test.tsx | 19 +
.../ui/src/components/RenderedJsonField.tsx | 36 +-
.../components/TriggerDag/TriggerDAGForm.test.tsx | 46 +
.../src/components/TriggerDag/TriggerDAGForm.tsx | 43 +-
.../ui/src/components/renderStructuredLog.test.tsx | 30 +
.../ui/src/components/renderStructuredLog.tsx | 10 +-
.../src/airflow/ui/src/constants/filterConfigs.tsx | 1 +
.../airflow/ui/src/hooks/usePluginActions.test.ts | 142 ++
.../src/airflow/ui/src/hooks/usePluginActions.ts | 50 +
.../src/airflow/ui/src/hooks/usePluginTabs.tsx | 13 +-
.../airflow/ui/src/hooks/useScopedPluginViews.ts | 14 +-
.../airflow/ui/src/i18n/dayjsArabicPlurals.test.ts | 126 ++
.../src/airflow/ui/src/i18n/dayjsArabicPlurals.ts | 82 +
.../src/airflow/ui/src/i18n/dayjsLocale.test.ts | 5 +-
.../src/airflow/ui/src/i18n/dayjsLocale.ts | 4 +
.../ui/src/layouts/Details/Grid/GridTI.test.tsx | 117 +-
.../airflow/ui/src/layouts/Details/Grid/GridTI.tsx | 47 +-
.../ui/src/layouts/Details/Grid/constants.ts | 2 +-
.../src/airflow/ui/src/pages/Dag/Header.tsx | 8 +
.../airflow/ui/src/pages/Dag/Tasks/Tasks.test.tsx | 3 +
.../src/airflow/ui/src/pages/Dag/Tasks/Tasks.tsx | 2 +-
.../Versions/DiffUnavailableAlert.tsx} | 43 +-
.../ui/src/pages/Dag/Versions/DiffValue.tsx | 60 +
.../pages/Dag/Versions/MaxChangesField.test.tsx | 71 +
.../ui/src/pages/Dag/Versions/MaxChangesField.tsx | 119 ++
.../Dag/Versions/MonoText.tsx} | 24 +-
.../airflow/ui/src/pages/Dag/Versions/PathText.tsx | 78 +
.../pages/Dag/Versions/SelectedVersionsDiff.tsx | 81 +
.../ui/src/pages/Dag/Versions/VersionDiff.test.tsx | 96 +-
.../ui/src/pages/Dag/Versions/VersionDiff.tsx | 131 +-
.../airflow/ui/src/pages/Dag/Versions/Versions.tsx | 98 +-
.../src/airflow/ui/src/pages/DagRuns/DagRuns.tsx | 58 +-
.../ui/src/pages/DagsList/DagCardActions.tsx | 2 +
.../DagsList/DagFolderTree/DagFolderTree.test.tsx | 29 +
.../pages/DagsList/DagFolderTree/DagFolderTree.tsx | 2 +-
.../src/airflow/ui/src/pages/DagsList/DagsList.tsx | 185 ++-
.../ui/src/pages/DagsList/DagsListColumns.tsx | 9 +-
airflow-core/src/airflow/ui/src/pages/Iframe.tsx | 28 +-
.../src/airflow/ui/src/pages/Run/Header.tsx | 8 +
.../ui/src/pages/TaskInstance/ExtraLinks.tsx | 14 +-
.../airflow/ui/src/pages/TaskInstance/Header.tsx | 8 +
.../ui/src/pages/TaskInstances/TaskInstances.tsx | 36 +-
.../Variables/ManageVariable/VariableForm.test.tsx | 7 +-
.../airflow/ui/src/queries/useDagTagsInfinite.ts | 15 +-
.../src/airflow/ui/src/utils/links.test.ts | 218 ++-
airflow-core/src/airflow/ui/src/utils/links.ts | 168 +-
.../airflow/ui/src/utils/pluginAppliesTo.test.ts | 41 +
.../src/airflow/ui/src/utils/pluginAppliesTo.ts | 54 +-
.../src/airflow/ui/src/utils/pluginIcon.test.ts | 59 +
.../DurationCell.tsx => utils/pluginIcon.ts} | 25 +-
.../airflow/ui/src/utils/pluginTemplate.test.ts | 72 +
.../src/airflow/ui/src/utils/pluginTemplate.ts | 54 +
airflow-core/src/airflow/utils/db.py | 2 +-
.../src/airflow/utils/log/file_task_handler.py | 17 +-
.../src/airflow/utils/log/task_log_address.py | 10 +-
.../tests/unit/always/test_project_structure.py | 3 +-
.../auth/managers/test_base_auth_manager.py | 10 +
.../auth/middlewares/test_refresh_token.py | 81 +-
.../tests/unit/api_fastapi/auth/test_tokens.py | 10 +-
.../core_api/routes/public/test_auth.py | 4 +-
.../core_api/routes/public/test_backfills.py | 28 +
.../core_api/routes/public/test_dag_sources.py | 2 +-
.../core_api/routes/public/test_plugins.py | 64 +
.../core_api/routes/public/test_task_instances.py | 28 +
.../tests/unit/api_fastapi/core_api/test_app.py | 29 +
.../execution_api/versions/head/test_hitl.py | 11 +-
.../versions/head/test_task_instances.py | 98 ++
.../versions/v2026_10_30/test_task_instances.py | 34 +
airflow-core/tests/unit/api_fastapi/test_app.py | 16 +
airflow-core/tests/unit/assets/test_manager.py | 283 +++-
.../unit/cli/commands/test_plugins_command.py | 33 +
.../tests/unit/cli/commands/test_task_command.py | 23 +
.../tests/unit/dag_processing/test_manager.py | 6 +-
.../tests/unit/dag_processing/test_processor.py | 2 +-
.../tests/unit/executors/test_executor_loader.py | 48 +-
airflow-core/tests/unit/jobs/test_scheduler_job.py | 255 ++-
airflow-core/tests/unit/jobs/test_triggerer_job.py | 2 +-
.../test_0148_add_pending_partition_key_to_apdr.py | 187 +++
.../tests/unit/models/test_dynamic_region.py | 17 +-
.../tests/unit/models/test_mappedoperator.py | 92 +-
.../tests/unit/models/test_task_coordinates.py | 82 +
.../tests/unit/models/test_taskinstance.py | 24 +
.../tests/unit/plugins/test_plugins_manager.py | 317 ++++
.../unit/serialization/test_dag_serialization.py | 18 +
airflow-core/tests/unit/utils/test_log_handlers.py | 30 +
airflow-ctl/docs/cli-and-env-variables-ref.rst | 3 +
airflow-ctl/pyproject.toml | 2 +-
.../src/airflowctl/api/datamodels/generated.py | 57 +-
.../apache/airflow/e2e/NativeBundleBuilder.java | 36 +-
.../airflow/e2e/nativedag/AnnotationDag.java | 25 +-
.../apache/airflow/e2e/nativedag/DynamicDags.java | 5 +-
.../apache/airflow/e2e/nativedag/TargetDag.java | 5 +-
.../java_sdk_tests/test_java_sdk_native_dag.py | 17 +-
chart/docs/customizing-workers.rst | 46 +
.../20_debugging_airflow_components.rst | 14 +-
.../26_migration_round_trip_check.rst | 4 +-
contributing-docs/30_new_language_sdk.rst | 171 +-
contributing-docs/testing/unit_tests.rst | 2 +-
dev/README_AIRFLOW3_DEV.md | 9 +-
dev/README_RELEASE_AIRFLOW.md | 59 +-
dev/README_RELEASE_AIRFLOWCTL.md | 12 +-
dev/breeze/doc/ci/02_images.md | 2 +-
dev/breeze/doc/ci/04_selective_checks.md | 49 +-
dev/breeze/doc/ci/05_workflows.md | 66 +-
.../doc/images/output_ci_selective-check.svg | 54 +-
.../doc/images/output_ci_selective-check.txt | 2 +-
dev/breeze/doc/images/output_ci_upgrade.svg | 92 +-
dev/breeze/doc/images/output_ci_upgrade.txt | 2 +-
dev/breeze/pyproject.toml | 11 +
.../src/airflow_breeze/commands/ci_commands.py | 71 +-
.../airflow_breeze/commands/ci_commands_config.py | 3 +
.../commands/release_management_commands.py | 2 +-
dev/breeze/src/airflow_breeze/global_constants.py | 2 +-
.../airflow_breeze/utils/check_release_files.py | 2 +-
dev/breeze/src/airflow_breeze/utils/ci_group.py | 22 +-
.../src/airflow_breeze/utils/selective_checks.py | 19 +-
dev/breeze/tests/test_ci_commands.py | 114 ++
.../breeze/tests/test_ci_group.py | 19 +-
dev/breeze/tests/test_ci_upgrade.py | 5 +
dev/breeze/tests/test_environment_check.py | 2 +-
dev/breeze/tests/test_pr_info.py | 2 +-
dev/breeze/tests/test_selective_checks.py | 33 +
dev/breeze/uv.lock | 94 +-
dev/mypy/pyproject.toml | 2 +-
.../react_plugin_template/package.json | 16 +-
.../react_plugin_template/pnpm-lock.yaml | 406 ++---
devel-common/pyproject.toml | 2 +-
devel-common/sphinx_design/static/custom.css | 12 +-
docs/spelling_wordlist.txt | 3 +
go-sdk/DEVELOPMENT.md | 215 +++
go-sdk/README.md | 603 ++-----
go-sdk/adr/0008-native-dag-interface.md | 20 +-
go-sdk/airflow/conformance_test.go | 2 +-
go-sdk/airflow/dag.go | 6 +-
go-sdk/airflow/if_test.go | 2 +-
go-sdk/airflow/node.go | 240 ++-
go-sdk/airflow/node_test.go | 241 ++-
go-sdk/airflow/serialize_test.go | 8 +-
go-sdk/airflow/task_group_test.go | 33 +-
go-sdk/capabilities.yaml | 153 +-
go-sdk/example/README.md | 129 ++
go-sdk/example/native/main.go | 2 +-
go-sdk/internal/bundle/task.go | 58 +-
go-sdk/internal/bundle/task_test.go | 116 +-
go-sdk/internal/genspec/authoring.go | 2 +-
go-sdk/pkg/execution/client.go | 4 -
.../pkg/execution/genmodels/discriminators.gen.go | 8 +-
go-sdk/pkg/execution/genmodels/models.gen.go | 175 +-
go-sdk/schema/supervisor-schema.json | 143 +-
java-sdk/{README.md => DEVELOPMENT.md} | 139 +-
java-sdk/README.md | 870 ++--------
java-sdk/capabilities.yaml | 153 +-
java-sdk/example/README.md | 107 ++
.../example/nativedag/AnnotationExample.java | 1 +
.../example/nativedag/InterfaceExample.java | 1 +
.../airflow/example/nativedag/TargetExample.java | 1 +
.../org/apache/airflow/sdk/AirflowProcessor.kt | 6 +-
.../org/apache/airflow/sdk/AirflowProcessorTest.kt | 53 +-
.../apache/airflow/example/ScalaSparkExample.scala | 33 +-
java-sdk/scripts/ci/verify-source-release.sh | 2 +-
java-sdk/sdk/build.gradle.kts | 28 +-
java-sdk/sdk/module.md | 177 +-
.../main/kotlin/org/apache/airflow/sdk/Client.kt | 2 -
.../main/kotlin/org/apache/airflow/sdk/DagDef.kt | 17 +-
.../kotlin/org/apache/airflow/sdk/TriggerDagRun.kt | 1 +
.../org/apache/airflow/sdk/execution/Serde.kt | 10 +-
.../org/apache/airflow/sdk/internal/Fields.kt | 22 +-
.../kotlin/org/apache/airflow/sdk/DagDefTest.kt | 28 +
.../org/apache/airflow/sdk/execution/SerdeTest.kt | 64 +
kubernetes-tests/lang_sdk/ts_example/package.json | 2 +-
providers/.last_release_date.txt | 2 +-
providers/alibaba/README.rst | 6 +-
providers/alibaba/docs/changelog.rst | 11 +
providers/alibaba/docs/index.rst | 6 +-
providers/alibaba/provider.yaml | 3 +-
providers/alibaba/pyproject.toml | 6 +-
.../src/airflow/providers/alibaba/__init__.py | 2 +-
providers/amazon/README.rst | 15 +-
providers/amazon/docs/changelog.rst | 42 +
providers/amazon/docs/index.rst | 8 +-
providers/amazon/docs/operators/bedrock.rst | 3 +
providers/amazon/docs/operators/ecs.rst | 36 +
providers/amazon/docs/operators/eks.rst | 30 +
providers/amazon/provider.yaml | 3 +-
providers/amazon/pyproject.toml | 8 +-
.../src/airflow/providers/amazon/__init__.py | 2 +-
.../src/airflow/providers/amazon/aws/hooks/dms.py | 24 +-
.../src/airflow/providers/amazon/aws/hooks/s3.py | 56 +-
.../providers/amazon/aws/operators/bedrock.py | 27 +-
.../providers/amazon/aws/operators/comprehend.py | 13 +-
.../airflow/providers/amazon/aws/operators/ecs.py | 38 +-
.../airflow/providers/amazon/aws/operators/eks.py | 121 +-
.../providers/amazon/aws/sensors/bedrock.py | 9 +-
.../airflow/providers/amazon/aws/sensors/dms.py | 11 +-
.../providers/amazon/aws/triggers/sagemaker.py | 9 +-
.../airflow/providers/amazon/aws/utils/deferral.py | 41 +
.../providers/amazon/aws/waiters/bedrock.json | 2 +-
.../amazon/aws/example_eks_with_nodegroups.py | 89 +-
.../tests/system/amazon/aws/example_emr_eks.py | 28 +-
.../system/amazon/aws/example_mwaa_serverless.py | 13 +
.../tests/unit/amazon/aws/bundles/test_s3.py | 18 +
.../aws/executors/batch/test_batch_executor.py | 16 +
.../aws/executors/utils/test_base_config_keys.py} | 24 +-
.../amazon/tests/unit/amazon/aws/hooks/test_dms.py | 6 +
.../amazon/tests/unit/amazon/aws/hooks/test_s3.py | 128 ++
.../unit/amazon/aws/operators/test_bedrock.py | 48 +-
.../unit/amazon/aws/operators/test_comprehend.py | 17 +-
.../tests/unit/amazon/aws/operators/test_ecs.py | 54 +-
.../tests/unit/amazon/aws/operators/test_eks.py | 222 ++-
.../tests/unit/amazon/aws/sensors/test_bedrock.py | 9 +
.../tests/unit/amazon/aws/sensors/test_dms.py | 37 +-
.../unit/amazon/aws/triggers/test_sagemaker.py | 65 +-
.../tests/unit/amazon/aws/utils/test_deferral.py | 53 +
.../tests/unit/amazon/aws/waiters/test_bedrock.py | 11 +-
.../anthropic/docs/.latest-doc-only-change.txt | 2 +-
providers/apache/hdfs/README.rst | 6 +-
providers/apache/hdfs/docs/changelog.rst | 11 +
providers/apache/hdfs/docs/index.rst | 6 +-
providers/apache/hdfs/provider.yaml | 3 +-
providers/apache/hdfs/pyproject.toml | 6 +-
.../src/airflow/providers/apache/hdfs/__init__.py | 2 +-
providers/apache/livy/README.rst | 8 +-
providers/apache/livy/docs/changelog.rst | 11 +
providers/apache/livy/docs/index.rst | 8 +-
providers/apache/livy/provider.yaml | 3 +-
providers/apache/livy/pyproject.toml | 8 +-
.../src/airflow/providers/apache/livy/__init__.py | 2 +-
providers/apache/spark/README.rst | 8 +-
providers/apache/spark/docs/changelog.rst | 16 +
providers/apache/spark/docs/index.rst | 8 +-
providers/apache/spark/provider.yaml | 3 +-
providers/apache/spark/pyproject.toml | 8 +-
.../src/airflow/providers/apache/spark/__init__.py | 2 +-
providers/apache/tinkerpop/README.rst | 6 +-
providers/apache/tinkerpop/docs/changelog.rst | 17 +
providers/apache/tinkerpop/docs/index.rst | 6 +-
providers/apache/tinkerpop/provider.yaml | 3 +-
providers/apache/tinkerpop/pyproject.toml | 6 +-
.../airflow/providers/apache/tinkerpop/__init__.py | 2 +-
providers/celery/README.rst | 6 +-
providers/celery/docs/changelog.rst | 16 +
providers/celery/docs/index.rst | 6 +-
providers/celery/provider.yaml | 3 +-
providers/celery/pyproject.toml | 6 +-
.../src/airflow/providers/celery/__init__.py | 2 +-
providers/cncf/kubernetes/README.rst | 6 +-
providers/cncf/kubernetes/docs/changelog.rst | 23 +
providers/cncf/kubernetes/docs/index.rst | 6 +-
providers/cncf/kubernetes/provider.yaml | 3 +-
providers/cncf/kubernetes/pyproject.toml | 6 +-
.../airflow/providers/cncf/kubernetes/__init__.py | 2 +-
providers/common/ai/README.rst | 6 +-
providers/common/ai/docs/changelog.rst | 26 +
providers/common/ai/docs/index.rst | 6 +-
providers/common/ai/provider.yaml | 3 +-
providers/common/ai/pyproject.toml | 6 +-
.../ai/src/airflow/providers/common/ai/__init__.py | 2 +-
.../providers/common/ai/plugins/www/package.json | 2 +-
.../providers/common/ai/plugins/www/pnpm-lock.yaml | 355 ++--
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 19 +
providers/common/compat/docs/index.rst | 6 +-
providers/common/compat/provider.yaml | 3 +-
providers/common/compat/pyproject.toml | 6 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
providers/common/io/README.rst | 8 +-
providers/common/io/docs/changelog.rst | 18 +
providers/common/io/docs/index.rst | 8 +-
providers/common/io/provider.yaml | 3 +-
providers/common/io/pyproject.toml | 8 +-
.../io/src/airflow/providers/common/io/__init__.py | 2 +-
providers/common/sql/README.rst | 8 +-
providers/common/sql/docs/changelog.rst | 12 +
providers/common/sql/docs/index.rst | 8 +-
providers/common/sql/provider.yaml | 3 +-
providers/common/sql/pyproject.toml | 8 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
.../src/airflow/providers/common/sql/hooks/sql.py | 7 +-
.../sql/tests/unit/common/sql/hooks/test_sql.py | 33 +
providers/databricks/README.rst | 11 +-
providers/databricks/docs/changelog.rst | 32 +
providers/databricks/docs/index.rst | 13 +-
providers/databricks/docs/operators/agent.rst | 210 +++
providers/databricks/provider.yaml | 7 +-
providers/databricks/pyproject.toml | 13 +-
.../src/airflow/providers/databricks/__init__.py | 2 +-
.../src/airflow/providers/databricks/exceptions.py | 8 +
.../providers/databricks/get_provider_info.py | 12 +-
.../airflow/providers/databricks/hooks/agent.py | 464 ++++++
.../providers/databricks/operators/agent.py | 208 +++
.../airflow/providers/databricks/triggers/agent.py | 99 ++
.../system/databricks/example_databricks_agent.py | 112 ++
.../tests/system/databricks/resources}/__init__.py | 0
.../databricks/resources/agent_server/README.md | 79 +
.../databricks/resources/agent_server}/__init__.py | 0
.../databricks/resources/agent_server/app.yaml | 5 +-
.../resources/agent_server/hello_agent.py | 34 +-
.../resources/agent_server/requirements.txt | 5 +-
.../tests/unit/databricks/hooks/test_agent.py | 1113 +++++++++++++
.../tests/unit/databricks/operators/test_agent.py | 362 ++++
.../tests/unit/databricks/triggers/test_agent.py | 115 ++
providers/dbt/cloud/README.rst | 14 +-
providers/dbt/cloud/docs/changelog.rst | 11 +
providers/dbt/cloud/docs/index.rst | 6 +-
providers/dbt/cloud/provider.yaml | 3 +-
providers/dbt/cloud/pyproject.toml | 6 +-
.../src/airflow/providers/dbt/cloud/__init__.py | 2 +-
providers/discord/README.rst | 6 +-
providers/discord/docs/changelog.rst | 11 +
providers/discord/docs/index.rst | 6 +-
providers/discord/provider.yaml | 3 +-
providers/discord/pyproject.toml | 6 +-
.../src/airflow/providers/discord/__init__.py | 2 +-
providers/edge3/README.rst | 6 +-
providers/edge3/docs/changelog.rst | 20 +
providers/edge3/docs/index.rst | 6 +-
providers/edge3/provider.yaml | 3 +-
providers/edge3/pyproject.toml | 6 +-
.../edge3/src/airflow/providers/edge3/__init__.py | 2 +-
.../src/airflow/providers/edge3/cli/worker.py | 25 +-
.../providers/edge3/plugins/www/package.json | 22 +-
.../providers/edge3/plugins/www/pnpm-lock.yaml | 676 ++++----
.../providers/edge3/worker_api/routes/logs.py | 35 +-
.../edge3/worker_api/v2-edge-generated.yaml | 12 +
.../edge3/tests/unit/edge3/cli/test_worker.py | 54 +
.../unit/edge3/worker_api/routes/test_logs.py | 95 +-
providers/elasticsearch/README.rst | 6 +-
providers/elasticsearch/docs/changelog.rst | 16 +
providers/elasticsearch/docs/index.rst | 6 +-
providers/elasticsearch/provider.yaml | 3 +-
providers/elasticsearch/pyproject.toml | 6 +-
.../airflow/providers/elasticsearch/__init__.py | 2 +-
providers/fab/README.rst | 6 +-
providers/fab/docs/changelog.rst | 33 +
providers/fab/docs/index.rst | 6 +-
providers/fab/provider.yaml | 3 +-
providers/fab/pyproject.toml | 6 +-
.../fab/src/airflow/providers/fab/__init__.py | 2 +-
.../fab/src/airflow/providers/fab/www/package.json | 4 +-
.../src/airflow/providers/fab/www/pnpm-lock.yaml | 243 ++-
providers/google/README.rst | 10 +-
providers/google/docs/changelog.rst | 55 +
providers/google/docs/index.rst | 10 +-
providers/google/provider.yaml | 3 +-
providers/google/pyproject.toml | 10 +-
.../src/airflow/providers/google/__init__.py | 2 +-
.../google/cloud/log/cloud_logging_task_handler.py | 71 +-
.../cloud/log/test_cloud_logging_task_handler.py | 260 ++-
providers/hashicorp/README.rst | 8 +-
providers/hashicorp/docs/changelog.rst | 11 +
providers/hashicorp/docs/index.rst | 6 +-
providers/hashicorp/provider.yaml | 3 +-
providers/hashicorp/pyproject.toml | 6 +-
.../src/airflow/providers/hashicorp/__init__.py | 2 +-
.../dev/informatica_simulator/requirements.txt | 2 +-
providers/keycloak/README.rst | 6 +-
providers/keycloak/docs/changelog.rst | 12 +
providers/keycloak/docs/index.rst | 6 +-
providers/keycloak/provider.yaml | 3 +-
providers/keycloak/pyproject.toml | 6 +-
.../src/airflow/providers/keycloak/__init__.py | 2 +-
providers/microsoft/azure/README.rst | 8 +-
providers/microsoft/azure/docs/changelog.rst | 26 +
providers/microsoft/azure/docs/index.rst | 8 +-
providers/microsoft/azure/provider.yaml | 3 +-
providers/microsoft/azure/pyproject.toml | 8 +-
.../airflow/providers/microsoft/azure/__init__.py | 2 +-
providers/openai/README.rst | 6 +-
providers/openai/docs/changelog.rst | 16 +
providers/openai/docs/index.rst | 6 +-
providers/openai/provider.yaml | 3 +-
providers/openai/pyproject.toml | 6 +-
.../src/airflow/providers/openai/__init__.py | 2 +-
providers/openlineage/README.rst | 6 +-
providers/openlineage/docs/changelog.rst | 32 +
providers/openlineage/docs/index.rst | 6 +-
providers/openlineage/provider.yaml | 3 +-
providers/openlineage/pyproject.toml | 6 +-
.../src/airflow/providers/openlineage/__init__.py | 2 +-
providers/opensearch/README.rst | 6 +-
providers/opensearch/docs/changelog.rst | 16 +
providers/opensearch/docs/index.rst | 6 +-
providers/opensearch/provider.yaml | 3 +-
providers/opensearch/pyproject.toml | 6 +-
.../src/airflow/providers/opensearch/__init__.py | 2 +-
providers/smtp/README.rst | 6 +-
providers/smtp/docs/changelog.rst | 16 +
providers/smtp/docs/index.rst | 6 +-
providers/smtp/provider.yaml | 3 +-
providers/smtp/pyproject.toml | 6 +-
.../smtp/src/airflow/providers/smtp/__init__.py | 2 +-
providers/snowflake/README.rst | 10 +-
providers/snowflake/docs/changelog.rst | 47 +
providers/snowflake/docs/connections/snowflake.rst | 6 +
providers/snowflake/docs/index.rst | 8 +-
providers/snowflake/provider.yaml | 11 +-
providers/snowflake/pyproject.toml | 8 +-
.../src/airflow/providers/snowflake/__init__.py | 2 +-
.../providers/snowflake/get_provider_info.py | 5 +
.../airflow/providers/snowflake/hooks/snowflake.py | 73 +-
.../tests/unit/snowflake/hooks/test_snowflake.py | 210 ++-
providers/ssh/README.rst | 6 +-
providers/ssh/docs/changelog.rst | 11 +
providers/ssh/docs/index.rst | 6 +-
providers/ssh/provider.yaml | 3 +-
providers/ssh/pyproject.toml | 6 +-
.../ssh/src/airflow/providers/ssh/__init__.py | 2 +-
providers/standard/README.rst | 6 +-
providers/standard/docs/changelog.rst | 23 +
providers/standard/docs/index.rst | 6 +-
providers/standard/docs/operators/hitl.rst | 71 +
providers/standard/provider.yaml | 3 +-
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../example_dags/example_hitl_request_input.py | 41 +-
.../airflow/providers/standard/operators/hitl.py | 261 ++-
.../airflow/providers/standard/operators/python.py | 46 +
.../src/airflow/providers/standard/utils/hitl.py | 153 ++
.../airflow/providers/standard/version_compat.py | 2 +
.../standard/operators/test_hitl_request_input.py | 795 +++++++++
.../tests/unit/standard/utils/test_hitl.py | 97 ++
providers/vespa/README.rst | 6 +-
providers/vespa/docs/changelog.rst | 17 +-
providers/vespa/docs/index.rst | 6 +-
providers/vespa/provider.yaml | 3 +-
providers/vespa/pyproject.toml | 6 +-
.../vespa/src/airflow/providers/vespa/__init__.py | 2 +-
pyproject.toml | 19 +-
registry/package.json | 4 +-
registry/pnpm-lock.yaml | 168 +-
registry/src/stats.njk | 6 +
scripts/ci/install_breeze.sh | 2 +-
scripts/ci/prek/check_ci_workflows_in_sync.py | 27 +-
scripts/ci/prek/lang_sdk_compat_matrix.py | 326 ++--
scripts/ci/prek/sync_java_sdk_docs.py | 148 ++
scripts/ci/prek/update_go_sdk_readme_matrix.py | 6 +-
scripts/ci/prek/update_java_sdk_readme_matrix.py | 6 +-
scripts/ci/prek/update_lang_sdk_central_matrix.py | 152 ++
scripts/ci/prek/update_ts_sdk_readme_matrix.py | 6 +-
scripts/ci/prek/upgrade_important_versions.py | 7 +-
scripts/tests/ci/prek/conftest.py | 55 +
.../tests/ci/prek/test_lang_sdk_compat_matrix.py | 330 ++--
scripts/tests/ci/prek/test_sync_java_sdk_docs.py | 119 ++
.../ci/prek/test_update_go_sdk_readme_matrix.py | 25 +-
.../ci/prek/test_update_java_sdk_readme_matrix.py | 27 +-
.../ci/prek/test_update_lang_sdk_central_matrix.py | 148 ++
.../ci/prek/test_update_ts_sdk_readme_matrix.py | 27 +-
.../ci/prek/test_upgrade_important_versions.py | 50 +
scripts/tools/setup_breeze | 2 +-
.../src/airflow_shared/logging/structlog.py | 15 +-
shared/logging/tests/logging/test_structlog.py | 1 +
.../observability/metrics/metrics_registry.py | 6 +-
.../observability/metrics/metrics_template.yaml | 8 +
.../src/airflow_shared/plugins_manager/__init__.py | 2 +
.../plugins_manager/plugins_manager.py | 31 +
task-sdk/docs/ts-bundle-spec.rst | 2 +-
.../src/airflow/sdk/api/datamodels/_generated.py | 6 +
.../src/airflow/sdk/coordinators/_subprocess.py | 35 +
task-sdk/src/airflow/sdk/execution_time/comms.py | 9 +-
task-sdk/src/airflow/sdk/execution_time/loop.py | 18 +
.../airflow/sdk/execution_time/schema/schema.json | 143 +-
.../sdk/execution_time/schema/versions/__init__.py | 4 +
.../execution_time/schema/versions/v2026_10_30.py | 29 +
.../src/airflow/sdk/execution_time/supervisor.py | 33 +-
.../src/airflow/sdk/execution_time/task_runner.py | 46 +-
task-sdk/src/airflow/sdk/types.py | 11 +
.../tests/task_sdk/coordinators/test_subprocess.py | 86 +
.../execution_time/schema/test_migrator.py | 15 +
.../tests/task_sdk/execution_time/test_loop.py | 54 +
.../task_sdk/execution_time/test_supervisor.py | 84 +-
.../task_sdk/execution_time/test_task_runner.py | 20 +-
ts-sdk/DEVELOPMENT.md | 19 +-
ts-sdk/README.md | 364 ++---
ts-sdk/api-docs/dag-authoring-api.ts | 2 +-
ts-sdk/capabilities.yaml | 172 +-
ts-sdk/docs/index.md | 43 +-
ts-sdk/docs/package-lock.json | 4 +-
ts-sdk/docs/package.json | 2 +-
ts-sdk/docs/tests/deployment-checks.test.mjs | 4 +-
ts-sdk/example/README.md | 80 +-
ts-sdk/example/package.json | 2 +-
ts-sdk/example/src/main.ts | 2 +-
ts-sdk/package.json | 2 +-
ts-sdk/pnpm-lock.yaml | 96 +-
ts-sdk/schema/supervisor-schema.json | 143 +-
.../ci/prek/check_serialization_conformance.py | 2 +-
ts-sdk/src/coordinator/client.ts | 35 +-
ts-sdk/src/coordinator/operator-runner.ts | 4 +-
ts-sdk/src/coordinator/serde.ts | 36 +-
ts-sdk/src/generated/supervisor.ts | 56 +-
ts-sdk/src/hitl/operator.ts | 2 +-
ts-sdk/src/index.ts | 2 +-
ts-sdk/src/sdk/client-types.ts | 10 +-
ts-sdk/src/sdk/client.ts | 6 +-
ts-sdk/src/sdk/dag-graph.ts | 19 +-
ts-sdk/src/sdk/dag.ts | 209 ++-
ts-sdk/src/sdk/operator.ts | 8 +-
ts-sdk/tests/conformance/serialize_typescript.ts | 7 +-
ts-sdk/tests/coordinator/client.test.ts | 28 +-
ts-sdk/tests/coordinator/operator-runner.test.ts | 8 +-
ts-sdk/tests/coordinator/serde.test.ts | 220 ++-
ts-sdk/tests/public-api.test.ts | 12 +-
ts-sdk/tests/sdk/branching.test.ts | 8 +-
ts-sdk/tests/sdk/conditional.test.ts | 10 +-
ts-sdk/tests/sdk/dag.test.ts | 133 +-
uv.lock | 160 +-
624 files changed, 24035 insertions(+), 7685 deletions(-)
create mode 100644 .github/workflows/release-branch-ci.yml
create mode 100644 airflow-core/docs/howto/custom-action-plugin.rst
create mode 100644
airflow-core/src/airflow/migrations/versions/0148_3_4_0_add_pending_partition_key_to_apdr.py
rename
airflow-core/src/airflow/migrations/versions/{0148_3_5_0_add_session_id_to_job.py
=> 0149_3_5_0_add_session_id_to_job.py} (97%)
create mode 100644
airflow-core/src/airflow/ui/src/components/Clear/TaskInstance/ClearTaskInstanceConfirmationDialog.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/FilterBar/filters/TagsFilter.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginActionBoundary.tsx
copy dev/react-plugin-tools/react_plugin_template/src/pages/HomePage.tsx =>
airflow-core/src/airflow/ui/src/components/PluginActions/PluginActionIcon.tsx
(54%)
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginActions.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginActions.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginActionsContext.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginLinkAction.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/PluginReactAction.tsx
copy airflow-core/src/airflow/ui/src/components/{Breadcrumb =>
PluginActions}/index.ts (79%)
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/pluginActionContext.test.ts
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/pluginActionContext.ts
create mode 100644
airflow-core/src/airflow/ui/src/components/PluginActions/types.ts
create mode 100644
airflow-core/src/airflow/ui/src/hooks/usePluginActions.test.ts
create mode 100644 airflow-core/src/airflow/ui/src/hooks/usePluginActions.ts
create mode 100644
airflow-core/src/airflow/ui/src/i18n/dayjsArabicPlurals.test.ts
create mode 100644 airflow-core/src/airflow/ui/src/i18n/dayjsArabicPlurals.ts
copy
airflow-core/src/airflow/ui/src/pages/{TaskStateStore/AddTaskStateStoreButton.tsx
=> Dag/Versions/DiffUnavailableAlert.tsx} (55%)
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Versions/DiffValue.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Versions/MaxChangesField.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Versions/MaxChangesField.tsx
copy airflow-core/src/airflow/ui/src/{components/TruncatedText.tsx =>
pages/Dag/Versions/MonoText.tsx} (69%)
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Versions/PathText.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Versions/SelectedVersionsDiff.tsx
create mode 100644 airflow-core/src/airflow/ui/src/utils/pluginIcon.test.ts
copy airflow-core/src/airflow/ui/src/{components/DurationCell.tsx =>
utils/pluginIcon.ts} (54%)
create mode 100644 airflow-core/src/airflow/ui/src/utils/pluginTemplate.test.ts
create mode 100644 airflow-core/src/airflow/ui/src/utils/pluginTemplate.ts
create mode 100644
airflow-core/tests/unit/migrations/test_0148_add_pending_partition_key_to_apdr.py
create mode 100644 dev/breeze/tests/test_ci_commands.py
copy providers/slack/tests/unit/slack/transfers/conftest.py =>
dev/breeze/tests/test_ci_group.py (58%)
create mode 100644 go-sdk/DEVELOPMENT.md
create mode 100644 go-sdk/example/README.md
copy java-sdk/{README.md => DEVELOPMENT.md} (81%)
create mode 100644 java-sdk/example/README.md
create mode 100644
providers/amazon/src/airflow/providers/amazon/aws/utils/deferral.py
copy providers/amazon/{src/airflow/providers/amazon/aws/executors/eks/utils.py
=> tests/unit/amazon/aws/executors/utils/test_base_config_keys.py} (66%)
create mode 100644
providers/amazon/tests/unit/amazon/aws/utils/test_deferral.py
create mode 100644 providers/databricks/docs/operators/agent.rst
create mode 100644
providers/databricks/src/airflow/providers/databricks/hooks/agent.py
create mode 100644
providers/databricks/src/airflow/providers/databricks/operators/agent.py
create mode 100644
providers/databricks/src/airflow/providers/databricks/triggers/agent.py
create mode 100644
providers/databricks/tests/system/databricks/example_databricks_agent.py
copy {airflow-core/src/airflow/_shared =>
providers/databricks/tests/system/databricks/resources}/__init__.py (100%)
create mode 100644
providers/databricks/tests/system/databricks/resources/agent_server/README.md
copy {airflow-core/src/airflow/_shared =>
providers/databricks/tests/system/databricks/resources/agent_server}/__init__.py
(100%)
copy dev/mypy/docs/spelling_wordlist.txt =>
providers/databricks/tests/system/databricks/resources/agent_server/app.yaml
(94%)
copy airflow-core/tests/unit/dags/test_dag_xcom_openlineage.py =>
providers/databricks/tests/system/databricks/resources/agent_server/hello_agent.py
(56%)
copy dev/mypy/docs/spelling_wordlist.txt =>
providers/databricks/tests/system/databricks/resources/agent_server/requirements.txt
(94%)
create mode 100644
providers/databricks/tests/unit/databricks/hooks/test_agent.py
create mode 100644
providers/databricks/tests/unit/databricks/operators/test_agent.py
create mode 100644
providers/databricks/tests/unit/databricks/triggers/test_agent.py
copy airflow-core/tests/unit/dags/test_multiple_dags.py =>
providers/standard/src/airflow/providers/standard/example_dags/example_hitl_request_input.py
(50%)
create mode 100644
providers/standard/src/airflow/providers/standard/utils/hitl.py
create mode 100644
providers/standard/tests/unit/standard/operators/test_hitl_request_input.py
create mode 100644 providers/standard/tests/unit/standard/utils/test_hitl.py
create mode 100755 scripts/ci/prek/sync_java_sdk_docs.py
create mode 100755 scripts/ci/prek/update_lang_sdk_central_matrix.py
create mode 100644 scripts/tests/ci/prek/test_sync_java_sdk_docs.py
create mode 100644 scripts/tests/ci/prek/test_update_lang_sdk_central_matrix.py