This is an automated email from the ASF dual-hosted git repository.
dependabot[bot] pushed a change to branch
dependabot/npm_and_yarn/airflow-core/src/airflow/ui/typescript-b7ceb5d816
in repository https://gitbox.apache.org/repos/asf/airflow.git
discard 4faa535afef Bump typescript
add dd4d2f9ef7c Add CloudSQLNoOperationInProgressSensor for parallel admin
ops (#68151)
add 79fa2e62221 Bump the github-actions-updates group across 1 directory
with 4 updates (#70857)
add 7ae9d588dc9 Fix duplicated task logs in the WASB log handler (#70860)
add a75366e1828 Rewrite SnowparkContainerJobOperator exclusivity check and
move back to __init__ (#70874)
add dfaff482594 Gate audit log rows not tied to a Dag on a dedicated
AccessView (#70759)
add e0cac1f6b2d Only resolve a team namespaced environment secret for its
own team (#70736)
add 2874061932b Revert DMS provision checks to __init__ with is not None
polarity (#70634)
add 087b2e9fe4c Apply SageMaker operator template-field checks after
rendering (#70485)
add 0d5c54b6be9 Retry EKS resource deletion on transient
ResourceInUseException (#70260)
add e6341f3e748 Delay BigQueryToMsSqlOperator source table parsing (#70493)
add 154e3c8cdfc Fix BteqOperator declaring template_fields as a bare
string (#70862)
add cdedaf3fc69 Fix encrypted private keys in async SFTP hook (#70858)
add 0b3aaccfa01 Apply the team scope in the Google Secret Manager backend
(#70869)
add 7333cad2832 Revert Dataform workflow invocation dict normalization
(#69161) (#70395)
add 5efa9a1c8bf Make the HITLOperator summary extension point public
(#70391)
add 81446f3f698 Bump the ui-plugin-template-package-updates group across 1
directory with 22 updates (#70611)
add 802ffa7b3c6 Drop colored logging from the Go SDK edge worker (#70824)
add 915e61cc40d Do not show @timestamp in logs in UI (#70790)
add e7ffeb7c39b reject mixed-separator path traversal in imap attachment
names (#70665)
add b20f1a47d01 Fail deferred Cloud Composer tasks when the GCP operation
errors (#70430)
add 9a28876d514 Validate Gemini batch results_folder in the worker that
writes results (#70393)
add 600d99867cc Use private key when pulling submodules (#62938)
add 6669e7eed8d Fix AwaitMessageTrigger crash on tombstone messages when
apply_function is unset (#69665)
add f8f53e0e94d Add ElasticsearchRemoteLogIO.from_config and register
elasticsearch scheme (#70525)
add 1a3f32aa9e3 Add OSSRemoteLogIO.from_config and register oss remote
logging scheme (#70682)
add 251a9281006 Register Stackdriver remote task logging handler (#70549)
add 41a3be7076e Refuse the team agnostic fall-through for a team scoped
Key Vault secret name (#70876)
add a472c83d715 Add WasbRemoteLogIO.from_config and register wasb remote
logging scheme (#70301)
add 0191b1199ea Refuse the team agnostic fall-through for a team scoped
AWS secret name (#70878)
add 3b2445a25fa Fix SQLColumnCheckOperator crash on non-numeric column
bounds (#70895)
add 415cb70f877 Limit pandas to < 3 for DataFrame XComs (#70791)
add 31a5f3a5491 Bump boto3 in /dev/breeze in the uv-dependency-updates
group (#70871)
add 6aa7cd9eba7 Remove no-op exception re-raise and parser override in
airflowctl (#70903)
add 9a0d1d3334e Fix duplicated and incorrect words in documentation
(#70868)
add eef1b970acd Fix airflowctl showing a traceback instead of the server
error on 5xx (#70841)
add 81462283eaf Assert the refusal log with getMessage so the compat tests
pass (#70905)
add 9d3b20c4d2f Fix SSHRemoteJobOperator cleanup failing with custom
remote_base_dir (#69885)
add ff5a90c6f79 Support setting an S3 object ACL for remote task logs
(#70394)
add e7737ff9bb1 Fix Kafka consumer not being closed on error in
ConsumeFromTopicOperator (#69641)
add 4b9c3b54a7b Validate trigger events in Openai deferrable tasks (#69506)
add d9b7eb0f8a4 Cancel the Redshift statement when a user kills the
deferred task (#69676)
add 16b4e621711 Give each task its own start trigger arguments in standard
sensors (#70888)
add a1824804d11 Reconnect to the running Livy batch on retry instead of
resubmitting (#68956)
add b2d1d8183dc Use monotonic clock for OpenAIBatchTrigger polling timeout
(#69534)
add cfe3f0bbd70 Apply the ambiguous-id refusal to get_config in the Key
Vault backend (#70899)
add 0d877a1a768 Refuse the team agnostic fall-through for a team scoped
Lockbox secret name (#70877)
add 0b313f9a3fe Document Kubernetes RBAC permissions (#68716)
add b528a941546 Fix operators declaring template_fields/template_ext as
bare strings (#70916)
add c146f20f301 Strip only the literal properties/ prefix from GA property
link IDs (#70919)
add 67706f6843e Clarify Elasticsearch remote-logging scheme needs Airflow
3.3.0+ (#70920)
add f656510a147 Fix broken OpenAI batch trigger test blocking main (#70938)
add acb4dde004f Drop coloredcobra dependency from the Go SDK edge worker
(#70917)
add 607df554985 Add KeycloakJWTMiddleware to KeycloakAuthManager (#70800)
add c1639315cce Prepare providers release 2026-08-01 (#70932)
add 66444504c4e Correct the uv.lock versions and keycloak changelog after
the 2026-08-01 wave (#70952)
add bdc7bde97be Fix leaked triggerer thread in
test_trigger_logger_fd_closed_when_removed (#70941)
add 6fb2c61aa16 UI: Align boolean controls in Trigger Dag form (#70713)
add 30006eb9f8c Fix Dag run duration stats crash on PostgreSQL 14+ (#70833)
add 1b3121d03b6 Limit deadline alerts endpoint to the latest serialized
Dag row (#70804)
add 8541668cd49 Fix the deadline_reference decorator's no-parentheses form
(#70708)
add 4899e904185 Fix task state store Execution API rejecting keys that
contain slashes (#69178)
add ece27bba4a5 Regenerate stale provider dependencies instead of silently
using them (#70955)
add 8572ede43d1 Show user display names for triggered runs and HITL
responses (#70836)
add 3cfbbe6b055 Replace external hclog-slog adapter with an in-tree one in
the Go SDK (#70918)
add 109c257919f Drop stale type:ignore[override] on
ExecutionAPISecretsBackend (#68415)
add 40ced09754f Guard 2 to 3+ migration against custom Dag bundle configs
using startup-based initialization (#63185)
add 2db44cdcfce Stop dumping every Dag to stdout when syncing FAB
permissions (#70939)
add b3cc48d5ab2 Make serde errors for unsupported types a bit more
actionable (#70974)
add 548181679d7 Match providers to Explore categories by integration name,
not just id (#70498)
add b316afb44dc Show larger dag run and task instance counts on the
dashboard (#70892)
add a14105b2592 UI: Refresh task details immediately when switching tasks
(#70789)
add 115eb43aba8 Build docs and registry CI images separately so docs stay
on default Python (#70959)
add 0bda2ffece9 Relax types-paramiko to support version 5 (#71009)
add d4449b22444 Bump @types/node (#70870)
add 679cfca77ab Scan Go SDK dependencies for known vulnerabilities in CI
(#70915)
add eb076fee446 Limit Dependabot Go module updates to security advisories
only (#70914)
add e12601faef6 Bump typescript
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 (4faa535afef)
\
N -- N -- N
refs/heads/dependabot/npm_and_yarn/airflow-core/src/airflow/ui/typescript-b7ceb5d816
(e12601faef6)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.../actions/build_ci_image_with_cache/action.yml | 221 ++
.github/dependabot.yml | 17 +-
.github/workflows/asf-allowlist-check.yml | 2 +-
.github/workflows/basic-tests.yml | 8 +-
.github/workflows/ci-amd.yml | 9 +
.github/workflows/ci-arm.yml | 9 +
.github/workflows/ci-image-build.yml | 16 +-
.github/workflows/ci-image-checks.yml | 4 +-
.github/workflows/prod-image-build.yml | 2 +-
.github/workflows/publish-docs-to-s3.yml | 147 +-
.github/workflows/recheck-old-bug-report.yml | 2 +-
.github/workflows/registry-build.yml | 96 +-
.github/workflows/stale.yml | 4 +-
ISSUE_TRIAGE_PROCESS.rst | 2 +-
airflow-core/docs/howto/deadline-alerts.rst | 7 +
airflow-core/newsfragments/63185.significant.rst | 3 +
airflow-core/newsfragments/70708.bugfix.rst | 1 +
airflow-core/newsfragments/70759.significant.rst | 24 +
airflow-core/newsfragments/70791.significant.rst | 35 +
.../api_fastapi/auth/managers/base_auth_manager.py | 48 +-
.../auth/managers/models/resource_details.py | 4 +
.../auth/managers/simple/simple_auth_manager.py | 7 +-
.../core_api/datamodels/ui/dashboard.py | 4 +-
.../api_fastapi/core_api/openapi/_private_ui.yaml | 20 +-
.../api_fastapi/core_api/routes/public/assets.py | 2 +-
.../core_api/routes/public/backfills.py | 2 +-
.../api_fastapi/core_api/routes/public/dag_run.py | 2 +-
.../api_fastapi/core_api/routes/public/hitl.py | 2 +-
.../airflow/api_fastapi/core_api/routes/ui/dags.py | 4 +-
.../api_fastapi/core_api/routes/ui/dashboard.py | 88 +-
.../api_fastapi/core_api/routes/ui/deadlines.py | 22 +-
.../src/airflow/api_fastapi/core_api/security.py | 64 +-
.../api_fastapi/core_api/services/ui/dag_run.py | 4 +-
.../execution_api/routes/task_state_store.py | 6 +-
.../execution_api/versions/v2026_06_30.py | 6 +-
.../src/airflow/dag_processing/bundles/manager.py | 232 +-
airflow-core/src/airflow/dag_processing/manager.py | 29 +-
.../src/airflow/secrets/environment_variables.py | 38 +-
.../src/airflow/ui/openapi-gen/queries/common.ts | 5 +-
.../ui/openapi-gen/queries/ensureQueryData.ts | 6 +-
.../src/airflow/ui/openapi-gen/queries/prefetch.ts | 6 +-
.../src/airflow/ui/openapi-gen/queries/queries.ts | 6 +-
.../src/airflow/ui/openapi-gen/queries/suspense.ts | 6 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 14 +-
.../ui/openapi-gen/requests/services.gen.ts | 2 +
.../airflow/ui/openapi-gen/requests/types.gen.ts | 4 +-
.../ui/src/components/FlexibleForm/FieldBool.tsx | 2 +
.../ui/src/components/TaskTrySelect.test.tsx | 128 +
.../airflow/ui/src/components/TaskTrySelect.tsx | 1 +
.../Dashboard/HistoricalMetrics/DagRunMetrics.tsx | 19 +-
.../HistoricalMetrics/HistoricalMetrics.tsx | 4 +-
.../Dashboard/HistoricalMetrics/MetricSection.tsx | 5 +-
.../HistoricalMetrics/TaskInstanceMetrics.tsx | 14 +-
.../src/pages/TaskInstance/TaskInstance.test.tsx | 144 +
.../ui/src/pages/TaskInstance/TaskInstance.tsx | 1 +
.../always/test_secrets_environment_variables.py | 144 +
.../managers/simple/test_simple_auth_manager.py | 27 +
.../auth/managers/test_base_auth_manager.py | 20 +
.../core_api/routes/public/test_assets.py | 10 +
.../core_api/routes/public/test_backfills.py | 23 +
.../core_api/routes/public/test_dag_run.py | 19 +
.../core_api/routes/public/test_event_logs.py | 89 +-
.../core_api/routes/public/test_hitl.py | 20 +
.../core_api/routes/ui/test_dashboard.py | 66 +-
.../core_api/routes/ui/test_deadlines.py | 67 +
.../core_api/services/ui/test_dag_run.py} | 43 +-
.../unit/api_fastapi/core_api/test_security.py | 57 +-
.../versions/head/test_task_state_store.py | 26 +
.../bundles/test_dag_bundle_manager.py | 1269 ++++++++-
.../tests/unit/dag_processing/test_manager.py | 189 ++
airflow-core/tests/unit/jobs/test_triggerer_job.py | 27 +-
airflow-core/tests/unit/models/test_deadline.py | 39 +
airflow-ctl/src/airflowctl/api/client.py | 3 -
airflow-ctl/src/airflowctl/api/operations.py | 22 +-
airflow-ctl/src/airflowctl/ctl/cli_config.py | 4 -
airflow-ctl/tests/airflow_ctl/api/test_client.py | 46 +
contributing-docs/18_contribution_workflow.rst | 2 +-
dev/breeze/doc/images/output_build-docs.svg | 44 +-
dev/breeze/doc/images/output_build-docs.txt | 2 +-
.../airflow_breeze/commands/developer_commands.py | 13 +-
.../commands/developer_commands_config.py | 1 -
.../airflow_breeze/commands/kubernetes_commands.py | 54 +-
.../airflow_breeze/utils/provider_dependencies.py | 20 +-
dev/breeze/tests/test_developer_commands.py | 33 +-
.../tests/test_kubernetes_lang_sdk_commands.py | 9 +
dev/breeze/tests/test_provider_dependencies.py | 81 +
dev/breeze/uv.lock | 12 +-
.../react_plugin_template/package.json | 44 +-
.../react_plugin_template/pnpm-lock.yaml | 2820 ++++++++++----------
devel-common/pyproject.toml | 2 +-
docs/spelling_wordlist.txt | 1 +
generated/known_airflow_exceptions.txt | 2 +-
go-sdk/bundle/bundlev1/bundlev1server/server.go | 2 +-
go-sdk/edge/commands/root.go | 1 -
go-sdk/go.mod | 5 +-
go-sdk/go.sum | 16 -
go-sdk/pkg/config/config.go | 37 +-
go-sdk/pkg/logging/hclogslog/hclogslog.go | 146 +
go-sdk/pkg/logging/hclogslog/hclogslog_test.go | 182 ++
kubernetes-tests/lang_sdk/README.md | 6 +
kubernetes-tests/lang_sdk/go_example/go.mod | 3 -
kubernetes-tests/lang_sdk/go_example/go.sum | 16 -
providers/.last_release_date.txt | 2 +-
providers/airbyte/README.rst | 6 +-
providers/airbyte/docs/changelog.rst | 11 +
providers/airbyte/docs/index.rst | 6 +-
providers/airbyte/provider.yaml | 3 +-
providers/airbyte/pyproject.toml | 6 +-
.../src/airflow/providers/airbyte/__init__.py | 2 +-
providers/alibaba/README.rst | 6 +-
providers/alibaba/docs/changelog.rst | 14 +
providers/alibaba/docs/index.rst | 6 +-
providers/alibaba/provider.yaml | 7 +-
providers/alibaba/pyproject.toml | 6 +-
.../src/airflow/providers/alibaba/__init__.py | 2 +-
.../alibaba/cloud/log/oss_task_handler.py | 26 +
.../airflow/providers/alibaba/get_provider_info.py | 6 +
.../alibaba/cloud/log/test_oss_task_handler.py | 83 +-
providers/amazon/README.rst | 16 +-
providers/amazon/docs/changelog.rst | 52 +
providers/amazon/docs/index.rst | 16 +-
providers/amazon/docs/logging/s3-task-handler.rst | 20 +
providers/amazon/provider.yaml | 18 +-
providers/amazon/pyproject.toml | 23 +-
.../src/airflow/providers/amazon/__init__.py | 2 +-
.../providers/amazon/aws/log/s3_task_handler.py | 7 +
.../airflow/providers/amazon/aws/operators/dms.py | 11 +-
.../airflow/providers/amazon/aws/operators/eks.py | 44 +-
.../amazon/aws/operators/redshift_data.py | 8 +
.../providers/amazon/aws/operators/sagemaker.py | 18 +-
.../amazon/aws/secrets/secrets_manager.py | 55 +-
.../amazon/aws/secrets/systems_manager.py | 55 +-
.../airflow/providers/amazon/aws/triggers/eks.py | 30 +-
.../providers/amazon/aws/triggers/redshift_data.py | 31 +
.../airflow/providers/amazon/aws/utils/__init__.py | 42 +-
.../airflow/providers/amazon/get_provider_info.py | 7 +
.../aws/example_eks_with_fargate_in_one_step.py | 5 -
.../amazon/aws/example_eks_with_fargate_profile.py | 5 -
.../aws/example_eks_with_nodegroup_in_one_step.py | 4 -
.../amazon/aws/example_eks_with_nodegroups.py | 4 -
.../unit/amazon/aws/log/test_s3_task_handler.py | 53 +
.../tests/unit/amazon/aws/operators/test_dms.py | 36 +-
.../tests/unit/amazon/aws/operators/test_eks.py | 119 +
.../amazon/aws/operators/test_redshift_data.py | 41 +
.../aws/operators/test_sagemaker_notebook.py | 19 +
.../aws/operators/test_sagemaker_processing.py | 15 +-
.../amazon/aws/secrets/test_secrets_manager.py | 68 +-
.../amazon/aws/secrets/test_systems_manager.py | 80 +-
.../tests/unit/amazon/aws/triggers/test_eks.py | 44 +
.../unit/amazon/aws/triggers/test_redshift_data.py | 81 +
.../tests/unit/amazon/aws/utils/test_utils.py | 66 +
providers/anthropic/README.rst | 6 +-
providers/anthropic/docs/changelog.rst | 11 +
providers/anthropic/docs/index.rst | 6 +-
providers/anthropic/provider.yaml | 3 +-
providers/anthropic/pyproject.toml | 6 +-
.../src/airflow/providers/anthropic/__init__.py | 2 +-
providers/apache/hdfs/README.rst | 18 +-
providers/apache/hdfs/docs/changelog.rst | 12 +
providers/apache/hdfs/docs/index.rst | 18 +-
providers/apache/hdfs/provider.yaml | 3 +-
providers/apache/hdfs/pyproject.toml | 21 +-
.../src/airflow/providers/apache/hdfs/__init__.py | 2 +-
providers/apache/hive/README.rst | 18 +-
providers/apache/hive/docs/changelog.rst | 17 +
providers/apache/hive/docs/index.rst | 18 +-
providers/apache/hive/provider.yaml | 3 +-
providers/apache/hive/pyproject.toml | 21 +-
.../src/airflow/providers/apache/hive/__init__.py | 2 +-
providers/apache/kafka/README.rst | 6 +-
providers/apache/kafka/docs/changelog.rst | 15 +
providers/apache/kafka/docs/index.rst | 6 +-
providers/apache/kafka/provider.yaml | 3 +-
providers/apache/kafka/pyproject.toml | 6 +-
.../src/airflow/providers/apache/kafka/__init__.py | 2 +-
.../providers/apache/kafka/operators/consume.py | 112 +-
.../apache/kafka/triggers/await_message.py | 13 +-
.../unit/apache/kafka/operators/test_consume.py | 42 +
.../apache/kafka/triggers/test_await_message.py | 72 +
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/livy/operators/livy.py | 66 +-
.../tests/unit/apache/livy/operators/test_livy.py | 127 +-
providers/apache/spark/README.rst | 6 +-
providers/apache/spark/docs/changelog.rst | 18 +
providers/apache/spark/docs/index.rst | 6 +-
providers/apache/spark/provider.yaml | 3 +-
providers/apache/spark/pyproject.toml | 6 +-
.../src/airflow/providers/apache/spark/__init__.py | 2 +-
providers/arangodb/README.rst | 6 +-
providers/arangodb/docs/changelog.rst | 13 +
providers/arangodb/docs/index.rst | 6 +-
providers/arangodb/provider.yaml | 3 +-
providers/arangodb/pyproject.toml | 6 +-
.../src/airflow/providers/arangodb/__init__.py | 2 +-
providers/celery/README.rst | 6 +-
providers/celery/docs/changelog.rst | 11 +
providers/celery/docs/index.rst | 6 +-
providers/celery/provider.yaml | 3 +-
providers/celery/pyproject.toml | 6 +-
.../src/airflow/providers/celery/__init__.py | 2 +-
providers/clickhousedb/docs/changelog.rst | 1 +
providers/clickhousedb/provider.yaml | 2 +-
providers/cncf/kubernetes/README.rst | 6 +-
providers/cncf/kubernetes/docs/changelog.rst | 38 +
providers/cncf/kubernetes/docs/index.rst | 7 +-
providers/cncf/kubernetes/docs/kubernetes_rbac.rst | 179 ++
providers/cncf/kubernetes/provider.yaml | 3 +-
providers/cncf/kubernetes/pyproject.toml | 6 +-
.../airflow/providers/cncf/kubernetes/__init__.py | 2 +-
providers/cohere/README.rst | 6 +-
providers/cohere/docs/changelog.rst | 18 +
providers/cohere/docs/index.rst | 6 +-
providers/cohere/provider.yaml | 3 +-
providers/cohere/pyproject.toml | 6 +-
.../src/airflow/providers/cohere/__init__.py | 2 +-
providers/common/ai/README.rst | 5 +-
providers/common/ai/docs/changelog.rst | 25 +-
providers/common/ai/provider.yaml | 2 +-
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 12 +
providers/common/compat/docs/index.rst | 6 +-
providers/common/compat/provider.yaml | 3 +-
providers/common/compat/pyproject.toml | 6 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
.../common/compat/security/access_view.py | 10 +-
.../common/compat/security/test_access_view.py | 28 +-
.../common/io/docs/.latest-doc-only-change.txt | 2 +-
providers/common/io/docs/xcom_backend.rst | 4 +-
providers/common/sql/README.rst | 14 +-
providers/common/sql/docs/changelog.rst | 24 +
providers/common/sql/docs/index.rst | 14 +-
providers/common/sql/provider.yaml | 3 +-
providers/common/sql/pyproject.toml | 21 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
.../airflow/providers/common/sql/operators/sql.py | 29 +-
.../tests/unit/common/sql/operators/test_sql.py | 30 +
providers/databricks/README.rst | 18 +-
providers/databricks/docs/changelog.rst | 22 +
providers/databricks/docs/index.rst | 18 +-
providers/databricks/provider.yaml | 3 +-
providers/databricks/pyproject.toml | 21 +-
.../src/airflow/providers/databricks/__init__.py | 2 +-
providers/dbt/cloud/README.rst | 6 +-
providers/dbt/cloud/docs/changelog.rst | 20 +
providers/dbt/cloud/docs/index.rst | 6 +-
providers/dbt/cloud/provider.yaml | 3 +-
providers/dbt/cloud/pyproject.toml | 6 +-
.../src/airflow/providers/dbt/cloud/__init__.py | 2 +-
providers/docker/README.rst | 6 +-
providers/docker/docs/changelog.rst | 11 +
providers/docker/docs/index.rst | 6 +-
providers/docker/provider.yaml | 3 +-
providers/docker/pyproject.toml | 6 +-
.../src/airflow/providers/docker/__init__.py | 2 +-
providers/edge3/README.rst | 6 +-
providers/edge3/docs/changelog.rst | 24 +
providers/edge3/docs/index.rst | 6 +-
providers/edge3/provider.yaml | 3 +-
providers/edge3/pyproject.toml | 6 +-
.../edge3/src/airflow/providers/edge3/__init__.py | 2 +-
.../providers/edge3/example_dags/win_notepad.py | 2 +-
.../providers/edge3/example_dags/win_test.py | 2 +-
.../providers/edge3/plugins/www/package.json | 2 +-
.../providers/edge3/plugins/www/pnpm-lock.yaml | 143 +-
providers/elasticsearch/README.rst | 6 +-
providers/elasticsearch/docs/changelog.rst | 22 +
providers/elasticsearch/docs/index.rst | 6 +-
providers/elasticsearch/docs/logging/index.rst | 11 +
providers/elasticsearch/provider.yaml | 7 +-
providers/elasticsearch/pyproject.toml | 6 +-
.../airflow/providers/elasticsearch/__init__.py | 2 +-
.../providers/elasticsearch/get_provider_info.py | 6 +
.../providers/elasticsearch/log/es_task_handler.py | 30 +-
.../unit/elasticsearch/log/test_es_task_handler.py | 70 +-
providers/exasol/README.rst | 18 +-
providers/exasol/docs/changelog.rst | 11 +
providers/exasol/docs/index.rst | 18 +-
providers/exasol/provider.yaml | 3 +-
providers/exasol/pyproject.toml | 21 +-
.../src/airflow/providers/exasol/__init__.py | 2 +-
providers/fab/README.rst | 8 +-
providers/fab/docs/auth-manager/access-control.rst | 6 +-
providers/fab/docs/changelog.rst | 24 +
providers/fab/docs/index.rst | 8 +-
providers/fab/provider.yaml | 3 +-
providers/fab/pyproject.toml | 8 +-
.../fab/src/airflow/providers/fab/__init__.py | 2 +-
.../providers/fab/auth_manager/fab_auth_manager.py | 13 +-
.../fab/auth_manager/security_manager/override.py | 2 +-
.../providers/fab/www/security/permissions.py | 1 +
providers/git/README.rst | 6 +-
providers/git/docs/changelog.rst | 11 +
providers/git/docs/index.rst | 6 +-
providers/git/provider.yaml | 3 +-
providers/git/pyproject.toml | 6 +-
.../git/src/airflow/providers/git/__init__.py | 2 +-
.../git/src/airflow/providers/git/bundles/git.py | 8 +-
providers/git/tests/unit/git/bundles/test_git.py | 58 +
providers/google/README.rst | 12 +-
providers/google/docs/changelog.rst | 36 +-
providers/google/docs/index.rst | 12 +-
.../google/docs/operators/cloud/cloud_sql.rst | 39 +
.../google-cloud-secret-manager-backend.rst | 42 +
providers/google/provider.yaml | 7 +-
providers/google/pyproject.toml | 15 +-
.../providers/google/cloud/hooks/cloud_sql.py | 32 +
.../providers/google/cloud/hooks/dataform.py | 2 -
.../google/cloud/log/stackdriver_task_handler.py | 38 +-
.../providers/google/cloud/operators/gen_ai.py | 18 +-
.../google/cloud/secrets/secret_manager.py | 85 +-
.../providers/google/cloud/sensors/cloud_sql.py | 147 +
.../google/cloud/transfers/bigquery_to_mssql.py | 22 +-
.../google/cloud/transfers/bigquery_to_sql.py | 11 +-
.../google/cloud/triggers/cloud_composer.py | 7 +-
.../providers/google/cloud/triggers/cloud_sql.py | 81 +-
.../airflow/providers/google/get_provider_info.py | 10 +-
.../operators/analytics_admin.py | 2 +-
.../google/cloud/cloud_sql/example_cloud_sql.py | 11 +
.../unit/google/cloud/hooks/test_cloud_sql.py | 20 +
.../tests/unit/google/cloud/hooks/test_dataform.py | 23 +-
.../cloud/log/test_stackdriver_task_handler.py | 63 +
.../unit/google/cloud/operators/test_gen_ai.py | 50 +
.../google/cloud/secrets/test_secret_manager.py | 193 +-
.../unit/google/cloud/sensors/test_cloud_sql.py | 127 +
.../cloud/transfers/test_bigquery_to_mssql.py | 53 +
.../google/cloud/triggers/test_cloud_composer.py | 59 +
.../unit/google/cloud/triggers/test_cloud_sql.py | 82 +-
.../operators/test_analytics_admin.py | 25 +
providers/hashicorp/README.rst | 6 +-
providers/hashicorp/docs/changelog.rst | 20 +
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/docs/.latest-doc-only-change.txt | 2 +-
providers/imap/README.rst | 6 +-
providers/imap/docs/changelog.rst | 12 +
providers/imap/docs/index.rst | 6 +-
providers/imap/provider.yaml | 3 +-
providers/imap/pyproject.toml | 6 +-
.../imap/src/airflow/providers/imap/__init__.py | 2 +-
.../imap/src/airflow/providers/imap/hooks/imap.py | 10 +-
providers/imap/tests/unit/imap/hooks/test_imap.py | 33 +
providers/keycloak/README.rst | 8 +-
providers/keycloak/docs/changelog.rst | 23 +
providers/keycloak/docs/index.rst | 8 +-
providers/keycloak/provider.yaml | 3 +-
providers/keycloak/pyproject.toml | 8 +-
.../src/airflow/providers/keycloak/__init__.py | 2 +-
.../providers/keycloak/auth_manager/constants.py | 6 +-
.../keycloak/auth_manager/keycloak_auth_manager.py | 46 +-
.../providers/keycloak/auth_manager/middleware.py | 246 ++
.../keycloak/auth_manager/routes/login.py | 15 -
.../airflow/providers/keycloak/version_compat.py | 1 +
.../keycloak/auth_manager/routes/test_login.py | 2 +
.../auth_manager/test_keycloak_auth_manager.py | 123 +-
.../unit/keycloak/auth_manager/test_middleware.py | 372 +++
providers/microsoft/azure/README.rst | 6 +-
providers/microsoft/azure/docs/changelog.rst | 25 +
providers/microsoft/azure/docs/index.rst | 6 +-
providers/microsoft/azure/provider.yaml | 7 +-
providers/microsoft/azure/pyproject.toml | 6 +-
.../airflow/providers/microsoft/azure/__init__.py | 2 +-
.../providers/microsoft/azure/get_provider_info.py | 6 +
.../microsoft/azure/log/wasb_task_handler.py | 35 +-
.../providers/microsoft/azure/secrets/key_vault.py | 56 +-
.../microsoft/azure/log/test_wasb_task_handler.py | 153 ++
.../unit/microsoft/azure/secrets/test_key_vault.py | 102 +
providers/neo4j/README.rst | 6 +-
providers/neo4j/docs/changelog.rst | 13 +
providers/neo4j/docs/index.rst | 6 +-
providers/neo4j/provider.yaml | 3 +-
providers/neo4j/pyproject.toml | 6 +-
.../neo4j/src/airflow/providers/neo4j/__init__.py | 2 +-
providers/openai/README.rst | 6 +-
providers/openai/docs/changelog.rst | 44 +
providers/openai/docs/index.rst | 6 +-
providers/openai/provider.yaml | 3 +-
providers/openai/pyproject.toml | 6 +-
.../src/airflow/providers/openai/__init__.py | 2 +-
.../src/airflow/providers/openai/exceptions.py | 4 +
.../src/airflow/providers/openai/hooks/openai.py | 26 +-
.../airflow/providers/openai/operators/openai.py | 8 +-
.../airflow/providers/openai/triggers/openai.py | 89 +-
.../openai/tests/unit/openai/hooks/test_openai.py | 39 +-
.../tests/unit/openai/operators/test_openai.py | 40 +
.../tests/unit/openai/triggers/test_openai.py | 133 +-
providers/openlineage/docs/changelog.rst | 11 +-
providers/openlineage/provider.yaml | 2 +-
providers/opensearch/README.rst | 6 +-
providers/opensearch/docs/changelog.rst | 12 +
providers/opensearch/docs/index.rst | 6 +-
providers/opensearch/provider.yaml | 3 +-
providers/opensearch/pyproject.toml | 6 +-
.../src/airflow/providers/opensearch/__init__.py | 2 +-
.../providers/opensearch/log/os_task_handler.py | 8 +-
.../unit/opensearch/log/test_os_task_handler.py | 8 +-
providers/papermill/README.rst | 18 +-
providers/papermill/docs/changelog.rst | 16 +
providers/papermill/docs/index.rst | 18 +-
providers/papermill/provider.yaml | 3 +-
providers/papermill/pyproject.toml | 21 +-
.../src/airflow/providers/papermill/__init__.py | 2 +-
providers/postgres/README.rst | 14 +-
providers/postgres/docs/changelog.rst | 17 +
providers/postgres/docs/index.rst | 14 +-
providers/postgres/provider.yaml | 3 +-
providers/postgres/pyproject.toml | 21 +-
.../src/airflow/providers/postgres/__init__.py | 2 +-
providers/presto/README.rst | 18 +-
providers/presto/docs/changelog.rst | 18 +
providers/presto/docs/index.rst | 18 +-
providers/presto/provider.yaml | 3 +-
providers/presto/pyproject.toml | 21 +-
.../src/airflow/providers/presto/__init__.py | 2 +-
providers/salesforce/README.rst | 18 +-
providers/salesforce/docs/changelog.rst | 12 +
providers/salesforce/docs/index.rst | 18 +-
providers/salesforce/provider.yaml | 3 +-
providers/salesforce/pyproject.toml | 21 +-
.../src/airflow/providers/salesforce/__init__.py | 2 +-
providers/sftp/README.rst | 6 +-
providers/sftp/docs/changelog.rst | 17 +
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 +-
providers/sftp/tests/unit/sftp/hooks/test_sftp.py | 5 +-
providers/smtp/README.rst | 6 +-
providers/smtp/docs/changelog.rst | 11 +
providers/smtp/docs/index.rst | 6 +-
providers/smtp/provider.yaml | 3 +-
providers/smtp/pyproject.toml | 6 +-
.../smtp/src/airflow/providers/smtp/__init__.py | 2 +-
providers/snowflake/README.rst | 12 +-
providers/snowflake/docs/changelog.rst | 28 +
providers/snowflake/docs/index.rst | 12 +-
providers/snowflake/provider.yaml | 3 +-
providers/snowflake/pyproject.toml | 21 +-
.../src/airflow/providers/snowflake/__init__.py | 2 +-
.../snowflake/operators/snowpark_containers.py | 4 +-
.../operators/test_snowpark_containers.py | 11 +-
providers/ssh/README.rst | 6 +-
providers/ssh/docs/changelog.rst | 21 +
providers/ssh/docs/index.rst | 6 +-
providers/ssh/provider.yaml | 3 +-
providers/ssh/pyproject.toml | 6 +-
.../ssh/src/airflow/providers/ssh/__init__.py | 2 +-
.../providers/ssh/operators/ssh_remote_job.py | 4 +-
.../src/airflow/providers/ssh/utils/remote_job.py | 22 +-
.../unit/ssh/operators/test_ssh_remote_job.py | 24 +
.../ssh/tests/unit/ssh/utils/test_remote_job.py | 21 +
providers/standard/README.rst | 6 +-
providers/standard/docs/changelog.rst | 38 +
providers/standard/docs/index.rst | 6 +-
providers/standard/provider.yaml | 3 +-
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../airflow/providers/standard/operators/hitl.py | 24 +-
.../providers/standard/sensors/date_time.py | 13 +-
.../providers/standard/sensors/filesystem.py | 17 +-
.../src/airflow/providers/standard/sensors/time.py | 9 +-
.../tests/unit/standard/operators/test_hitl.py | 11 +
.../tests/unit/standard/sensors/test_date_time.py | 32 +
.../tests/unit/standard/sensors/test_filesystem.py | 25 +
.../tests/unit/standard/sensors/test_time.py | 19 +
providers/telegram/README.rst | 6 +-
providers/telegram/docs/changelog.rst | 12 +
providers/telegram/docs/index.rst | 6 +-
providers/telegram/provider.yaml | 3 +-
providers/telegram/pyproject.toml | 6 +-
.../src/airflow/providers/telegram/__init__.py | 2 +-
.../providers/telegram/operators/telegram.py | 2 +-
.../tests/unit/telegram/operators/test_telegram.py | 17 +-
providers/teradata/README.rst | 6 +-
providers/teradata/docs/changelog.rst | 16 +
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 | 3 +-
.../tests/unit/teradata/operators/test_bteq.py | 3 +-
providers/trino/README.rst | 18 +-
providers/trino/docs/changelog.rst | 18 +
providers/trino/docs/index.rst | 18 +-
providers/trino/provider.yaml | 3 +-
providers/trino/pyproject.toml | 21 +-
.../trino/src/airflow/providers/trino/__init__.py | 2 +-
providers/weaviate/README.rst | 18 +-
providers/weaviate/docs/changelog.rst | 21 +
providers/weaviate/docs/connections.rst | 2 +-
providers/weaviate/docs/index.rst | 18 +-
providers/weaviate/provider.yaml | 3 +-
providers/weaviate/pyproject.toml | 21 +-
.../src/airflow/providers/weaviate/__init__.py | 2 +-
providers/yandex/README.rst | 6 +-
providers/yandex/docs/changelog.rst | 12 +
providers/yandex/docs/index.rst | 6 +-
providers/yandex/provider.yaml | 3 +-
providers/yandex/pyproject.toml | 6 +-
.../src/airflow/providers/yandex/__init__.py | 2 +-
.../airflow/providers/yandex/secrets/lockbox.py | 38 +-
.../tests/unit/yandex/secrets/test_lockbox.py | 73 +
registry/README.md | 8 +-
registry/scripts/build-pagefind-index.mjs | 10 +-
registry/src/_data/exploreCategories.js | 10 +-
registry/src/_data/exploreCategoryProviders.js | 13 +-
registry/src/_data/providerCategoryMap.js | 3 +-
registry/src/_data/providerKeywordMatch.js | 58 +
registry/src/js/provider-filters.js | 26 +-
registry/src/providers.njk | 4 +-
.../ci/prek/validate_operators_init_exemptions.txt | 3 -
task-sdk/pyproject.toml | 15 +-
task-sdk/src/airflow/sdk/api/client.py | 6 +-
task-sdk/src/airflow/sdk/definitions/deadline.py | 46 +-
.../sdk/execution_time/secrets/execution_api.py | 4 +-
task-sdk/src/airflow/sdk/serde/__init__.py | 13 +-
.../src/airflow/sdk/serde/serializers/pandas.py | 45 +
task-sdk/tests/task_sdk/api/test_client.py | 41 +
task-sdk/tests/task_sdk/serde/test_serde.py | 18 +-
task-sdk/tests/task_sdk/serde/test_serializers.py | 28 +
uv.lock | 178 +-
528 files changed, 12470 insertions(+), 3215 deletions(-)
create mode 100644 .github/actions/build_ci_image_with_cache/action.yml
create mode 100644 airflow-core/newsfragments/63185.significant.rst
create mode 100644 airflow-core/newsfragments/70708.bugfix.rst
create mode 100644 airflow-core/newsfragments/70759.significant.rst
create mode 100644 airflow-core/newsfragments/70791.significant.rst
create mode 100644
airflow-core/src/airflow/ui/src/components/TaskTrySelect.test.tsx
create mode 100644
airflow-core/src/airflow/ui/src/pages/TaskInstance/TaskInstance.test.tsx
create mode 100644
airflow-core/tests/unit/always/test_secrets_environment_variables.py
copy
airflow-core/{src/airflow/migrations/versions/0008_2_8_1_refactor_dag_run_indexes.py
=> tests/unit/api_fastapi/core_api/services/ui/test_dag_run.py} (52%)
create mode 100644 go-sdk/pkg/logging/hclogslog/hclogslog.go
create mode 100644 go-sdk/pkg/logging/hclogslog/hclogslog_test.go
create mode 100644 providers/cncf/kubernetes/docs/kubernetes_rbac.rst
create mode 100644
providers/google/src/airflow/providers/google/cloud/sensors/cloud_sql.py
create mode 100644
providers/google/tests/unit/google/cloud/sensors/test_cloud_sql.py
create mode 100644
providers/keycloak/src/airflow/providers/keycloak/auth_manager/middleware.py
create mode 100644
providers/keycloak/tests/unit/keycloak/auth_manager/test_middleware.py
create mode 100644 registry/src/_data/providerKeywordMatch.js