This is an automated email from the ASF dual-hosted git repository.
dependabot[bot] pushed a change to branch
dependabot/npm_and_yarn/dev/react-plugin-tools/react_plugin_template/ui-plugin-template-package-updates-82fed8f7fc
in repository https://gitbox.apache.org/repos/asf/airflow.git
omit 2cbf29ba94c Bump the ui-plugin-template-package-updates group across 1
directory with 16 updates
add b723f314155 Fix GenericTransfer docs reference (#66996)
add df00cd6dba2 Fix CreateWorkflowOperator if_exists=skip ARN construction
(#66974)
add 4f47c3aa86b Adapt GCP CloudSQL trigger to run in private cloud (#66917)
add 508d7fd4d3a (system tests): Move BigQuery streaming-buffer system test
to manual-only (#67009)
add a0367309846 Add `S3TablesDeleteTableBucketPolicyOperator` (#66957)
add dd010a09ea2 Enable ruff PLE1205 to catch logging calls with too many
arguments (#66978)
add ff37123e5cc fix elasticsearch and opensearch providers changelog.rst
(#67007)
add 73eac24b4e6 Bump the auth-ui-package-updates group across 1 directory
with 12 updates (#67001)
add d9b560cd2df Helm Chart Documentation Update (#66970)
add 45db47f0e25 Bugfix/make edge resilient against log errors (#66995)
add ea60a4d6844 docs(security): document supported deployment platforms
(#66931)
add c72b6613fd3 Bump flask-appbuilder to 5.2.1 and mirror new auth event
hooks (#66841)
add ff140cd0b4a Support inline ignore marker for check_core_imports_in_sdk
hook (#65358)
add 2ed6805b0b6 Enable ruff B015 to catch silent no-op comparisons in
tests (#66977)
add b3387b8cef6 Bump the github-actions-updates group with 3 updates
(#67003)
add 42a85ee1ac9 UI: Add custom RouterLink component (#66945)
add d5cc8ac7e05 docs: fix grammar issues in contributing-docs/README.rst
(#67024)
add 66ecac66d1f fix: connection dialog state handling in BasePage to avoid
flaky tests (#67026)
add 724ac5ffec0 Close Catalan gap in main (#67010)
add bc8ef9a4b5c Refactor deferrable execution in DbtCloudRunJobOperator to
align with PR #64051 patterns. Simplify trigger polling/control flow and
propagate execution_timeout via defer. Add tests for best-effort cancellation
semantics in execute_complete and on_kill. (#66449)
add 40fcb034ada Add Bundle documentation for Amazon S3 and Google GCS
providers (#66993)
add 4e82672b4da Replace deprecated typer-slim with typer in devel-common
(#67034)
add 89389e092c4 Bump the edge-ui-package-updates group across 1 directory
with 15 updates (#67002)
add bb75d2a0803 Fix hardcoded OS path in K8s provider (#67040)
add 3a27d600f93 Prevent splitting by OS path separator (#67038)
add 74ec32ff950 Enable ruff B008 (function-call-in-default-argument) and
fix violations (#66979)
add 49958a5000a Add static check ensuring trigger `__init__()` and
`serialize()` stay in sync (#66960)
add c2246efe07d Isolate openlineage extractor test from hook lineage
collector pollution (#67057)
add d4e22155cb0 Fix flaky FileTrigger/FileDeleteTrigger tests by awaiting
the task (#66825)
add 59362117698 Preserve Databricks deferrable trigger caller across
triggerer restarts (#66965)
add 8248e048fdd Render Jinja templates in CloudBatchSubmitJobOperator job
field (#67021)
add c692e85e34c Fix CloudRunExecuteJobOperator deferrable mode silently
passing on cancel (#67050)
add 246c19f113f k8s tests: wait for push task in executor before killing
scheduler (#67067)
add 8ee29ce9e4f providers/mongo: ping mongod before yielding from
mongodb_container fixture (#67066)
add 977935d14b4 airflow-ctl-tests: wait for Dag run terminal state before
xcom commands (#67065)
add 4dff3767564 Include endpoint_prefix in LivyTrigger serialization
(#66966)
add 740c6880e1c Preserve BigQueryIntervalCheckTrigger params after
triggerer restart (#67053)
add 09545ece029 Fix broken download URLs and variable names in airflow-ctl
docs (#67046)
add d728644f535 Handle commas in provider Project-URL metadata (#67064)
add ce1de567e6b Fix airflow-ctl connections import schema handling (#67063)
add 4cf176e6a4f Add Git Sparse Checkout to Git Dag Bundle (#67047)
add cf709d929a0 Remove global variables in airflow.settings (#67070)
add bca6a659724 Updates our docker commands to use breeze prefix (#66368)
add 45161ae7da0 Remove resolved triggers from KNOWN_VIOLATIONS allowlist
(#67069)
add da03584282c Warn against world-accessible Kerberos ccache default in
docs (#66557)
add 1193e5e29d3 Fix scheduler MySQL task instance index hint (#66785)
add fe13eeb25ac Keep Named*Logger.name working across structlog releases
(#66875)
add ac39596bd53 fix(scheduler): ignore stale executor success after defer
reschedule (#66431)
add 75e481c08f7 Fix hardcoded OS path in edge provider (#67039)
add 6594a2f0f45 Add OpenLineage support to AthenaSQLHook (#66844)
add c5408b446c4 Translations: add missing Polish translations for new UI
keys (#66822)
add 80f1ab4d5a0 Tighten deserialization allowlist regex to require
full-string match (#66499)
add 76eb2a09002 Fix max_active_runs lost during DAG serialisation when
value equals schema default (#65310)
add 6b0ccd38417 Register custom deadline references via plugins, matching
timetable pattern (#66737)
add 1621508b108 Revert "Remove global variables in airflow.settings
(#67070)" (#67099)
add 1a019979335 Add UI support to render multi-type params (#66278)
add 37667f11aa3 Improve DB performance of datetime range filters filters
in API queries (#66696)
add a255eebdc03 Adopt apache/airflow-steward framework (pr-management
skills via snapshot) (#66677)
add 91806fd139b Fix N+1 query pattern in bulk pool delete endpoint (#66222)
add 73a6641631d UI: Filter task instances by rendered map index (#66008)
add b2273b55fa3 Make Pool model session parameter keyword-only (#66967)
add aab741737f0 docs(plugins_manager): fix misleading typo (#67101)
add 4ceb0db321e Redact rendered template fields while still structured to
preserve nested-key masking on truncation (#65906)
add 059ceef1230 Move Task Identity line into Pre Execution block in logs
(#67036)
add c0911ae7571 Add `LLMRetryPolicy` to common-ai provider (#65451)
add 69c0d7cc0c7 Fix: Repair action missing job parameters in
`DatabricksRunNowOperator` (#67055)
add 16bb3f15960 fix: Handle `None` Task ID state when matching states in
`ExternalTaskSensor` (#66881)
add c8a6c55cac8 fix: migrate existing deadline rows in migration 0080
upgrade and downgrade (#66016)
add 9b62858d368 Add Helm Chart Development Guide (#66659)
add 322557ac46e Comment to not edit RELEASE_NOTES.rst manually in PRs for
airflowctl (#67128)
add b465693c80e [main] CI: Upgrade important CI environment (#67093)
add 3d73cceafae Docs: Make common.compat.sdk re-exports clickable (#67083)
add e61640e2a1b Aggregate CI-image dependency groups so providers can
register non-default extras with a one-line change (#67130)
add 6431cd1e329 Upgrade main chart to 2.0.0 (#67131)
add 41a6436a1dd Update apache-steward framework snapshot + slim
author-primary triage overrides (#67149)
add 008cbe90e2a AIP-103: Adding ability for per task state key retention
from operators (#66699)
add 20124635877 AGENTS.md: golden rule — when a fix is imminent, open the
PR, not an issue (#67100)
add 4498582dd1e Apply per-DAG audit log permission to event log detail
endpoint (#67112)
add 5a0ff83231d Fix error messages in `PythonVirtualenvOperator` when
Azure Key Vault secret backend is configured (#67157)
add 9bb5ff3535a Fix ValueError when supervisor force-closes stuck sockets
after timeout (#67115)
add fdbb9b01a4f fix: pin compatible-with at the transport layer to keep ES
8 servers working (#66065)
add c8f592d0b2d Implement execution_timeout semantics for
AirbyteTriggerSyncOperator in deferrable mode (#64051)
add 1a95a43bab3 CI: Mount providers directory for breeze k8s dev (#67152)
add aa8542f69ad Default-deny auth at the API and UI router level (#66505)
add ef87426904c Surface remote-log upload failures via structured warnings
(#66571)
add 1e5d79945ad Don't crash supervisor IPC loop on transient network
errors (#66572)
add 2b8c80568b5 Refuse secrets-backend fallback on Execution-API authz
deny (#66575)
add 9cd75dcab83 OTel integration: align test_export_legacy_metric_names
timeout with siblings (#67170)
add 58cd0e05d2e Use a distinct redact message for import errors with no
registered Dag (#66923)
add 16ebf0bbc7f Introduce BaseTaskInstanceDTO and duplicate it across core
and task-sdk (#67174)
add 2723f66d6ed Make CORS allow_credentials configurable (#66503)
add 448f8462919 Harden _collect_teams_to_check / requires_access_backfill
against malformed bodies (#66504)
add 7e91517ffd0 Fail closed when supervisor IPC fails on a non-success
terminal state (#66573)
add d63b5e9c24e fix(keycloak): attach default role policies (#67031)
add ea15bd287aa Bump stylelint (#67148)
add 0a324ba86a8 Add `BedrockCreateEvaluationJobOperator` (#66722)
add 2747837b057 Upgrade icons, spacing, and default component themes
(#66569)
add 3a861426cae UI: Use local Monaco editor module instead of CDN (#66647)
add f9faf65e340 Regenerate Edge worker OpenAPI spec after #67093 env
upgrade (#67188)
add 173c2a1806d Recover stuck TIs when direct terminal-state API call
fails (#66574)
add 41df5a980c8 Add BundleVersion dataclass and version_data persistence
to DagVersion (#66491)
add f5fd3bc4c8f Add eslint-no-duplicate-imports (#67201)
add b81e335fcc4 [helm chart] Go Template Error: Cannot Compare Slice to
nil using eq (#64032)
add b28681f154f Apply requires_access_event_log to GET /eventLogs list
endpoint (#67185)
add 954b3035cc8 Prepare providers release 2026-05-19 (#67137)
add dcdd124431a Add ``Langchain`` hook to ``common-ai`` provider (#67192)
add a1784e880f8 Replace fixed sleep with active IAM trust policy
validation in example_emr_eks (#66736)
add 2017b407666 AGENTS.md: require translating domain-layer exceptions to
`HTTPException` at FastAPI route boundaries (#67221)
add 085459e6f96 AIP-76: Add PartitionAtRuntime authoring API to Task SDK
(#65447)
add 5aeb726b1f9 Sync RuntimeTaskInstanceProtocol with RuntimeTaskInstance
(#67216)
add ec2d56a473d AIP-103: Worker side custom state backend support (#66859)
add f9e4e6efd10 AIP-103: Add Core API endpoints for task state and asset
state (#67041)
add 41ec7a09398 Improve query validation, including for streaming (#67212)
add b2d4d63c64b Bump eslint (via audit fix) (#67220)
add 5ae6bb07cd5 Update French (fr) UI translations to 100% coverage
(#67240)
add 58a60ed2f48 tests: Add new options to test operator (#67195)
add 153623856ef Prevent AlreadyRunningBackfill error caused by invalid
date range request (#66874)
add fe1618f9f32 Fix LangChain hook tests failing when langchain is not
installed (#67237)
add 678d1dd0ce9 Replace `allow_producer_teams` with `access_control` on
Asset (#66954)
add 2970152b190 Fix CallbackKey type for more accurate type checking
(#66973)
add 13e2125a2c3 Add rerun_with_latest_version config hierarchy for
clear/rerun behavior (#63884)
add 3047ad7fa3c Fix autorefresh for deadlines and paused dags (#67249)
add aa3ae537a0d Fix console errors in gantt view (#67255)
add 6b64a621be4 [main] CI: Upgrade important CI environment (#67232)
add eec2f75e556 Add `DocumentLoaderOperator` to `common.ai` provider
(#67120)
add c0bc3d07747 Add chart/v*-stable to protected branches (#67259)
add cb2aaf41ed2 docs(edge3): clarify WorkerQueuesBase.team_name is an
experimental hint, cross-ref workload.rst (#66718)
add 315d1591644 Fix deadlock in ti_update_state caused by FOR UPDATE
locking dag_run (#67246)
add 8f216be1f1a Bump picomatch from 4.0.3 to 4.0.4 in /registry (#67124)
add 8d1ef7d628e Bump brace-expansion from 5.0.5 to 5.0.6 in /registry
(#67125)
add 22c450fbc35 Bump liquidjs from 10.25.5 to 10.27.0 in /registry (#67126)
add 7936ed6ce61 Bump ws from 8.19.0 to 8.20.1 in /registry (#67136)
add b64c302b2e9 Add LlamaIndex operators to common.ai provider (#67121)
add 706c1196484 Add /.github/skills/issue-* to .gitignore (#67275)
add dae49a37f58 AIP-76: Consume task-emitted partition keys on asset
events (#66782)
add f51d9e6ed23 workflows: use task-sdk alias in publish-docs
NON_PROVIDER_TOKENS (#67279)
add dfd9655139e Update spelling wordlist to fix errors in common-ai
provider (#67278)
add b13d796fbf1 Fixing mypy errors in google gen ai provider and tests
(#67276)
add 5bc196f5528 docs: Clarify manual DAG run data interval semantics in
Airflow 3 (#64740)
add 075937c4a9b Refactor and extract shared request handler logic from
supervisor _handle_request methods (#65624)
add 824722219b4 Fix provider executor tests broken in main (#67268)
add 75ca1714f96 fix: Support log level parsing from container output in
`EcsRunTaskOperator` (#67180)
add c91117a89b1 Prevent durable storage tests from leaking hook lineage
(#67252)
add f2af887699a Add ExecuteCallback support to AWS ECS Executor (#63657)
add 4325707b488 Add per-provider pre-extras install hook for native build
prereqs (#67205)
add 9b85d88749e Fix wrong changelog entry for BigQueryInsertJobOperator in
google provider 22.0.0 (#67280)
add ddf1ebc0fe7 fix: EksPodOperator 401 with cross-account AssumeRole via
aws_conn_id (#65335)
add 9288949db28 Add bulk delete Dag Runs (#67095)
add c3bf97d6a21 Fix duplicated logs and memory issue with S3 log handler
(#67144)
add 75a5877470f Add announcement step to PMC onboarding instructions
(#67303)
add ac5ab7da828 fix typo "@tash.bash" -> "@task.bash (#67301)
add a73c6268a3b Fix KubernetesPodTrigger.get_task_state KeyError on mapped
TIs (#67296) (#67297)
add ca05a56f6a1 Fix multiple_outputs no-op on deferrable
KubernetesPodOperator (#67226)
add 9cfd9943d68 Support timezone in SDK temporal partition mappers (#67164)
add 2e9cbc25ebb Add configurable task span detail level for OTel tracing
(#63568)
add 6886e5bd8ad Remove unused isLoggedIn and expectLoginSuccess from UI
e2e page objects (#67267)
add 8199e76a718 Fix EMR Serverless task failure on transient AWS
throttling errors (#67222)
add 93eee4fb31d i18n(ko): Improve Korean Task terminology consistency
(#67234)
add 8388bb8f89e Deprecate implicit REMOTE_TASK_LOG registration in
OpensearchTaskHandler (#67106)
add 9ed5a08fd1f AIP-76: Add example and docs for runtime asset
partitioning (#67307)
add d02b66523f2 Fix SageMaker processing stopped state handling (#67291)
add af5af564ffa Export from_timestamp from Task SDK timezone module
(#67321)
add 11ba5ec753b Breeze: bind api-server dual-stack so http://localhost
works in Chrome/Safari (#67320)
add 8c2fa492bc1 Add `allow_global` option to asset access control (#67251)
add b64ed723421 Refactor Elasticsearch log formatter to use
timezone.from_timestamp (#67245)
add 91843291f54 Refactor Opensearch log formatter to use
timezone.from_timestamp (#66856)
add 952b84c9012 Bump the ui-plugin-template-package-updates group across 1
directory with 16 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 (2cbf29ba94c)
\
N -- N -- N
refs/heads/dependabot/npm_and_yarn/dev/react-plugin-tools/react_plugin_template/ui-plugin-template-package-updates-82fed8f7fc
(952b84c9012)
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:
.apache-steward-overrides/README.md | 35 +
.apache-steward-overrides/pr-management-config.md | 77 +
.../pr-management-triage-ci-check-map.md | 79 +
.../pr-management-triage-comment-templates.md | 220 +
.apache-steward-overrides/user.md | 59 +
.apache-steward.lock | 6 +
.asf.yaml | 1 +
.claude/skills/maintainer-review | 1 -
.claude/skills/pr-stats | 1 -
.claude/skills/pr-triage | 1 -
.claude/skills/setup-steward | 1 +
.github/skills/maintainer-review/SKILL.md | 525 --
.github/skills/maintainer-review/adversarial.md | 208 -
.github/skills/maintainer-review/criteria.md | 172 -
.github/skills/maintainer-review/posting.md | 394 --
.github/skills/maintainer-review/prerequisites.md | 198 -
.github/skills/maintainer-review/review-flow.md | 687 ---
.github/skills/maintainer-review/selectors.md | 591 ---
.github/skills/pr-stats/SKILL.md | 248 -
.github/skills/pr-stats/aggregate.md | 290 --
.github/skills/pr-stats/classify.md | 180 -
.github/skills/pr-stats/fetch.md | 353 --
.github/skills/pr-stats/render.md | 488 --
.github/skills/pr-triage/SKILL.md | 457 --
.github/skills/pr-triage/actions.md | 514 --
.github/skills/pr-triage/classify-and-act.md | 360 --
.github/skills/pr-triage/comment-templates.md | 488 --
.github/skills/pr-triage/fetch-and-batch.md | 446 --
.github/skills/pr-triage/interaction-loop.md | 374 --
.github/skills/pr-triage/prerequisites.md | 169 -
.github/skills/pr-triage/rationale.md | 388 --
.github/skills/pr-triage/stale-sweeps.md | 222 -
.github/skills/pr-triage/workflow-approval.md | 332 --
.github/skills/setup-steward/SKILL.md | 362 ++
.github/skills/setup-steward/adopt.md | 900 ++++
.github/skills/setup-steward/conventions.md | 131 +
.github/skills/setup-steward/overrides.md | 139 +
.github/skills/setup-steward/unadopt.md | 345 ++
.github/skills/setup-steward/upgrade.md | 532 ++
.github/skills/setup-steward/verify.md | 344 ++
.github/skills/setup-steward/worktree-init.md | 208 +
.github/workflows/basic-tests.yml | 2 +-
.github/workflows/ci-image-checks.yml | 2 +-
.github/workflows/codeql-analysis.yml | 6 +-
.github/workflows/publish-docs-to-s3.yml | 4 +-
.github/workflows/registry-backfill.yml | 6 +-
.github/workflows/registry-build.yml | 4 +-
.github/workflows/ui-e2e-tests.yml | 2 +-
.gitignore | 28 +-
.pre-commit-config.yaml | 19 +-
AGENTS.md | 44 +
COMMITTERS.rst | 3 +-
Dockerfile | 14 +-
Dockerfile.ci | 45 +-
README.md | 34 +
airflow-core/.pre-commit-config.yaml | 2 +-
.../3rd-party-licenses/LICENSE-monaco-editor.txt | 21 +
airflow-core/LICENSE | 1 +
airflow-core/NOTICE | 8 +
.../administration-and-deployment/dag-bundles.rst | 105 +
.../docs/administration-and-deployment/plugins.rst | 7 +
.../docs/authoring-and-scheduling/assets.rst | 44 +
airflow-core/docs/best-practices.rst | 2 +-
airflow-core/docs/core-concepts/dag-run.rst | 18 +
airflow-core/docs/core-concepts/params.rst | 36 +
.../docs/installation/upgrading_to_airflow3.rst | 48 +-
airflow-core/docs/migrations-ref.rst | 6 +-
airflow-core/docs/operators-and-hooks-ref.rst | 2 +-
airflow-core/docs/security/api.rst | 5 +
airflow-core/docs/security/kerberos.rst | 10 +
airflow-core/docs/security/security_model.rst | 19 +
airflow-core/newsfragments/63884.significant.rst | 34 +
airflow-core/newsfragments/66499.significant.rst | 14 +
airflow-core/newsfragments/66737.significant.rst | 1 +
airflow-core/newsfragments/67164.significant.rst | 34 +
.../auth/managers/simple/ui/package.json | 24 +-
.../auth/managers/simple/ui/pnpm-lock.yaml | 811 +--
.../src/airflow/api_fastapi/common/parameters.py | 146 +-
.../src/airflow/api_fastapi/core_api/app.py | 3 +-
.../datamodels/asset_state.py} | 26 +-
.../api_fastapi/core_api/datamodels/backfills.py | 8 +-
.../api_fastapi/core_api/datamodels/dag_run.py | 22 +-
.../api_fastapi/core_api/datamodels/dags.py | 1 +
.../core_api/datamodels/task_instances.py | 9 +-
.../datamodels/task_state.py | 25 +-
.../api_fastapi/core_api/datamodels/ui/config.py | 1 +
.../api_fastapi/core_api/openapi/_private_ui.yaml | 5 +
.../core_api/openapi/v2-rest-api-generated.yaml | 1334 ++++-
.../api_fastapi/core_api/routes/public/__init__.py | 13 +-
.../core_api/routes/public/asset_state.py | 163 +
.../core_api/routes/public/backfills.py | 13 +-
.../api_fastapi/core_api/routes/public/dag_run.py | 33 +-
.../core_api/routes/public/event_logs.py | 7 +-
.../core_api/routes/public/import_error.py | 18 +-
.../core_api/routes/public/task_instances.py | 19 +-
.../core_api/routes/public/task_state.py | 210 +
.../api_fastapi/core_api/routes/ui/__init__.py | 7 +-
.../api_fastapi/core_api/routes/ui/config.py | 7 +
.../src/airflow/api_fastapi/core_api/security.py | 122 +-
.../api_fastapi/core_api/services/public/common.py | 26 +
.../core_api/services/public/dag_run.py | 115 +-
.../api_fastapi/core_api/services/public/pools.py | 16 +-
.../execution_api/datamodels/task_state.py | 3 +
.../execution_api/routes/task_instances.py | 13 +-
.../api_fastapi/execution_api/routes/task_state.py | 2 +-
airflow-core/src/airflow/assets/manager.py | 10 +-
airflow-core/src/airflow/cli/cli_config.py | 8 +-
.../src/airflow/cli/commands/backfill_command.py | 13 +-
.../src/airflow/cli/commands/dag_command.py | 6 +-
.../src/airflow/config_templates/config.yml | 39 +-
.../src/airflow/dag_processing/bundles/base.py | 57 +-
.../src/airflow/dag_processing/collection.py | 18 +-
airflow-core/src/airflow/dag_processing/dagbag.py | 4 +-
airflow-core/src/airflow/dag_processing/manager.py | 20 +-
.../src/airflow/dag_processing/processor.py | 98 +-
.../example_dags/example_asset_allow_teams.py | 24 +-
.../example_dags/example_asset_partition.py | 53 +
.../example_dags/example_params_ui_tutorial.py | 40 +
.../src/airflow/executors/base_executor.py | 12 +-
.../src/airflow/executors/workloads/callback.py | 6 +-
.../src/airflow/executors/workloads/task.py | 17 +-
.../src/airflow/executors/workloads/types.py | 8 +-
.../src/airflow/jobs/scheduler_job_runner.py | 29 +-
.../src/airflow/jobs/triggerer_job_runner.py | 81 +-
.../0080_3_1_0_modify_deadline_callback_schema.py | 195 +-
...0_replace_deadline_inline_callback_with_fkey.py | 31 +-
...rol_columns_to_dag_schedule_asset_reference.py} | 10 +-
... 0115_3_3_0_add_version_data_to_dag_version.py} | 31 +-
airflow-core/src/airflow/models/asset.py | 3 +
airflow-core/src/airflow/models/backfill.py | 21 +-
airflow-core/src/airflow/models/callback.py | 12 +-
airflow-core/src/airflow/models/connection.py | 4 +
airflow-core/src/airflow/models/dag_version.py | 6 +
airflow-core/src/airflow/models/dagrun.py | 25 +-
airflow-core/src/airflow/models/pool.py | 5 +-
airflow-core/src/airflow/models/serialized_dag.py | 4 +
airflow-core/src/airflow/models/taskinstance.py | 125 +-
airflow-core/src/airflow/models/variable.py | 4 +
airflow-core/src/airflow/plugins_manager.py | 13 +
airflow-core/src/airflow/serialization/decoders.py | 2 +-
.../airflow/serialization/definitions/assets.py | 2 +-
.../src/airflow/serialization/definitions/dag.py | 2 +
.../airflow/serialization/definitions/deadline.py | 4 +-
airflow-core/src/airflow/serialization/encoders.py | 24 +-
airflow-core/src/airflow/serialization/helpers.py | 32 +-
airflow-core/src/airflow/serialization/schema.json | 11 +-
.../airflow/serialization/serialized_objects.py | 1 +
airflow-core/src/airflow/state/metastore.py | 56 +-
airflow-core/src/airflow/timetables/base.py | 7 +
airflow-core/src/airflow/timetables/simple.py | 16 +
.../src/airflow/ui/openapi-gen/queries/common.ts | 73 +-
.../ui/openapi-gen/queries/ensureQueryData.ts | 116 +-
.../src/airflow/ui/openapi-gen/queries/prefetch.ts | 116 +-
.../src/airflow/ui/openapi-gen/queries/queries.ts | 295 +-
.../src/airflow/ui/openapi-gen/queries/suspense.ts | 116 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 353 +-
.../ui/openapi-gen/requests/services.gen.ts | 429 +-
.../airflow/ui/openapi-gen/requests/types.gen.ts | 584 ++-
airflow-core/src/airflow/ui/package.json | 1 +
airflow-core/src/airflow/ui/pnpm-lock.yaml | 50 +-
.../airflow/ui/public/i18n/locales/ca/common.json | 8 +
.../ui/public/i18n/locales/ca/components.json | 5 +-
.../src/airflow/ui/public/i18n/locales/ca/dag.json | 51 +
.../airflow/ui/public/i18n/locales/ca/dags.json | 5 +
.../airflow/ui/public/i18n/locales/en/common.json | 1 +
.../airflow/ui/public/i18n/locales/fr/admin.json | 21 +-
.../airflow/ui/public/i18n/locales/fr/assets.json | 8 +-
.../airflow/ui/public/i18n/locales/fr/browse.json | 26 +-
.../airflow/ui/public/i18n/locales/fr/common.json | 90 +-
.../ui/public/i18n/locales/fr/components.json | 34 +-
.../src/airflow/ui/public/i18n/locales/fr/dag.json | 92 +-
.../airflow/ui/public/i18n/locales/fr/dags.json | 13 +-
.../ui/public/i18n/locales/fr/dashboard.json | 3 +-
.../airflow/ui/public/i18n/locales/fr/hitl.json | 4 +
.../airflow/ui/public/i18n/locales/ko/admin.json | 2 +-
.../airflow/ui/public/i18n/locales/ko/assets.json | 4 +-
.../airflow/ui/public/i18n/locales/ko/common.json | 20 +-
.../ui/public/i18n/locales/ko/components.json | 16 +-
.../src/airflow/ui/public/i18n/locales/ko/dag.json | 40 +-
.../airflow/ui/public/i18n/locales/ko/dags.json | 20 +-
.../airflow/ui/public/i18n/locales/ko/hitl.json | 2 +-
.../airflow/ui/public/i18n/locales/ko/tasks.json | 2 +-
.../airflow/ui/public/i18n/locales/pl/common.json | 10 +
.../ui/public/i18n/locales/pl/components.json | 4 +-
.../src/airflow/ui/public/i18n/locales/pl/dag.json | 49 +
.../airflow/ui/public/i18n/locales/pl/dags.json | 5 +
airflow-core/src/airflow/ui/rules/core.js | 18 +
.../ui/src/components/AdvancedSearchToggle.tsx | 5 +-
.../src/components/AssetExpression/AssetNode.tsx | 11 +-
.../ui/src/components/AssetProgressCell.tsx | 2 +-
.../ui/src/components/Assets/AssetEvents.tsx | 13 +-
.../ui/src/components/Assets/TriggeredRuns.tsx | 19 +-
.../ui/src/components/AttrSelectFilterMulti.tsx | 6 +-
.../ui/src/components/Clear/Run/ClearRunButton.tsx | 24 +-
.../ui/src/components/Clear/Run/ClearRunDialog.tsx | 10 +-
.../TaskInstance/ClearGroupTaskInstanceDialog.tsx | 45 +-
.../Clear/TaskInstance/ClearTaskInstanceButton.tsx | 43 +-
.../Clear/TaskInstance/ClearTaskInstanceDialog.tsx | 42 +-
.../Clear/useRerunWithLatestVersion.test.tsx | 154 +
.../components/Clear/useRerunWithLatestVersion.ts | 55 +
.../ui/src/components/ConfirmationModal.tsx | 1 -
.../airflow/ui/src/components/DAGWarningsModal.tsx | 8 +-
.../src/components/DagActions/DeleteDagButton.tsx | 22 +-
.../components/DagActions/FavoriteDagButton.tsx | 25 +-
.../src/components/DagActions/ParseDagButton.tsx | 18 +-
.../src/components/DagActions/RunBackfillForm.tsx | 37 +-
.../ui/src/components/DataTable/DataTable.tsx | 8 +-
.../src/components/DataTable/FilterMenuButton.tsx | 12 +-
.../src/components/DataTable/useTableUrlState.ts | 3 +-
.../ui/src/components/DisplayMarkdownButton.tsx | 20 +-
.../ui/src/components/EditableMarkdownButton.tsx | 13 +-
.../ui/src/components/ExpandCollapseButtons.tsx | 14 +-
.../ui/src/components/FilterBar/FilterBar.tsx | 2 +-
.../src/components/FilterBar/filters/DateInput.tsx | 4 +-
.../ui/src/components/FlexibleForm/FieldBool.tsx | 1 -
.../FlexibleForm/FieldMultiType.test.tsx | 263 +
.../src/components/FlexibleForm/FieldMultiType.tsx | 118 +
.../src/components/FlexibleForm/FieldSelector.tsx | 13 +
.../ui/src/components/Graph/DownloadButton.tsx | 9 +-
.../airflow/ui/src/components/Graph/TaskNode.tsx | 2 -
.../airflow/ui/src/components/GraphTaskFilters.tsx | 20 +-
.../src/airflow/ui/src/components/JsonEditor.tsx | 2 +-
.../airflow/ui/src/components/LimitedItemsList.tsx | 2 -
.../src/components/MarkAs/Run/MarkRunAsButton.tsx | 42 +-
.../src/components/MarkAs/Run/MarkRunAsDialog.tsx | 7 +-
.../MarkAs/TaskGroup/MarkTaskGroupAsButton.tsx | 40 +-
.../MarkAs/TaskGroup/MarkTaskGroupAsDialog.tsx | 3 +-
.../TaskInstance/MarkTaskInstanceAsButton.tsx | 39 +-
.../TaskInstance/MarkTaskInstanceAsDialog.tsx | 3 +-
.../src/airflow/ui/src/components/MarkAs/utils.ts | 4 +-
.../src/components/MonacoEditor/configureMonaco.ts | 71 +
.../{ui/ResetButton.tsx => MonacoEditor/index.tsx} | 42 +-
.../Menu.tsx => MonacoEditor/useMonacoReady.ts} | 27 +-
.../ui/src/components/QuickFilterButton.tsx | 1 -
.../airflow/ui/src/components/ReactMarkdown.tsx | 2 +-
.../ui/src/components/RenderedJsonField.tsx | 2 +-
.../src/airflow/ui/src/components/RunTypeIcon.tsx | 3 +-
.../src/airflow/ui/src/components/SearchBar.tsx | 3 +-
.../src/components/SearchDags/SearchDagsButton.tsx | 8 +-
.../airflow/ui/src/components/TaskTrySelect.tsx | 2 -
.../src/airflow/ui/src/components/TogglePause.tsx | 2 -
.../src/components/TriggerDag/TriggerDAGButton.tsx | 11 +-
.../src/components/TriggerDag/TriggerDAGForm.tsx | 9 +-
.../src/components/TriggerDag/TriggerDAGModal.tsx | 2 +-
.../ui/src/components/ui/ButtonGroupToggle.tsx | 6 +-
.../src/airflow/ui/src/components/ui/Clipboard.tsx | 8 +-
.../{Pagination/NextTrigger.tsx => IconButton.tsx} | 32 +-
.../airflow/ui/src/components/ui/LazyClipboard.tsx | 3 +-
.../src/airflow/ui/src/components/ui/Menu/Menu.tsx | 4 +
.../components/ui/Menu/{Menu.tsx => MenuRoot.tsx} | 26 +-
.../ui/Menu/{Menu.tsx => MenuTrigger.tsx} | 31 +-
.../src/components/ui/Pagination/NextTrigger.tsx | 3 +-
.../src/components/ui/Pagination/PrevTrigger.tsx | 3 +-
.../airflow/ui/src/components/ui/ResetButton.tsx | 2 +-
.../ui/{Menu/Menu.tsx => RouterLink.tsx} | 16 +-
.../ui/src/components/ui/SegmentedControl.tsx | 1 -
.../src/airflow/ui/src/components/ui/index.ts | 2 +
.../src/airflow/ui/src/constants/filterConfigs.tsx | 7 +
.../src/airflow/ui/src/constants/searchParams.ts | 1 +
.../ui/src/layouts/Details/DetailsLayout.tsx | 104 +-
.../ui/src/layouts/Details/Gantt/GanttTimeline.tsx | 2 +-
.../layouts/Details/Grid/GridPaginationButtons.tsx | 11 +-
.../ui/src/layouts/Details/PanelButtons.tsx | 11 +-
.../ui/src/layouts/Details/TaskStreamFilter.tsx | 28 +-
.../airflow/ui/src/layouts/Nav/LanguageModal.tsx | 2 +-
.../src/airflow/ui/src/layouts/Nav/PluginMenus.tsx | 2 +-
.../airflow/ui/src/layouts/Nav/TimezoneModal.tsx | 2 +-
.../ui/src/layouts/Nav/TokenGenerationModal.tsx | 2 +-
airflow-core/src/airflow/ui/src/main.tsx | 3 +-
.../src/airflow/ui/src/mocks/handlers/log.ts | 14 +-
.../src/airflow/ui/src/pages/Asset/AssetLayout.tsx | 3 +-
.../ui/src/pages/Asset/AssetPanelButtons.tsx | 15 +-
.../ui/src/pages/Asset/CreateAssetEvent.tsx | 19 +-
.../ui/src/pages/Asset/CreateAssetEventModal.tsx | 9 +-
.../airflow/ui/src/pages/AssetsList/AssetsList.tsx | 11 +-
.../ui/src/pages/AssetsList/DependencyPopover.tsx | 13 +-
.../src/pages/Connections/AddConnectionButton.tsx | 8 +-
.../ui/src/pages/Connections/ConnectionForm.tsx | 1 -
.../ui/src/pages/Connections/Connections.tsx | 2 -
.../pages/Connections/DeleteConnectionButton.tsx | 26 +-
.../pages/Connections/DeleteConnectionsButton.tsx | 3 +-
.../src/pages/Connections/EditConnectionButton.tsx | 22 +-
.../src/pages/Connections/TestConnectionButton.tsx | 30 +-
.../airflow/ui/src/pages/Dag/Calendar/Calendar.tsx | 11 +-
.../src/airflow/ui/src/pages/Dag/Code/Code.tsx | 5 +-
.../ui/src/pages/Dag/Code/CodeDiffViewer.tsx | 2 +-
airflow-core/src/airflow/ui/src/pages/Dag/Dag.tsx | 2 +-
.../src/airflow/ui/src/pages/Dag/DagNotFound.tsx | 2 -
.../src/airflow/ui/src/pages/Dag/Header.tsx | 24 +-
.../src/pages/Dag/Overview/AllDeadlinesModal.tsx | 2 +-
.../ui/src/pages/Dag/Overview/DagDeadlines.tsx | 8 +-
.../ui/src/pages/Dag/Overview/DeadlineRow.tsx | 16 +-
.../ui/src/pages/Dag/Overview/FailedLogs.tsx | 1 -
.../ui/src/pages/Dag/Overview/TaskLogPreview.tsx | 14 +-
.../Dag/Tasks/TaskFilters/AttrSelectFilter.tsx | 2 +-
.../src/airflow/ui/src/pages/Dag/Tasks/Tasks.tsx | 12 +-
.../BulkDeleteDagRunsButton.tsx} | 89 +-
.../ui/src/pages/{ => DagRuns}/DagRuns.test.tsx | 0
.../airflow/ui/src/pages/{ => DagRuns}/DagRuns.tsx | 108 +-
.../ui/src/pages/{ => DagRuns}/DagRunsFilters.tsx | 0
.../ui/src/pages/{ => DagRuns}/DeleteRunButton.tsx | 22 +-
.../MarkAs/utils.ts => pages/DagRuns/index.ts} | 4 +-
.../ui/src/pages/DagsList/AssetSchedule.tsx | 17 +-
.../src/airflow/ui/src/pages/DagsList/DagCard.tsx | 39 +-
.../airflow/ui/src/pages/DagsList/DagOwners.tsx | 8 +-
.../src/airflow/ui/src/pages/DagsList/DagTags.tsx | 9 +-
.../pages/DagsList/DagsFilters/FavoriteFilter.tsx | 32 +-
.../DagsList/DagsFilters/RequiredActionFilter.tsx | 2 -
.../src/airflow/ui/src/pages/DagsList/DagsList.tsx | 42 +-
.../src/pages/DagsList/PartitionScheduleModal.tsx | 2 +-
.../pages/Dashboard/FavoriteDags/FavoriteDags.tsx | 4 +-
.../pages/Dashboard/PoolSummary/PoolSummary.tsx | 10 +-
.../pages/Dashboard/Stats/DAGImportErrorsModal.tsx | 2 +-
.../Dashboard/Stats/PluginImportErrorsModal.tsx | 2 +-
airflow-core/src/airflow/ui/src/pages/Error.tsx | 2 -
.../pages/HITLTaskInstances/HITLResponseForm.tsx | 1 -
.../pages/HITLTaskInstances/HITLTaskInstances.tsx | 44 +-
airflow-core/src/airflow/ui/src/pages/Jobs.tsx | 3 +-
.../airflow/ui/src/pages/Pools/AddPoolButton.tsx | 8 +-
.../ui/src/pages/Pools/DeletePoolButton.tsx | 18 +-
.../airflow/ui/src/pages/Pools/EditPoolButton.tsx | 20 +-
.../src/airflow/ui/src/pages/Pools/PoolForm.tsx | 8 +-
.../airflow/ui/src/pages/Run/DeadlineStatus.tsx | 2 +-
.../src/airflow/ui/src/pages/Run/Header.tsx | 18 +-
.../ui/src/pages/TaskInstance/ExtraLinks.tsx | 2 +-
.../ui/src/pages/TaskInstance/HITLResponse.tsx | 3 +-
.../src/pages/TaskInstance/Logs/LogSearchInput.tsx | 6 +-
.../ui/src/pages/TaskInstance/Logs/Logs.test.tsx | 19 +-
.../src/pages/TaskInstance/Logs/ScrollToButton.tsx | 35 +-
.../src/pages/TaskInstance/Logs/TaskLogHeader.tsx | 31 +-
.../ui/src/pages/TaskInstance/Logs/utils.test.ts | 7 +-
.../ui/src/pages/TaskInstance/Logs/utils.ts | 6 +-
.../TaskInstances/BulkClearTaskInstancesButton.tsx | 5 +-
.../BulkDeleteTaskInstancesButton.tsx | 4 +-
.../BulkMarkTaskInstancesAsButton.tsx | 21 +-
.../TaskInstances/DeleteTaskInstanceButton.tsx | 26 +-
.../ui/src/pages/TaskInstances/TaskInstances.tsx | 48 +-
.../pages/TaskInstances/TaskInstancesFilter.tsx | 2 +
.../src/pages/Variables/DeleteVariablesButton.tsx | 3 +-
.../src/pages/Variables/ImportVariablesButton.tsx | 4 +-
.../ui/src/pages/Variables/ImportVariablesForm.tsx | 2 +-
.../Variables/ManageVariable/AddVariableButton.tsx | 8 +-
.../ManageVariable/DeleteVariableButton.tsx | 26 +-
.../ManageVariable/EditVariableButton.tsx | 21 +-
.../Variables/ManageVariable/VariableForm.tsx | 6 +-
.../airflow/ui/src/pages/Variables/Variables.tsx | 2 -
.../airflow/ui/src/pages/XCom/AddXComButton.tsx | 2 +-
.../airflow/ui/src/pages/XCom/DeleteXComButton.tsx | 14 +-
.../airflow/ui/src/pages/XCom/EditXComButton.tsx | 5 +-
.../src/airflow/ui/src/pages/XCom/XCom.tsx | 50 +-
.../airflow/ui/src/queries/gridViewQueryKeys.ts | 10 +
.../ui/src/queries/useBulkClearTaskInstances.ts | 17 +-
...ulkTaskInstances.ts => useBulkDeleteDagRuns.ts} | 53 +-
.../airflow/ui/src/queries/useBulkTaskInstances.ts | 3 +
.../src/airflow/ui/src/queries/useClearRun.ts | 3 +-
.../ui/src/queries/useClearTaskInstances.ts | 3 +-
.../airflow/ui/src/queries/useCreateBackfill.ts | 1 +
.../src/airflow/ui/src/queries/useDeadlines.ts | 2 +-
.../src/airflow/ui/src/queries/useDeleteDag.ts | 3 +-
.../src/airflow/ui/src/queries/useDeleteDagRun.ts | 9 +-
.../ui/src/queries/useDeleteTaskInstance.ts | 12 +-
.../airflow/ui/src/queries/useGridTISummaries.ts | 42 +
.../src/airflow/ui/src/queries/useLogs.tsx | 31 +-
.../src/airflow/ui/src/queries/usePatchDagRun.ts | 9 +-
.../airflow/ui/src/queries/usePatchTaskGroup.ts | 3 +-
.../airflow/ui/src/queries/usePatchTaskInstance.ts | 3 +-
.../ui/src/queries/useRefreshOnNewDagRuns.ts | 8 +-
.../airflow/ui/src/queries/useUpdateHITLDetail.ts | 10 +-
airflow-core/src/airflow/ui/src/theme.ts | 42 +-
airflow-core/src/airflow/ui/src/utils/TrimText.tsx | 2 +-
.../src/airflow/ui/src/utils/useFiltersHandler.ts | 1 +
.../src/airflow/ui/tests/e2e/pages/BasePage.ts | 22 +-
.../src/airflow/ui/tests/e2e/pages/DagCodePage.ts | 2 +-
.../src/airflow/ui/tests/e2e/pages/LoginPage.ts | 11 -
airflow-core/src/airflow/utils/db.py | 2 +-
.../src/airflow/utils/log/file_task_handler.py | 2 +-
airflow-core/tests/integration/otel/test_otel.py | 80 +-
.../unit/api_fastapi/common/test_parameters.py | 62 +
.../core_api/routes/public/test_asset_state.py | 255 +
.../core_api/routes/public/test_dag_run.py | 355 +-
.../core_api/routes/public/test_dags.py | 2 +
.../core_api/routes/public/test_event_logs.py | 36 +
.../core_api/routes/public/test_import_error.py | 43 +-
.../core_api/routes/public/test_pools.py | 36 +
.../core_api/routes/public/test_task_instances.py | 119 +-
.../core_api/routes/public/test_task_state.py | 293 ++
.../api_fastapi/core_api/routes/ui/test_config.py | 1 +
.../tests/unit/api_fastapi/core_api/test_app.py | 50 +
.../unit/api_fastapi/core_api/test_security.py | 216 +
.../execution_api/versions/head/test_task_state.py | 30 +
airflow-core/tests/unit/assets/test_manager.py | 57 +-
.../unit/cli/commands/test_api_server_command.py | 2 +-
.../unit/cli/commands/test_backfill_command.py | 3 +
.../tests/unit/dag_processing/bundles/test_base.py | 29 +
.../tests/unit/dag_processing/test_collection.py | 39 +-
.../tests/unit/dag_processing/test_manager.py | 66 +
.../tests/unit/dag_processing/test_processor.py | 1 +
.../tests/unit/executors/test_base_executor.py | 25 +-
.../tests/unit/executors/test_local_executor.py | 2 +-
.../tests/unit/executors/test_workloads.py | 52 +
airflow-core/tests/unit/jobs/test_scheduler_job.py | 94 +-
.../test_0080_deadline_callback_migration.py | 268 +
.../test_0094_deadline_callback_migration.py | 178 +
airflow-core/tests/unit/models/test_backfill.py | 18 +
airflow-core/tests/unit/models/test_dag.py | 2 +-
airflow-core/tests/unit/models/test_dag_version.py | 38 +
airflow-core/tests/unit/models/test_dagrun.py | 20 +
.../tests/unit/models/test_mappedoperator.py | 4 +-
.../tests/unit/models/test_taskinstance.py | 187 +-
.../tests/unit/partition_mappers/test_temporal.py | 136 +-
.../unit/serialization/test_dag_serialization.py | 120 +-
.../test_deadline_reference_registry.py | 100 +
.../tests/unit/serialization/test_helpers.py | 24 +
.../unit/serialization/test_serialized_objects.py | 134 +-
airflow-core/tests/unit/state/test_metastore.py | 19 +-
.../tests/airflowctl_tests/conftest.py | 77 +-
airflow-ctl/RELEASE_NOTES.rst | 2 +
.../docs/installation/installing-from-sources.rst | 16 +-
.../src/airflowctl/api/datamodels/generated.py | 171 +-
airflow-ctl/src/airflowctl/api/operations.py | 13 +-
.../airflowctl/ctl/commands/connection_command.py | 1 +
.../tests/airflow_ctl/api/test_operations.py | 112 +
.../ctl/commands/test_connections_command.py | 35 +
.../tests/airflow_e2e_tests/conftest.py | 2 +-
chart/Chart.yaml | 2 +-
chart/docs/conf.py | 9 +
chart/docs/customizing-labels.rst | 3 +-
chart/docs/customizing-workers.rst | 28 +-
chart/docs/extending-the-chart.rst | 36 +-
chart/docs/index.rst | 23 +-
chart/docs/parameters-ref.rst | 40 +-
chart/docs/production-guide.rst | 11 +-
chart/docs/quick-start.rst | 9 +-
chart/docs/setting-resources-for-containers.rst | 55 +-
chart/docs/upgrading-to-airflow-3.rst | 30 +-
chart/newsfragments/66970.significant.rst | 1 +
chart/templates/_helpers.yaml | 2 +-
.../airflow_aux/test_pod_template_file.py | 2 +-
.../helm_tests/airflow_core/test_worker_sets.py | 16 +
contributing-docs/12_provider_distributions.rst | 93 +
contributing-docs/15_node_environment_setup.rst | 54 +
contributing-docs/25_maintainer_pr_triage.md | 53 +-
contributing-docs/29_helm_chart_development.rst | 227 +
contributing-docs/README.rst | 16 +-
dev/breeze/doc/ci/02_images.md | 4 +-
dev/breeze/doc/images/output-commands.svg | 158 +-
dev/breeze/doc/images/output_k8s.svg | 2 +-
dev/breeze/doc/images/output_k8s.txt | 2 +-
dev/breeze/doc/images/output_k8s_dev.svg | 4 +-
dev/breeze/doc/images/output_k8s_dev.txt | 2 +-
dev/breeze/doc/images/output_run.svg | 38 +-
dev/breeze/doc/images/output_run.txt | 2 +-
dev/breeze/doc/images/output_shell.svg | 286 +-
dev/breeze/doc/images/output_shell.txt | 2 +-
dev/breeze/doc/images/output_start-airflow.svg | 238 +-
dev/breeze/doc/images/output_start-airflow.txt | 2 +-
dev/breeze/pyproject.toml | 2 +-
.../airflow_breeze/commands/developer_commands.py | 6 +-
.../airflow_breeze/commands/kubernetes_commands.py | 16 +-
.../commands/release_management_commands.py | 14 +-
.../src/airflow_breeze/commands/setup_commands.py | 2 +-
.../airflow_breeze/commands/testing_commands.py | 6 +-
dev/breeze/src/airflow_breeze/global_constants.py | 20 +-
.../src/airflow_breeze/params/shell_params.py | 2 +-
.../utils/constraints_version_check.py | 12 +-
.../airflow_breeze/utils/docker_command_utils.py | 3 +-
dev/breeze/tests/test_docker_command_utils.py | 24 +-
dev/breeze/uv.lock | 308 +-
.../react_plugin_template/package.json | 14 +-
.../react_plugin_template/pnpm-lock.yaml | 280 +-
dev/registry/derive_wave_providers.py | 2 +-
devel-common/pyproject.toml | 6 +-
devel-common/src/docs/utils/conf_constants.py | 1 +
.../src/sphinx_exts/common_compat_alias.py | 124 +
.../test_docker_compose_quick_start.py | 4 +-
docs/spelling_wordlist.txt | 6 +
.../tests/kubernetes_tests/test_base.py | 26 +
.../tests/kubernetes_tests/test_other_executors.py | 23 +-
providers/.last_release_date.txt | 2 +-
providers/.pre-commit-config.yaml | 7 +
providers/airbyte/README.rst | 6 +-
providers/airbyte/docs/changelog.rst | 11 +
providers/airbyte/docs/index.rst | 6 +-
providers/airbyte/provider.yaml | 3 +-
providers/airbyte/pyproject.toml | 6 +-
.../src/airflow/providers/airbyte/__init__.py | 2 +-
.../airflow/providers/airbyte/operators/airbyte.py | 51 +-
.../airflow/providers/airbyte/triggers/airbyte.py | 89 +-
.../tests/unit/airbyte/operators/test_airbyte.py | 108 +-
.../tests/unit/airbyte/triggers/test_airbyte.py | 163 +-
providers/alibaba/README.rst | 6 +-
providers/alibaba/docs/changelog.rst | 13 +
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 | 6 +-
providers/{git => amazon}/docs/bundles/index.rst | 31 +-
providers/amazon/docs/changelog.rst | 49 +
providers/amazon/docs/index.rst | 7 +-
providers/amazon/docs/operators/bedrock.rst | 15 +
providers/amazon/docs/operators/s3_tables.rst | 14 +
providers/amazon/provider.yaml | 3 +-
providers/amazon/pyproject.toml | 6 +-
.../src/airflow/providers/amazon/__init__.py | 2 +-
.../aws/executors/aws_lambda/lambda_executor.py | 5 +-
.../amazon/aws/executors/batch/batch_executor.py | 5 +-
.../amazon/aws/executors/ecs/ecs_executor.py | 176 +-
.../providers/amazon/aws/executors/ecs/utils.py | 61 +-
.../providers/amazon/aws/hooks/athena_sql.py | 31 +
.../src/airflow/providers/amazon/aws/hooks/eks.py | 24 +-
.../providers/amazon/aws/log/s3_task_handler.py | 6 +-
.../providers/amazon/aws/operators/bedrock.py | 56 +
.../amazon/aws/operators/mwaa_serverless.py | 8 +-
.../amazon/aws/operators/redshift_data.py | 5 +-
.../providers/amazon/aws/operators/s3_tables.py | 29 +
.../providers/amazon/aws/operators/sagemaker.py | 2 +-
.../airflow/providers/amazon/aws/sensors/ssm.py | 6 +-
.../airflow/providers/amazon/aws/triggers/ecs.py | 5 +-
.../providers/amazon/aws/utils/task_log_fetcher.py | 52 +-
.../amazon/aws/utils/waiter_with_logging.py | 66 +-
.../amazon/aws/example_bedrock_evaluation.py | 142 +
.../tests/system/amazon/aws/example_emr_eks.py | 73 +-
.../system/amazon/aws/example_mwaa_serverless.py | 10 +
.../tests/system/amazon/aws/example_s3_tables.py | 10 +
.../executors/aws_lambda/test_lambda_executor.py | 10 +-
.../aws/executors/batch/test_batch_executor.py | 23 +-
.../amazon/aws/executors/ecs/test_ecs_executor.py | 283 +-
.../tests/unit/amazon/aws/hooks/test_athena_sql.py | 93 +
.../amazon/tests/unit/amazon/aws/hooks/test_eks.py | 35 +
.../unit/amazon/aws/log/test_s3_task_handler.py | 18 +
.../unit/amazon/aws/operators/test_bedrock.py | 73 +-
.../amazon/aws/operators/test_emr_serverless.py | 10 +-
.../amazon/aws/operators/test_mwaa_serverless.py | 19 +-
.../unit/amazon/aws/operators/test_s3_tables.py | 21 +
.../aws/operators/test_sagemaker_processing.py | 30 +-
.../aws/operators/test_sagemaker_transform.py | 2 +-
.../unit/amazon/aws/utils/test_task_log_fetcher.py | 124 +-
.../amazon/aws/utils/test_waiter_with_logging.py | 55 +-
.../apache/druid/docs/.latest-doc-only-change.txt | 2 +-
providers/apache/hdfs/README.rst | 6 +-
providers/apache/hdfs/docs/changelog.rst | 17 +
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/hive/README.rst | 6 +-
providers/apache/hive/docs/changelog.rst | 15 +
providers/apache/hive/docs/index.rst | 6 +-
providers/apache/hive/provider.yaml | 3 +-
providers/apache/hive/pyproject.toml | 6 +-
.../src/airflow/providers/apache/hive/__init__.py | 2 +-
providers/apache/kafka/README.rst | 6 +-
providers/apache/kafka/docs/changelog.rst | 21 +
providers/apache/kafka/docs/index.rst | 6 +-
providers/apache/kafka/provider.yaml | 3 +-
providers/apache/kafka/pyproject.toml | 6 +-
.../src/airflow/providers/apache/kafka/__init__.py | 2 +-
providers/apache/livy/README.rst | 6 +-
providers/apache/livy/docs/changelog.rst | 14 +
providers/apache/livy/docs/index.rst | 6 +-
providers/apache/livy/provider.yaml | 3 +-
providers/apache/livy/pyproject.toml | 6 +-
.../src/airflow/providers/apache/livy/__init__.py | 2 +-
.../airflow/providers/apache/livy/triggers/livy.py | 2 +
.../tests/unit/apache/livy/triggers/test_livy.py | 13 +
providers/apache/spark/README.rst | 6 +-
providers/apache/spark/docs/changelog.rst | 13 +
providers/apache/spark/docs/index.rst | 6 +-
providers/apache/spark/provider.yaml | 3 +-
providers/apache/spark/pyproject.toml | 6 +-
.../src/airflow/providers/apache/spark/__init__.py | 2 +-
providers/celery/README.rst | 8 +-
providers/celery/docs/changelog.rst | 24 +
providers/celery/docs/index.rst | 8 +-
providers/celery/provider.yaml | 3 +-
providers/celery/pyproject.toml | 8 +-
.../src/airflow/providers/celery/__init__.py | 2 +-
.../unit/celery/executors/test_celery_executor.py | 2 +-
providers/cncf/kubernetes/README.rst | 8 +-
providers/cncf/kubernetes/docs/changelog.rst | 52 +-
providers/cncf/kubernetes/docs/index.rst | 8 +-
providers/cncf/kubernetes/provider.yaml | 3 +-
providers/cncf/kubernetes/pyproject.toml | 8 +-
.../airflow/providers/cncf/kubernetes/__init__.py | 2 +-
.../cncf/kubernetes/cli/kubernetes_command.py | 10 +-
.../providers/cncf/kubernetes/operators/pod.py | 38 +-
.../providers/cncf/kubernetes/triggers/pod.py | 10 +-
.../executors/test_kubernetes_executor.py | 4 +-
.../unit/cncf/kubernetes/operators/test_pod.py | 108 +-
.../unit/cncf/kubernetes/triggers/test_pod.py | 86 +-
providers/common/ai/README.rst | 6 +-
providers/common/ai/docs/changelog.rst | 17 +
providers/common/ai/docs/hooks/index.rst | 58 +
providers/common/ai/docs/hooks/langchain.rst | 174 +
providers/common/ai/docs/hooks/llamaindex.rst | 115 +
providers/common/ai/docs/index.rst | 9 +-
.../common/ai/docs/operators/document_loader.rst | 297 ++
providers/common/ai/docs/operators/index.rst | 15 +-
.../ai/docs/operators/llamaindex_embedding.rst | 119 +
.../ai/docs/operators/llamaindex_retrieval.rst | 109 +
providers/common/ai/docs/retry_policies.rst | 170 +
providers/common/ai/provider.yaml | 89 +-
providers/common/ai/pyproject.toml | 22 +-
.../ai/src/airflow/providers/common/ai/__init__.py | 2 +-
.../ai/example_dags/example_document_loader.py | 145 +
.../ai/example_dags/example_langchain_hook.py | 131 +
.../example_dags/example_langchain_tool_agent.py | 542 ++
.../ai/example_dags/example_llamaindex_hook.py | 147 +
.../ai/example_dags/example_llamaindex_rag.py | 236 +
.../ai/example_dags/example_llm_retry_policy.py | 72 +
.../providers/common/ai/get_provider_info.py | 75 +
.../airflow/providers/common/ai/hooks/langchain.py | 173 +
.../providers/common/ai/hooks/llamaindex.py | 189 +
.../common/ai/operators/document_loader.py | 401 ++
.../common/ai/operators/llamaindex_embedding.py | 210 +
.../common/ai/operators/llamaindex_retrieval.py | 199 +
.../providers/common/ai/policies}/__init__.py | 0
.../airflow/providers/common/ai/policies/retry.py | 183 +
.../common/ai/tests/unit/common/ai/conftest.py | 12 +
.../tests/unit/common/ai/hooks/test_langchain.py | 293 ++
.../tests/unit/common/ai/hooks/test_llamaindex.py | 170 +
.../common/ai/operators/test_document_loader.py | 596 +++
.../ai/operators/test_llamaindex_embedding.py | 211 +
.../ai/operators/test_llamaindex_retrieval.py | 238 +
.../ai/tests/unit/common/ai/policies}/__init__.py | 0
.../ai/tests/unit/common/ai/policies/test_retry.py | 197 +
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 13 +
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/compat/version_compat.py | 2 +
providers/common/sql/README.rst | 6 +-
providers/common/sql/docs/changelog.rst | 8 +
providers/common/sql/docs/index.rst | 8 +-
providers/common/sql/provider.yaml | 3 +-
providers/common/sql/pyproject.toml | 6 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
providers/databricks/README.rst | 6 +-
providers/databricks/docs/changelog.rst | 21 +
providers/databricks/docs/index.rst | 6 +-
providers/databricks/provider.yaml | 3 +-
providers/databricks/pyproject.toml | 6 +-
.../src/airflow/providers/databricks/__init__.py | 2 +-
.../providers/databricks/operators/databricks.py | 4 +
.../providers/databricks/triggers/databricks.py | 7 +
.../unit/databricks/operators/test_databricks.py | 42 +
.../unit/databricks/triggers/test_databricks.py | 24 +
providers/dbt/cloud/README.rst | 6 +-
providers/dbt/cloud/docs/changelog.rst | 16 +
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 +-
.../airflow/providers/dbt/cloud/operators/dbt.py | 38 +-
.../airflow/providers/dbt/cloud/triggers/dbt.py | 72 +-
.../tests/unit/dbt/cloud/operators/test_dbt.py | 133 +-
.../tests/unit/dbt/cloud/triggers/test_dbt.py | 282 +-
providers/docker/README.rst | 6 +-
providers/docker/docs/changelog.rst | 13 +
providers/docker/docs/index.rst | 6 +-
providers/docker/provider.yaml | 3 +-
providers/docker/pyproject.toml | 6 +-
.../src/airflow/providers/docker/__init__.py | 2 +-
providers/edge3/README.rst | 8 +-
providers/edge3/docs/changelog.rst | 27 +
providers/edge3/docs/deployment.rst | 9 +-
providers/edge3/docs/edge_executor.rst | 11 +-
providers/edge3/docs/index.rst | 8 +-
providers/edge3/provider.yaml | 3 +-
providers/edge3/pyproject.toml | 8 +-
.../edge3/src/airflow/providers/edge3/__init__.py | 2 +-
.../src/airflow/providers/edge3/cli/definition.py | 8 +-
.../src/airflow/providers/edge3/cli/worker.py | 109 +-
.../providers/edge3/plugins/www/package.json | 30 +-
.../providers/edge3/plugins/www/pnpm-lock.yaml | 906 ++--
.../providers/edge3/worker_api/datamodels.py | 9 +-
.../edge3/worker_api/v2-edge-generated.yaml | 25 +-
.../edge3/tests/unit/edge3/cli/test_worker.py | 57 +
.../unit/edge3/worker_api/routes/test_logs.py | 5 +-
providers/elasticsearch/README.rst | 6 +-
providers/elasticsearch/docs/changelog.rst | 53 +-
providers/elasticsearch/docs/index.rst | 6 +-
providers/elasticsearch/docs/logging/index.rst | 42 +
providers/elasticsearch/provider.yaml | 17 +-
providers/elasticsearch/pyproject.toml | 6 +-
.../airflow/providers/elasticsearch/__init__.py | 2 +-
.../src/airflow/providers/elasticsearch/_compat.py | 119 +
.../providers/elasticsearch/get_provider_info.py | 7 +
.../providers/elasticsearch/hooks/elasticsearch.py | 7 +-
.../elasticsearch/log/es_json_formatter.py | 20 +-
.../providers/elasticsearch/log/es_task_handler.py | 5 +-
.../providers/elasticsearch/version_compat.py | 8 +-
.../tests/unit/elasticsearch/test__compat.py | 240 +
providers/fab/README.rst | 9 +-
providers/fab/docs/changelog.rst | 29 +
providers/fab/docs/index.rst | 8 +-
providers/fab/provider.yaml | 3 +-
providers/fab/pyproject.toml | 8 +-
.../fab/src/airflow/providers/fab/__init__.py | 2 +-
.../fab/auth_manager/security_manager/override.py | 37 +
.../fab/src/airflow/providers/fab/www/package.json | 4 +-
.../src/airflow/providers/fab/www/pnpm-lock.yaml | 88 +-
.../unit/fab/auth_manager/api_fastapi/conftest.py | 4 +-
.../security_manager/test_fab_alignment.py | 2 +-
providers/ftp/README.rst | 6 +-
providers/ftp/docs/changelog.rst | 18 +
providers/ftp/docs/index.rst | 6 +-
providers/ftp/provider.yaml | 3 +-
providers/ftp/pyproject.toml | 6 +-
.../ftp/src/airflow/providers/ftp/__init__.py | 2 +-
providers/git/README.rst | 6 +-
providers/git/docs/bundles/index.rst | 7 +-
providers/git/docs/changelog.rst | 12 +
providers/git/docs/index.rst | 8 +-
providers/git/provider.yaml | 3 +-
providers/git/pyproject.toml | 8 +-
.../git/src/airflow/providers/git/__init__.py | 2 +-
.../git/src/airflow/providers/git/bundles/git.py | 32 +-
providers/git/tests/unit/git/bundles/test_git.py | 146 +-
providers/google/README.rst | 6 +-
providers/{git => google}/docs/bundles/index.rst | 31 +-
providers/google/docs/changelog.rst | 53 +
providers/google/docs/index.rst | 7 +-
providers/google/docs/operators/cloud/bigquery.rst | 4 +-
providers/google/provider.yaml | 3 +-
providers/google/pyproject.toml | 6 +-
.../src/airflow/providers/google/__init__.py | 2 +-
.../providers/google/cloud/hooks/cloud_sql.py | 22 +-
.../providers/google/cloud/hooks/vertex_ai/ray.py | 4 +-
.../google/cloud/operators/cloud_batch.py | 7 +-
.../providers/google/cloud/operators/cloud_sql.py | 1 +
.../providers/google/cloud/operators/compute.py | 4 +-
.../providers/google/cloud/operators/gen_ai.py | 4 +-
.../google/cloud/operators/vertex_ai/ray.py | 4 +-
.../providers/google/cloud/transfers/s3_to_gcs.py | 2 +-
.../providers/google/cloud/triggers/bigquery.py | 3 +
.../providers/google/cloud/triggers/cloud_run.py | 43 +-
.../providers/google/cloud/triggers/cloud_sql.py | 19 +-
.../airflow/providers/google/suite/hooks/drive.py | 2 +-
.../cloud/bigquery/example_bigquery_sensors.py | 85 +-
...=> example_bigquery_streaming_buffer_sensor.py} | 139 +-
.../google/cloud/gcs/example_gcs_to_gdrive.py | 2 +-
.../google/cloud/gcs/example_gdrive_to_gcs.py | 2 +-
.../gen_ai/example_gen_ai_generative_model.py | 29 +-
.../cloud/transfers/example_gdrive_to_local.py | 2 +-
.../system/google/suite/example_local_to_drive.py | 2 +-
.../tests/unit/google/cloud/hooks/test_bigquery.py | 2 +-
.../unit/google/cloud/hooks/test_cloud_sql.py | 50 +
.../tests/unit/google/cloud/hooks/test_gen_ai.py | 29 +-
.../unit/google/cloud/hooks/vertex_ai/test_ray.py | 17 +
.../google/cloud/operators/test_cloud_batch.py | 57 +-
.../unit/google/cloud/operators/test_cloud_run.py | 26 +
.../unit/google/cloud/operators/test_gen_ai.py | 29 +-
.../google/cloud/operators/vertex_ai/test_ray.py | 99 +
.../unit/google/cloud/transfers/test_sql_to_gcs.py | 29 +-
.../unit/google/cloud/triggers/test_bigquery.py | 21 +-
.../unit/google/cloud/triggers/test_cloud_run.py | 68 +
.../unit/google/cloud/triggers/test_cloud_sql.py | 64 +-
providers/imap/README.rst | 6 +-
providers/imap/docs/changelog.rst | 14 +
providers/imap/docs/index.rst | 6 +-
providers/imap/provider.yaml | 3 +-
providers/imap/pyproject.toml | 6 +-
.../imap/src/airflow/providers/imap/__init__.py | 2 +-
providers/influxdb/README.rst | 7 +-
providers/influxdb/docs/changelog.rst | 13 +
providers/influxdb/docs/index.rst | 6 +-
providers/influxdb/provider.yaml | 3 +-
providers/influxdb/pyproject.toml | 6 +-
.../src/airflow/providers/influxdb/__init__.py | 2 +-
providers/keycloak/README.rst | 6 +-
providers/keycloak/docs/changelog.rst | 18 +
providers/keycloak/docs/index.rst | 6 +-
providers/keycloak/provider.yaml | 3 +-
providers/keycloak/pyproject.toml | 6 +-
.../src/airflow/providers/keycloak/__init__.py | 2 +-
.../keycloak/auth_manager/cli/commands.py | 61 +
.../keycloak/auth_manager/cli/test_commands.py | 108 +-
providers/microsoft/azure/README.rst | 8 +-
providers/microsoft/azure/docs/changelog.rst | 18 +
providers/microsoft/azure/docs/index.rst | 6 +-
providers/microsoft/azure/provider.yaml | 3 +-
providers/microsoft/azure/pyproject.toml | 6 +-
.../airflow/providers/microsoft/azure/__init__.py | 2 +-
.../providers/microsoft/azure/secrets/key_vault.py | 10 +
.../unit/microsoft/azure/secrets/test_key_vault.py | 10 +
providers/microsoft/mssql/README.rst | 40 +-
providers/microsoft/mssql/docs/changelog.rst | 14 +
providers/microsoft/mssql/docs/index.rst | 6 +-
providers/microsoft/mssql/provider.yaml | 3 +-
providers/microsoft/mssql/pyproject.toml | 6 +-
.../airflow/providers/microsoft/mssql/__init__.py | 2 +-
providers/mongo/README.rst | 6 +-
providers/mongo/docs/changelog.rst | 15 +
providers/mongo/docs/index.rst | 6 +-
providers/mongo/provider.yaml | 3 +-
providers/mongo/pyproject.toml | 6 +-
.../mongo/src/airflow/providers/mongo/__init__.py | 2 +-
providers/mongo/tests/conftest.py | 29 +-
providers/mysql/README.rst | 6 +-
providers/mysql/docs/changelog.rst | 16 +
providers/mysql/docs/index.rst | 6 +-
providers/mysql/provider.yaml | 3 +-
providers/mysql/pyproject.toml | 6 +-
.../mysql/src/airflow/providers/mysql/__init__.py | 2 +-
providers/openlineage/README.rst | 10 +-
providers/openlineage/docs/changelog.rst | 18 +
providers/openlineage/docs/index.rst | 8 +-
providers/openlineage/provider.yaml | 3 +-
providers/openlineage/pyproject.toml | 8 +-
.../src/airflow/providers/openlineage/__init__.py | 2 +-
.../example_openlineage_base_complex_dag.py | 25 +-
.../example_openlineage_defer_simple_dag.py | 21 +-
.../example_openlineage_mapped_simple_dag.py | 25 +-
.../example_openlineage_short_circuit_dag.py | 29 +-
.../example_openlineage_trigger_dag_deferrable.py | 2 +-
.../openlineage_base_complex_dag__af2.json | 5156 ++++++++++----------
.../openlineage_base_complex_dag__af3.json | 5030 +++++++++----------
.../openlineage_short_circuit_dag.json | 23 +-
.../tests/system/openlineage/operator.py | 243 +-
.../tests/unit/openlineage/extractors/test_base.py | 23 +-
providers/opensearch/README.rst | 6 +-
providers/opensearch/docs/changelog.rst | 43 +-
providers/opensearch/docs/index.rst | 6 +-
providers/opensearch/docs/logging/index.rst | 36 +-
providers/opensearch/provider.yaml | 3 +-
providers/opensearch/pyproject.toml | 6 +-
.../src/airflow/providers/opensearch/__init__.py | 2 +-
.../providers/opensearch/log/os_json_formatter.py | 20 +-
.../providers/opensearch/log/os_task_handler.py | 25 +
.../airflow/providers/opensearch/version_compat.py | 2 +
.../tests/unit/opensearch/log/conftest.py | 52 +
providers/oracle/README.rst | 6 +-
providers/oracle/docs/changelog.rst | 13 +
providers/oracle/docs/index.rst | 6 +-
providers/oracle/provider.yaml | 3 +-
providers/oracle/pyproject.toml | 6 +-
.../src/airflow/providers/oracle/__init__.py | 2 +-
providers/pinecone/README.rst | 6 +-
providers/pinecone/docs/changelog.rst | 14 +
providers/pinecone/docs/index.rst | 6 +-
providers/pinecone/provider.yaml | 3 +-
providers/pinecone/pyproject.toml | 6 +-
.../src/airflow/providers/pinecone/__init__.py | 2 +-
providers/postgres/README.rst | 6 +-
providers/postgres/docs/changelog.rst | 13 +
providers/postgres/docs/index.rst | 6 +-
providers/postgres/provider.yaml | 3 +-
providers/postgres/pyproject.toml | 6 +-
.../src/airflow/providers/postgres/__init__.py | 2 +-
providers/presto/README.rst | 6 +-
providers/presto/docs/changelog.rst | 13 +
providers/presto/docs/index.rst | 6 +-
providers/presto/provider.yaml | 3 +-
providers/presto/pyproject.toml | 6 +-
.../src/airflow/providers/presto/__init__.py | 2 +-
providers/sftp/README.rst | 6 +-
providers/sftp/docs/changelog.rst | 21 +
providers/sftp/docs/index.rst | 6 +-
providers/sftp/provider.yaml | 3 +-
providers/sftp/pyproject.toml | 6 +-
.../sftp/src/airflow/providers/sftp/__init__.py | 2 +-
providers/smtp/README.rst | 6 +-
providers/smtp/docs/changelog.rst | 15 +
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 | 6 +-
providers/snowflake/docs/changelog.rst | 26 +
providers/snowflake/docs/index.rst | 6 +-
providers/snowflake/provider.yaml | 3 +-
providers/snowflake/pyproject.toml | 6 +-
.../src/airflow/providers/snowflake/__init__.py | 2 +-
providers/ssh/README.rst | 6 +-
providers/ssh/docs/changelog.rst | 14 +
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 | 25 +
providers/standard/docs/index.rst | 6 +-
providers/standard/docs/operators/bash.rst | 2 +-
providers/standard/docs/operators/python.rst | 2 +-
providers/standard/provider.yaml | 3 +-
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../airflow/providers/standard/operators/python.py | 2 +-
.../providers/standard/utils/sensor_helper.py | 7 +-
.../tests/unit/standard/triggers/test_file.py | 16 +-
.../unit/standard/utils/test_sensor_helper.py | 33 +
providers/tableau/README.rst | 6 +-
providers/tableau/docs/changelog.rst | 13 +
providers/tableau/docs/index.rst | 6 +-
providers/tableau/provider.yaml | 3 +-
providers/tableau/pyproject.toml | 6 +-
.../src/airflow/providers/tableau/__init__.py | 2 +-
providers/teradata/README.rst | 6 +-
providers/teradata/docs/changelog.rst | 13 +
providers/teradata/docs/index.rst | 6 +-
providers/teradata/provider.yaml | 3 +-
providers/teradata/pyproject.toml | 6 +-
.../src/airflow/providers/teradata/__init__.py | 2 +-
providers/trino/README.rst | 6 +-
providers/trino/docs/changelog.rst | 13 +
providers/trino/docs/index.rst | 6 +-
providers/trino/provider.yaml | 3 +-
providers/trino/pyproject.toml | 6 +-
.../trino/src/airflow/providers/trino/__init__.py | 2 +-
providers/vertica/README.rst | 6 +-
providers/vertica/docs/changelog.rst | 12 +
providers/vertica/docs/index.rst | 6 +-
providers/vertica/provider.yaml | 3 +-
providers/vertica/pyproject.toml | 6 +-
.../src/airflow/providers/vertica/__init__.py | 2 +-
providers/weaviate/README.rst | 6 +-
providers/weaviate/docs/changelog.rst | 13 +
providers/weaviate/docs/index.rst | 6 +-
providers/weaviate/provider.yaml | 3 +-
providers/weaviate/pyproject.toml | 6 +-
.../src/airflow/providers/weaviate/__init__.py | 2 +-
providers/zendesk/README.rst | 6 +-
providers/zendesk/docs/changelog.rst | 13 +
providers/zendesk/docs/index.rst | 6 +-
providers/zendesk/provider.yaml | 3 +-
providers/zendesk/pyproject.toml | 6 +-
.../src/airflow/providers/zendesk/__init__.py | 2 +-
pyproject.toml | 31 +-
registry/pnpm-lock.yaml | 34 +-
scripts/ci/docker-compose/integration-otel.yml | 2 +-
scripts/ci/prek/check_core_imports_in_sdk.py | 62 +-
scripts/ci/prek/check_imports_in_providers.py | 2 +-
scripts/ci/prek/check_sdk_imports.py | 88 -
scripts/ci/prek/check_sdk_imports_in_core.py | 64 +
scripts/ci/prek/check_task_instance_dto_sync.py | 125 +
scripts/ci/prek/check_trigger_serialize_init.py | 264 +
scripts/ci/prek/common_prek_utils.py | 131 +-
scripts/ci/prek/known_airflow_exceptions.txt | 1 -
scripts/ci/prek/ruff_format.py | 2 +-
scripts/docker/entrypoint_ci.sh | 38 +
.../docker/install_airflow_when_building_images.sh | 12 +-
scripts/in_container/bin/generate_mprocs_config.py | 14 +-
scripts/in_container/bin/run_tmux | 9 +-
scripts/in_container/run_pre_extras_install.py | 184 +
scripts/in_container/run_schema_defaults_check.py | 11 +-
.../ci/prek/test_check_core_imports_in_sdk.py | 220 +
...mports.py => test_check_sdk_imports_in_core.py} | 42 +-
scripts/tools/setup_breeze | 2 +-
.../src/airflow_shared/logging/structlog.py | 26 +-
shared/logging/tests/logging/test_structlog.py | 21 +
.../observability/metrics/datadog_logger.py | 8 +-
.../observability/metrics/otel_logger.py | 4 +-
.../observability/metrics/statsd_logger.py | 8 +-
.../observability/traces/__init__.py | 35 +-
.../observability/metrics/test_otel_logger.py | 4 +-
.../tests/observability/test_traces.py | 104 +
.../plugins_manager/plugins_manager.py | 5 +-
.../providers_discovery/providers_discovery.py | 4 +-
.../test_providers_discovery.py | 36 +-
shared/state/src/airflow_shared/state/__init__.py | 95 +-
shared/state/tests/state/test_state.py | 83 +-
.../tests/task_sdk_tests/conftest.py | 1 +
task-sdk/docs/api.rst | 10 +-
task-sdk/pyproject.toml | 3 +
task-sdk/src/airflow/sdk/__init__.py | 17 +-
task-sdk/src/airflow/sdk/__init__.pyi | 4 +
task-sdk/src/airflow/sdk/_shared/state | 1 +
task-sdk/src/airflow/sdk/api/client.py | 36 +-
.../src/airflow/sdk/api/datamodels/_generated.py | 1 +
task-sdk/src/airflow/sdk/bases/sensor.py | 4 +-
task-sdk/src/airflow/sdk/bases/timetable.py | 8 +
task-sdk/src/airflow/sdk/configuration.py | 3 +-
.../src/airflow/sdk/definitions/asset/__init__.py | 26 +-
.../sdk/definitions/asset/access_control.py | 23 +-
.../airflow/sdk/definitions/asset/decorators.py | 8 +-
task-sdk/src/airflow/sdk/definitions/dag.py | 7 +
.../airflow/sdk/definitions/operator_resources.py | 16 +-
.../sdk/definitions/partition_mappers/temporal.py | 13 +
.../airflow/sdk/definitions/timetables/assets.py | 7 +
task-sdk/src/airflow/sdk/exceptions.py | 16 +
task-sdk/src/airflow/sdk/execution_time/comms.py | 1 +
task-sdk/src/airflow/sdk/execution_time/context.py | 151 +-
.../airflow/sdk/execution_time/request_handlers.py | 186 +
.../sdk/execution_time/secrets/execution_api.py | 71 +-
.../src/airflow/sdk/execution_time/supervisor.py | 262 +-
.../src/airflow/sdk/execution_time/task_runner.py | 130 +-
.../sdk/execution_time/workloads/__init__.py | 15 +-
.../airflow/sdk/execution_time/workloads/task.py | 53 +
task-sdk/src/airflow/sdk/log.py | 26 +-
task-sdk/src/airflow/sdk/plugins_manager.py | 2 +-
task-sdk/src/airflow/sdk/serde/__init__.py | 4 +-
.../src/airflow/sdk/state.py | 19 +-
task-sdk/src/airflow/sdk/timezone.py | 2 +
task-sdk/src/airflow/sdk/types.py | 30 +-
task-sdk/tests/task_sdk/api/test_client.py | 69 +-
task-sdk/tests/task_sdk/bases/test_sensor.py | 14 +
task-sdk/tests/task_sdk/definitions/test_asset.py | 56 +-
.../definitions/test_asset_access_control.py | 66 +
.../task_sdk/definitions/test_asset_decorators.py | 68 +-
task-sdk/tests/task_sdk/definitions/test_dag.py | 15 +-
.../definitions/test_operator_resources.py | 38 +
.../tests/task_sdk/definitions/test_taskgroup.py | 4 +-
task-sdk/tests/task_sdk/docs/test_public_api.py | 1 +
.../tests/task_sdk/execution_time/test_context.py | 287 +-
.../tests/task_sdk/execution_time/test_secrets.py | 162 +-
.../task_sdk/execution_time/test_supervisor.py | 215 +-
.../task_sdk/execution_time/test_task_runner.py | 476 +-
task-sdk/tests/task_sdk/serde/test_serde.py | 20 +-
task-sdk/tests/task_sdk/test_log.py | 120 +
uv.lock | 2188 ++++++---
1014 files changed, 39447 insertions(+), 20025 deletions(-)
create mode 100644 .apache-steward-overrides/README.md
create mode 100644 .apache-steward-overrides/pr-management-config.md
create mode 100644
.apache-steward-overrides/pr-management-triage-ci-check-map.md
create mode 100644
.apache-steward-overrides/pr-management-triage-comment-templates.md
create mode 100644 .apache-steward-overrides/user.md
create mode 100644 .apache-steward.lock
delete mode 120000 .claude/skills/maintainer-review
delete mode 120000 .claude/skills/pr-stats
delete mode 120000 .claude/skills/pr-triage
create mode 120000 .claude/skills/setup-steward
delete mode 100644 .github/skills/maintainer-review/SKILL.md
delete mode 100644 .github/skills/maintainer-review/adversarial.md
delete mode 100644 .github/skills/maintainer-review/criteria.md
delete mode 100644 .github/skills/maintainer-review/posting.md
delete mode 100644 .github/skills/maintainer-review/prerequisites.md
delete mode 100644 .github/skills/maintainer-review/review-flow.md
delete mode 100644 .github/skills/maintainer-review/selectors.md
delete mode 100644 .github/skills/pr-stats/SKILL.md
delete mode 100644 .github/skills/pr-stats/aggregate.md
delete mode 100644 .github/skills/pr-stats/classify.md
delete mode 100644 .github/skills/pr-stats/fetch.md
delete mode 100644 .github/skills/pr-stats/render.md
delete mode 100644 .github/skills/pr-triage/SKILL.md
delete mode 100644 .github/skills/pr-triage/actions.md
delete mode 100644 .github/skills/pr-triage/classify-and-act.md
delete mode 100644 .github/skills/pr-triage/comment-templates.md
delete mode 100644 .github/skills/pr-triage/fetch-and-batch.md
delete mode 100644 .github/skills/pr-triage/interaction-loop.md
delete mode 100644 .github/skills/pr-triage/prerequisites.md
delete mode 100644 .github/skills/pr-triage/rationale.md
delete mode 100644 .github/skills/pr-triage/stale-sweeps.md
delete mode 100644 .github/skills/pr-triage/workflow-approval.md
create mode 100644 .github/skills/setup-steward/SKILL.md
create mode 100644 .github/skills/setup-steward/adopt.md
create mode 100644 .github/skills/setup-steward/conventions.md
create mode 100644 .github/skills/setup-steward/overrides.md
create mode 100644 .github/skills/setup-steward/unadopt.md
create mode 100644 .github/skills/setup-steward/upgrade.md
create mode 100644 .github/skills/setup-steward/verify.md
create mode 100644 .github/skills/setup-steward/worktree-init.md
create mode 100644 airflow-core/3rd-party-licenses/LICENSE-monaco-editor.txt
create mode 100644 airflow-core/newsfragments/63884.significant.rst
create mode 100644 airflow-core/newsfragments/66499.significant.rst
create mode 100644 airflow-core/newsfragments/66737.significant.rst
create mode 100644 airflow-core/newsfragments/67164.significant.rst
copy
airflow-core/src/airflow/api_fastapi/{execution_api/datamodels/task_state.py =>
core_api/datamodels/asset_state.py} (59%)
copy airflow-core/src/airflow/api_fastapi/{execution_api =>
core_api}/datamodels/task_state.py (62%)
create mode 100644
airflow-core/src/airflow/api_fastapi/core_api/routes/public/asset_state.py
create mode 100644
airflow-core/src/airflow/api_fastapi/core_api/routes/public/task_state.py
copy
airflow-core/src/airflow/migrations/versions/{0114_3_3_0_add_allow_producer_teams_to_dag_schedule_asset_reference.py
=> 0114_3_3_0_add_access_control_columns_to_dag_schedule_asset_reference.py}
(79%)
rename
airflow-core/src/airflow/migrations/versions/{0114_3_3_0_add_allow_producer_teams_to_dag_schedule_asset_reference.py
=> 0115_3_3_0_add_version_data_to_dag_version.py} (55%)
create mode 100644
airflow-core/src/airflow/ui/src/components/Clear/useRerunWithLatestVersion.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/Clear/useRerunWithLatestVersion.ts
create mode 100644
airflow-core/src/airflow/ui/src/components/FlexibleForm/FieldMultiType.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/FlexibleForm/FieldMultiType.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/MonacoEditor/configureMonaco.ts
copy airflow-core/src/airflow/ui/src/components/{ui/ResetButton.tsx =>
MonacoEditor/index.tsx} (52%)
copy airflow-core/src/airflow/ui/src/components/{ui/Menu/Menu.tsx =>
MonacoEditor/useMonacoReady.ts} (63%)
copy airflow-core/src/airflow/ui/src/components/ui/{Pagination/NextTrigger.tsx
=> IconButton.tsx} (55%)
copy airflow-core/src/airflow/ui/src/components/ui/Menu/{Menu.tsx =>
MenuRoot.tsx} (55%)
copy airflow-core/src/airflow/ui/src/components/ui/Menu/{Menu.tsx =>
MenuTrigger.tsx} (52%)
copy airflow-core/src/airflow/ui/src/components/ui/{Menu/Menu.tsx =>
RouterLink.tsx} (63%)
copy
airflow-core/src/airflow/ui/src/pages/{TaskInstances/BulkDeleteTaskInstancesButton.tsx
=> DagRuns/BulkDeleteDagRunsButton.tsx} (62%)
rename airflow-core/src/airflow/ui/src/pages/{ => DagRuns}/DagRuns.test.tsx
(100%)
rename airflow-core/src/airflow/ui/src/pages/{ => DagRuns}/DagRuns.tsx (78%)
rename airflow-core/src/airflow/ui/src/pages/{ => DagRuns}/DagRunsFilters.tsx
(100%)
rename airflow-core/src/airflow/ui/src/pages/{ => DagRuns}/DeleteRunButton.tsx
(83%)
copy airflow-core/src/airflow/ui/src/{components/MarkAs/utils.ts =>
pages/DagRuns/index.ts} (84%)
copy airflow-core/src/airflow/ui/src/queries/{useBulkTaskInstances.ts =>
useBulkDeleteDagRuns.ts} (63%)
create mode 100644
airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_asset_state.py
create mode 100644
airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_task_state.py
create mode 100644
airflow-core/tests/unit/migrations/test_0080_deadline_callback_migration.py
create mode 100644
airflow-core/tests/unit/migrations/test_0094_deadline_callback_migration.py
create mode 100644
airflow-core/tests/unit/serialization/test_deadline_reference_registry.py
create mode 100644 chart/newsfragments/66970.significant.rst
create mode 100644 contributing-docs/29_helm_chart_development.rst
create mode 100644 devel-common/src/sphinx_exts/common_compat_alias.py
copy providers/{git => amazon}/docs/bundles/index.rst (61%)
create mode 100644
providers/amazon/tests/system/amazon/aws/example_bedrock_evaluation.py
create mode 100644 providers/common/ai/docs/hooks/index.rst
create mode 100644 providers/common/ai/docs/hooks/langchain.rst
create mode 100644 providers/common/ai/docs/hooks/llamaindex.rst
create mode 100644 providers/common/ai/docs/operators/document_loader.rst
create mode 100644 providers/common/ai/docs/operators/llamaindex_embedding.rst
create mode 100644 providers/common/ai/docs/operators/llamaindex_retrieval.rst
create mode 100644 providers/common/ai/docs/retry_policies.rst
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_document_loader.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_langchain_hook.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_langchain_tool_agent.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_llamaindex_hook.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_llamaindex_rag.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_llm_retry_policy.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/hooks/langchain.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/hooks/llamaindex.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/operators/document_loader.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/operators/llamaindex_embedding.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/operators/llamaindex_retrieval.py
copy {airflow-core/src/airflow/_shared =>
providers/common/ai/src/airflow/providers/common/ai/policies}/__init__.py (100%)
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/policies/retry.py
create mode 100644
providers/common/ai/tests/unit/common/ai/hooks/test_langchain.py
create mode 100644
providers/common/ai/tests/unit/common/ai/hooks/test_llamaindex.py
create mode 100644
providers/common/ai/tests/unit/common/ai/operators/test_document_loader.py
create mode 100644
providers/common/ai/tests/unit/common/ai/operators/test_llamaindex_embedding.py
create mode 100644
providers/common/ai/tests/unit/common/ai/operators/test_llamaindex_retrieval.py
copy {airflow-core/src/airflow/_shared =>
providers/common/ai/tests/unit/common/ai/policies}/__init__.py (100%)
create mode 100644
providers/common/ai/tests/unit/common/ai/policies/test_retry.py
create mode 100644
providers/elasticsearch/src/airflow/providers/elasticsearch/_compat.py
create mode 100644
providers/elasticsearch/tests/unit/elasticsearch/test__compat.py
copy providers/{git => google}/docs/bundles/index.rst (60%)
copy
providers/google/tests/system/google/cloud/bigquery/{example_bigquery_sensors.py
=> example_bigquery_streaming_buffer_sensor.py} (69%)
create mode 100644
providers/google/tests/unit/google/cloud/operators/vertex_ai/test_ray.py
create mode 100644 providers/opensearch/tests/unit/opensearch/log/conftest.py
delete mode 100755 scripts/ci/prek/check_sdk_imports.py
create mode 100755 scripts/ci/prek/check_sdk_imports_in_core.py
create mode 100755 scripts/ci/prek/check_task_instance_dto_sync.py
create mode 100755 scripts/ci/prek/check_trigger_serialize_init.py
create mode 100644 scripts/in_container/run_pre_extras_install.py
create mode 100644 scripts/tests/ci/prek/test_check_core_imports_in_sdk.py
rename scripts/tests/ci/prek/{test_check_sdk_imports.py =>
test_check_sdk_imports_in_core.py} (74%)
create mode 100644 shared/observability/tests/observability/test_traces.py
create mode 120000 task-sdk/src/airflow/sdk/_shared/state
copy
airflow-core/src/airflow/api_fastapi/execution_api/datamodels/task_state.py =>
task-sdk/src/airflow/sdk/definitions/asset/access_control.py (58%)
copy
airflow-core/src/airflow/api_fastapi/execution_api/datamodels/task_state.py =>
task-sdk/src/airflow/sdk/execution_time/workloads/__init__.py (74%)
create mode 100644 task-sdk/src/airflow/sdk/execution_time/workloads/task.py
copy
airflow-core/src/airflow/api_fastapi/execution_api/datamodels/task_state.py =>
task-sdk/src/airflow/sdk/state.py (74%)
create mode 100644
task-sdk/tests/task_sdk/definitions/test_asset_access_control.py
create mode 100644 task-sdk/tests/task_sdk/test_log.py