This is an automated email from the ASF dual-hosted git repository.

vincbeck pushed a change to branch vincbeck/fab_remove_sqla_limit
in repository https://gitbox.apache.org/repos/asf/airflow.git


    omit f3cc8f8eb37 Set `SQLALCHEMY_ENGINE_DEBUG`
    omit b1e42d1f9be Remove SQLA 1 limit in Fab provider
     add 51064ba2409 Fix mypy error in `scheduler_job_runner.py` (#59204)
     add 479acd8a77d i18n(Ko): add missing translation (Dec 8) (#59199)
     add 6d57acfa779 Remove labels from unexisted sections (#59213)
     add 4ea1ebf56c8 Added paginated_run method to KiotaRequestAdapterHook in 
MSGraph (#57536)
     add cfd82c7f9c5 Add newsfragment for 52357 PR (#59214)
     add 442979423f7 Fix outdated dependency documentation (#58970)
     add 84568391f21 Add is_watcher field to TriggerDetails TypedDict (#59161)
     add b20d1f62cd5 Fix broken syntax highlighting in AIR rules note section 
(#59188)
     add 0bf6f82d3d6 Fix side-effect of running version suffix replacements 
(#58937)
     add 3c2163729d3 Fix composer sys test (#59200)
     add 95658615b68 Keycloak CLI: add dry run functionality (#59134)
     add 216e7a722f7 Add max_trigger_to_select_per_loop conf to respect 
Triggerer HA setup (#58803)
     add 697ad4a3d40 Import empty operator from compat module for AF2/AF3 
support (#59222)
     add a0b3a3b8b48 Update BulkDeleteAction to use generic type (#59207)
     add be94a60ecc7 Remove unused functions in Core expandinput (#59225)
     add 087c656cf2a Completing stubbed tests for AssetEvent operations (#59182)
     add 4438c28bee1 Remove UUID case for sqlalachemy 2 from tests (#59230)
     add 7218cf04581 Fix links for DurationChart (#59095)
     add ac6e893af73 Add common: namespace to translation keys in AssetsList 
component for consistency. (#59227)
     add 787b8186b62 docs: adjust misleading docs (#59228)
     add 42d82cbc17a Permit `airflow db migrate -r` with an empty database 
(#59205)
     add a6c9066120a Fix incorrect state query parameter for task_instances 
(#59086)
     add c12afbdda46 Fix migration to add TI primary key for sqlite dialect 
(#59241)
     add 3b74a8d6920 Complete Hebrew translation 2025-12-09 (#59133)
     add 740da666b58 Don't depend upon FastAPI inside Task-SDK client (#59250)
     add 12a66dbccab Keycloak: implement connection pooling (#59252)
     add 11e127ba5fc Create `create_token` method in FAB auth manager (#59245)
     add 10558d8d154 Conditionally import from task sdk (#59254)
     add 861cf546cf0 Close the gaps in PL translation 2025-12-09 (#59251)
     add af5e469f8c2 Passwords from stdin in Keycloak Provider (#59119)
     add dac53df3ade Fix airflow version in migration (#59240)
     add 8e3f689e14e Fix remote logging S3 connection retrieval in supervisor 
context (#59247)
     add 38cf2147567 Prepare providers release 2025-12-09 (#59249)
     add afd53fd8b4c Fetch asset event source dag run (#59090)
     add 91ae1733791 Add wildcard support for dag_id and dag_run_id in bulk ti 
endpoint (#57441)
     add 4983b2a0236 Extract shared "module_loading" distribution (#59139)
     add 1e7e40ee595 Add CI workflow for UI e2e tests (#58901)
     add 0b6d2589df0 Fix an odd import of pendulum from sqlalchemy_utils 
instead of elsewhere. (#59258)
     add 997cd768afb Remove SQLA 1 limit in Fab provider
     add 3da6f88db8e Set `SQLALCHEMY_ENGINE_DEBUG`

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   (f3cc8f8eb37)
            \
             N -- N -- N   refs/heads/vincbeck/fab_remove_sqla_limit 
(3da6f88db8e)

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:
 .github/workflows/additional-prod-image-tests.yml  |   40 +
 .github/workflows/ci-amd-arm.yml                   |    2 +
 .../{airflow-e2e-tests.yml => ui-e2e-tests.yml}    |   68 +-
 airflow-core/.pre-commit-config.yaml               |    4 +-
 .../docs/authoring-and-scheduling/deferring.rst    |   13 +
 .../docs/authoring-and-scheduling/serializers.rst  |    2 +-
 airflow-core/docs/img/airflow_erd.sha256           |    2 +-
 airflow-core/docs/img/airflow_erd.svg              | 4949 +++++++++++---------
 airflow-core/docs/installation/dependencies.rst    |   22 +-
 .../docs/installation/upgrading_to_airflow3.rst    |    2 +-
 airflow-core/docs/migrations-ref.rst               |    6 +-
 airflow-core/pyproject.toml                        |    6 +-
 airflow-core/src/airflow/_shared/module_loading    |    1 +
 .../api_fastapi/core_api/datamodels/common.py      |    3 +-
 .../core_api/datamodels/task_instances.py          |    2 +
 .../core_api/openapi/v2-rest-api-generated.yaml    |   16 +-
 .../core_api/services/public/task_instances.py     |  353 +-
 .../api_fastapi/execution_api/routes/dag_runs.py   |  130 +-
 .../api_fastapi/execution_api/versions/__init__.py |    5 +
 .../versions/{v2025_09_23.py => v2025_12_08.py}    |   21 +-
 airflow-core/src/airflow/cli/cli_config.py         |    2 +-
 .../src/airflow/cli/commands/db_manager_command.py |    2 +-
 .../src/airflow/config_templates/config.yml        |    9 +
 airflow-core/src/airflow/configuration.py          |    2 +-
 .../src/airflow/dag_processing/bundles/base.py     |    5 +-
 .../src/airflow/dag_processing/bundles/manager.py  |    2 +-
 airflow-core/src/airflow/exceptions.py             |    2 +-
 .../src/airflow/executors/executor_loader.py       |    2 +-
 .../src/airflow/jobs/scheduler_job_runner.py       |    2 +
 .../src/airflow/jobs/triggerer_job_runner.py       |    3 +-
 airflow-core/src/airflow/logging_config.py         |    2 +-
 .../versions/0000_2_6_2_squashed_migrations.py     |  848 ++++
 .../0001_2_7_0_add_index_to_task_instance_table.py |    4 +-
 ...3_0_0_add_uuid_primary_key_to_task_instance_.py |   22 +-
 ...ove_team_id.py => 0094_3_2_0_remove_team_id.py} |    2 +-
 airflow-core/src/airflow/models/__init__.py        |    2 +-
 airflow-core/src/airflow/models/connection.py      |    2 +-
 airflow-core/src/airflow/models/expandinput.py     |   15 +-
 airflow-core/src/airflow/models/trigger.py         |    7 +
 airflow-core/src/airflow/plugins_manager.py        |    2 +-
 airflow-core/src/airflow/providers_manager.py      |    2 +-
 airflow-core/src/airflow/serialization/decoders.py |    2 +-
 airflow-core/src/airflow/serialization/encoders.py |    2 +-
 airflow-core/src/airflow/serialization/serde.py    |    2 +-
 .../airflow/serialization/serialized_objects.py    |    2 +-
 .../airflow/serialization/serializers/bignum.py    |    2 +-
 .../airflow/serialization/serializers/builtin.py   |    2 +-
 .../airflow/serialization/serializers/datetime.py  |    2 +-
 .../airflow/serialization/serializers/deltalake.py |    2 +-
 .../airflow/serialization/serializers/iceberg.py   |    2 +-
 .../serialization/serializers/kubernetes.py        |    2 +-
 .../src/airflow/serialization/serializers/numpy.py |    2 +-
 .../airflow/serialization/serializers/pandas.py    |    2 +-
 .../airflow/serialization/serializers/pydantic.py  |    2 +-
 .../airflow/serialization/serializers/timezone.py  |    2 +-
 airflow-core/src/airflow/task/priority_strategy.py |    2 +-
 airflow-core/src/airflow/triggers/callback.py      |    2 +-
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts |   28 +-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |    8 +-
 .../airflow/ui/public/i18n/locales/he/assets.json  |    7 +
 .../airflow/ui/public/i18n/locales/he/browse.json  |    4 -
 .../airflow/ui/public/i18n/locales/he/common.json  |   10 +-
 .../ui/public/i18n/locales/he/components.json      |   10 +
 .../src/airflow/ui/public/i18n/locales/he/dag.json |   12 +
 .../airflow/ui/public/i18n/locales/he/dags.json    |    5 +
 .../airflow/ui/public/i18n/locales/he/hitl.json    |    5 +-
 .../airflow/ui/public/i18n/locales/ko/common.json  |    1 +
 .../airflow/ui/public/i18n/locales/pl/assets.json  |    1 +
 .../airflow/ui/public/i18n/locales/pl/browse.json  |    4 -
 .../airflow/ui/public/i18n/locales/pl/common.json  |    3 +
 .../ui/public/i18n/locales/pl/components.json      |    3 +
 .../airflow/ui/src/components/DurationChart.tsx    |   17 +-
 .../airflow/ui/src/pages/AssetsList/AssetsList.tsx |    4 +-
 .../Dashboard/HistoricalMetrics/MetricSection.tsx  |    3 +-
 airflow-core/src/airflow/ui/tests/e2e/README.md    |  141 +-
 airflow-core/src/airflow/utils/db.py               |    9 +-
 airflow-core/src/airflow/utils/db_manager.py       |    2 +-
 .../src/airflow/utils/serve_logs/log_server.py     |    2 +-
 .../tests/unit/always/test_project_structure.py    |    1 -
 .../unit/api_fastapi/common/test_exceptions.py     |    7 +-
 .../core_api/routes/public/test_dag_run.py         |    2 +-
 .../core_api/routes/public/test_task_instances.py  |  170 +-
 .../services/public/test_task_instances.py         |  340 +-
 .../execution_api/versions/head/test_dag_runs.py   |  105 +-
 .../versions/v2025_11_07}/__init__.py              |    0
 .../versions/v2025_11_07/test_dag_runs.py          |   62 +
 .../tests/unit/core/test_example_dags_system.py    |    2 +-
 .../tests/unit/dag_processing/test_processor.py    |    2 +
 airflow-core/tests/unit/jobs/test_triggerer_job.py |    6 +-
 airflow-core/tests/unit/models/test_dag.py         |    2 +-
 airflow-core/tests/unit/models/test_trigger.py     |   91 +
 .../tests/unit/plugins/test_plugins_manager.py     |    2 +-
 .../serialization/serializers/test_serializers.py  |    2 +-
 .../unit/serialization/test_dag_serialization.py   |    2 +-
 .../tests/unit/serialization/test_serde.py         |    2 +-
 .../tests/unit/utils/test_module_loading.py        |   35 -
 .../src/airflowctl/api/datamodels/generated.py     |  124 +-
 chart/newsfragments/52357.improvement.rst          |    1 +
 .../workers/worker-celery-serviceaccount.yaml      |    4 +-
 .../workers/worker-kubernetes-serviceaccount.yaml  |    4 +-
 .../doc/images/output_testing_ui-e2e-tests.svg     |   80 +-
 .../doc/images/output_testing_ui-e2e-tests.txt     |    2 +-
 .../src/airflow_breeze/commands/common_options.py  |    6 +-
 .../airflow_breeze/commands/testing_commands.py    |  153 +-
 .../commands/testing_commands_config.py            |    8 +
 .../airflow_breeze/utils/docker_compose_utils.py   |  165 +
 .../src/airflow_breeze/utils/selective_checks.py   |    4 +
 dev/breeze/tests/test_packages.py                  |   46 +-
 .../src/tests_common/test_utils/providers.py       |    2 +-
 providers/.last_release_date.txt                   |    2 +-
 providers/airbyte/README.rst                       |    8 +-
 providers/airbyte/docs/changelog.rst               |   11 +
 providers/airbyte/docs/index.rst                   |    8 +-
 providers/airbyte/provider.yaml                    |    3 +-
 providers/airbyte/pyproject.toml                   |    8 +-
 .../src/airflow/providers/airbyte/__init__.py      |    2 +-
 providers/alibaba/README.rst                       |    8 +-
 providers/alibaba/docs/changelog.rst               |   11 +
 providers/alibaba/docs/index.rst                   |    8 +-
 providers/alibaba/provider.yaml                    |    3 +-
 providers/alibaba/pyproject.toml                   |    8 +-
 .../src/airflow/providers/alibaba/__init__.py      |    2 +-
 providers/amazon/README.rst                        |    9 +-
 providers/amazon/docs/changelog.rst                |   25 +
 providers/amazon/docs/index.rst                    |    8 +-
 providers/amazon/provider.yaml                     |    3 +-
 providers/amazon/pyproject.toml                    |    8 +-
 .../src/airflow/providers/amazon/__init__.py       |    2 +-
 .../aws/example_bedrock_retrieve_and_generate.py   |    2 +-
 .../amazon/tests/system/amazon/aws/example_ssm.py  |   11 +-
 .../amazon/aws/log/test_cloudwatch_task_handler.py |    2 +-
 .../unit/amazon/aws/log/test_s3_task_handler.py    |    2 +-
 providers/apache/beam/README.rst                   |   38 +-
 providers/apache/beam/docs/changelog.rst           |   11 +
 providers/apache/beam/docs/index.rst               |   27 +-
 providers/apache/beam/provider.yaml                |    3 +-
 providers/apache/beam/pyproject.toml               |    8 +-
 .../src/airflow/providers/apache/beam/__init__.py  |    2 +-
 providers/apache/druid/README.rst                  |    8 +-
 providers/apache/druid/docs/changelog.rst          |   11 +
 providers/apache/druid/docs/index.rst              |    8 +-
 providers/apache/druid/provider.yaml               |    3 +-
 providers/apache/druid/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/druid/__init__.py |    2 +-
 providers/apache/flink/README.rst                  |   16 +-
 providers/apache/flink/docs/changelog.rst          |   11 +
 providers/apache/flink/docs/index.rst              |    7 +-
 providers/apache/flink/provider.yaml               |    3 +-
 providers/apache/flink/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/flink/__init__.py |    2 +-
 providers/apache/hdfs/README.rst                   |   34 +-
 providers/apache/hdfs/docs/changelog.rst           |   11 +
 providers/apache/hdfs/docs/index.rst               |   25 +-
 providers/apache/hdfs/provider.yaml                |    3 +-
 providers/apache/hdfs/pyproject.toml               |    8 +-
 .../src/airflow/providers/apache/hdfs/__init__.py  |    2 +-
 providers/apache/hive/README.rst                   |    8 +-
 providers/apache/hive/docs/changelog.rst           |   11 +
 providers/apache/hive/docs/index.rst               |    8 +-
 providers/apache/hive/provider.yaml                |    3 +-
 providers/apache/hive/pyproject.toml               |    8 +-
 .../src/airflow/providers/apache/hive/__init__.py  |    2 +-
 providers/apache/kafka/README.rst                  |   22 +-
 providers/apache/kafka/docs/changelog.rst          |   11 +
 providers/apache/kafka/docs/index.rst              |   21 +-
 providers/apache/kafka/provider.yaml               |    3 +-
 providers/apache/kafka/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/kafka/__init__.py |    2 +-
 .../providers/apache/kafka/hooks/consume.py        |    2 +-
 .../providers/apache/kafka/operators/consume.py    |    2 +-
 .../providers/apache/kafka/operators/produce.py    |    2 +-
 .../apache/kafka/triggers/await_message.py         |    2 +-
 providers/apache/kylin/README.rst                  |    8 +-
 providers/apache/kylin/docs/changelog.rst          |   11 +
 providers/apache/kylin/docs/index.rst              |    8 +-
 providers/apache/kylin/provider.yaml               |    3 +-
 providers/apache/kylin/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/kylin/__init__.py |    2 +-
 providers/apache/livy/README.rst                   |    8 +-
 providers/apache/livy/docs/changelog.rst           |   11 +
 providers/apache/livy/docs/index.rst               |    8 +-
 providers/apache/livy/provider.yaml                |    3 +-
 providers/apache/livy/pyproject.toml               |    8 +-
 .../src/airflow/providers/apache/livy/__init__.py  |    2 +-
 providers/apache/pig/README.rst                    |   26 +-
 providers/apache/pig/docs/changelog.rst            |   11 +
 providers/apache/pig/docs/index.rst                |   17 +-
 providers/apache/pig/provider.yaml                 |    3 +-
 providers/apache/pig/pyproject.toml                |    8 +-
 .../src/airflow/providers/apache/pig/__init__.py   |    2 +-
 providers/apache/pinot/README.rst                  |   30 +-
 providers/apache/pinot/docs/changelog.rst          |   11 +
 providers/apache/pinot/docs/index.rst              |   21 +-
 providers/apache/pinot/provider.yaml               |    3 +-
 providers/apache/pinot/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/pinot/__init__.py |    2 +-
 providers/apache/spark/README.rst                  |    8 +-
 providers/apache/spark/docs/changelog.rst          |   11 +
 providers/apache/spark/docs/index.rst              |    8 +-
 providers/apache/spark/provider.yaml               |    3 +-
 providers/apache/spark/pyproject.toml              |    8 +-
 .../src/airflow/providers/apache/spark/__init__.py |    2 +-
 providers/arangodb/README.rst                      |    8 +-
 providers/arangodb/docs/changelog.rst              |   11 +
 providers/arangodb/docs/index.rst                  |    8 +-
 providers/arangodb/provider.yaml                   |    3 +-
 providers/arangodb/pyproject.toml                  |    8 +-
 .../src/airflow/providers/arangodb/__init__.py     |    2 +-
 .../jira/docs/.latest-doc-only-change.txt          |    2 +-
 providers/atlassian/jira/pyproject.toml            |    2 +-
 providers/celery/README.rst                        |    8 +-
 providers/celery/docs/changelog.rst                |   13 +
 providers/celery/docs/index.rst                    |    8 +-
 providers/celery/provider.yaml                     |    3 +-
 providers/celery/pyproject.toml                    |    8 +-
 .../src/airflow/providers/celery/__init__.py       |    2 +-
 providers/cloudant/README.rst                      |    8 +-
 providers/cloudant/docs/changelog.rst              |   11 +
 providers/cloudant/docs/index.rst                  |    8 +-
 providers/cloudant/provider.yaml                   |    3 +-
 providers/cloudant/pyproject.toml                  |    8 +-
 .../src/airflow/providers/cloudant/__init__.py     |    2 +-
 providers/cncf/kubernetes/README.rst               |    9 +-
 providers/cncf/kubernetes/docs/changelog.rst       |   19 +
 providers/cncf/kubernetes/docs/index.rst           |    9 +-
 providers/cncf/kubernetes/provider.yaml            |    3 +-
 providers/cncf/kubernetes/pyproject.toml           |    8 +-
 .../airflow/providers/cncf/kubernetes/__init__.py  |    2 +-
 providers/common/compat/README.rst                 |    6 +-
 providers/common/compat/docs/changelog.rst         |   13 +
 providers/common/compat/docs/index.rst             |    6 +-
 providers/common/compat/provider.yaml              |    3 +-
 providers/common/compat/pyproject.toml             |    6 +-
 .../airflow/providers/common/compat/__init__.py    |    2 +-
 .../common/compat/module_loading/__init__.py       |   64 +-
 .../messaging/docs/.latest-doc-only-change.txt     |    2 +-
 providers/common/sql/README.rst                    |    8 +-
 providers/common/sql/docs/changelog.rst            |   12 +
 providers/common/sql/docs/index.rst                |    8 +-
 providers/common/sql/provider.yaml                 |    3 +-
 providers/common/sql/pyproject.toml                |    8 +-
 .../src/airflow/providers/common/sql/__init__.py   |    2 +-
 .../src/airflow/providers/common/sql/hooks/sql.py  |    4 +-
 providers/databricks/README.rst                    |    8 +-
 providers/databricks/docs/changelog.rst            |   12 +
 providers/databricks/docs/index.rst                |    8 +-
 providers/databricks/provider.yaml                 |    3 +-
 providers/databricks/pyproject.toml                |    8 +-
 .../src/airflow/providers/databricks/__init__.py   |    2 +-
 providers/datadog/README.rst                       |    8 +-
 providers/datadog/docs/changelog.rst               |   11 +
 providers/datadog/docs/index.rst                   |    8 +-
 providers/datadog/provider.yaml                    |    3 +-
 providers/datadog/pyproject.toml                   |    8 +-
 .../src/airflow/providers/datadog/__init__.py      |    2 +-
 providers/dbt/cloud/README.rst                     |    8 +-
 providers/dbt/cloud/docs/changelog.rst             |   17 +
 providers/dbt/cloud/docs/index.rst                 |    8 +-
 providers/dbt/cloud/provider.yaml                  |    3 +-
 providers/dbt/cloud/pyproject.toml                 |    8 +-
 .../src/airflow/providers/dbt/cloud/__init__.py    |    2 +-
 providers/dingding/README.rst                      |    8 +-
 providers/dingding/docs/changelog.rst              |   11 +
 providers/dingding/docs/index.rst                  |    8 +-
 providers/dingding/provider.yaml                   |    3 +-
 providers/dingding/pyproject.toml                  |    8 +-
 .../src/airflow/providers/dingding/__init__.py     |    2 +-
 providers/discord/README.rst                       |    8 +-
 providers/discord/docs/changelog.rst               |   11 +
 providers/discord/docs/index.rst                   |    8 +-
 providers/discord/provider.yaml                    |    3 +-
 providers/discord/pyproject.toml                   |    8 +-
 .../src/airflow/providers/discord/__init__.py      |    2 +-
 providers/docker/README.rst                        |    8 +-
 providers/docker/docs/changelog.rst                |   16 +
 providers/docker/docs/index.rst                    |    8 +-
 providers/docker/provider.yaml                     |    3 +-
 providers/docker/pyproject.toml                    |    8 +-
 .../src/airflow/providers/docker/__init__.py       |    2 +-
 providers/edge3/README.rst                         |   14 +-
 providers/edge3/docs/changelog.rst                 |   18 +
 providers/edge3/docs/index.rst                     |   14 +-
 providers/edge3/provider.yaml                      |    3 +-
 providers/edge3/pyproject.toml                     |    8 +-
 .../edge3/src/airflow/providers/edge3/__init__.py  |    2 +-
 providers/elasticsearch/README.rst                 |    8 +-
 providers/elasticsearch/docs/changelog.rst         |   11 +
 providers/elasticsearch/docs/index.rst             |    8 +-
 providers/elasticsearch/provider.yaml              |    3 +-
 providers/elasticsearch/pyproject.toml             |    8 +-
 .../airflow/providers/elasticsearch/__init__.py    |    2 +-
 .../providers/elasticsearch/log/es_task_handler.py |    2 +-
 providers/fab/README.rst                           |    8 +-
 providers/fab/docs/auth-manager/access-control.rst |    2 +-
 .../fab/docs/auth-manager/api-authentication.rst   |    6 +-
 providers/fab/docs/auth-manager/token.rst          |  118 +-
 providers/fab/docs/changelog.rst                   |   31 +
 providers/fab/docs/index.rst                       |    8 +-
 providers/fab/provider.yaml                        |    3 +-
 providers/fab/pyproject.toml                       |    8 +-
 .../fab/src/airflow/providers/fab/__init__.py      |    2 +-
 .../auth_manager/api_fastapi/datamodels/login.py   |    7 -
 .../openapi/v2-fab-auth-manager-generated.yaml     |   22 +-
 .../fab/auth_manager/api_fastapi/routes/login.py   |   15 +-
 .../fab/auth_manager/api_fastapi/services/login.py |   37 +-
 .../providers/fab/auth_manager/fab_auth_manager.py |   27 +
 ...y => 0000_1_4_0_create_ab_tables_if_missing.py} |    0
 .../auth_manager/api_fastapi/routes/test_login.py  |    8 +-
 .../api_fastapi/services/test_login.py             |   62 +-
 .../unit/fab/auth_manager/test_fab_auth_manager.py |   45 +-
 providers/facebook/README.rst                      |    8 +-
 providers/facebook/docs/changelog.rst              |   11 +
 providers/facebook/docs/index.rst                  |    8 +-
 providers/facebook/provider.yaml                   |    3 +-
 providers/facebook/pyproject.toml                  |    8 +-
 .../src/airflow/providers/facebook/__init__.py     |    2 +-
 providers/git/README.rst                           |    8 +-
 providers/git/docs/changelog.rst                   |   17 +
 providers/git/docs/index.rst                       |    8 +-
 providers/git/provider.yaml                        |    3 +-
 providers/git/pyproject.toml                       |    8 +-
 .../git/src/airflow/providers/git/__init__.py      |    2 +-
 providers/github/README.rst                        |    8 +-
 providers/github/docs/changelog.rst                |   11 +
 providers/github/docs/index.rst                    |    8 +-
 providers/github/provider.yaml                     |    3 +-
 providers/github/pyproject.toml                    |    8 +-
 .../src/airflow/providers/github/__init__.py       |    2 +-
 providers/google/README.rst                        |    8 +-
 providers/google/docs/changelog.rst                |   18 +
 providers/google/docs/index.rst                    |    8 +-
 providers/google/provider.yaml                     |    3 +-
 providers/google/pyproject.toml                    |    8 +-
 .../src/airflow/providers/google/__init__.py       |    2 +-
 .../cloud/composer/example_cloud_composer.py       |    2 +-
 providers/http/README.rst                          |    8 +-
 providers/http/docs/changelog.rst                  |   16 +
 providers/http/docs/index.rst                      |    8 +-
 providers/http/provider.yaml                       |    3 +-
 providers/http/pyproject.toml                      |    8 +-
 .../http/src/airflow/providers/http/__init__.py    |    2 +-
 providers/imap/README.rst                          |    8 +-
 providers/imap/docs/changelog.rst                  |   11 +
 providers/imap/docs/index.rst                      |    8 +-
 providers/imap/provider.yaml                       |    3 +-
 providers/imap/pyproject.toml                      |    8 +-
 .../imap/src/airflow/providers/imap/__init__.py    |    2 +-
 providers/jdbc/README.rst                          |    8 +-
 providers/jdbc/docs/changelog.rst                  |   11 +
 providers/jdbc/docs/index.rst                      |    8 +-
 providers/jdbc/provider.yaml                       |    3 +-
 providers/jdbc/pyproject.toml                      |    8 +-
 .../jdbc/src/airflow/providers/jdbc/__init__.py    |    2 +-
 providers/jenkins/README.rst                       |    8 +-
 providers/jenkins/docs/changelog.rst               |   11 +
 providers/jenkins/docs/index.rst                   |    8 +-
 providers/jenkins/provider.yaml                    |    3 +-
 providers/jenkins/pyproject.toml                   |    8 +-
 .../src/airflow/providers/jenkins/__init__.py      |    2 +-
 providers/keycloak/README.rst                      |   38 +-
 .../docs/auth-manager/manage/permissions.rst       |    6 +-
 providers/keycloak/docs/changelog.rst              |   27 +
 providers/keycloak/docs/index.rst                  |   43 +-
 providers/keycloak/provider.yaml                   |   19 +-
 providers/keycloak/pyproject.toml                  |    8 +-
 .../src/airflow/providers/keycloak/__init__.py     |    2 +-
 .../keycloak/auth_manager/cli/commands.py          |  227 +-
 .../keycloak/auth_manager/cli/definition.py        |   32 +-
 .../providers/keycloak/auth_manager/cli/utils.py   |   81 +
 .../providers/keycloak/auth_manager/constants.py   |    2 +
 .../keycloak/auth_manager/keycloak_auth_manager.py |   39 +-
 .../providers/keycloak/get_provider_info.py        |   14 +
 .../keycloak/auth_manager/cli/test_commands.py     |  278 +-
 .../keycloak/auth_manager/cli/test_definition.py   |   85 +-
 .../unit/keycloak/auth_manager/cli/test_utils.py   |   61 +
 .../auth_manager/test_keycloak_auth_manager.py     |   74 +-
 providers/microsoft/azure/README.rst               |    8 +-
 providers/microsoft/azure/docs/changelog.rst       |   21 +
 providers/microsoft/azure/docs/index.rst           |    8 +-
 providers/microsoft/azure/provider.yaml            |    3 +-
 providers/microsoft/azure/pyproject.toml           |    8 +-
 .../airflow/providers/microsoft/azure/__init__.py  |    2 +-
 .../providers/microsoft/azure/hooks/msgraph.py     |  159 +-
 .../providers/microsoft/azure/operators/msgraph.py |   21 +-
 .../providers/microsoft/azure/triggers/msgraph.py  |    2 +-
 .../unit/microsoft/azure/hooks/test_msgraph.py     |   99 +
 providers/microsoft/psrp/README.rst                |    8 +-
 providers/microsoft/psrp/docs/changelog.rst        |   11 +
 providers/microsoft/psrp/docs/index.rst            |    8 +-
 providers/microsoft/psrp/provider.yaml             |    3 +-
 providers/microsoft/psrp/pyproject.toml            |    8 +-
 .../airflow/providers/microsoft/psrp/__init__.py   |    2 +-
 providers/microsoft/winrm/README.rst               |    8 +-
 providers/microsoft/winrm/docs/changelog.rst       |   11 +
 providers/microsoft/winrm/docs/index.rst           |    8 +-
 providers/microsoft/winrm/provider.yaml            |    3 +-
 providers/microsoft/winrm/pyproject.toml           |    8 +-
 .../airflow/providers/microsoft/winrm/__init__.py  |    2 +-
 providers/neo4j/README.rst                         |    8 +-
 providers/neo4j/docs/changelog.rst                 |   11 +
 providers/neo4j/docs/index.rst                     |    8 +-
 providers/neo4j/provider.yaml                      |    3 +-
 providers/neo4j/pyproject.toml                     |    8 +-
 .../neo4j/src/airflow/providers/neo4j/__init__.py  |    2 +-
 providers/openai/README.rst                        |    8 +-
 providers/openai/docs/changelog.rst                |   11 +
 providers/openai/docs/index.rst                    |    8 +-
 providers/openai/provider.yaml                     |    3 +-
 providers/openai/pyproject.toml                    |    8 +-
 .../src/airflow/providers/openai/__init__.py       |    2 +-
 providers/openfaas/README.rst                      |    8 +-
 providers/openfaas/docs/changelog.rst              |   11 +
 providers/openfaas/docs/index.rst                  |    8 +-
 providers/openfaas/provider.yaml                   |    3 +-
 providers/openfaas/pyproject.toml                  |    8 +-
 .../src/airflow/providers/openfaas/__init__.py     |    2 +-
 providers/openlineage/README.rst                   |    8 +-
 providers/openlineage/docs/changelog.rst           |   15 +
 providers/openlineage/docs/index.rst               |    8 +-
 providers/openlineage/provider.yaml                |    3 +-
 providers/openlineage/pyproject.toml               |    8 +-
 .../src/airflow/providers/openlineage/__init__.py  |    2 +-
 .../airflow/providers/openlineage/utils/utils.py   |    2 +-
 providers/opensearch/README.rst                    |    8 +-
 providers/opensearch/docs/changelog.rst            |   11 +
 providers/opensearch/docs/index.rst                |    8 +-
 providers/opensearch/provider.yaml                 |    3 +-
 providers/opensearch/pyproject.toml                |    8 +-
 .../src/airflow/providers/opensearch/__init__.py   |    2 +-
 .../providers/opensearch/log/os_task_handler.py    |    2 +-
 providers/pagerduty/README.rst                     |    8 +-
 providers/pagerduty/docs/changelog.rst             |   11 +
 providers/pagerduty/docs/index.rst                 |    8 +-
 providers/pagerduty/provider.yaml                  |    3 +-
 providers/pagerduty/pyproject.toml                 |    8 +-
 .../src/airflow/providers/pagerduty/__init__.py    |    2 +-
 providers/postgres/README.rst                      |    8 +-
 providers/postgres/docs/changelog.rst              |   11 +
 providers/postgres/docs/index.rst                  |    8 +-
 providers/postgres/provider.yaml                   |    3 +-
 providers/postgres/pyproject.toml                  |    8 +-
 .../src/airflow/providers/postgres/__init__.py     |    2 +-
 providers/presto/README.rst                        |    8 +-
 providers/presto/docs/changelog.rst                |   11 +
 providers/presto/docs/index.rst                    |    8 +-
 providers/presto/provider.yaml                     |    3 +-
 providers/presto/pyproject.toml                    |    8 +-
 .../src/airflow/providers/presto/__init__.py       |    2 +-
 providers/redis/README.rst                         |    8 +-
 providers/redis/docs/changelog.rst                 |   16 +
 providers/redis/docs/index.rst                     |    8 +-
 providers/redis/provider.yaml                      |    3 +-
 providers/redis/pyproject.toml                     |    8 +-
 .../redis/src/airflow/providers/redis/__init__.py  |    2 +-
 providers/salesforce/README.rst                    |    8 +-
 providers/salesforce/docs/changelog.rst            |   11 +
 providers/salesforce/docs/index.rst                |    8 +-
 providers/salesforce/provider.yaml                 |    3 +-
 providers/salesforce/pyproject.toml                |    8 +-
 .../src/airflow/providers/salesforce/__init__.py   |    2 +-
 providers/samba/README.rst                         |    8 +-
 providers/samba/docs/changelog.rst                 |   11 +
 providers/samba/docs/index.rst                     |    8 +-
 providers/samba/provider.yaml                      |    3 +-
 providers/samba/pyproject.toml                     |    8 +-
 .../samba/src/airflow/providers/samba/__init__.py  |    2 +-
 providers/segment/README.rst                       |    8 +-
 providers/segment/docs/changelog.rst               |   11 +
 providers/segment/docs/index.rst                   |    8 +-
 providers/segment/provider.yaml                    |    3 +-
 providers/segment/pyproject.toml                   |    8 +-
 .../src/airflow/providers/segment/__init__.py      |    2 +-
 providers/sftp/README.rst                          |    8 +-
 providers/sftp/docs/changelog.rst                  |   16 +
 providers/sftp/docs/index.rst                      |    8 +-
 providers/sftp/provider.yaml                       |    3 +-
 providers/sftp/pyproject.toml                      |    8 +-
 .../sftp/src/airflow/providers/sftp/__init__.py    |    2 +-
 providers/singularity/README.rst                   |    8 +-
 providers/singularity/docs/changelog.rst           |   11 +
 providers/singularity/docs/index.rst               |    8 +-
 providers/singularity/provider.yaml                |    3 +-
 providers/singularity/pyproject.toml               |    8 +-
 .../src/airflow/providers/singularity/__init__.py  |    2 +-
 providers/slack/README.rst                         |    8 +-
 providers/slack/docs/changelog.rst                 |   11 +
 providers/slack/docs/index.rst                     |    8 +-
 providers/slack/provider.yaml                      |    3 +-
 providers/slack/pyproject.toml                     |    8 +-
 .../slack/src/airflow/providers/slack/__init__.py  |    2 +-
 providers/smtp/README.rst                          |    8 +-
 providers/smtp/docs/changelog.rst                  |   11 +
 providers/smtp/docs/index.rst                      |    8 +-
 providers/smtp/provider.yaml                       |    3 +-
 providers/smtp/pyproject.toml                      |    8 +-
 .../smtp/src/airflow/providers/smtp/__init__.py    |    2 +-
 providers/snowflake/README.rst                     |    8 +-
 providers/snowflake/docs/changelog.rst             |   17 +
 providers/snowflake/docs/index.rst                 |    8 +-
 providers/snowflake/provider.yaml                  |    3 +-
 providers/snowflake/pyproject.toml                 |    8 +-
 .../src/airflow/providers/snowflake/__init__.py    |    2 +-
 providers/ssh/README.rst                           |    8 +-
 providers/ssh/docs/changelog.rst                   |   11 +
 providers/ssh/docs/index.rst                       |    8 +-
 providers/ssh/provider.yaml                        |    3 +-
 providers/ssh/pyproject.toml                       |    8 +-
 .../ssh/src/airflow/providers/ssh/__init__.py      |    2 +-
 providers/standard/README.rst                      |    8 +-
 providers/standard/docs/changelog.rst              |   18 +
 providers/standard/docs/index.rst                  |    8 +-
 providers/standard/provider.yaml                   |    3 +-
 providers/standard/pyproject.toml                  |    8 +-
 .../src/airflow/providers/standard/__init__.py     |    2 +-
 providers/tableau/README.rst                       |    8 +-
 providers/tableau/docs/changelog.rst               |   11 +
 providers/tableau/docs/index.rst                   |    8 +-
 providers/tableau/provider.yaml                    |    3 +-
 providers/tableau/pyproject.toml                   |    8 +-
 .../src/airflow/providers/tableau/__init__.py      |    2 +-
 providers/telegram/README.rst                      |    8 +-
 providers/telegram/docs/changelog.rst              |   11 +
 providers/telegram/docs/index.rst                  |    8 +-
 providers/telegram/provider.yaml                   |    3 +-
 providers/telegram/pyproject.toml                  |    8 +-
 .../src/airflow/providers/telegram/__init__.py     |    2 +-
 providers/teradata/README.rst                      |    8 +-
 providers/teradata/docs/changelog.rst              |   11 +
 providers/teradata/docs/index.rst                  |    8 +-
 providers/teradata/provider.yaml                   |    3 +-
 providers/teradata/pyproject.toml                  |    8 +-
 .../src/airflow/providers/teradata/__init__.py     |    2 +-
 providers/trino/README.rst                         |    8 +-
 providers/trino/docs/changelog.rst                 |   11 +
 providers/trino/docs/index.rst                     |    8 +-
 providers/trino/provider.yaml                      |    3 +-
 providers/trino/pyproject.toml                     |    8 +-
 .../trino/src/airflow/providers/trino/__init__.py  |    2 +-
 providers/ydb/README.rst                           |   36 +-
 providers/ydb/docs/changelog.rst                   |   11 +
 providers/ydb/docs/index.rst                       |   36 +-
 providers/ydb/provider.yaml                        |    3 +-
 providers/ydb/pyproject.toml                       |    8 +-
 .../ydb/src/airflow/providers/ydb/__init__.py      |    2 +-
 pyproject.toml                                     |    3 +
 scripts/in_container/run_migration_reference.py    |    2 +-
 shared/configuration/pyproject.toml                |    1 +
 .../src/airflow_shared/configuration/parser.py     |    2 +-
 .../{timezones => module_loading}/pyproject.toml   |    6 +-
 .../src/airflow_shared/module_loading/__init__.py  |   22 +
 .../tests/conftest.py                              |    0
 .../tests/module_loading}/__init__.py              |    0
 .../tests/module_loading}/test_module_loading.py   |   20 +-
 task-sdk-integration-tests/dags/test_asset_dag.py  |   11 +-
 .../tests/task_sdk_tests/conftest.py               |    1 +
 .../task_sdk_tests/test_asset_event_operations.py  |   56 +-
 .../task_sdk_tests/test_dag_run_operations.py      |    4 +-
 task-sdk/pyproject.toml                            |    6 +-
 task-sdk/src/airflow/sdk/_shared/module_loading    |    1 +
 task-sdk/src/airflow/sdk/api/client.py             |   11 +-
 .../src/airflow/sdk/api/datamodels/_generated.py   |    2 +-
 task-sdk/src/airflow/sdk/configuration.py          |    2 +-
 task-sdk/src/airflow/sdk/definitions/callback.py   |    2 +-
 task-sdk/src/airflow/sdk/definitions/connection.py |    2 +-
 task-sdk/src/airflow/sdk/definitions/dag.py        |    2 +-
 task-sdk/src/airflow/sdk/execution_time/comms.py   |  102 +-
 .../src/airflow/sdk/execution_time/supervisor.py   |   21 +-
 task-sdk/src/airflow/sdk/io/fs.py                  |    2 +-
 task-sdk/src/airflow/sdk/io/store.py               |    2 +-
 task-sdk/src/airflow/sdk/module_loading.py         |   71 +-
 task-sdk/tests/task_sdk/api/test_client.py         |   23 +-
 .../tests/task_sdk/definitions/test_callback.py    |    2 +-
 .../tests/task_sdk/definitions/test_connection.py  |    2 +-
 .../task_sdk/definitions/test_module_loading.py    |   23 -
 .../tests/task_sdk/execution_time/test_context.py  |   93 +-
 .../tests/task_sdk/execution_time/test_sentry.py   |    2 +-
 .../task_sdk/execution_time/test_supervisor.py     |  114 +-
 task-sdk/tests/task_sdk/io/test_path.py            |    2 +-
 578 files changed, 9093 insertions(+), 4560 deletions(-)
 copy .github/workflows/{airflow-e2e-tests.yml => ui-e2e-tests.yml} (68%)
 create mode 120000 airflow-core/src/airflow/_shared/module_loading
 copy 
airflow-core/src/airflow/api_fastapi/execution_api/versions/{v2025_09_23.py => 
v2025_12_08.py} (59%)
 create mode 100644 
airflow-core/src/airflow/migrations/versions/0000_2_6_2_squashed_migrations.py
 rename 
airflow-core/src/airflow/migrations/versions/{0094_3_1_0_remove_team_id.py => 
0094_3_2_0_remove_team_id.py} (99%)
 copy airflow-core/{src/airflow/_shared => 
tests/unit/api_fastapi/execution_api/versions/v2025_11_07}/__init__.py (100%)
 create mode 100644 
airflow-core/tests/unit/api_fastapi/execution_api/versions/v2025_11_07/test_dag_runs.py
 delete mode 100644 airflow-core/tests/unit/utils/test_module_loading.py
 create mode 100644 chart/newsfragments/52357.improvement.rst
 create mode 100644 dev/breeze/src/airflow_breeze/utils/docker_compose_utils.py
 copy airflow-core/tests/unit/listeners/lifecycle_listener.py => 
providers/common/compat/src/airflow/providers/common/compat/module_loading/__init__.py
 (52%)
 rename 
providers/fab/src/airflow/providers/fab/migrations/versions/{0001_1_4_0_create_ab_tables_if_missing.py
 => 0000_1_4_0_create_ab_tables_if_missing.py} (100%)
 create mode 100644 
providers/keycloak/src/airflow/providers/keycloak/auth_manager/cli/utils.py
 create mode 100644 
providers/keycloak/tests/unit/keycloak/auth_manager/cli/test_utils.py
 copy shared/{timezones => module_loading}/pyproject.toml (89%)
 rename airflow-core/src/airflow/utils/module_loading.py => 
shared/module_loading/src/airflow_shared/module_loading/__init__.py (77%)
 copy shared/{observability => module_loading}/tests/conftest.py (100%)
 copy {airflow-core/src/airflow/api/common => 
shared/module_loading/tests/module_loading}/__init__.py (100%)
 copy {task-sdk/tests/task_sdk/definitions => 
shared/module_loading/tests/module_loading}/test_module_loading.py (72%)
 create mode 120000 task-sdk/src/airflow/sdk/_shared/module_loading


Reply via email to