This is an automated email from the ASF dual-hosted git repository.
dependabot[bot] pushed a change to branch
dependabot/npm_and_yarn/registry/registry-package-updates-41a384f9b6
in repository https://gitbox.apache.org/repos/asf/airflow.git
omit f2cd3fd524b Bump swagger-ui-dist
add 4b488e2bb01 Unify executor workload queues (#63491)
add 970851e2262 Remove real sleeps from slow provider unit tests (#73478)
add 6eee97f2747 Remove unused DagParsingStat (#72462)
add fc996cf6347 Add tests for string utility edge cases (#72251)
add 268ad8b156a Stop running duplicate virtualenv operator tests (#73500)
add d339d71a4bc Bump the auth-ui-package-updates group across 1 directory
with 4 updates (#73486)
add afd6915a8ef Bump eslint-plugin-unicorn (#73490)
add 8cd3039c126 Drop stale OpenSearch Serverless entries from deferred
hook configuration test (#73502)
add 0def984b047 Fix bulk endpoints returning 500 for a malformed action
entry (#73453)
add 9ecb9929de9 Constrain the Teradata compute-cluster example Dag's
user-settable Params (#72714)
add 3b29a4c3b3d Record TaskInstanceHistory when a task fails from a
non-running state (#67372)
add df145d145e3 Add Reset Password button to Edit User view (#70243)
add 3a944127dd8 Add a Dag bundle detail page listing the files in the
bundle (#73009)
add 65d4e7dd6a5 Stop core DB test jobs timing out when migration tests run
(#73231)
add 57dc7a20077 Fix k8s tests doc formatting (#71913)
add aa625048a7a Speed up breeze integration startup by shortening the
healthcheck interval (#73320)
add df4b1290bda Rename Google Stackdriver operators and hook to Cloud
Monitoring (#73354)
add b1c534f2acf Make test_trigger_lifecycle deterministic instead of
timing-based (#73397)
add 0ca6a088bfa Bump the github-actions-updates group across 1 directory
with 4 updates (#73513)
add 89e7490b780 Add deferrable mode to InfluxDB 3 Operator (#71976)
add e7427b8fe01 Align zh-CN Provider terminology and plural conventions
(#73369)
add 50523cd7b0c Add AthenaSparkOperator (#72081)
add 6b1436e3c4d Bump the uv-dependency-updates group across 1 directory
with 6 updates (#73485)
add ad40139ca3b Fixing spec error in dag bundle api tests (#73515)
add 24b65d1733b Add ClassifierRetryPolicy and keep LLMRetryPolicy as the
text-model policy it was (#73501)
add 7fe09dc57ce Add ChainRetryPolicy to compose retry policies in order
(#73508)
add 3eabbb59586 Replace retired gemini-2.0-flash example model in
common.ai Vertex docs (#73516)
add 83b30710faf Go SDK: replace BundleProvider with airflow.Bundle and
TaskHandler (#73426)
add ddfc357e83d Use `os.posix_spawn` instead of fork+exec in the task-sdk
supervisor (#73503)
add 90107b5081a Reorganize `common.ai` provider docs into topic-based
navigation (#73523)
add 4aeb647a51a Fix `common.ai` Anthropic models failing against anthropic
1.x in the CI image (#73511)
add b8be9e54bee Speed up documentation build and spellcheck in CI (#73477)
add 306cab626ea Rename the common.ai retry policies page to cover both
policies (#73526)
add ea03b2921c3 Make Pub/Sub return_immediately configurable, deprecate
its default (#73504)
add b65c145dcb3 Skip prek cache re-upload on cache hit and drop skill-eval
envs from CI cache (#73527)
add 018169c5489 Reject durable replay and HITL review when an agent holds
a SandboxToolset (#73529)
add c6e19e63a75 Fix supervisor schema snapshot so go model generation
works (#73531)
add 2111287e087 Allow keeping PostgresHook SQLAlchemy engines on psycopg2
(#72000)
add 55b8e9a47b9 Add an address-layer egress allowlist for hosted sandboxes
(#73534)
add 1e87d0f02fd Speed up the templated-fields static check by parsing each
base class once (#73540)
add f2ef828d522 Skip Gradle in the Java SDK schema sync hook when the
schema is already in sync (#73539)
add af3ba4c3a72 Add use-case pages to the common.ai provider docs (#73542)
add 81c2eab5595 Update Go SDK docs for the airflow.Bundle authoring
surface (#73528)
add 002e4d0866d Nest the `common.ai` docs sidebar and lead with features
and providers (#73548)
add 3e5b235f572 UI: Show every scheduler, triggerer, and Dag processor in
Health (#73355)
add 6036de15b5b API: Fix prefix pattern search returning rows without the
prefix (#73520)
add 0f657a61387 Bump the fab-ui-package-updates group across 1 directory
with 5 updates (#73467)
add b5f3d7933e5 Fix square corner on fully filled dashboard History bars
(#73543)
add d05971eacf9 Fix grid pagination buttons hidden off the right edge
(#73541)
add 9fbec0321e5 Require a request body on the asset materialize endpoint
(#73328)
add 883b5cc6c05 Log the success message when a deferred EKS cluster
deletion completes (#73455)
add b30cd9b61be Allow template-field copies into StartTriggerArgs in
operator __init__ (#73040)
add 21b1dfc373a Template every connection id accepted by provider
operators (#73286)
add 890c20b6ecb Fix Cloud Monitoring list operators with explicit output
formats (#73434)
add 41480acd26d Mask the SQLite database path in airflow info --anonymize
(#73179)
add ab2677888ce Lead the common.ai docs with a runnable quick start and a
verifiable result (#73556)
add 9a1273c52b8 Normalize BigQuery DTS sensor expected statuses after
rendering (#70528)
add b9172bf1003 Stop breeze rewriting uv.lock when forcing lowest
dependencies (#73305)
add 568aef293bf Stop UI and ts-sdk lint hooks from rewriting the global
pnpm config (#73538)
add 63b615b2525 Scope plugin macros to their team in multi-team mode
(#73224)
add 22f01cd066a Add ChainRetryPolicy to common.compat for Airflow 3.3
(#73553)
add 36b09ee2ee8 Bump the fab-ui-package-updates group across 1 directory
with 6 updates (#73566)
add b68ea7890b9 Fix airflow db clean IntegrityError when a dag_version is
referenced by a task_instance (#66350)
add 6a5aab82614 Fix example_dms Dag parsing on Airflow 2 (#73563)
add b5547c4babc Fix airflow plugins and dags pause printing prose with
--output json (#73270)
add 6f7e635d3d9 Include task_reschedule in task_instance dependent tables
for db clean (#71990)
add b9e46d64ee5 Add type-checking guards to DeadlineAlert init (#73294)
add 5aee0fb4ad5 Fix timedelta serde to accept int payloads (#72326)
add d8f8270a39d Keep sync-perm going when a Dag has bad access_control
(#71798)
add 1e1fcd22406 Reject serde-reserved keys in HITL params_input (#71054)
add 69b72e39c05 Multi-Team: Add teams inspect CLI command to display team
resources (#72036)
add 6e48e0fb2ba Deduplicate the Dag run lookup in airflowctl dag and task
commands (#70904)
add 23340ff97e2 Reject stale provider test exemptions (#71985)
add f0e82be3163 Add json line support for DocumentLoaderOperator (#72246)
add cc842490b31 Fix airflow db check reporting one fewer retry than it
will make (#72708)
add d4d68b5ceee Fix breeze ignoring --providers-constraints-mode (#73171)
add 8303d28ce93 Run migration tests once per backend instead of in every
core test shard (#73185)
add f60d8ea1936 Fix wrong PR links shown while classifying provider
changes (#73206)
add 6ae7be58a13 Reject non-string prompts in LLMFileAnalysisOperator
before reading files (#71734)
add 150ae660a1e Warn when connections/variables list output may be
incomplete (#72484)
add f081ffb0f38 CLI: Add --limit flag to airflow dags list-runs (#71729)
add 6ae2133176d Add dry-run mode to teams sync (#72494)
add 90972c41dfe Prevent KubernetesExecutor from launching stale workloads
(#69762)
add b6538c32c8b TS SDK: declare task dependencies by calling tasks (#73435)
add 9287e0c1d47 Move CloudComposerExternalTaskSensor task-id wrapping out
of __init__ (#73103)
add e5eda218ef4 Validate Cloud Function deploy body after template
rendering (#70531)
add 04e285b1eac Cancel the agent run when a common.ai LLM or agent task is
killed (#73495)
add 7c47cc44383 Validate GCP storage transfer job body after template
rendering (#70529)
add 21b83f4fae4 Reject invalid Go SDK task handler registrations up front
(#73549)
add 8b4e4df8056 Keep the URL scheme out of path masking in airflow info
--anonymize (#73599)
add 88c53eddf01 Fix stale and duplicated content in the `common.ai`
provider docs (#73567)
add 8a8bd529a9d Add durable/deferrable filters to the Airflow Registry
(#70298)
add f10a3de1136 Add a guide to developing and testing Common AI tasks
locally (#73602)
add 05f8dc12a34 Document sandbox enforcement, teardown and cost-limit
scope for agents (#73589)
add 63d5d50b034 Rewrite the `common.sql` connections guide and fix the
dialect extra name (#73605)
add 38168313b24 Fix prefix handling in Amazon transfer operators (#73269)
add 1f03df992c0 Support multi-column sort in the Dags list table (#72558)
add af6b5858657 Keep Grid scroll position when opening a task. (#73123)
add 88083575d88 Widen revoked_token.jti to store external-issuer token
identifiers (#73562)
add 7fa8dd47394 Keep message queue provider doc markers out of class
docstrings (#73588)
add 43f0cfd4830 Document that Go SDK registration closes at Serve (#73614)
add b23ce7e9f5f Identity-only DAG discovery and byte-importing (#73118)
add ecfa20322b8 [main] Upgrade important CI environment (#73308)
add a83394c6280 UI: Add a default preference for expanded task groups
(#73429)
add 9fd0d72bedb Share subprocess request dispatch without changing message
support (#73290)
add f77f7e4a09e Make the BQ hook importable when google libs are mocked
during doc builds (#73615)
add 32df1795022 Stop flit from downloading and verifying trove classifiers
on every provider (#73612)
add 724c022bf3f Refactor _executable_task_instances_to_queued to make
logic more readable (#66878)
add 958737c6128 Rename Google Stackdriver task log handler to Cloud
Logging (#73575)
add 7a9de0307f9 UI: Add toggle to show or hide log levels in task logs
(#72363)
add 172a3e6b8cb Revert "[main] Upgrade important CI environment (#73308)"
(#73621)
add b171e3eddc1 Drop duplicate build_raw copy from
CloudBuildCreateBuildOperator (#73592)
add 150d0a9b666 UI: Keep Dag version indicator below sticky task names in
grid (#73572)
add 675d3e31675 Cap azure-ai-projects below 2.5 so the CI image passes pip
check (#73627)
add 938a9d1f06f Add reparse button to the Dag import errors modal (#72896)
add 5c7f0a42ac4 Add fab-oauth meta-package extra (#73565)
add df584691052 Fix Amazon system tests creating connections on Airflow 2
(#73571)
add 5d559174c34 UI: Fix raw translation key showing as a Backfills column
header (#72836)
add 3eec18d5bc3 Clear all task instances in a task group, not just the
first page (#73547)
add 607ae04d0bc Document favorite_dag's 409 and return a readable conflict
message (#73411)
add 0de9f3f2b57 Fix typo in customize-ui theme screencap filenames (#73632)
add b131c8a1c49 Bump eslint from 10.10.0 to 10.11.0 in FAB provider
(#73630)
add 2e4a4b21e02 Invalidate cached Microsoft Graph request adapter on 403
Forbidden (#73601)
add 7dfa25664a2 Fix SFTPHookAsync letting a connection's known_hosts extra
override an explicit constructor path (#73593)
add e2372bbf0aa Read the legacy extra__google_cloud_platform__ prefix for
GCS credentials (#73613)
add 06377eb38e5 Add serialized Dag version diff engine (#69864)
add 9290c2662cf Add missing tests for sftp exceptions (#72456)
add 0def1f305bf Keep pooled SFTP connection on application-level SFTP
errors (#73288)
add b6acedbab23 Add SRV DNS record support to HTTP Operator (#70960)
add 61340ea9a73 Separate task outcomes from report delivery in TaskSDK
Supervisor (#73249)
add 39a4fc1587d Swap more blue->brand colors (#73637)
add ffa19c31a67 UI: Fix copied SQL from Rendered Templates breaking at
every token (#73633)
add 5ddea25c9c6 Link calendar cell to filter dagruns by the respective
start_date and state. (#73611)
add ababf5cea5b Fix Breeze ownership fix-up chowning all sources under
rootless Docker (#73606)
add 389b4e1751f Allow templated connection IDs in agent toolsets (#73578)
add eebf253b72c Skip `on_kill()` for triggers reassigned to another
triggerer (#73454)
add 74d1a3b0bb3 Stop docs builds from importing example Dags to highlight
them (#73604)
add cfcca0dba46 Export StoreScope from airflow.sdk as public interface
(#73600)
add ea1f4723e4f TS SDK: generate Dag and task options from the
serialization schema (#73436)
add 9216bd8c464 Skip the CI disk cleanup when the runner already has room
(#73635)
add 035af46b166 Remove mention of CeleryKubernetesExecutor from
KubernetesExecutor doc (#73624)
add 92bf48035a5 Add Delivery Hero to the list of companies using Apache
Airflow (#73634)
add a99354726ce Prepare providers release 2026-09-22 (#73506)
add f14bed9b852 Persist `retry_reason` not just for retries but even when
a task fails (#73027)
add 478272a4cf8 Bump flit_core in the provider pyproject template on CI
upgrades (#73649)
add 61d99c0374e Fix mypy error in common.ai decision helper with
pydantic-ai 2.46 (#73652)
add 34e7129cda4 Add staging-to-main sync step to the release docs process
(#73653)
add cb9765fa4ee Don't retry task heartbeats according to ``[workers]
execution_api_retries` (#73244)
add 7722b1b2e03 Stop `DataFusionToolset` from materializing full results
for a capped query (#73384)
add 0aa1b9a3330 Add OIDC worker token verification to Edge3 (#72262)
add 3deb27e2f02 Remove the task_map table, folding its length into
xcom.mapped_length (#73005)
add 7bf71cd3eb8 Raise curated dependency floors in ci upgrade runs (#73657)
add 56bfaf70fe6 Require a human-written summary in agent-drafted PR
descriptions (#73660)
add e4b2e49ac13 Make the dag version diff recursion test independent of
Python version (#73664)
add 06bd2901486 Regenerate stale breeze images and TS SDK supervisor types
(#73663)
add 654c5e171d8 Make the SRV test fixture reset dns package attributes
(#73659)
add 8021e24982e Revert "Require a human-written summary in agent-drafted
PR descriptions (#73…" (#73669)
add 1ac02ade890 Add validate trigger events in dbt cloud deferrable tasks
(#69739)
add 02dff07c1ff Allow a Job to be associated with several teams (#73561)
add fb959c70741 Skip Azure Blob folder-marker keys in
AzureBlobStorageToS3Operator (#72892)
add dbbc8163108 Support unexposed CreateWorkflow and UpdateWorkflow inputs
in MWAA Serverless operators (#73408)
add 0571e520c26 Use the operator's AWS settings for deferred Neptune,
MWAA, SSM tasks (#72098)
add 8851f2f05d1 Fix unreachable success log in
EksDeleteClusterOperator.execute_complete (#73109)
add 9050312ef6e Fix example_neptune_analytics system test in deferrable
mode (#73685)
add 14cf70ed176 Helm: Allow hostAliases and log groomer lifecycle hooks on
the Dag processor (#73159)
add e1f00413250 Delay retry reporting until task finalization completes
(#73253)
add 4c4e1fa9edb fix incorrect comment for kerberos ccache in
workes.kubernetes (#73673)
add 0142b0443a2 Allow slashes in connection IDs fetched via the Execution
API (#69228)
add a0f9f7ce95a Widen the registry durable tooltip for non external job
operators (#73609)
add 70bc47c859d Explain how to rebuild provider packages with the release
manager's flit (#73699)
add 9876a4b469d Java SDK: Honor TaskFlow arg bindings sent by the
supervisor (#71188)
add a99f6fb21f7 Go SDK: follow-up fix for rejecting invalid task handler
registrations (#73643)
add d8f4a5727a2 Add magpie release-management with a contributor check for
provider RCs (#73697)
add c1e98dc0c96 Add dedicated InfluxDB 3 sensor (#73522)
add 50c9249623e Add troubleshooting guidance for task state mismatches
(#72492)
add 8dff03038ae Add http_conn_id to HttpOperator and HttpSensor
template_fields (#72582)
add 4b0cbb1c944 Keep the AWS no-credentials tests hermetic on EC2 and
developer hosts (#73707)
add 3a5fe2f521a Honor string passive extra in FTPHook and FTPSHook (#73694)
add 847183dc9f9 Fix HttpAsyncHook crash on stream/cert/trust_env
connection extras (#71524)
add 122e24cb57a Mark the IBM MQ and IBM Db2 providers as ready for release
(#73708)
add 0cf78267ad9 Raise DeadlockImminentError for sync comms calls from a
paused event loop thread (#73521)
add 07197c29a2f Fix Elasticsearch and OpenSearch response wrapper bugs
(#73725)
new cdd49ce2921 Bump swagger-ui-dist
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 (f2cd3fd524b)
\
N -- N -- N
refs/heads/dependabot/npm_and_yarn/registry/registry-package-updates-41a384f9b6
(cdd49ce2921)
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.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../skills/airflow-translations/locales/zh-CN.md | 17 +-
.apache-magpie-overrides/project.md | 2 +
.apache-magpie-overrides/release-build.md | 103 +
.../release-management-config.md | 100 +
.apache-magpie-overrides/release-verify-rc.md | 116 +
.apache-magpie.lock | 3 +-
.github/actions/install-prek/action.yml | 30 +-
.../actions/prepare_breeze_and_image/action.yml | 19 +-
.github/workflows/ci-amd.yml | 1 +
.github/workflows/ci-arm.yml | 1 +
.github/workflows/ci-image-checks.yml | 2 +-
.github/workflows/codeql-analysis.yml | 6 +-
.github/workflows/publish-docs-to-s3.yml | 2 +-
.github/workflows/registry-backfill.yml | 4 +-
.github/workflows/registry-build.yml | 2 +-
.github/workflows/run-unit-tests.yml | 9 +-
.pre-commit-config.yaml | 29 +-
AGENTS.md | 4 +
INTHEWILD.md | 1 +
README.md | 10 +
.../logging-monitoring/check-health.rst | 4 +-
.../task-and-asset-state-store.rst | 2 +-
.../authoring-and-scheduling/language-sdks/go.rst | 196 +-
.../language-sdks/java.rst | 244 +-
.../language-sdks/typescript.rst | 50 +-
airflow-core/docs/core-concepts/tasks.rst | 36 +-
airflow-core/docs/extra-packages-ref.rst | 2 +
airflow-core/docs/howto/custom-operator.rst | 34 +
airflow-core/docs/howto/customize-ui.rst | 4 +-
...g => example_theme_configuration_dark_mode.png} | Bin
... => example_theme_configuration_light_mode.png} | Bin
airflow-core/docs/migrations-ref.rst | 10 +-
airflow-core/docs/security/api_permissions_ref.rst | 8 +
airflow-core/docs/troubleshooting.rst | 82 +-
airflow-core/docs/tutorial/hitl.rst | 6 +
airflow-core/newsfragments/63491.significant.rst | 60 +
airflow-core/newsfragments/66350.bugfix.rst | 1 +
airflow-core/newsfragments/67372.bugfix.rst | 1 +
airflow-core/newsfragments/71729.improvement.rst | 1 +
airflow-core/newsfragments/71990.bugfix.rst | 1 +
airflow-core/newsfragments/72036.feature.rst | 1 +
airflow-core/newsfragments/72494.feature.rst | 1 +
airflow-core/newsfragments/72896.significant.rst | 16 +
airflow-core/newsfragments/73244.significant.rst | 22 +
airflow-core/newsfragments/73294.significant.rst | 14 +
airflow-core/newsfragments/73328.significant.rst | 6 +
.../src/airflow/api/common/airflow_health.py | 10 +-
.../auth/managers/simple/ui/package.json | 10 +-
.../auth/managers/simple/ui/pnpm-lock.yaml | 296 +-
.../src/airflow/api_fastapi/auth/tokens.py | 3 +-
.../api_fastapi/common/parameters/search.py | 44 +-
.../api_fastapi/core_api/datamodels/common.py | 69 +-
.../api_fastapi/core_api/datamodels/dag_bundles.py | 38 +
.../api_fastapi/core_api/datamodels/hitl.py | 16 +
.../core_api/datamodels/import_error.py | 11 +-
.../airflow/api_fastapi/core_api/datamodels/job.py | 2 +-
.../api_fastapi/core_api/datamodels/monitor.py | 2 +-
.../core_api/datamodels/task_instances.py | 8 +
.../api_fastapi/core_api/datamodels/xcom.py | 41 +-
.../api_fastapi/core_api/openapi/_private_ui.yaml | 10 +-
.../core_api/openapi/v2-rest-api-generated.yaml | 317 +-
.../api_fastapi/core_api/routes/public/assets.py | 14 +-
.../core_api/routes/public/dag_bundles.py | 254 +-
.../api_fastapi/core_api/routes/public/dags.py | 15 +-
.../core_api/routes/public/task_instances.py | 9 +
.../api_fastapi/core_api/routes/public/xcom.py | 2 +
.../src/airflow/api_fastapi/core_api/security.py | 29 +-
.../core_api/services/public/task_instances.py | 18 +-
.../api_fastapi/core_api/services/ui/grid.py | 5 +-
.../execution_api/datamodels/taskinstance.py | 12 +
.../execution_api/routes/connections.py | 2 +-
.../execution_api/routes/task_instances.py | 3 +
.../api_fastapi/execution_api/routes/xcoms.py | 26 +-
.../api_fastapi/execution_api/versions/__init__.py | 10 +-
.../execution_api/versions/v2026_10_30.py | 25 +-
airflow-core/src/airflow/cli/cli_config.py | 23 +-
.../src/airflow/cli/commands/connection_command.py | 5 +
.../src/airflow/cli/commands/dag_command.py | 9 +-
.../src/airflow/cli/commands/db_command.py | 2 +-
.../src/airflow/cli/commands/info_command.py | 7 +-
.../src/airflow/cli/commands/plugins_command.py | 5 +-
.../src/airflow/cli/commands/team_command.py | 94 +-
.../src/airflow/cli/commands/triggerer_command.py | 2 +-
.../src/airflow/cli/commands/variable_command.py | 11 +-
airflow-core/src/airflow/cli/utils.py | 40 +
.../src/airflow/config_templates/config.yml | 8 +-
airflow-core/src/airflow/dag_processing/manager.py | 7 -
.../src/airflow/dag_processing/processor.py | 121 +-
.../airflow/example_dags/example_retry_policy.py | 21 +-
airflow-core/src/airflow/exceptions.py | 2 +-
.../src/airflow/executors/base_executor.py | 312 +-
.../src/airflow/executors/local_executor.py | 16 +-
.../src/airflow/executors/workloads/__init__.py | 4 +-
.../src/airflow/executors/workloads/base.py | 41 +
.../src/airflow/executors/workloads/callback.py | 4 +-
.../airflow/executors/workloads/connection_test.py | 4 +-
.../src/airflow/executors/workloads/task.py | 9 +-
.../src/airflow/executors/workloads/types.py | 8 +-
airflow-core/src/airflow/jobs/job.py | 23 +-
.../src/airflow/jobs/scheduler_job_runner.py | 305 +-
.../src/airflow/jobs/triggerer_job_runner.py | 89 +-
.../versions/0135_3_4_0_widen_revoked_token_jti.py | 54 +
..._3_4_0_fold_task_map_into_xcom_mapped_length.py | 158 +
.../0137_3_4_0_add_job_team_association_table.py | 81 +
airflow-core/src/airflow/models/dag_version.py | 161 +-
airflow-core/src/airflow/models/dagrun.py | 3 +-
airflow-core/src/airflow/models/revoked_token.py | 2 +-
airflow-core/src/airflow/models/taskinstance.py | 178 +-
airflow-core/src/airflow/models/taskmap.py | 293 --
airflow-core/src/airflow/models/team.py | 24 +-
airflow-core/src/airflow/models/trigger.py | 9 +
airflow-core/src/airflow/models/xcom.py | 9 +
.../src/airflow/serialization/dag_version_diff.py | 1281 +++++++
airflow-core/src/airflow/serialization/decoders.py | 5 +-
.../airflow/serialization/definitions/xcom_arg.py | 26 +-
.../airflow/serialization/serialized_objects.py | 36 +-
.../src/airflow/ui/openapi-gen/queries/common.ts | 14 +
.../ui/openapi-gen/queries/ensureQueryData.ts | 40 +
.../src/airflow/ui/openapi-gen/queries/prefetch.ts | 40 +
.../src/airflow/ui/openapi-gen/queries/queries.ts | 44 +-
.../src/airflow/ui/openapi-gen/queries/suspense.ts | 40 +
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 220 +-
.../ui/openapi-gen/requests/services.gen.ts | 71 +-
.../airflow/ui/openapi-gen/requests/types.gen.ts | 152 +-
.../airflow/ui/public/i18n/locales/en/browse.json | 18 +-
.../airflow/ui/public/i18n/locales/en/common.json | 12 +
.../ui/public/i18n/locales/en/components.json | 1 +
.../ui/public/i18n/locales/en/dashboard.json | 17 +-
.../ui/public/i18n/locales/zh-CN/admin.json | 2 +-
.../ui/public/i18n/locales/zh-CN/common.json | 6 +-
.../airflow/ui/public/i18n/locales/zh-CN/dag.json | 6 +-
.../ui/public/i18n/locales/zh-CN/dashboard.json | 6 +-
.../TaskInstance/ClearGroupTaskInstanceDialog.tsx | 28 +-
.../ClearTaskInstanceConfirmationDialog.tsx | 4 +-
.../airflow/ui/src/components/DagBundleVersion.tsx | 63 +
.../ui/src/components/DagDeactivatedBanner.tsx | 2 +-
.../Dag => components}/DagImportErrorModal.tsx | 0
.../ui/src/components/DataTable/DataTable.test.tsx | 33 +
.../ui/src/components/DataTable/DataTable.tsx | 4 +
.../ui/src/components/DataTable/TableList.test.tsx | 67 +
.../ui/src/components/DataTable/TableList.tsx | 43 +-
.../src/components/DataTable/searchParams.test.ts | 39 +
.../ui/src/components/DataTable/searchParams.ts | 19 +-
.../ui/src/components/FilterBar/FilterPill.tsx | 4 +-
.../FilterBar/filters/DateRangeFilter.tsx | 6 +-
.../src/airflow/ui/src/components/HeaderCard.tsx | 2 +-
.../airflow/ui/src/components/ImportErrorCount.tsx | 29 +-
.../ui/src/components/renderStructuredLog.test.tsx | 33 +
.../ui/src/components/renderStructuredLog.tsx | 4 +-
.../src/airflow/ui/src/constants/localStorage.ts | 2 +
.../ui/src/context/groups/GroupsProvider.test.tsx | 112 +
.../ui/src/context/groups/GroupsProvider.tsx | 8 +-
.../ui/src/context/keyboardShortcuts/shortcuts.ts | 5 +
.../src/airflow/ui/src/hooks/useUserSettings.ts | 4 +
.../airflow/ui/src/layouts/Details/Graph/Graph.tsx | 2 +-
.../ui/src/layouts/Details/Grid/Grid.test.tsx | 96 +
.../airflow/ui/src/layouts/Details/Grid/Grid.tsx | 26 +-
.../layouts/Details/Grid/GridPaginationButtons.tsx | 2 +-
.../Details/Grid/useGridScrollRestore.test.ts | 201 ++
.../layouts/Details/Grid/useGridScrollRestore.ts | 87 +
.../pages/Dag/Backfills/BackfillDagRunsModal.tsx | 2 +-
.../ui/src/pages/Dag/Backfills/Backfills.tsx | 2 +-
.../ui/src/pages/Dag/Calendar/CalendarCell.tsx | 19 +-
.../src/pages/Dag/Calendar/DailyCalendarView.tsx | 4 +
.../src/pages/Dag/Calendar/HourlyCalendarView.tsx | 4 +
.../airflow/ui/src/pages/DagBundle/BundleFiles.tsx | 144 +
.../airflow/ui/src/pages/DagBundle/DagBundle.tsx | 62 +
.../ui/src/pages/DagBundle/FileImportError.tsx | 78 +
.../src/airflow/ui/src/pages/DagBundle/Header.tsx | 84 +
.../src/airflow/ui/src/pages/DagBundle/index.tsx | 11 +-
.../airflow/ui/src/pages/DagBundles/DagBundles.tsx | 87 +-
.../ui/src/pages/DagsList/DagsList.test.tsx | 23 +
.../src/airflow/ui/src/pages/DagsList/DagsList.tsx | 10 +-
.../ui/src/pages/Dashboard/Health/Health.test.tsx | 361 ++
.../ui/src/pages/Dashboard/Health/Health.tsx | 41 +-
.../ui/src/pages/Dashboard/Health/HealthBadge.tsx | 107 +-
.../src/pages/Dashboard/Health/HealthInstances.tsx | 93 +
.../pages/Dashboard/Health/HealthStateBadge.tsx | 23 +-
.../ui/src/pages/Dashboard/Health/healthStatus.ts | 41 +
.../Dashboard/HistoricalMetrics/MetricSection.tsx | 1 +
.../pages/Dashboard/Stats/DagImportErrorsModal.tsx | 69 +-
.../ui/src/pages/Settings/Settings.test.tsx | 18 +-
.../src/airflow/ui/src/pages/Settings/Settings.tsx | 14 +
.../ui/src/pages/TaskInstance/Logs/Logs.tsx | 17 +-
.../src/pages/TaskInstance/Logs/TaskLogHeader.tsx | 9 +
.../ui/src/pages/TaskInstance/Logs/utils.test.ts | 13 +
.../ui/src/pages/TaskInstance/Logs/utils.ts | 3 +
.../pages/TaskInstance/RenderedTemplates.test.tsx | 84 +
.../src/pages/TaskInstance/RenderedTemplates.tsx | 17 +-
.../ui/src/queries/useDagBundleRefetchInterval.ts | 38 +
.../src/airflow/ui/src/queries/useLogs.test.ts | 12 +
.../src/airflow/ui/src/queries/useLogs.tsx | 19 +-
airflow-core/src/airflow/ui/src/router.tsx | 5 +
.../airflow/ui/tests/e2e/specs/task-logs.spec.ts | 6 +
airflow-core/src/airflow/utils/db.py | 2 +-
airflow-core/src/airflow/utils/db_cleanup.py | 45 +-
.../tests/unit/always/test_project_structure.py | 44 +-
.../tests/unit/api/common/test_airflow_health.py | 28 +-
.../unit/api_fastapi/common/test_parameters.py | 80 +-
.../api_fastapi/core_api/datamodels/test_common.py | 50 +-
.../core_api/routes/public/test_assets.py | 41 +-
.../core_api/routes/public/test_dag_bundles.py | 309 +-
.../core_api/routes/public/test_dag_parsing.py | 83 +-
.../core_api/routes/public/test_dags.py | 13 +
.../core_api/routes/public/test_hitl.py | 86 +
.../core_api/routes/public/test_import_error.py | 22 +-
.../api_fastapi/core_api/routes/public/test_job.py | 26 +-
.../core_api/routes/public/test_monitor.py | 6 +-
.../core_api/routes/public/test_task_instances.py | 115 +-
.../core_api/routes/public/test_xcom.py | 39 +-
.../unit/api_fastapi/core_api/test_security.py | 62 +
.../versions/head/test_connections.py | 32 +
.../versions/head/test_task_instances.py | 149 +-
.../execution_api/versions/head/test_xcoms.py | 67 +-
.../versions/v2025_04_28/test_task_instances.py | 2 +
.../unit/cli/commands/test_connection_command.py | 32 +-
.../tests/unit/cli/commands/test_dag_command.py | 52 +
.../tests/unit/cli/commands/test_db_command.py | 13 +
.../tests/unit/cli/commands/test_info_command.py | 45 +
.../unit/cli/commands/test_plugins_command.py | 14 +-
.../tests/unit/cli/commands/test_team_command.py | 236 ++
.../unit/cli/commands/test_triggerer_command.py | 14 +-
.../unit/cli/commands/test_variable_command.py | 27 +-
airflow-core/tests/unit/cli/test_utils.py | 61 +-
.../tests/unit/dag_processing/test_processor.py | 65 +-
.../tests/unit/executors/test_base_executor.py | 441 ++-
.../tests/unit/executors/test_local_executor.py | 17 +-
.../tests/unit/executors/test_workloads.py | 54 +-
airflow-core/tests/unit/jobs/test_base_job.py | 67 +
airflow-core/tests/unit/jobs/test_scheduler_job.py | 326 +-
airflow-core/tests/unit/jobs/test_triggerer_job.py | 268 +-
.../test_0136_fold_task_map_into_xcom.py | 184 +
airflow-core/tests/unit/models/test_dag.py | 42 +
airflow-core/tests/unit/models/test_dag_version.py | 450 ++-
airflow-core/tests/unit/models/test_dagrun.py | 37 +-
.../tests/unit/models/test_mappedoperator.py | 59 +-
.../tests/unit/models/test_renderedtifields.py | 4 +-
.../tests/unit/models/test_revoked_token.py | 11 +
.../tests/unit/models/test_taskinstance.py | 53 +-
airflow-core/tests/unit/models/test_taskmap.py | 79 -
airflow-core/tests/unit/models/test_trigger.py | 17 +
airflow-core/tests/unit/models/test_xcom_arg.py | 45 +
.../unit/serialization/test_dag_serialization.py | 27 +
.../unit/serialization/test_dag_version_diff.py | 3552 ++++++++++++++++++++
.../unit/serialization/test_serialized_objects.py | 11 +-
.../test_ts_sdk_serialization_version.py | 53 +
.../ti_deps/deps/test_mapped_task_upstream_dep.py | 12 +-
airflow-core/tests/unit/utils/test_db_cleanup.py | 250 +-
airflow-core/tests/unit/utils/test_strings.py | 17 +-
.../src/airflowctl/api/datamodels/generated.py | 116 +-
airflow-ctl/src/airflowctl/api/operations.py | 2 +-
.../src/airflowctl/ctl/commands/dag_command.py | 53 +-
.../src/airflowctl/ctl/commands/task_command.py | 44 +-
airflow-ctl/src/airflowctl/ctl/utils/dag_run.py | 100 +
.../tests/airflow_ctl/api/test_operations.py | 3 +
.../airflow_ctl/ctl/commands/test_task_command.py | 12 +
.../java_sdk_tests/test_java_sdk_dag.py | 52 +-
.../dag-processor/dag-processor-deployment.yaml | 7 +
.../airflow_aux/test_container_lifecycle.py | 19 +
.../helm_tests/airflow_core/test_dag_processor.py | 12 +
chart/values.schema.json | 22 +
chart/values.yaml | 6 +-
contributing-docs/05_pull_requests.rst | 25 +
contributing-docs/testing/k8s_tests.rst | 671 ++--
dev/README_RELEASE_AIRFLOW.md | 23 +
dev/README_RELEASE_AIRFLOWCTL.md | 23 +
dev/README_RELEASE_HELM_CHART.md | 25 +
dev/README_RELEASE_MYPY.md | 25 +
dev/README_RELEASE_PROVIDERS.md | 73 +-
dev/breeze/doc/08_ci_tasks.rst | 9 +
dev/breeze/doc/09_release_management_tasks.rst | 22 +
.../0018-raise-dependency-floors-automatically.md | 232 ++
dev/breeze/doc/images/output_ci_upgrade.svg | 44 +-
dev/breeze/doc/images/output_ci_upgrade.txt | 2 +-
...elease-management_classify-provider-changes.svg | 12 +-
...elease-management_classify-provider-changes.txt | 2 +-
...management_generate-issue-content-providers.svg | 12 +-
...management_generate-issue-content-providers.txt | 2 +-
...ease-management_generate-providers-metadata.svg | 8 +-
...ease-management_generate-providers-metadata.txt | 2 +-
...e-management_prepare-provider-distributions.svg | 12 +-
...e-management_prepare-provider-distributions.txt | 2 +-
...e-management_prepare-provider-documentation.svg | 12 +-
...e-management_prepare-provider-documentation.txt | 2 +-
.../output_setup_check-all-params-in-groups.svg | 2 +-
.../output_setup_check-all-params-in-groups.txt | 2 +-
.../output_setup_regenerate-command-images.svg | 28 +-
.../output_setup_regenerate-command-images.txt | 2 +-
dev/breeze/doc/images/output_workflow-run.svg | 14 +-
dev/breeze/doc/images/output_workflow-run.txt | 2 +-
.../output_workflow-run_sync-staging-to-main.svg | 104 +
.../output_workflow-run_sync-staging-to-main.txt | 1 +
.../src/airflow_breeze/commands/ci_commands.py | 133 +-
.../airflow_breeze/commands/ci_commands_config.py | 1 +
.../airflow_breeze/commands/workflow_commands.py | 30 +-
.../commands/workflow_commands_config.py | 10 +-
.../src/airflow_breeze/params/shell_params.py | 11 +
.../prepare_providers/provider_distributions.py | 1 +
.../prepare_providers/provider_documentation.py | 8 +-
.../airflow_breeze/utils/docker_command_utils.py | 7 +-
dev/breeze/src/airflow_breeze/utils/path_utils.py | 1 +
dev/breeze/tests/test_ci_upgrade.py | 111 +
dev/breeze/tests/test_docker_command_utils.py | 28 +
dev/breeze/tests/test_provider_distributions.py | 32 +
dev/breeze/tests/test_provider_documentation.py | 10 +
dev/breeze/tests/test_shell_params.py | 27 +-
dev/breeze/tests/test_workflow_commands.py | 34 +-
dev/breeze/uv.lock | 56 +-
dev/registry/extract_parameters.py | 342 +-
dev/registry/registry_contract_models.py | 1 +
dev/registry/tests/test_extract_parameters.py | 557 ++-
.../tests/test_registry_contract_models.py | 17 +-
dev/skill-evals/last-eval-hash.txt | 2 +-
devel-common/src/docs/build_docs.py | 99 +-
devel-common/src/docs/provider_conf.py | 7 +-
.../src/sphinx_exts/airflow_intersphinx.py | 67 +-
.../src/sphinx_exts/docs_build/docs_builder.py | 197 +-
devel-common/src/sphinx_exts/exampleinclude.py | 12 +-
.../src/sphinx_exts/provider_yaml_utils.py | 42 +-
devel-common/src/tests_common/pytest_plugin.py | 2 -
devel-common/src/tests_common/test_utils/db.py | 7 +
.../src/tests_common/test_utils/mapping.py | 93 +-
.../src/tests_common/test_utils/mock_executor.py | 15 +-
.../src/tests_common/test_utils/mock_plugins.py | 1 +
.../docs_build/test_build_docs_scheduling.py | 41 +
.../sphinx_exts/docs_build/test_docs_builder.py | 131 +-
.../unit/sphinx_exts/test_airflow_intersphinx.py | 113 +
docs/spelling_wordlist.txt | 1 +
generated/known_airflow_exceptions.txt | 2 -
generated/known_sdk_imports_in_core.txt | 2 +-
go-sdk/README.md | 117 +-
go-sdk/adr/0001-bundle-packing-options.md | 4 +-
.../adr/0007-mixed-lang-task-handler-interface.md | 12 +-
go-sdk/airflow/bundle.go | 140 +
go-sdk/airflow/bundle_test.go | 215 ++
go-sdk/airflow/context.go | 5 +
go-sdk/airflow/contexttest_test.go | 62 +
go-sdk/airflow/serve.go | 161 +
go-sdk/airflow/serve_test.go | 286 ++
go-sdk/airflow/task_handler.go | 63 +
go-sdk/airflow/task_handler_test.go | 254 ++
.../testdata/foreignitem/main.go} | 20 +-
go-sdk/bundle/bundlev1/bundlev1server/server.go | 152 -
.../bundle/bundlev1/bundlev1server/server_test.go | 46 -
go-sdk/bundle/bundlev1/registry.go | 204 --
go-sdk/bundle/bundlev1/registry_test.go | 168 -
go-sdk/bundle/bundlev1/schemas.go | 46 -
.../cmd/airflow-go-pack/pack_integration_test.go | 4 +-
.../bundle/concurrentxcom/concurrentxcom.go | 2 +-
go-sdk/example/bundle/main.go | 82 +-
.../bundlev1server => internal/bundle}/doc.go | 9 +-
.../{bundle/bundlev1 => internal/bundle}/task.go | 39 +-
.../bundlev1 => internal/bundle}/task_test.go | 46 +-
go-sdk/internal/contexttest/contexttest.go | 60 +
go-sdk/pkg/binding/binding.go | 8 +-
go-sdk/pkg/binding/binding_test.go | 165 +-
go-sdk/pkg/binding/task_context.go | 68 +
go-sdk/pkg/binding/task_context_test.go | 56 +
go-sdk/pkg/execution/genmodels/defaults.gen.go | 85 +-
go-sdk/pkg/execution/genmodels/models.gen.go | 203 +-
go-sdk/pkg/execution/integration_test.go | 236 +-
go-sdk/pkg/execution/metadata.go | 56 +-
go-sdk/pkg/execution/server.go | 27 +-
go-sdk/pkg/execution/task_runner.go | 8 +-
java-sdk/README.md | 2 +-
java-sdk/adr/0001-mixed-lang-dag-interface.md | 33 +-
java-sdk/adr/0002-native-dag-interface.md | 2 +-
java-sdk/capabilities.yaml | 2 +-
.../apache/airflow/example/AnnotationExample.java | 32 +-
.../airflow/example/ExampleBundleBuilder.java | 19 +-
.../airflow/example/InterfaceExampleBuilder.java | 38 +-
.../apache/airflow/example/XComCastingExample.java | 39 +-
.../example/src/resources/dags/java_examples.py | 46 +-
java-sdk/gradle.properties | 2 +-
.../org/apache/airflow/sdk/BuilderProcessor.kt | 366 +-
.../kotlin/org/apache/airflow/sdk/BuilderTest.kt | 595 +++-
java-sdk/sdk/build.gradle.kts | 8 +-
java-sdk/sdk/module.md | 2 +-
java-sdk/sdk/schema/schema.json | 259 +-
.../kotlin/org/apache/airflow/sdk/ArgName.kt} | 49 +-
.../main/kotlin/org/apache/airflow/sdk/Builder.kt | 33 +-
.../main/kotlin/org/apache/airflow/sdk/Bundle.kt | 122 +-
.../main/kotlin/org/apache/airflow/sdk/Client.kt | 39 +-
.../main/kotlin/org/apache/airflow/sdk/DagDef.kt | 12 +
.../kotlin/org/apache/airflow/sdk/InputTask.kt | 88 +
.../main/kotlin/org/apache/airflow/sdk/Server.kt | 1 +
.../kotlin/org/apache/airflow/sdk/TaskInput.kt | 60 +
.../org/apache/airflow/sdk/execution/ArgBinding.kt | 90 +
.../org/apache/airflow/sdk/execution/Task.kt | 2 +-
.../org/apache/airflow/sdk/internal/ArgValues.kt | 294 ++
.../org/apache/airflow/sdk/internal/InputTypes.kt | 176 +
.../org/apache/airflow/sdk/internal/Registrar.kt} | 36 +-
.../org/apache/airflow/sdk/internal/TaskArgs.kt | 142 +
.../org/apache/airflow/sdk/internal/TypeRef.kt | 47 +
.../org/apache/airflow/sdk/ArgTestSupport.kt | 96 +
.../kotlin/org/apache/airflow/sdk/ArgValuesTest.kt | 303 ++
.../kotlin/org/apache/airflow/sdk/BundleTest.kt | 136 +
.../kotlin/org/apache/airflow/sdk/InputTaskTest.kt | 167 +
.../kotlin/org/apache/airflow/sdk/TaskArgsTest.kt | 336 ++
kubernetes-tests/lang_sdk/go_example/main.go | 24 +-
providers/.last_release_date.txt | 2 +-
providers/.pre-commit-config.yaml | 9 +
providers/airbyte/README.rst | 6 +-
providers/airbyte/docs/changelog.rst | 24 +
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 | 5 +-
.../airflow/providers/airbyte/sensors/airbyte.py | 5 +-
providers/alibaba/README.rst | 6 +-
providers/alibaba/docs/changelog.rst | 20 +
providers/alibaba/docs/index.rst | 6 +-
providers/alibaba/provider.yaml | 3 +-
providers/alibaba/pyproject.toml | 6 +-
.../src/airflow/providers/alibaba/__init__.py | 2 +-
.../providers/alibaba/cloud/operators/oss.py | 13 +
.../providers/alibaba/cloud/sensors/oss_key.py | 2 +-
providers/amazon/README.rst | 6 +-
providers/amazon/docs/changelog.rst | 73 +
providers/amazon/docs/index.rst | 6 +-
providers/amazon/docs/message-queues/index.rst | 22 +-
.../amazon/docs/operators/athena/athena_spark.rst | 59 +
providers/amazon/provider.yaml | 5 +-
providers/amazon/pyproject.toml | 12 +-
.../src/airflow/providers/amazon/__init__.py | 2 +-
.../aws/executors/aws_lambda/lambda_executor.py | 46 +-
.../amazon/aws/executors/batch/batch_executor.py | 69 +-
.../amazon/aws/executors/ecs/ecs_executor.py | 46 +-
.../airflow/providers/amazon/aws/hooks/athena.py | 174 +
.../providers/amazon/aws/notifications/chime.py | 6 +-
.../providers/amazon/aws/operators/athena_spark.py | 204 ++
.../airflow/providers/amazon/aws/operators/eks.py | 4 +-
.../airflow/providers/amazon/aws/operators/emr.py | 1 +
.../amazon/aws/operators/mwaa_serverless.py | 41 +-
.../airflow/providers/amazon/aws/operators/s3.py | 4 +-
.../src/airflow/providers/amazon/aws/queues/sqs.py | 26 +-
.../amazon/aws/transfers/azure_blob_to_s3.py | 13 +-
.../providers/amazon/aws/transfers/exasol_to_s3.py | 10 +-
.../providers/amazon/aws/transfers/ftp_to_s3.py | 44 +-
.../providers/amazon/aws/transfers/gcs_to_s3.py | 28 +-
.../amazon/aws/transfers/glacier_to_gcs.py | 8 +-
.../amazon/aws/transfers/google_api_to_s3.py | 1 +
.../amazon/aws/transfers/hive_to_dynamodb.py | 6 +-
.../providers/amazon/aws/transfers/http_to_s3.py | 10 +-
.../amazon/aws/transfers/imap_attachment_to_s3.py | 8 +-
.../providers/amazon/aws/transfers/local_to_s3.py | 2 +-
.../providers/amazon/aws/transfers/mongo_to_s3.py | 9 +-
.../amazon/aws/transfers/s3_to_dynamodb.py | 1 +
.../providers/amazon/aws/transfers/s3_to_ftp.py | 45 +-
.../providers/amazon/aws/transfers/s3_to_sftp.py | 45 +-
.../providers/amazon/aws/transfers/s3_to_sql.py | 1 +
.../amazon/aws/transfers/salesforce_to_s3.py | 8 +-
.../providers/amazon/aws/transfers/sftp_to_s3.py | 32 +-
.../providers/amazon/aws/transfers/sql_to_s3.py | 1 +
.../airflow/providers/amazon/aws/utils/transfer.py | 42 +
.../providers/amazon/aws/waiters/athena.json | 56 +
.../airflow/providers/amazon/get_provider_info.py | 6 +-
.../src/airflow/providers/amazon/version_compat.py | 2 +
.../system/amazon/aws/example_athena_spark.py | 121 +
.../amazon/tests/system/amazon/aws/example_dms.py | 5 +-
.../amazon/aws/example_google_api_youtube_to_s3.py | 10 +-
.../tests/system/amazon/aws/example_http_to_s3.py | 14 +-
.../system/amazon/aws/example_neptune_analytics.py | 17 +-
.../tests/system/amazon/aws/example_s3_to_sql.py | 10 +-
.../tests/system/amazon/aws/example_sql_to_s3.py | 10 +-
.../executors/aws_lambda/test_lambda_executor.py | 29 +-
.../aws/executors/batch/test_batch_executor.py | 32 +-
.../amazon/aws/executors/ecs/test_ecs_executor.py | 20 +-
.../amazon/tests/unit/amazon/aws/fs/test_s3.py | 16 +-
.../tests/unit/amazon/aws/hooks/test_athena.py | 225 ++
.../tests/unit/amazon/aws/hooks/test_base_aws.py | 2 +
.../unit/amazon/aws/hooks/test_batch_client.py | 7 +-
.../unit/amazon/aws/hooks/test_batch_waiters.py | 7 +-
.../tests/unit/amazon/aws/hooks/test_glue.py | 5 +-
.../unit/amazon/aws/operators/test_athena_spark.py | 293 ++
.../tests/unit/amazon/aws/operators/test_ec2.py | 6 +
.../tests/unit/amazon/aws/operators/test_ecs.py | 8 +-
.../tests/unit/amazon/aws/operators/test_eks.py | 7 +
.../amazon/aws/operators/test_mwaa_serverless.py | 70 +
.../amazon/aws/test_deferred_hook_configuration.py | 3 -
.../amazon/aws/transfers/test_azure_blob_to_s3.py | 21 +
.../unit/amazon/aws/transfers/test_ftp_to_s3.py | 105 +-
.../unit/amazon/aws/transfers/test_gcs_to_s3.py | 26 -
.../unit/amazon/aws/transfers/test_mongo_to_s3.py | 2 +
.../unit/amazon/aws/transfers/test_s3_to_ftp.py | 51 +
.../unit/amazon/aws/transfers/test_s3_to_sftp.py | 55 +
.../unit/amazon/aws/transfers/test_sftp_to_s3.py | 34 +
.../tests/unit/amazon/aws/utils/test_transfer.py | 30 +-
providers/anthropic/README.rst | 6 +-
providers/anthropic/docs/changelog.rst | 18 +
providers/anthropic/docs/index.rst | 6 +-
providers/anthropic/provider.yaml | 3 +-
providers/anthropic/pyproject.toml | 6 +-
.../src/airflow/providers/anthropic/__init__.py | 2 +-
.../airflow/providers/anthropic/operators/agent.py | 2 +-
.../airflow/providers/anthropic/operators/batch.py | 2 +-
.../airflow/providers/anthropic/sensors/batch.py | 5 +-
providers/apache/beam/README.rst | 6 +-
providers/apache/beam/docs/changelog.rst | 19 +
providers/apache/beam/docs/index.rst | 6 +-
providers/apache/beam/provider.yaml | 3 +-
providers/apache/beam/pyproject.toml | 6 +-
.../src/airflow/providers/apache/beam/__init__.py | 2 +-
.../providers/apache/beam/operators/beam.py | 5 +
providers/apache/cassandra/README.rst | 6 +-
providers/apache/cassandra/docs/changelog.rst | 15 +
providers/apache/cassandra/docs/index.rst | 6 +-
providers/apache/cassandra/provider.yaml | 4 +-
providers/apache/cassandra/pyproject.toml | 6 +-
.../airflow/providers/apache/cassandra/__init__.py | 2 +-
.../providers/apache/cassandra/sensors/record.py | 2 +-
.../providers/apache/cassandra/sensors/table.py | 5 +-
providers/apache/druid/README.rst | 6 +-
providers/apache/druid/docs/changelog.rst | 26 +
providers/apache/druid/docs/index.rst | 6 +-
providers/apache/druid/provider.yaml | 4 +-
providers/apache/druid/pyproject.toml | 6 +-
.../src/airflow/providers/apache/druid/__init__.py | 2 +-
.../apache/druid/transfers/hive_to_druid.py | 8 +-
providers/apache/flink/README.rst | 6 +-
providers/apache/flink/docs/changelog.rst | 16 +
providers/apache/flink/docs/index.rst | 6 +-
providers/apache/flink/provider.yaml | 4 +-
providers/apache/flink/pyproject.toml | 6 +-
.../src/airflow/providers/apache/flink/__init__.py | 2 +-
.../apache/flink/operators/flink_kubernetes.py | 2 +-
providers/apache/hdfs/README.rst | 6 +-
providers/apache/hdfs/docs/changelog.rst | 14 +
providers/apache/hdfs/docs/index.rst | 6 +-
providers/apache/hdfs/provider.yaml | 4 +-
providers/apache/hdfs/pyproject.toml | 6 +-
.../src/airflow/providers/apache/hdfs/__init__.py | 2 +-
.../providers/apache/hdfs/sensors/web_hdfs.py | 7 +-
providers/apache/hive/README.rst | 6 +-
providers/apache/hive/docs/changelog.rst | 14 +
providers/apache/hive/docs/index.rst | 6 +-
providers/apache/hive/provider.yaml | 4 +-
providers/apache/hive/pyproject.toml | 6 +-
.../src/airflow/providers/apache/hive/__init__.py | 2 +-
.../providers/apache/hive/operators/hive_stats.py | 10 +-
.../apache/hive/sensors/hive_partition.py | 1 +
.../apache/hive/transfers/hive_to_mysql.py | 9 +-
.../apache/hive/transfers/hive_to_samba.py | 2 +-
.../apache/hive/transfers/mssql_to_hive.py | 2 +-
.../apache/hive/transfers/mysql_to_hive.py | 2 +-
.../providers/apache/hive/transfers/s3_to_hive.py | 2 +-
.../apache/hive/transfers/vertica_to_hive.py | 2 +-
.../apache/kafka/docs/.latest-doc-only-change.txt | 2 +-
.../apache/kafka/docs/message-queues/index.rst | 23 +-
.../airflow/providers/apache/kafka/queues/kafka.py | 27 +-
providers/apache/kylin/README.rst | 6 +-
providers/apache/kylin/docs/changelog.rst | 16 +
providers/apache/kylin/docs/index.rst | 6 +-
providers/apache/kylin/provider.yaml | 4 +-
providers/apache/kylin/pyproject.toml | 6 +-
.../src/airflow/providers/apache/kylin/__init__.py | 2 +-
.../providers/apache/kylin/operators/kylin_cube.py | 1 +
providers/apache/livy/README.rst | 6 +-
providers/apache/livy/docs/changelog.rst | 13 +
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 +-
providers/apache/pig/README.rst | 6 +-
providers/apache/pig/docs/changelog.rst | 15 +
providers/apache/pig/docs/index.rst | 6 +-
providers/apache/pig/provider.yaml | 4 +-
providers/apache/pig/pyproject.toml | 6 +-
.../src/airflow/providers/apache/pig/__init__.py | 2 +-
.../airflow/providers/apache/pig/operators/pig.py | 2 +-
.../unit/apache/spark/hooks/test_spark_submit.py | 2 +-
providers/apache/tinkerpop/README.rst | 6 +-
providers/apache/tinkerpop/docs/changelog.rst | 22 +
providers/apache/tinkerpop/docs/index.rst | 6 +-
providers/apache/tinkerpop/provider.yaml | 4 +-
providers/apache/tinkerpop/pyproject.toml | 6 +-
.../airflow/providers/apache/tinkerpop/__init__.py | 2 +-
.../apache/tinkerpop/operators/gremlin.py | 6 +-
providers/apprise/README.rst | 6 +-
providers/apprise/docs/changelog.rst | 15 +
providers/apprise/docs/index.rst | 6 +-
providers/apprise/provider.yaml | 4 +-
providers/apprise/pyproject.toml | 6 +-
.../src/airflow/providers/apprise/__init__.py | 2 +-
.../providers/apprise/notifications/apprise.py | 4 +-
providers/arangodb/README.rst | 6 +-
providers/arangodb/docs/changelog.rst | 26 +
providers/arangodb/docs/index.rst | 6 +-
providers/arangodb/provider.yaml | 3 +-
providers/arangodb/pyproject.toml | 6 +-
.../src/airflow/providers/arangodb/__init__.py | 2 +-
.../providers/arangodb/operators/arangodb.py | 7 +-
.../airflow/providers/arangodb/sensors/arangodb.py | 5 +-
providers/asana/README.rst | 6 +-
providers/asana/docs/changelog.rst | 17 +
providers/asana/docs/index.rst | 6 +-
providers/asana/provider.yaml | 4 +-
providers/asana/pyproject.toml | 6 +-
.../asana/src/airflow/providers/asana/__init__.py | 2 +-
.../providers/asana/operators/asana_tasks.py | 9 +
providers/atlassian/jira/README.rst | 6 +-
providers/atlassian/jira/docs/changelog.rst | 15 +
providers/atlassian/jira/docs/index.rst | 6 +-
providers/atlassian/jira/provider.yaml | 4 +-
providers/atlassian/jira/pyproject.toml | 6 +-
.../airflow/providers/atlassian/jira/__init__.py | 2 +-
.../providers/atlassian/jira/notifications/jira.py | 10 +-
.../providers/atlassian/jira/operators/jira.py | 5 +-
.../providers/atlassian/jira/sensors/jira.py | 7 +-
providers/celery/README.rst | 6 +-
providers/celery/docs/changelog.rst | 24 +
providers/celery/docs/index.rst | 6 +-
providers/celery/provider.yaml | 3 +-
providers/celery/pyproject.toml | 6 +-
.../src/airflow/providers/celery/__init__.py | 2 +-
.../providers/celery/executors/celery_executor.py | 34 +-
.../celery/executors/celery_kubernetes_executor.py | 5 +-
.../src/airflow/providers/celery/version_compat.py | 2 +
.../integration/celery/test_celery_executor.py | 2 +-
.../unit/celery/executors/test_celery_executor.py | 8 +-
providers/cloudant/README.rst | 6 +-
providers/cloudant/docs/changelog.rst | 15 +
providers/cloudant/docs/index.rst | 6 +-
providers/cloudant/provider.yaml | 3 +-
providers/cloudant/pyproject.toml | 6 +-
.../src/airflow/providers/cloudant/__init__.py | 2 +-
providers/cncf/kubernetes/README.rst | 6 +-
providers/cncf/kubernetes/docs/changelog.rst | 36 +
providers/cncf/kubernetes/docs/index.rst | 6 +-
.../cncf/kubernetes/docs/kubernetes_executor.rst | 8 +-
providers/cncf/kubernetes/provider.yaml | 3 +-
providers/cncf/kubernetes/pyproject.toml | 6 +-
.../airflow/providers/cncf/kubernetes/__init__.py | 2 +-
.../kubernetes/executors/kubernetes_executor.py | 142 +-
.../executors/local_kubernetes_executor.py | 13 +-
.../providers/cncf/kubernetes/operators/job.py | 2 +
.../cncf/kubernetes/operators/resource.py | 2 +-
.../cncf/kubernetes/sensors/spark_kubernetes.py | 2 +-
.../providers/cncf/kubernetes/version_compat.py | 2 +
.../executors/test_kubernetes_executor.py | 87 +-
.../executors/test_local_kubernetes_executor.py | 19 +-
.../unit/cncf/kubernetes/utils/test_pod_manager.py | 4 +-
providers/cohere/README.rst | 6 +-
providers/cohere/docs/changelog.rst | 13 +
providers/cohere/docs/index.rst | 6 +-
providers/cohere/provider.yaml | 4 +-
providers/cohere/pyproject.toml | 6 +-
.../src/airflow/providers/cohere/__init__.py | 2 +-
.../providers/cohere/operators/embedding.py | 5 +-
.../airflow/providers/cohere/operators/rerank.py | 2 +-
providers/common/ai/AGENTS.md | 2 +-
providers/common/ai/README.rst | 22 +-
providers/common/ai/docs/agent_security.rst | 267 ++
providers/common/ai/docs/approval_gates.rst | 118 +
providers/common/ai/docs/changelog.rst | 123 +-
providers/common/ai/docs/choosing_a_toolset.rst | 611 ----
providers/common/ai/docs/classifier_models.rst | 34 +-
providers/common/ai/docs/code_mode.rst | 87 +
providers/common/ai/docs/concepts.rst | 136 +
providers/common/ai/docs/connections/langchain.rst | 25 +-
.../common/ai/docs/connections/llamaindex.rst | 54 +-
providers/common/ai/docs/connections/mcp.rst | 93 +-
.../common/ai/docs/connections/pydantic_ai.rst | 56 +-
.../ai/docs/connections/pydantic_ai_azure.rst | 33 +-
.../ai/docs/connections/pydantic_ai_bedrock.rst | 35 +-
.../ai/docs/connections/pydantic_ai_vertex.rst | 51 +-
providers/common/ai/docs/durable_execution.rst | 159 +
providers/common/ai/docs/end_to_end_pipelines.rst | 176 -
providers/common/ai/docs/examples.rst | 93 +-
providers/common/ai/docs/features.rst | 54 +
providers/common/ai/docs/guardrails.rst | 60 +
providers/common/ai/docs/hitl_review.rst | 84 +-
providers/common/ai/docs/hooks/index.rst | 62 -
providers/common/ai/docs/hooks/langchain.rst | 39 +-
providers/common/ai/docs/hooks/llamaindex.rst | 13 +-
providers/common/ai/docs/hooks/mcp.rst | 41 +-
providers/common/ai/docs/hooks/pydantic_ai.rst | 29 +-
providers/common/ai/docs/index.rst | 185 +-
providers/common/ai/docs/installation.rst | 87 +
providers/common/ai/docs/local_development.rst | 154 +
providers/common/ai/docs/message_history.rst | 60 +
providers/common/ai/docs/model_providers.rst | 148 +
providers/common/ai/docs/observability.rst | 2 +-
providers/common/ai/docs/operations.rst | 45 +
providers/common/ai/docs/operators/agent.rst | 410 +--
.../common/ai/docs/operators/document_loader.rst | 62 +-
providers/common/ai/docs/operators/index.rst | 69 +-
.../ai/docs/operators/llamaindex_embedding.rst | 4 +-
.../ai/docs/operators/llamaindex_retrieval.rst | 4 +-
providers/common/ai/docs/operators/llm.rst | 190 +-
providers/common/ai/docs/operators/llm_batch.rst | 6 +-
providers/common/ai/docs/operators/llm_branch.rst | 36 +-
.../common/ai/docs/operators/llm_file_analysis.rst | 8 +-
.../ai/docs/operators/llm_schema_compare.rst | 29 +-
providers/common/ai/docs/operators/llm_sql.rst | 8 +-
providers/common/ai/docs/provider_fallback.rst | 13 +-
providers/common/ai/docs/quickstart.rst | 123 +-
providers/common/ai/docs/rag_pipelines.rst | 45 +
.../__init__.py => common/ai/docs/redirects.txt} | 7 +
providers/common/ai/docs/retry_policies.rst | 350 +-
providers/common/ai/docs/sandbox.rst | 821 -----
providers/common/ai/docs/sandbox/backends.rst | 270 ++
providers/common/ai/docs/sandbox/configuration.rst | 339 ++
providers/common/ai/docs/sandbox/index.rst | 534 +++
providers/common/ai/docs/self_hosted_models.rst | 3 +-
providers/common/ai/docs/structured_output.rst | 67 +
providers/common/ai/docs/toolsets.rst | 1145 -------
providers/common/ai/docs/toolsets/datafusion.rst | 168 +
providers/common/ai/docs/toolsets/hook.rst | 137 +
providers/common/ai/docs/toolsets/index.rst | 285 ++
providers/common/ai/docs/toolsets/langchain.rst | 81 +
.../docs/toolsets/logging.rst} | 26 +-
.../common/ai/docs/toolsets/managed_agent.rst | 291 ++
providers/common/ai/docs/toolsets/mcp.rst | 252 ++
providers/common/ai/docs/toolsets/skills.rst | 169 +
providers/common/ai/docs/toolsets/sql.rst | 318 ++
providers/common/ai/docs/troubleshooting.rst | 167 +
.../ai/docs/use_cases/ask_questions_over_pdfs.rst | 104 +
.../ai/docs/use_cases/classify_reviews_in_bulk.rst | 89 +
.../ai/docs/use_cases/compare_10k_filings.rst | 118 +
.../ai/docs/use_cases/explain_revenue_anomaly.rst | 78 +
.../docs/use_cases/gate_loads_on_schema_drift.rst | 76 +
providers/common/ai/docs/use_cases/index.rst | 123 +
.../docs/use_cases/monthly_report_from_a_csv.rst | 103 +
.../docs/use_cases/research_agent_with_review.rst | 88 +
.../ai/docs/use_cases/route_pipeline_failures.rst | 88 +
.../ai/docs/use_cases/triage_support_tickets.rst | 72 +
.../ai/docs/use_cases/weekly_status_report.rst | 120 +
providers/common/ai/provider.yaml | 23 +-
providers/common/ai/pyproject.toml | 52 +-
.../ai/src/airflow/providers/common/ai/__init__.py | 2 +-
.../common/ai/example_dags/example_agent_spec.yaml | 2 +-
.../ai/example_dags/example_langchain_10k.py | 2 +-
.../ai/example_dags/example_langchain_hook.py | 6 +-
.../example_dags/example_langchain_tool_agent.py | 2 +-
.../example_langchain_toolset_bridge.py | 2 +-
.../ai/example_dags/example_llamaindex_10k.py | 2 +-
.../example_dags/example_llm_analysis_pipeline.py | 4 +-
.../common/ai/example_dags/example_llm_batch.py | 4 +-
.../common/ai/example_dags/example_llm_fallback.py | 4 +-
.../ai/example_dags/example_llm_retry_policy.py | 43 +-
.../ai/example_dags/example_llm_schema_compare.py | 10 +-
.../ai/example_dags/example_llm_survey_analysis.py | 4 +-
.../common/ai/example_dags/example_quickstart.py | 25 +-
.../providers/common/ai/get_provider_info.py | 20 +-
.../airflow/providers/common/ai/hooks/langchain.py | 19 +-
.../providers/common/ai/hooks/llamaindex.py | 6 +-
.../providers/common/ai/hooks/pydantic_ai.py | 20 +-
.../providers/common/ai/mixins/cancellable_run.py | 70 +
.../airflow/providers/common/ai/operators/agent.py | 175 +-
.../common/ai/operators/document_loader.py | 52 +-
.../airflow/providers/common/ai/operators/llm.py | 15 +-
.../providers/common/ai/operators/llm_branch.py | 2 +-
.../common/ai/operators/llm_file_analysis.py | 7 +-
.../common/ai/operators/llm_schema_compare.py | 2 +-
.../providers/common/ai/operators/llm_sql.py | 4 +-
.../airflow/providers/common/ai/policies/retry.py | 501 ++-
.../airflow/providers/common/ai/sandbox/base.py | 21 +-
.../airflow/providers/common/ai/sandbox/modal.py | 142 +-
.../src/airflow/providers/common/ai/sandbox/sbx.py | 8 +
.../providers/common/ai/toolsets/datafusion.py | 16 +-
.../airflow/providers/common/ai/toolsets/hook.py | 41 +-
.../airflow/providers/common/ai/toolsets/mcp.py | 9 +-
.../providers/common/ai/toolsets/sandbox.py | 31 +-
.../airflow/providers/common/ai/toolsets/sql.py | 10 +-
.../airflow/providers/common/ai/utils/decision.py | 5 +-
.../airflow/providers/common/ai/utils/toolsets.py | 64 +
.../common/ai/example_sandbox_toolset_modal.py | 71 +-
.../tests/unit/common/ai/decorators/test_agent.py | 17 +-
.../ai/tests/unit/common/ai/decorators/test_llm.py | 12 +-
.../unit/common/ai/decorators/test_llm_branch.py | 8 +-
.../common/ai/decorators/test_llm_file_analysis.py | 10 +-
.../unit/common/ai/decorators/test_llm_sql.py | 8 +-
.../tests/unit/common/ai/hooks/test_pydantic_ai.py | 77 +-
.../unit/common/ai/mixins/test_cancellable_run.py | 100 +
.../tests/unit/common/ai/operators/test_agent.py | 391 ++-
.../common/ai/operators/test_document_loader.py | 67 +
.../ai/tests/unit/common/ai/operators/test_llm.py | 33 +-
.../unit/common/ai/operators/test_llm_branch.py | 6 +-
.../common/ai/operators/test_llm_file_analysis.py | 40 +-
.../common/ai/operators/test_llm_schema_compare.py | 5 +-
.../tests/unit/common/ai/operators/test_llm_sql.py | 6 +-
.../ai/tests/unit/common/ai/policies/test_retry.py | 590 +++-
.../ai/tests/unit/common/ai/sandbox/test_modal.py | 183 +
.../ai/tests/unit/common/ai/sandbox/test_sbx.py | 8 +
.../unit/common/ai/toolsets/test_datafusion.py | 22 +-
.../ai/tests/unit/common/ai/toolsets/test_hook.py | 55 +
.../tests/unit/common/ai/toolsets/test_sandbox.py | 90 +-
.../ai/tests/unit/common/ai/utils/test_toolsets.py | 66 +
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 24 +
providers/common/compat/docs/index.rst | 6 +-
providers/common/compat/provider.yaml | 8 +-
providers/common/compat/pyproject.toml | 6 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
.../providers/common/compat/_retry_policy.py | 129 +
.../src/airflow/providers/common/compat/sdk.py | 30 +-
.../tests/unit/common/compat/test__retry_policy.py | 320 ++
providers/common/io/README.rst | 6 +-
providers/common/io/docs/changelog.rst | 25 +
providers/common/io/docs/index.rst | 6 +-
providers/common/io/provider.yaml | 4 +-
providers/common/io/pyproject.toml | 6 +-
.../io/src/airflow/providers/common/io/__init__.py | 2 +-
.../providers/common/io/operators/file_transfer.py | 2 +-
.../providers/common/io/state_store/backend.py | 4 +-
providers/common/messaging/README.rst | 6 +-
providers/common/messaging/docs/changelog.rst | 14 +
providers/common/messaging/docs/index.rst | 6 +-
providers/common/messaging/provider.yaml | 3 +-
providers/common/messaging/pyproject.toml | 6 +-
.../airflow/providers/common/messaging/__init__.py | 2 +-
providers/common/sql/README.rst | 6 +-
providers/common/sql/docs/changelog.rst | 31 +
providers/common/sql/docs/connections.rst | 152 +-
providers/common/sql/docs/dialects.rst | 8 +-
providers/common/sql/docs/index.rst | 6 +-
providers/common/sql/provider.yaml | 3 +-
providers/common/sql/pyproject.toml | 6 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
.../providers/common/sql/datafusion/engine.py | 14 +-
.../airflow/providers/common/sql/sensors/sql.py | 2 +-
.../unit/common/sql/datafusion/test_engine.py | 22 +
providers/databricks/README.rst | 6 +-
providers/databricks/docs/changelog.rst | 24 +
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 | 3 +
providers/datadog/README.rst | 6 +-
providers/datadog/docs/changelog.rst | 17 +
providers/datadog/docs/index.rst | 6 +-
providers/datadog/provider.yaml | 4 +-
providers/datadog/pyproject.toml | 6 +-
.../src/airflow/providers/datadog/__init__.py | 2 +-
.../airflow/providers/datadog/sensors/datadog.py | 4 +-
providers/dbt/cloud/README.rst | 6 +-
providers/dbt/cloud/docs/changelog.rst | 25 +
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 +-
.../src/airflow/providers/dbt/cloud/hooks/dbt.py | 26 +
.../airflow/providers/dbt/cloud/operators/dbt.py | 6 +-
.../src/airflow/providers/dbt/cloud/sensors/dbt.py | 16 +-
.../cloud/tests/unit/dbt/cloud/hooks/test_dbt.py | 33 +
.../tests/unit/dbt/cloud/operators/test_dbt.py | 27 +-
.../cloud/tests/unit/dbt/cloud/sensors/test_dbt.py | 37 +-
providers/dingding/README.rst | 6 +-
providers/dingding/docs/changelog.rst | 18 +
providers/dingding/docs/index.rst | 6 +-
providers/dingding/provider.yaml | 4 +-
providers/dingding/pyproject.toml | 6 +-
.../src/airflow/providers/dingding/__init__.py | 2 +-
.../providers/dingding/operators/dingding.py | 5 +-
providers/docker/README.rst | 6 +-
providers/docker/docs/changelog.rst | 16 +
providers/docker/docs/index.rst | 6 +-
providers/docker/provider.yaml | 4 +-
providers/docker/pyproject.toml | 6 +-
.../src/airflow/providers/docker/__init__.py | 2 +-
.../airflow/providers/docker/operators/docker.py | 1 +
providers/duckdb/README.rst | 34 +-
providers/duckdb/docs/.latest-doc-only-change.txt | 1 -
providers/duckdb/docs/index.rst | 7 +
providers/duckdb/provider.yaml | 2 +-
providers/edge3/README.rst | 6 +-
providers/edge3/docs/changelog.rst | 33 +
providers/edge3/docs/index.rst | 6 +-
providers/edge3/provider.yaml | 83 +-
providers/edge3/pyproject.toml | 6 +-
.../edge3/src/airflow/providers/edge3/__init__.py | 2 +-
.../providers/edge3/executors/edge_executor.py | 9 +-
.../airflow/providers/edge3/get_provider_info.py | 42 +
.../src/airflow/providers/edge3/version_compat.py | 2 +
.../src/airflow/providers/edge3/worker_api/auth.py | 195 +-
.../unit/edge3/executors/test_edge_executor.py | 2 +-
.../edge3/tests/unit/edge3/worker_api/test_auth.py | 358 +-
.../providers/elasticsearch/log/es_response.py | 6 +-
.../unit/elasticsearch/log/test_es_response.py | 13 +
providers/exasol/README.rst | 6 +-
providers/exasol/docs/changelog.rst | 13 +
providers/exasol/docs/index.rst | 6 +-
providers/exasol/provider.yaml | 4 +-
providers/exasol/pyproject.toml | 6 +-
.../src/airflow/providers/exasol/__init__.py | 2 +-
.../airflow/providers/exasol/operators/exasol.py | 2 +-
providers/fab/README.rst | 8 +-
providers/fab/docs/auth-manager/access-control.rst | 8 +
providers/fab/docs/changelog.rst | 41 +
providers/fab/docs/index.rst | 8 +-
providers/fab/provider.yaml | 3 +-
providers/fab/pyproject.toml | 8 +-
.../providers/3rd-party-licenses/LICENSES-ui.txt | 8 +-
.../fab/src/airflow/providers/fab/__init__.py | 2 +-
.../fab/auth_manager/security_manager/override.py | 9 +-
.../providers/fab/auth_manager/views/user.py | 20 +
.../fab/src/airflow/providers/fab/www/package.json | 18 +-
.../src/airflow/providers/fab/www/pnpm-lock.yaml | 1200 ++++---
.../appbuilder/general/model/user_edit.html | 29 +
.../tests/unit/fab/auth_manager/test_security.py | 23 +
.../fab/www/views/test_views_custom_user_views.py | 74 +-
providers/ftp/README.rst | 6 +-
providers/ftp/docs/changelog.rst | 17 +
providers/ftp/docs/index.rst | 6 +-
providers/ftp/provider.yaml | 4 +-
providers/ftp/pyproject.toml | 6 +-
.../ftp/src/airflow/providers/ftp/__init__.py | 2 +-
.../ftp/src/airflow/providers/ftp/hooks/ftp.py | 17 +-
.../ftp/src/airflow/providers/ftp/operators/ftp.py | 2 +-
.../ftp/src/airflow/providers/ftp/sensors/ftp.py | 5 +-
providers/ftp/tests/unit/ftp/hooks/test_ftp.py | 32 +
providers/git/README.rst | 6 +-
providers/git/docs/changelog.rst | 13 +
providers/git/docs/index.rst | 6 +-
providers/git/provider.yaml | 3 +-
providers/git/pyproject.toml | 6 +-
.../git/src/airflow/providers/git/__init__.py | 2 +-
providers/github/README.rst | 6 +-
providers/github/docs/changelog.rst | 23 +
providers/github/docs/index.rst | 6 +-
providers/github/provider.yaml | 4 +-
providers/github/pyproject.toml | 6 +-
.../src/airflow/providers/github/__init__.py | 2 +-
.../airflow/providers/github/operators/github.py | 7 +-
.../src/airflow/providers/github/sensors/github.py | 9 +-
providers/google/README.rst | 6 +-
providers/google/docs/changelog.rst | 79 +
providers/google/docs/index.rst | 6 +-
.../docs/integration-logos/Cloud-Monitoring.png | Bin 0 -> 3058 bytes
.../integration-logos/Google-Cloud-Stackdriver.png | Bin 8275 -> 0 bytes
.../logging/{stackdriver.rst => cloud_logging.rst} | 37 +-
providers/google/docs/message-queues/index.rst | 24 +-
.../docs/operators/cloud/cloud_monitoring.rst | 234 ++
providers/google/docs/operators/cloud/pubsub.rst | 7 +
.../google/docs/operators/cloud/stackdriver.rst | 227 --
providers/google/docs/redirects.txt | 2 +
providers/google/provider.yaml | 27 +-
providers/google/pyproject.toml | 6 +-
.../src/airflow/providers/google/__init__.py | 2 +-
.../airflow/providers/google/ads/operators/ads.py | 2 +
.../providers/google/ads/transfers/ads_to_gcs.py | 2 +
.../providers/google/cloud/hooks/bigquery.py | 6 +-
.../hooks/{stackdriver.py => cloud_monitoring.py} | 48 +-
.../providers/google/cloud/hooks/stackdriver.py | 578 +---
.../links/{stackdriver.py => cloud_monitoring.py} | 20 +-
.../providers/google/cloud/links/stackdriver.py | 54 +-
...sk_handler.py => cloud_logging_task_handler.py} | 38 +-
.../google/cloud/log/stackdriver_task_handler.py | 579 +---
.../providers/google/cloud/operators/bigquery.py | 4 +
.../providers/google/cloud/operators/bigtable.py | 6 +
.../google/cloud/operators/cloud_build.py | 12 +-
.../google/cloud/operators/cloud_composer.py | 8 +
.../{stackdriver.py => cloud_monitoring.py} | 182 +-
.../providers/google/cloud/operators/cloud_sql.py | 2 +
.../operators/cloud_storage_transfer_service.py | 19 +-
.../providers/google/cloud/operators/compute.py | 2 +
.../providers/google/cloud/operators/dataflow.py | 9 +-
.../providers/google/cloud/operators/dataform.py | 33 +-
.../providers/google/cloud/operators/datafusion.py | 17 +-
.../providers/google/cloud/operators/dataplex.py | 51 +-
.../providers/google/cloud/operators/dataprep.py | 18 +-
.../google/cloud/operators/dataproc_metastore.py | 10 +
.../providers/google/cloud/operators/datastore.py | 10 +
.../providers/google/cloud/operators/functions.py | 20 +-
.../providers/google/cloud/operators/gen_ai.py | 71 +-
.../google/cloud/operators/kubernetes_engine.py | 25 +-
.../providers/google/cloud/operators/looker.py | 3 +
.../providers/google/cloud/operators/pubsub.py | 44 +-
.../google/cloud/operators/stackdriver.py | 964 +-----
.../google/cloud/operators/vertex_ai/auto_ml.py | 30 +-
.../operators/vertex_ai/batch_prediction_job.py | 15 +-
.../google/cloud/operators/vertex_ai/custom_job.py | 31 +-
.../google/cloud/operators/vertex_ai/dataset.py | 44 +-
.../cloud/operators/vertex_ai/endpoint_service.py | 46 +-
.../operators/vertex_ai/experiment_service.py | 6 +
.../cloud/operators/vertex_ai/feature_store.py | 8 +
.../cloud/operators/vertex_ai/generative_model.py | 1 +
.../vertex_ai/hyperparameter_tuning_job.py | 18 +-
.../cloud/operators/vertex_ai/model_service.py | 51 +-
.../cloud/operators/vertex_ai/pipeline_job.py | 4 +
.../providers/google/cloud/operators/workflows.py | 18 +-
.../providers/google/cloud/sensors/bigquery.py | 4 +
.../providers/google/cloud/sensors/bigquery_dts.py | 23 +-
.../providers/google/cloud/sensors/bigtable.py | 1 +
.../google/cloud/sensors/cloud_composer.py | 91 +-
.../providers/google/cloud/sensors/cloud_sql.py | 1 +
.../providers/google/cloud/sensors/dataflow.py | 20 +-
.../providers/google/cloud/sensors/dataform.py | 10 +-
.../providers/google/cloud/sensors/datafusion.py | 5 +-
.../providers/google/cloud/sensors/dataplex.py | 6 +-
.../providers/google/cloud/sensors/dataprep.py | 5 +-
.../providers/google/cloud/sensors/dataproc.py | 4 +-
.../google/cloud/sensors/dataproc_metastore.py | 1 +
.../airflow/providers/google/cloud/sensors/gcs.py | 4 +
.../providers/google/cloud/sensors/looker.py | 2 +-
.../providers/google/cloud/sensors/pubsub.py | 34 +-
.../cloud/sensors/vertex_ai/feature_store.py | 2 +-
.../providers/google/cloud/sensors/workflows.py | 2 +-
.../google/cloud/transfers/adls_to_gcs.py | 2 +
.../google/cloud/transfers/azure_blob_to_gcs.py | 2 +
.../cloud/transfers/azure_fileshare_to_gcs.py | 2 +
.../google/cloud/transfers/bigquery_to_bigquery.py | 1 +
.../google/cloud/transfers/bigquery_to_gcs.py | 1 +
.../google/cloud/transfers/bigquery_to_mssql.py | 1 +
.../google/cloud/transfers/bigquery_to_mysql.py | 7 +-
.../google/cloud/transfers/bigquery_to_postgres.py | 3 +
.../google/cloud/transfers/bigquery_to_sql.py | 1 +
.../google/cloud/transfers/calendar_to_gcs.py | 1 +
.../google/cloud/transfers/cassandra_to_gcs.py | 2 +
.../google/cloud/transfers/facebook_ads_to_gcs.py | 1 +
.../google/cloud/transfers/gcs_to_bigquery.py | 1 +
.../providers/google/cloud/transfers/gcs_to_gcs.py | 1 +
.../google/cloud/transfers/gcs_to_local.py | 1 +
.../google/cloud/transfers/gcs_to_sftp.py | 2 +
.../google/cloud/transfers/gdrive_to_gcs.py | 1 +
.../google/cloud/transfers/gdrive_to_local.py | 1 +
.../google/cloud/transfers/local_to_gcs.py | 1 +
.../google/cloud/transfers/mongo_to_gcs.py | 2 +
.../google/cloud/transfers/mssql_to_gcs.py | 2 +
.../google/cloud/transfers/mysql_to_gcs.py | 3 +
.../google/cloud/transfers/oracle_to_gcs.py | 3 +
.../google/cloud/transfers/postgres_to_gcs.py | 3 +
.../google/cloud/transfers/presto_to_gcs.py | 3 +
.../providers/google/cloud/transfers/s3_to_gcs.py | 2 +
.../google/cloud/transfers/salesforce_to_gcs.py | 2 +
.../google/cloud/transfers/sftp_to_gcs.py | 2 +
.../google/cloud/transfers/sheets_to_gcs.py | 1 +
.../providers/google/cloud/transfers/sql_to_gcs.py | 1 +
.../google/cloud/transfers/trino_to_gcs.py | 2 +
.../providers/google/cloud/triggers/pubsub.py | 24 +-
.../src/airflow/providers/google/common/consts.py | 8 +
.../google/event_scheduling/events/pubsub.py | 27 +-
.../airflow/providers/google/get_provider_info.py | 26 +-
.../providers/google/leveldb/operators/leveldb.py | 3 +
.../marketing_platform/operators/bid_manager.py | 4 +
.../operators/campaign_manager.py | 2 +
.../marketing_platform/operators/display_video.py | 2 +
.../marketing_platform/sensors/bid_manager.py | 1 +
.../marketing_platform/sensors/campaign_manager.py | 1 +
.../marketing_platform/sensors/display_video.py | 1 +
.../providers/google/suite/operators/sheets.py | 1 +
.../providers/google/suite/sensors/drive.py | 1 +
.../google/suite/transfers/gcs_to_gdrive.py | 1 +
.../google/suite/transfers/gcs_to_sheets.py | 1 +
.../google/suite/transfers/local_to_drive.py | 1 +
.../google/suite/transfers/sql_to_sheets.py | 2 +
.../google/cloud/cloud_monitoring}/__init__.py | 0
.../example_cloud_monitoring.py} | 99 +-
.../system/google/cloud/pubsub/example_pubsub.py | 5 +
.../cloud/pubsub/example_pubsub_deferrable.py | 1 +
.../example_event_schedule_pubsub.py | 1 +
...est_stackdriver.py => test_cloud_monitoring.py} | 110 +-
.../tests/unit/google/cloud/hooks/test_dataprep.py | 4 +-
.../unit/google/cloud/hooks/test_stackdriver.py | 426 +--
.../google/cloud/links/test_cloud_monitoring.py | 27 +-
.../unit/google/cloud/links/test_stackdriver.py | 51 +
...ndler.py => test_cloud_logging_task_handler.py} | 290 +-
.../cloud/log/test_stackdriver_task_handler.py | 890 +----
.../google/cloud/operators/test_cloud_build.py | 22 +
...est_stackdriver.py => test_cloud_monitoring.py} | 175 +-
.../test_cloud_storage_transfer_service.py | 27 +-
.../unit/google/cloud/operators/test_functions.py | 121 +-
.../unit/google/cloud/operators/test_pubsub.py | 47 +-
.../google/cloud/operators/test_stackdriver.py | 329 +-
.../unit/google/cloud/sensors/test_bigquery_dts.py | 34 +
.../google/cloud/sensors/test_cloud_composer.py | 202 ++
.../tests/unit/google/cloud/sensors/test_pubsub.py | 45 +-
.../unit/google/cloud/triggers/test_pubsub.py | 66 +
providers/grpc/README.rst | 6 +-
providers/grpc/docs/changelog.rst | 17 +
providers/grpc/docs/index.rst | 6 +-
providers/grpc/provider.yaml | 4 +-
providers/grpc/pyproject.toml | 6 +-
.../grpc/src/airflow/providers/grpc/__init__.py | 2 +-
.../src/airflow/providers/grpc/operators/grpc.py | 2 +-
providers/hashicorp/README.rst | 6 +-
providers/hashicorp/docs/changelog.rst | 13 +
providers/hashicorp/docs/index.rst | 6 +-
providers/hashicorp/provider.yaml | 3 +-
providers/hashicorp/pyproject.toml | 6 +-
.../src/airflow/providers/hashicorp/__init__.py | 2 +-
providers/http/README.rst | 15 +-
providers/http/docs/changelog.rst | 19 +
providers/http/docs/connections/http.rst | 26 +-
providers/http/docs/index.rst | 23 +-
providers/http/provider.yaml | 14 +-
providers/http/pyproject.toml | 13 +-
.../http/src/airflow/providers/http/__init__.py | 2 +-
.../http/src/airflow/providers/http/exceptions.py | 4 +
.../airflow/providers/http/get_provider_info.py | 8 +-
.../http/src/airflow/providers/http/hooks/http.py | 218 +-
.../src/airflow/providers/http/operators/http.py | 3 +-
.../src/airflow/providers/http/sensors/http.py | 4 +-
providers/http/tests/unit/http/hooks/test_http.py | 469 ++-
.../http/tests/unit/http/operators/test_http.py | 10 +
.../http/tests/unit/http/sensors/test_http.py | 10 +
providers/ibm/db2/provider.yaml | 2 +-
providers/ibm/mq/docs/message-queues.rst | 17 +-
providers/ibm/mq/provider.yaml | 2 +-
.../mq/src/airflow/providers/ibm/mq/queues/mq.py | 21 +-
providers/imap/README.rst | 6 +-
providers/imap/docs/changelog.rst | 16 +
providers/imap/docs/index.rst | 6 +-
providers/imap/provider.yaml | 4 +-
providers/imap/pyproject.toml | 6 +-
.../imap/src/airflow/providers/imap/__init__.py | 2 +-
.../providers/imap/sensors/imap_attachment.py | 2 +-
providers/influxdb/README.rst | 19 +-
providers/influxdb/docs/changelog.rst | 14 +
providers/influxdb/docs/index.rst | 20 +-
providers/influxdb/docs/operators/index.rst | 22 +
providers/influxdb/docs/sensors/index.rst | 40 +
providers/influxdb/provider.yaml | 13 +-
providers/influxdb/pyproject.toml | 13 +-
.../src/airflow/providers/influxdb/__init__.py | 2 +-
.../providers/influxdb/get_provider_info.py | 12 +
.../airflow/providers/influxdb/hooks/influxdb3.py | 34 +-
.../providers/influxdb/operators/influxdb.py | 5 +-
.../providers/influxdb/operators/influxdb3.py | 44 +-
.../providers/influxdb/sensors}/__init__.py | 0
.../providers/influxdb/sensors/influxdb3.py | 108 +
.../providers/influxdb/triggers}/__init__.py | 0
.../providers/influxdb/triggers/influxdb3.py | 128 +
.../src/airflow/providers/influxdb/utils.py | 46 +
.../tests/system/influxdb/example_influxdb3.py | 23 +-
.../tests/unit/influxdb/hooks/test_influxdb3.py | 50 +-
.../unit/influxdb/operators/test_influxdb3.py | 79 +-
.../tests/unit/influxdb/sensors}/__init__.py | 0
.../tests/unit/influxdb/sensors/test_influxdb3.py | 170 +
.../influxdb/tests/unit/influxdb/test_utils.py | 62 +
.../tests/unit/influxdb/triggers}/__init__.py | 0
.../tests/unit/influxdb/triggers/test_influxdb3.py | 202 ++
providers/keycloak/README.rst | 6 +-
providers/keycloak/docs/changelog.rst | 20 +
providers/keycloak/docs/index.rst | 6 +-
providers/keycloak/provider.yaml | 3 +-
providers/keycloak/pyproject.toml | 6 +-
.../src/airflow/providers/keycloak/__init__.py | 2 +-
.../unit/keycloak/auth_manager/routes/conftest.py | 2 +-
providers/microsoft/azure/README.rst | 6 +-
providers/microsoft/azure/docs/changelog.rst | 27 +
providers/microsoft/azure/docs/index.rst | 6 +-
.../microsoft/azure/docs/message-queues/index.rst | 24 +-
providers/microsoft/azure/provider.yaml | 3 +-
providers/microsoft/azure/pyproject.toml | 6 +-
.../airflow/providers/microsoft/azure/__init__.py | 2 +-
.../providers/microsoft/azure/hooks/msgraph.py | 4 +-
.../microsoft/azure/notifications/msgraph.py | 1 +
.../providers/microsoft/azure/operators/adls.py | 12 +-
.../providers/microsoft/azure/operators/adx.py | 2 +-
.../providers/microsoft/azure/operators/asb.py | 38 +-
.../providers/microsoft/azure/operators/batch.py | 1 +
.../providers/microsoft/azure/operators/compute.py | 2 +-
.../azure/operators/container_instances.py | 10 +-
.../providers/microsoft/azure/operators/cosmos.py | 2 +-
.../microsoft/azure/operators/wasb_delete_blob.py | 2 +-
.../providers/microsoft/azure/queues/asb.py | 28 +-
.../providers/microsoft/azure/sensors/compute.py | 2 +-
.../providers/microsoft/azure/sensors/cosmos.py | 7 +-
.../providers/microsoft/azure/sensors/wasb.py | 4 +-
.../microsoft/azure/transfers/gcs_to_wasb.py | 2 +
.../microsoft/azure/transfers/local_to_adls.py | 2 +-
.../microsoft/azure/transfers/local_to_wasb.py | 2 +-
.../azure/transfers/oracle_to_azure_data_lake.py | 8 +-
.../microsoft/azure/transfers/s3_to_wasb.py | 2 +
.../microsoft/azure/transfers/sftp_to_wasb.py | 8 +-
.../unit/microsoft/azure/hooks/test_msgraph.py | 39 +-
.../unit/microsoft/azure/triggers/test_powerbi.py | 6 +-
.../unit/microsoft/azure/triggers/test_wasb.py | 2 +-
.../mssql/docs/.latest-doc-only-change.txt | 2 +-
providers/microsoft/psrp/README.rst | 6 +-
providers/microsoft/psrp/docs/changelog.rst | 17 +-
providers/microsoft/psrp/docs/index.rst | 6 +-
providers/microsoft/psrp/provider.yaml | 3 +-
providers/microsoft/psrp/pyproject.toml | 6 +-
.../airflow/providers/microsoft/psrp/__init__.py | 2 +-
providers/microsoft/winrm/README.rst | 6 +-
providers/microsoft/winrm/docs/changelog.rst | 16 +
providers/microsoft/winrm/docs/index.rst | 6 +-
providers/microsoft/winrm/provider.yaml | 4 +-
providers/microsoft/winrm/pyproject.toml | 6 +-
.../airflow/providers/microsoft/winrm/__init__.py | 2 +-
.../providers/microsoft/winrm/operators/winrm.py | 1 +
providers/mongo/README.rst | 6 +-
providers/mongo/docs/changelog.rst | 17 +
providers/mongo/docs/index.rst | 6 +-
providers/mongo/provider.yaml | 4 +-
providers/mongo/pyproject.toml | 6 +-
.../mongo/src/airflow/providers/mongo/__init__.py | 2 +-
.../src/airflow/providers/mongo/sensors/mongo.py | 2 +-
providers/mysql/README.rst | 6 +-
providers/mysql/docs/changelog.rst | 13 +
providers/mysql/docs/index.rst | 6 +-
providers/mysql/provider.yaml | 4 +-
providers/mysql/pyproject.toml | 6 +-
.../mysql/src/airflow/providers/mysql/__init__.py | 2 +-
.../providers/mysql/transfers/presto_to_mysql.py | 8 +-
.../providers/mysql/transfers/s3_to_mysql.py | 2 +
.../providers/mysql/transfers/trino_to_mysql.py | 8 +-
.../providers/mysql/transfers/vertica_to_mysql.py | 9 +-
providers/neo4j/README.rst | 6 +-
providers/neo4j/docs/changelog.rst | 14 +
providers/neo4j/docs/index.rst | 6 +-
providers/neo4j/provider.yaml | 4 +-
providers/neo4j/pyproject.toml | 6 +-
.../neo4j/src/airflow/providers/neo4j/__init__.py | 2 +-
.../src/airflow/providers/neo4j/operators/neo4j.py | 2 +-
.../src/airflow/providers/neo4j/sensors/neo4j.py | 2 +-
providers/openai/README.rst | 6 +-
providers/openai/docs/changelog.rst | 38 +
providers/openai/docs/index.rst | 6 +-
providers/openai/provider.yaml | 3 +-
providers/openai/pyproject.toml | 6 +-
.../src/airflow/providers/openai/__init__.py | 2 +-
.../airflow/providers/openai/operators/openai.py | 15 +-
providers/openlineage/README.rst | 6 +-
providers/openlineage/docs/changelog.rst | 20 +
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 | 13 +
providers/opensearch/docs/index.rst | 6 +-
providers/opensearch/provider.yaml | 4 +-
providers/opensearch/pyproject.toml | 6 +-
.../src/airflow/providers/opensearch/__init__.py | 2 +-
.../providers/opensearch/log/os_response.py | 6 +-
.../providers/opensearch/operators/opensearch.py | 6 +-
.../tests/unit/opensearch/log/test_os_response.py | 15 +
providers/opsgenie/README.rst | 6 +-
providers/opsgenie/docs/changelog.rst | 16 +
providers/opsgenie/docs/index.rst | 6 +-
providers/opsgenie/provider.yaml | 4 +-
providers/opsgenie/pyproject.toml | 6 +-
.../src/airflow/providers/opsgenie/__init__.py | 2 +-
.../providers/opsgenie/notifications/opsgenie.py | 5 +-
.../providers/opsgenie/operators/opsgenie.py | 17 +-
providers/oracle/README.rst | 6 +-
providers/oracle/docs/changelog.rst | 13 +
providers/oracle/docs/index.rst | 6 +-
providers/oracle/provider.yaml | 4 +-
providers/oracle/pyproject.toml | 6 +-
.../src/airflow/providers/oracle/__init__.py | 2 +-
.../airflow/providers/oracle/operators/oracle.py | 1 +
.../providers/oracle/transfers/oracle_to_oracle.py | 7 +-
providers/pagerduty/README.rst | 6 +-
providers/pagerduty/docs/changelog.rst | 13 +
providers/pagerduty/docs/index.rst | 6 +-
providers/pagerduty/provider.yaml | 4 +-
providers/pagerduty/pyproject.toml | 6 +-
.../src/airflow/providers/pagerduty/__init__.py | 2 +-
.../providers/pagerduty/notifications/pagerduty.py | 1 +
providers/pinecone/README.rst | 6 +-
providers/pinecone/docs/changelog.rst | 15 +
providers/pinecone/docs/index.rst | 6 +-
providers/pinecone/provider.yaml | 4 +-
providers/pinecone/pyproject.toml | 6 +-
.../src/airflow/providers/pinecone/__init__.py | 2 +-
.../providers/pinecone/operators/pinecone.py | 6 +-
providers/postgres/README.rst | 6 +-
providers/postgres/docs/changelog.rst | 19 +
providers/postgres/docs/connections/postgres.rst | 9 +
providers/postgres/docs/index.rst | 6 +-
providers/postgres/provider.yaml | 4 +-
providers/postgres/pyproject.toml | 6 +-
.../src/airflow/providers/postgres/__init__.py | 2 +-
.../airflow/providers/postgres/hooks/postgres.py | 30 +-
.../tests/unit/postgres/hooks/test_postgres.py | 87 +
providers/presto/README.rst | 6 +-
providers/presto/docs/changelog.rst | 14 +
providers/presto/docs/index.rst | 6 +-
providers/presto/provider.yaml | 4 +-
providers/presto/pyproject.toml | 6 +-
.../src/airflow/providers/presto/__init__.py | 2 +-
.../providers/presto/transfers/gcs_to_presto.py | 2 +
providers/qdrant/README.rst | 6 +-
providers/qdrant/docs/changelog.rst | 16 +
providers/qdrant/docs/index.rst | 6 +-
providers/qdrant/provider.yaml | 4 +-
providers/qdrant/pyproject.toml | 6 +-
.../src/airflow/providers/qdrant/__init__.py | 2 +-
.../airflow/providers/qdrant/operators/qdrant.py | 1 +
providers/redis/README.rst | 6 +-
providers/redis/docs/changelog.rst | 19 +
providers/redis/docs/index.rst | 6 +-
providers/redis/docs/message-queues.rst | 19 +-
providers/redis/provider.yaml | 3 +-
providers/redis/pyproject.toml | 6 +-
.../redis/src/airflow/providers/redis/__init__.py | 2 +-
.../src/airflow/providers/redis/queues/redis.py | 23 +-
providers/salesforce/README.rst | 6 +-
providers/salesforce/docs/changelog.rst | 14 +
providers/salesforce/docs/index.rst | 6 +-
providers/salesforce/provider.yaml | 4 +-
providers/salesforce/pyproject.toml | 6 +-
.../src/airflow/providers/salesforce/__init__.py | 2 +-
.../airflow/providers/salesforce/operators/bulk.py | 2 +-
.../salesforce/operators/salesforce_apex_rest.py | 3 +
.../tests/unit/salesforce/operators/test_bulk.py | 7 +-
providers/samba/README.rst | 6 +-
providers/samba/docs/changelog.rst | 13 +
providers/samba/docs/index.rst | 6 +-
providers/samba/provider.yaml | 4 +-
providers/samba/pyproject.toml | 6 +-
.../samba/src/airflow/providers/samba/__init__.py | 2 +-
.../providers/samba/transfers/gcs_to_samba.py | 2 +
providers/segment/README.rst | 6 +-
providers/segment/docs/changelog.rst | 15 +
providers/segment/docs/index.rst | 6 +-
providers/segment/provider.yaml | 4 +-
providers/segment/pyproject.toml | 6 +-
.../src/airflow/providers/segment/__init__.py | 2 +-
.../segment/operators/segment_track_event.py | 2 +-
providers/sftp/README.rst | 6 +-
providers/sftp/docs/changelog.rst | 22 +
providers/sftp/docs/index.rst | 6 +-
providers/sftp/provider.yaml | 3 +-
providers/sftp/pyproject.toml | 6 +-
.../sftp/src/airflow/providers/sftp/__init__.py | 2 +-
.../sftp/src/airflow/providers/sftp/hooks/sftp.py | 6 +-
.../src/airflow/providers/sftp/operators/sftp.py | 2 +-
.../sftp/src/airflow/providers/sftp/pools/sftp.py | 32 +-
.../src/airflow/providers/sftp/sensors/sftp.py | 1 +
providers/sftp/tests/unit/sftp/hooks/test_sftp.py | 28 +
providers/sftp/tests/unit/sftp/pools/test_sftp.py | 76 +-
providers/sftp/tests/unit/sftp/test_exceptions.py | 82 +
providers/slack/README.rst | 6 +-
providers/slack/docs/changelog.rst | 15 +
providers/slack/docs/index.rst | 6 +-
providers/slack/provider.yaml | 4 +-
providers/slack/pyproject.toml | 6 +-
.../slack/src/airflow/providers/slack/__init__.py | 2 +-
.../airflow/providers/slack/notifications/slack.py | 2 +-
.../src/airflow/providers/slack/operators/slack.py | 14 +-
.../providers/slack/operators/slack_webhook.py | 1 +
.../providers/slack/transfers/base_sql_to_slack.py | 4 +-
.../providers/slack/transfers/sql_to_slack.py | 2 +
.../slack/transfers/sql_to_slack_webhook.py | 2 +-
.../unit/slack/operators/test_slack_webhook.py | 1 +
providers/smtp/README.rst | 6 +-
providers/smtp/docs/changelog.rst | 13 +
providers/smtp/docs/index.rst | 6 +-
providers/smtp/provider.yaml | 4 +-
providers/smtp/pyproject.toml | 6 +-
.../smtp/src/airflow/providers/smtp/__init__.py | 2 +-
.../airflow/providers/smtp/notifications/smtp.py | 1 +
providers/snowflake/README.rst | 6 +-
providers/snowflake/docs/changelog.rst | 27 +
providers/snowflake/docs/index.rst | 6 +-
providers/snowflake/provider.yaml | 3 +-
providers/snowflake/pyproject.toml | 6 +-
.../src/airflow/providers/snowflake/__init__.py | 2 +-
.../providers/snowflake/decorators/snowpark.py | 2 +
.../snowflake/operators/snowflake_cortex_agent.py | 1 +
.../providers/snowflake/operators/snowpark.py | 2 +
.../snowflake/transfers/copy_into_snowflake.py | 5 +-
.../unit/snowflake/hooks/test_snowflake_sql_api.py | 8 +-
.../operators/test_snowflake_cortex_agent.py | 1 +
providers/ssh/README.rst | 6 +-
providers/ssh/docs/changelog.rst | 15 +
providers/ssh/docs/index.rst | 6 +-
providers/ssh/provider.yaml | 4 +-
providers/ssh/pyproject.toml | 6 +-
.../ssh/src/airflow/providers/ssh/__init__.py | 2 +-
.../ssh/src/airflow/providers/ssh/operators/ssh.py | 2 +-
.../providers/ssh/operators/ssh_remote_job.py | 8 +-
providers/standard/README.rst | 6 +-
providers/standard/docs/changelog.rst | 29 +
providers/standard/docs/index.rst | 6 +-
providers/standard/provider.yaml | 3 +-
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../providers/standard/sensors/filesystem.py | 5 +-
.../tests/unit/standard/decorators/test_python.py | 17 +-
.../tests/unit/standard/operators/test_python.py | 380 +--
providers/tableau/README.rst | 6 +-
providers/tableau/docs/changelog.rst | 13 +
providers/tableau/docs/index.rst | 6 +-
providers/tableau/provider.yaml | 4 +-
providers/tableau/pyproject.toml | 6 +-
.../src/airflow/providers/tableau/__init__.py | 2 +-
.../airflow/providers/tableau/operators/tableau.py | 1 +
.../airflow/providers/tableau/sensors/tableau.py | 5 +-
providers/telegram/README.rst | 6 +-
providers/telegram/docs/changelog.rst | 19 +
providers/telegram/docs/index.rst | 6 +-
providers/telegram/provider.yaml | 3 +-
providers/telegram/pyproject.toml | 6 +-
.../src/airflow/providers/telegram/__init__.py | 2 +-
providers/teradata/README.rst | 6 +-
providers/teradata/docs/changelog.rst | 20 +
providers/teradata/docs/index.rst | 6 +-
providers/teradata/provider.yaml | 3 +-
providers/teradata/pyproject.toml | 6 +-
.../src/airflow/providers/teradata/__init__.py | 2 +-
.../airflow/providers/teradata/operators/bteq.py | 6 +-
.../providers/teradata/operators/teradata.py | 2 +
.../airflow/providers/teradata/operators/tpt.py | 6 +-
.../teradata/transfers/azure_blob_to_teradata.py | 7 +-
.../providers/teradata/transfers/s3_to_teradata.py | 2 +-
.../teradata/transfers/teradata_to_teradata.py | 2 +
.../teradata/example_teradata_compute_cluster.py | 50 +-
.../tests/unit/teradata/operators/test_bteq.py | 2 +-
providers/trino/README.rst | 6 +-
providers/trino/docs/changelog.rst | 14 +
providers/trino/docs/index.rst | 6 +-
providers/trino/provider.yaml | 4 +-
providers/trino/pyproject.toml | 6 +-
.../trino/src/airflow/providers/trino/__init__.py | 2 +-
.../providers/trino/transfers/gcs_to_trino.py | 2 +
providers/weaviate/README.rst | 6 +-
providers/weaviate/docs/changelog.rst | 16 +
providers/weaviate/docs/index.rst | 6 +-
providers/weaviate/provider.yaml | 4 +-
providers/weaviate/pyproject.toml | 6 +-
.../src/airflow/providers/weaviate/__init__.py | 2 +-
.../providers/weaviate/operators/weaviate.py | 10 +-
providers/yandex/README.rst | 6 +-
providers/yandex/docs/changelog.rst | 13 +
providers/yandex/docs/index.rst | 6 +-
providers/yandex/provider.yaml | 4 +-
providers/yandex/pyproject.toml | 6 +-
.../src/airflow/providers/yandex/__init__.py | 2 +-
.../airflow/providers/yandex/operators/dataproc.py | 5 +-
.../src/airflow/providers/yandex/operators/yq.py | 5 +-
pyproject.toml | 69 +-
registry/src/css/main.css | 40 +-
registry/src/css/tokens.css | 2 +
registry/src/js/provider-detail.js | 24 +-
registry/src/provider-version.njk | 31 +-
.../ci/docker-compose/integration-cassandra.yml | 1 +
scripts/ci/docker-compose/integration-celery.yml | 1 +
.../docker-compose/integration-elasticsearch.yml | 1 +
scripts/ci/docker-compose/integration-kerberos.yml | 1 +
scripts/ci/docker-compose/integration-keycloak.yml | 1 +
.../ci/docker-compose/integration-localstack.yml | 1 +
scripts/ci/docker-compose/integration-mongo.yml | 1 +
.../ci/docker-compose/integration-openlineage.yml | 1 +
.../ci/docker-compose/integration-opensearch.yml | 1 +
scripts/ci/docker-compose/integration-pinot.yml | 1 +
scripts/ci/docker-compose/integration-redis.yml | 2 +
scripts/ci/docker-compose/integration-trino.yml | 1 +
scripts/ci/docker-compose/local.yml | 3 -
.../{integration-pinot.yml => mount-uv-lock.yml} | 28 +-
scripts/ci/prek/check_conn_id_templated.py | 247 ++
scripts/ci/prek/dump_supervisor_schemas.py | 12 +
scripts/ci/prek/sync_java_sdk_supervisor_schema.py | 80 +
scripts/ci/prek/ts_compile_lint_common_ai.py | 1 -
scripts/ci/prek/ts_compile_lint_edge.py | 1 -
.../prek/ts_compile_lint_simple_auth_manager_ui.py | 1 -
scripts/ci/prek/ts_compile_lint_ui.py | 1 -
scripts/ci/prek/upgrade_dependency_floors.py | 537 +++
scripts/ci/prek/upgrade_important_versions.py | 10 +
scripts/ci/prek/validate_operators_init.py | 84 +-
.../ci/prek/validate_operators_init_exemptions.txt | 6 -
scripts/cov/core_coverage.py | 1 -
.../in_container/install_airflow_and_providers.py | 2 +-
scripts/in_container/run_fix_ownership.py | 2 +-
.../in_container/run_provider_yaml_files_check.py | 2 +
scripts/in_container/run_template_fields_check.py | 56 +-
.../tests/ci/prek/test_check_conn_id_templated.py | 243 ++
.../ci/prek/test_upgrade_dependency_floors.py | 667 ++++
.../ci/prek/test_upgrade_important_versions.py | 25 +
.../tests/ci/prek/test_validate_operators_init.py | 136 +
.../test_install_airflow_and_providers.py | 26 +-
.../src/airflow_shared/configuration/parser.py | 16 +-
.../src/airflow_shared/module_loading/__init__.py | 1 +
.../src/airflow_shared/module_loading/dag_file.py | 89 +-
.../tests/module_loading/test_dag_file.py | 101 +
task-sdk/docs/api.rst | 2 +
task-sdk/docs/index.rst | 1 +
task-sdk/src/airflow/sdk/__init__.py | 3 +
task-sdk/src/airflow/sdk/__init__.pyi | 2 +
task-sdk/src/airflow/sdk/api/client.py | 53 +-
.../src/airflow/sdk/api/datamodels/_generated.py | 2 +
task-sdk/src/airflow/sdk/definitions/callback.py | 6 +
task-sdk/src/airflow/sdk/definitions/deadline.py | 38 +-
.../src/airflow/sdk/definitions/retry_policy.py | 96 +-
task-sdk/src/airflow/sdk/execution_time/comms.py | 45 +-
task-sdk/src/airflow/sdk/execution_time/context.py | 21 +
.../airflow/sdk/execution_time/request_handlers.py | 6 +-
.../airflow/sdk/execution_time/schema/schema.json | 29 +-
.../sdk/execution_time/schema/versions/__init__.py | 3 +-
.../execution_time/schema/versions/v2026_10_30.py | 9 +
.../src/airflow/sdk/execution_time/supervisor.py | 993 ++++--
.../src/airflow/sdk/execution_time/task_runner.py | 27 +-
task-sdk/src/airflow/sdk/importers/__init__.py | 6 +-
task-sdk/src/airflow/sdk/importers/base.py | 144 +-
.../src/airflow/sdk/importers/python_importer.py | 204 +-
task-sdk/src/airflow/sdk/importers/zip_importer.py | 192 +-
task-sdk/src/airflow/sdk/plugins_manager.py | 13 +
.../src/airflow/sdk/serde/serializers/datetime.py | 2 +-
task-sdk/src/airflow/sdk/state.py | 1 +
task-sdk/tests/task_sdk/api/test_client.py | 49 +-
.../tests/task_sdk/definitions/test_deadline.py | 148 +-
.../task_sdk/definitions/test_retry_policy.py | 224 ++
.../execution_time/_request_registration_types.py | 41 +
.../execution_time/schema/test_migrator.py | 31 +
.../tests/task_sdk/execution_time/test_comms.py | 60 +
.../tests/task_sdk/execution_time/test_context.py | 74 +
.../task_sdk/execution_time/test_supervisor.py | 654 +++-
.../task_sdk/execution_time/test_task_runner.py | 155 +
.../task_sdk/importers/test_python_importer.py | 193 +-
task-sdk/tests/task_sdk/importers/test_registry.py | 65 +-
.../tests/task_sdk/importers/test_zip_importer.py | 181 +-
task-sdk/tests/task_sdk/serde/test_serializers.py | 12 +
ts-sdk/.pre-commit-config.yaml | 12 +
ts-sdk/adr/0002-native-dag-interface.md | 32 +-
ts-sdk/package.json | 3 +-
.../schema.json => ts-sdk/schema/dag-schema.json | 0
...ck_supervisor_schema.py => check_dag_schema.py} | 12 +-
ts-sdk/scripts/ci/prek/check_supervisor_schema.py | 1 -
ts-sdk/scripts/ci/prek/compile_ts_sdk.py | 1 -
ts-sdk/scripts/ci/prek/sync_dag_schema.py | 65 +
ts-sdk/scripts/ci/prek/ts_sdk_lint.py | 1 -
ts-sdk/scripts/ci/prek/verify_ts_sdk_package.py | 1 -
ts-sdk/scripts/generate-dag-schema.mjs | 512 +++
ts-sdk/src/coordinator/manifest.ts | 7 +-
ts-sdk/src/coordinator/runtime.ts | 12 +-
ts-sdk/src/generated/dag-schema-fields.ts | 215 ++
ts-sdk/src/generated/supervisor.ts | 34 +-
ts-sdk/src/index.ts | 11 +-
ts-sdk/src/sdk/bundle.ts | 195 +-
ts-sdk/src/sdk/dag.ts | 558 ++-
ts-sdk/tests/cli/fixtures/entry.ts | 2 +-
ts-sdk/tests/cli/fixtures/noisy-entry.ts | 2 +-
ts-sdk/tests/cli/pack.test.ts | 10 +-
ts-sdk/tests/coordinator/integration.test.ts | 43 +-
ts-sdk/tests/coordinator/runtime-manifest.test.ts | 4 +-
ts-sdk/tests/public-api.test.ts | 127 +-
ts-sdk/tests/scripts/generate-dag-schema.test.ts | 419 +++
ts-sdk/tests/sdk/bundle.test.ts | 82 +-
ts-sdk/tests/sdk/dag.test.ts | 486 ++-
ts-sdk/tests/sdk/task-handler.test.ts | 64 +-
ts-sdk/tsconfig.json | 7 +-
uv.lock | 878 ++---
1540 files changed, 54199 insertions(+), 17498 deletions(-)
create mode 100644 .apache-magpie-overrides/release-build.md
create mode 100644 .apache-magpie-overrides/release-management-config.md
create mode 100644 .apache-magpie-overrides/release-verify-rc.md
rename
airflow-core/docs/img/change-theme/{exmaple_theme_configuration_dark_mode.png
=> example_theme_configuration_dark_mode.png} (100%)
rename
airflow-core/docs/img/change-theme/{exmaple_theme_configuration_light_mode.png
=> example_theme_configuration_light_mode.png} (100%)
create mode 100644 airflow-core/newsfragments/63491.significant.rst
create mode 100644 airflow-core/newsfragments/66350.bugfix.rst
create mode 100644 airflow-core/newsfragments/67372.bugfix.rst
create mode 100644 airflow-core/newsfragments/71729.improvement.rst
create mode 100644 airflow-core/newsfragments/71990.bugfix.rst
create mode 100644 airflow-core/newsfragments/72036.feature.rst
create mode 100644 airflow-core/newsfragments/72494.feature.rst
create mode 100644 airflow-core/newsfragments/72896.significant.rst
create mode 100644 airflow-core/newsfragments/73244.significant.rst
create mode 100644 airflow-core/newsfragments/73294.significant.rst
create mode 100644 airflow-core/newsfragments/73328.significant.rst
create mode 100644
airflow-core/src/airflow/migrations/versions/0135_3_4_0_widen_revoked_token_jti.py
create mode 100644
airflow-core/src/airflow/migrations/versions/0136_3_4_0_fold_task_map_into_xcom_mapped_length.py
create mode 100644
airflow-core/src/airflow/migrations/versions/0137_3_4_0_add_job_team_association_table.py
delete mode 100644 airflow-core/src/airflow/models/taskmap.py
create mode 100644 airflow-core/src/airflow/serialization/dag_version_diff.py
create mode 100644
airflow-core/src/airflow/ui/src/components/DagBundleVersion.tsx
rename airflow-core/src/airflow/ui/src/{pages/Dag =>
components}/DagImportErrorModal.tsx (100%)
create mode 100644
airflow-core/src/airflow/ui/src/components/DataTable/TableList.test.tsx
copy ts-sdk/tests/cli/fixtures/noisy-entry.ts =>
airflow-core/src/airflow/ui/src/components/ImportErrorCount.tsx (57%)
create mode 100644
airflow-core/src/airflow/ui/src/context/groups/GroupsProvider.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/layouts/Details/Grid/Grid.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/layouts/Details/Grid/useGridScrollRestore.test.ts
create mode 100644
airflow-core/src/airflow/ui/src/layouts/Details/Grid/useGridScrollRestore.ts
create mode 100644
airflow-core/src/airflow/ui/src/pages/DagBundle/BundleFiles.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/DagBundle/DagBundle.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/DagBundle/FileImportError.tsx
create mode 100644 airflow-core/src/airflow/ui/src/pages/DagBundle/Header.tsx
copy ts-sdk/tests/cli/fixtures/noisy-entry.ts =>
airflow-core/src/airflow/ui/src/pages/DagBundle/index.tsx (76%)
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dashboard/Health/Health.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dashboard/Health/HealthInstances.tsx
copy ts-sdk/tests/cli/fixtures/noisy-entry.ts =>
airflow-core/src/airflow/ui/src/pages/Dashboard/Health/HealthStateBadge.tsx
(55%)
create mode 100644
airflow-core/src/airflow/ui/src/pages/Dashboard/Health/healthStatus.ts
create mode 100644
airflow-core/src/airflow/ui/src/pages/TaskInstance/RenderedTemplates.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/queries/useDagBundleRefetchInterval.ts
create mode 100644
airflow-core/tests/unit/migrations/test_0136_fold_task_map_into_xcom.py
delete mode 100644 airflow-core/tests/unit/models/test_taskmap.py
create mode 100644
airflow-core/tests/unit/serialization/test_dag_version_diff.py
create mode 100644
airflow-core/tests/unit/serialization/test_ts_sdk_serialization_version.py
create mode 100644 airflow-ctl/src/airflowctl/ctl/utils/dag_run.py
create mode 100644
dev/breeze/doc/adr/0018-raise-dependency-floors-automatically.md
create mode 100644
dev/breeze/doc/images/output_workflow-run_sync-staging-to-main.svg
create mode 100644
dev/breeze/doc/images/output_workflow-run_sync-staging-to-main.txt
create mode 100644 dev/breeze/tests/test_ci_upgrade.py
create mode 100644
devel-common/tests/unit/sphinx_exts/docs_build/test_build_docs_scheduling.py
create mode 100644
devel-common/tests/unit/sphinx_exts/test_airflow_intersphinx.py
create mode 100644 go-sdk/airflow/bundle.go
create mode 100644 go-sdk/airflow/bundle_test.go
create mode 100644 go-sdk/airflow/contexttest_test.go
create mode 100644 go-sdk/airflow/serve.go
create mode 100644 go-sdk/airflow/serve_test.go
create mode 100644 go-sdk/airflow/task_handler.go
create mode 100644 go-sdk/airflow/task_handler_test.go
rename go-sdk/{bundle/bundlev1/doc.go => airflow/testdata/foreignitem/main.go}
(59%)
delete mode 100644 go-sdk/bundle/bundlev1/bundlev1server/server.go
delete mode 100644 go-sdk/bundle/bundlev1/bundlev1server/server_test.go
delete mode 100644 go-sdk/bundle/bundlev1/registry.go
delete mode 100644 go-sdk/bundle/bundlev1/registry_test.go
delete mode 100644 go-sdk/bundle/bundlev1/schemas.go
rename go-sdk/{bundle/bundlev1/bundlev1server => internal/bundle}/doc.go (75%)
rename go-sdk/{bundle/bundlev1 => internal/bundle}/task.go (77%)
rename go-sdk/{bundle/bundlev1 => internal/bundle}/task_test.go (79%)
create mode 100644 go-sdk/internal/contexttest/contexttest.go
create mode 100644 go-sdk/pkg/binding/task_context.go
create mode 100644 go-sdk/pkg/binding/task_context_test.go
copy java-sdk/sdk/src/{test/kotlin/org/apache/airflow/sdk/BundleTest.kt =>
main/kotlin/org/apache/airflow/sdk/ArgName.kt} (50%)
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/InputTask.kt
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/TaskInput.kt
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/execution/ArgBinding.kt
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/internal/ArgValues.kt
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/internal/InputTypes.kt
copy
java-sdk/{example/src/java/org/apache/airflow/example/ExampleBundleBuilder.java
=> sdk/src/main/kotlin/org/apache/airflow/sdk/internal/Registrar.kt} (57%)
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/internal/TaskArgs.kt
create mode 100644
java-sdk/sdk/src/main/kotlin/org/apache/airflow/sdk/internal/TypeRef.kt
create mode 100644
java-sdk/sdk/src/test/kotlin/org/apache/airflow/sdk/ArgTestSupport.kt
create mode 100644
java-sdk/sdk/src/test/kotlin/org/apache/airflow/sdk/ArgValuesTest.kt
create mode 100644
java-sdk/sdk/src/test/kotlin/org/apache/airflow/sdk/InputTaskTest.kt
create mode 100644
java-sdk/sdk/src/test/kotlin/org/apache/airflow/sdk/TaskArgsTest.kt
create mode 100644 providers/amazon/docs/operators/athena/athena_spark.rst
create mode 100644
providers/amazon/src/airflow/providers/amazon/aws/operators/athena_spark.py
create mode 100644
providers/amazon/src/airflow/providers/amazon/aws/utils/transfer.py
create mode 100644
providers/amazon/tests/system/amazon/aws/example_athena_spark.py
create mode 100644
providers/amazon/tests/unit/amazon/aws/operators/test_athena_spark.py
copy airflow-core/tests/unit/utils/test_strings.py =>
providers/amazon/tests/unit/amazon/aws/utils/test_transfer.py (50%)
create mode 100644 providers/common/ai/docs/agent_security.rst
create mode 100644 providers/common/ai/docs/approval_gates.rst
delete mode 100644 providers/common/ai/docs/choosing_a_toolset.rst
create mode 100644 providers/common/ai/docs/code_mode.rst
create mode 100644 providers/common/ai/docs/concepts.rst
create mode 100644 providers/common/ai/docs/durable_execution.rst
delete mode 100644 providers/common/ai/docs/end_to_end_pipelines.rst
create mode 100644 providers/common/ai/docs/features.rst
create mode 100644 providers/common/ai/docs/guardrails.rst
delete mode 100644 providers/common/ai/docs/hooks/index.rst
create mode 100644 providers/common/ai/docs/installation.rst
create mode 100644 providers/common/ai/docs/local_development.rst
create mode 100644 providers/common/ai/docs/message_history.rst
create mode 100644 providers/common/ai/docs/model_providers.rst
create mode 100644 providers/common/ai/docs/operations.rst
create mode 100644 providers/common/ai/docs/rag_pipelines.rst
rename providers/{google/tests/system/google/cloud/stackdriver/__init__.py =>
common/ai/docs/redirects.txt} (77%)
delete mode 100644 providers/common/ai/docs/sandbox.rst
create mode 100644 providers/common/ai/docs/sandbox/backends.rst
create mode 100644 providers/common/ai/docs/sandbox/configuration.rst
create mode 100644 providers/common/ai/docs/sandbox/index.rst
create mode 100644 providers/common/ai/docs/structured_output.rst
delete mode 100644 providers/common/ai/docs/toolsets.rst
create mode 100644 providers/common/ai/docs/toolsets/datafusion.rst
create mode 100644 providers/common/ai/docs/toolsets/hook.rst
create mode 100644 providers/common/ai/docs/toolsets/index.rst
create mode 100644 providers/common/ai/docs/toolsets/langchain.rst
copy providers/common/{sql/docs/connections.rst =>
ai/docs/toolsets/logging.rst} (50%)
create mode 100644 providers/common/ai/docs/toolsets/managed_agent.rst
create mode 100644 providers/common/ai/docs/toolsets/mcp.rst
create mode 100644 providers/common/ai/docs/toolsets/skills.rst
create mode 100644 providers/common/ai/docs/toolsets/sql.rst
create mode 100644 providers/common/ai/docs/troubleshooting.rst
create mode 100644
providers/common/ai/docs/use_cases/ask_questions_over_pdfs.rst
create mode 100644
providers/common/ai/docs/use_cases/classify_reviews_in_bulk.rst
create mode 100644 providers/common/ai/docs/use_cases/compare_10k_filings.rst
create mode 100644
providers/common/ai/docs/use_cases/explain_revenue_anomaly.rst
create mode 100644
providers/common/ai/docs/use_cases/gate_loads_on_schema_drift.rst
create mode 100644 providers/common/ai/docs/use_cases/index.rst
create mode 100644
providers/common/ai/docs/use_cases/monthly_report_from_a_csv.rst
create mode 100644
providers/common/ai/docs/use_cases/research_agent_with_review.rst
create mode 100644
providers/common/ai/docs/use_cases/route_pipeline_failures.rst
create mode 100644
providers/common/ai/docs/use_cases/triage_support_tickets.rst
create mode 100644 providers/common/ai/docs/use_cases/weekly_status_report.rst
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/mixins/cancellable_run.py
create mode 100644
providers/common/ai/src/airflow/providers/common/ai/utils/toolsets.py
create mode 100644
providers/common/ai/tests/unit/common/ai/mixins/test_cancellable_run.py
create mode 100644
providers/common/ai/tests/unit/common/ai/utils/test_toolsets.py
create mode 100644
providers/common/compat/src/airflow/providers/common/compat/_retry_policy.py
create mode 100644
providers/common/compat/tests/unit/common/compat/test__retry_policy.py
delete mode 100644 providers/duckdb/docs/.latest-doc-only-change.txt
create mode 100644
providers/fab/src/airflow/providers/fab/www/templates/appbuilder/general/model/user_edit.html
create mode 100644 providers/google/docs/integration-logos/Cloud-Monitoring.png
delete mode 100644
providers/google/docs/integration-logos/Google-Cloud-Stackdriver.png
rename providers/google/docs/logging/{stackdriver.rst => cloud_logging.rst}
(73%)
create mode 100644 providers/google/docs/operators/cloud/cloud_monitoring.rst
delete mode 100644 providers/google/docs/operators/cloud/stackdriver.rst
copy providers/google/src/airflow/providers/google/cloud/hooks/{stackdriver.py
=> cloud_monitoring.py} (94%)
copy providers/google/src/airflow/providers/google/cloud/links/{stackdriver.py
=> cloud_monitoring.py} (60%)
copy
providers/google/src/airflow/providers/google/cloud/log/{stackdriver_task_handler.py
=> cloud_logging_task_handler.py} (94%)
copy
providers/google/src/airflow/providers/google/cloud/operators/{stackdriver.py
=> cloud_monitoring.py} (86%)
copy {airflow-core/src/airflow/_shared =>
providers/google/tests/system/google/cloud/cloud_monitoring}/__init__.py (100%)
rename
providers/google/tests/system/google/cloud/{stackdriver/example_stackdriver.py
=> cloud_monitoring/example_cloud_monitoring.py} (66%)
copy providers/google/tests/unit/google/cloud/hooks/{test_stackdriver.py =>
test_cloud_monitoring.py} (81%)
copy airflow-core/tests/unit/utils/test_strings.py =>
providers/google/tests/unit/google/cloud/links/test_cloud_monitoring.py (55%)
create mode 100644
providers/google/tests/unit/google/cloud/links/test_stackdriver.py
copy
providers/google/tests/unit/google/cloud/log/{test_stackdriver_task_handler.py
=> test_cloud_logging_task_handler.py} (75%)
copy providers/google/tests/unit/google/cloud/operators/{test_stackdriver.py
=> test_cloud_monitoring.py} (54%)
create mode 100644 providers/influxdb/docs/sensors/index.rst
copy {airflow-core/src/airflow/_shared =>
providers/influxdb/src/airflow/providers/influxdb/sensors}/__init__.py (100%)
create mode 100644
providers/influxdb/src/airflow/providers/influxdb/sensors/influxdb3.py
copy {airflow-core/src/airflow/_shared =>
providers/influxdb/src/airflow/providers/influxdb/triggers}/__init__.py (100%)
create mode 100644
providers/influxdb/src/airflow/providers/influxdb/triggers/influxdb3.py
create mode 100644 providers/influxdb/src/airflow/providers/influxdb/utils.py
copy {airflow-core/src/airflow/_shared =>
providers/influxdb/tests/unit/influxdb/sensors}/__init__.py (100%)
create mode 100644
providers/influxdb/tests/unit/influxdb/sensors/test_influxdb3.py
create mode 100644 providers/influxdb/tests/unit/influxdb/test_utils.py
copy {airflow-core/src/airflow/_shared =>
providers/influxdb/tests/unit/influxdb/triggers}/__init__.py (100%)
create mode 100644
providers/influxdb/tests/unit/influxdb/triggers/test_influxdb3.py
create mode 100644 providers/sftp/tests/unit/sftp/test_exceptions.py
copy scripts/ci/docker-compose/{integration-pinot.yml => mount-uv-lock.yml}
(62%)
create mode 100755 scripts/ci/prek/check_conn_id_templated.py
create mode 100755 scripts/ci/prek/sync_java_sdk_supervisor_schema.py
create mode 100755 scripts/ci/prek/upgrade_dependency_floors.py
create mode 100644 scripts/tests/ci/prek/test_check_conn_id_templated.py
create mode 100644 scripts/tests/ci/prek/test_upgrade_dependency_floors.py
copy airflow-core/tests/unit/utils/test_strings.py =>
scripts/tests/in_container/test_install_airflow_and_providers.py (56%)
create mode 100644
task-sdk/tests/task_sdk/execution_time/_request_registration_types.py
copy airflow-core/src/airflow/serialization/schema.json =>
ts-sdk/schema/dag-schema.json (100%)
copy ts-sdk/scripts/ci/prek/{check_supervisor_schema.py =>
check_dag_schema.py} (86%)
create mode 100755 ts-sdk/scripts/ci/prek/sync_dag_schema.py
create mode 100644 ts-sdk/scripts/generate-dag-schema.mjs
create mode 100644 ts-sdk/src/generated/dag-schema-fields.ts
create mode 100644 ts-sdk/tests/scripts/generate-dag-schema.test.ts