This is an automated email from the ASF dual-hosted git repository.
Lee-W pushed a change to branch ci-upgrade-main
in repository https://gitbox.apache.org/repos/asf/airflow.git
omit 4a319ea0579 [main] CI: Upgrade important CI environment
add 231b3e056b2 Squash unreleased execution API version entries into
2026-06-16 (#66693)
add c92e541208f feat: Add uri sanitizers and asset factories for new
schemes (#66426)
add 1e4841bcb5b [main] CI: Upgrade important CI environment
add cf4324f45c8 fix(mypy): narrow list types for weaviate hook and pytest
plugin
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 (4a319ea0579)
\
N -- N -- N refs/heads/ci-upgrade-main (cf4324f45c8)
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:
Dockerfile | 2 +-
Dockerfile.ci | 2 +-
airflow-core/pyproject.toml | 2 +-
.../api_fastapi/execution_api/versions/__init__.py | 8 +-
.../execution_api/versions/v2026_04_17.py | 65 --
.../execution_api/versions/v2026_06_16.py | 51 +-
dev/breeze/doc/ci/02_images.md | 2 +-
.../commands/release_management_commands.py | 4 +-
dev/breeze/src/airflow_breeze/global_constants.py | 2 +-
dev/breeze/uv.lock | 74 +-
devel-common/pyproject.toml | 2 +-
devel-common/src/tests_common/pytest_plugin.py | 2 +-
providers/amazon/provider.yaml | 8 +
.../providers/amazon/aws/assets/redshift.py} | 23 +-
.../airflow/providers/amazon/get_provider_info.py | 16 +-
.../tests/unit/amazon/aws/assets/test_redshift.py | 90 ++
providers/apache/hdfs/provider.yaml | 14 +
providers/apache/hdfs/pyproject.toml | 1 +
.../providers/apache/hdfs/assets}/__init__.py | 0
.../airflow/providers/apache/hdfs/assets/hdfs.py} | 23 +-
.../providers/apache/hdfs/get_provider_info.py | 16 +
.../tests/unit/apache/hdfs/assets}/__init__.py | 0
.../tests/unit/apache/hdfs/assets/test_hdfs.py | 92 ++
providers/apache/hive/provider.yaml | 14 +
providers/apache/hive/pyproject.toml | 3 +-
.../providers/apache/hive/assets}/__init__.py | 0
.../airflow/providers/apache/hive/assets/hive.py} | 20 +-
.../providers/apache/hive/get_provider_info.py | 16 +
.../tests/unit/apache/hive/assets}/__init__.py | 0
.../tests/unit/apache/hive/assets/test_hive.py | 84 ++
providers/apache/kafka/provider.yaml | 14 +
providers/apache/kafka/pyproject.toml | 1 +
.../providers/apache/kafka/assets}/__init__.py | 0
.../providers/apache/kafka/assets/kafka.py} | 22 +-
.../providers/apache/kafka/get_provider_info.py | 16 +
.../tests/unit/apache/kafka/assets}/__init__.py | 0
.../tests/unit/apache/kafka/assets/test_kafka.py | 77 ++
providers/databricks/provider.yaml | 14 +
.../providers/databricks/assets}/__init__.py | 0
.../providers/databricks/assets/databricks.py} | 21 +-
.../providers/databricks/get_provider_info.py | 16 +
.../tests/unit/databricks/assets}/__init__.py | 0
.../unit/databricks/assets/test_databricks.py | 77 ++
providers/ftp/provider.yaml | 14 +
.../src/airflow/providers/ftp/assets}/__init__.py | 0
.../src/airflow/providers/ftp/assets/ftp.py} | 21 +-
.../src/airflow/providers/ftp/get_provider_info.py | 16 +
.../ftp/tests/unit/ftp/assets}/__init__.py | 0
providers/ftp/tests/unit/ftp/assets/test_ftp.py | 88 ++
providers/microsoft/mssql/docs/index.rst | 15 +-
providers/microsoft/mssql/provider.yaml | 14 +
providers/microsoft/mssql/pyproject.toml | 4 +
.../providers/microsoft/mssql/assets}/__init__.py | 0
.../providers/microsoft/mssql/assets/mssql.py} | 23 +-
.../providers/microsoft/mssql/get_provider_info.py | 16 +
.../tests/unit/microsoft/mssql/assets}/__init__.py | 0
.../unit/microsoft/mssql/assets/test_mssql.py | 125 +++
providers/mongo/provider.yaml | 14 +
providers/mongo/pyproject.toml | 3 +-
.../airflow/providers/mongo/assets}/__init__.py | 0
.../src/airflow/providers/mongo/assets/mongo.py} | 23 +-
.../airflow/providers/mongo/get_provider_info.py | 16 +
.../mongo/tests/unit/mongo/assets}/__init__.py | 0
.../mongo/tests/unit/mongo/assets/test_mongo.py | 97 +++
providers/mysql/provider.yaml | 8 +-
.../src/airflow/providers/mysql/assets/mysql.py | 21 +
.../airflow/providers/mysql/get_provider_info.py | 14 +-
.../mysql/tests/unit/mysql/assets/test_mysql.py | 37 +-
providers/oracle/provider.yaml | 14 +
.../airflow/providers/oracle/assets}/__init__.py | 0
.../src/airflow/providers/oracle/assets/oracle.py} | 31 +-
.../airflow/providers/oracle/get_provider_info.py | 16 +
.../oracle/tests/unit/oracle/assets}/__init__.py | 0
.../oracle/tests/unit/oracle/assets/test_oracle.py | 125 +++
providers/postgres/provider.yaml | 4 +
.../airflow/providers/postgres/assets/postgres.py | 21 +
.../providers/postgres/get_provider_info.py | 4 +
.../tests/unit/postgres/assets/test_postgres.py | 61 +-
providers/presto/provider.yaml | 14 +
providers/presto/pyproject.toml | 1 +
.../airflow/providers/presto/assets}/__init__.py | 0
.../src/airflow/providers/presto/assets/presto.py} | 23 +-
.../airflow/providers/presto/get_provider_info.py | 16 +
.../presto/tests/unit/presto/assets}/__init__.py | 0
.../presto/tests/unit/presto/assets/test_presto.py | 96 +++
providers/sftp/provider.yaml | 14 +
.../src/airflow/providers/sftp/assets}/__init__.py | 0
.../src/airflow/providers/sftp/assets/sftp.py} | 21 +-
.../airflow/providers/sftp/get_provider_info.py | 16 +
.../sftp/tests/unit/sftp/assets}/__init__.py | 0
providers/sftp/tests/unit/sftp/assets/test_sftp.py | 88 ++
providers/snowflake/provider.yaml | 14 +
.../providers/snowflake/assets}/__init__.py | 0
.../providers/snowflake/assets/snowflake.py} | 18 +-
.../providers/snowflake/get_provider_info.py | 16 +
.../tests/unit/snowflake/assets}/__init__.py | 0
.../tests/unit/snowflake/assets/test_snowflake.py} | 45 +-
providers/teradata/provider.yaml | 14 +
providers/teradata/pyproject.toml | 3 +-
.../airflow/providers/teradata/assets}/__init__.py | 0
.../airflow/providers/teradata/assets/teradata.py} | 23 +-
.../providers/teradata/get_provider_info.py | 16 +
.../tests/unit/teradata/assets}/__init__.py | 0
.../tests/unit/teradata/assets/test_teradata.py | 60 ++
providers/trino/provider.yaml | 4 +
.../src/airflow/providers/trino/assets/trino.py | 21 +
.../airflow/providers/trino/get_provider_info.py | 14 +-
.../trino/tests/unit/trino/assets/test_trino.py | 20 +-
providers/vertica/provider.yaml | 14 +
providers/vertica/pyproject.toml | 3 +-
.../airflow/providers/vertica/assets}/__init__.py | 0
.../airflow/providers/vertica/assets/vertica.py} | 23 +-
.../airflow/providers/vertica/get_provider_info.py | 16 +
.../vertica/tests/unit/vertica/assets}/__init__.py | 0
.../tests/unit/vertica/assets/test_vertica.py | 98 +++
.../airflow/providers/weaviate/hooks/weaviate.py | 6 +-
pyproject.toml | 2 +-
scripts/tools/setup_breeze | 2 +-
task-sdk/tests/task_sdk/definitions/test_asset.py | 4 +-
uv.lock | 926 +++++++++++----------
120 files changed, 2650 insertions(+), 740 deletions(-)
delete mode 100644
airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_04_17.py
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
amazon/src/airflow/providers/amazon/aws/assets/redshift.py} (61%)
create mode 100644
providers/amazon/tests/unit/amazon/aws/assets/test_redshift.py
copy {airflow-core/src/airflow/_shared =>
providers/apache/hdfs/src/airflow/providers/apache/hdfs/assets}/__init__.py
(100%)
copy providers/{google/src/airflow/providers/google/assets/gcs.py =>
apache/hdfs/src/airflow/providers/apache/hdfs/assets/hdfs.py} (69%)
copy {airflow-core/src/airflow/_shared =>
providers/apache/hdfs/tests/unit/apache/hdfs/assets}/__init__.py (100%)
create mode 100644
providers/apache/hdfs/tests/unit/apache/hdfs/assets/test_hdfs.py
copy {airflow-core/src/airflow/_shared =>
providers/apache/hive/src/airflow/providers/apache/hive/assets}/__init__.py
(100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
apache/hive/src/airflow/providers/apache/hive/assets/hive.py} (70%)
copy {airflow-core/src/airflow/_shared =>
providers/apache/hive/tests/unit/apache/hive/assets}/__init__.py (100%)
create mode 100644
providers/apache/hive/tests/unit/apache/hive/assets/test_hive.py
copy {airflow-core/src/airflow/_shared =>
providers/apache/kafka/src/airflow/providers/apache/kafka/assets}/__init__.py
(100%)
copy providers/{google/src/airflow/providers/google/assets/gcs.py =>
apache/kafka/src/airflow/providers/apache/kafka/assets/kafka.py} (70%)
copy {airflow-core/src/airflow/_shared =>
providers/apache/kafka/tests/unit/apache/kafka/assets}/__init__.py (100%)
create mode 100644
providers/apache/kafka/tests/unit/apache/kafka/assets/test_kafka.py
copy {airflow-core/src/airflow/_shared =>
providers/databricks/src/airflow/providers/databricks/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
databricks/src/airflow/providers/databricks/assets/databricks.py} (65%)
copy {airflow-core/src/airflow/_shared =>
providers/databricks/tests/unit/databricks/assets}/__init__.py (100%)
create mode 100644
providers/databricks/tests/unit/databricks/assets/test_databricks.py
copy {airflow-core/src/airflow/_shared =>
providers/ftp/src/airflow/providers/ftp/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
ftp/src/airflow/providers/ftp/assets/ftp.py} (68%)
copy {airflow-core/src/airflow/_shared =>
providers/ftp/tests/unit/ftp/assets}/__init__.py (100%)
create mode 100644 providers/ftp/tests/unit/ftp/assets/test_ftp.py
copy {airflow-core/src/airflow/_shared =>
providers/microsoft/mssql/src/airflow/providers/microsoft/mssql/assets}/__init__.py
(100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
microsoft/mssql/src/airflow/providers/microsoft/mssql/assets/mssql.py} (62%)
copy {airflow-core/src/airflow/_shared =>
providers/microsoft/mssql/tests/unit/microsoft/mssql/assets}/__init__.py (100%)
create mode 100644
providers/microsoft/mssql/tests/unit/microsoft/mssql/assets/test_mssql.py
copy {airflow-core/src/airflow/_shared =>
providers/mongo/src/airflow/providers/mongo/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
mongo/src/airflow/providers/mongo/assets/mongo.py} (66%)
copy {airflow-core/src/airflow/_shared =>
providers/mongo/tests/unit/mongo/assets}/__init__.py (100%)
create mode 100644 providers/mongo/tests/unit/mongo/assets/test_mongo.py
copy {airflow-core/src/airflow/_shared =>
providers/oracle/src/airflow/providers/oracle/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
oracle/src/airflow/providers/oracle/assets/oracle.py} (60%)
copy {airflow-core/src/airflow/_shared =>
providers/oracle/tests/unit/oracle/assets}/__init__.py (100%)
create mode 100644 providers/oracle/tests/unit/oracle/assets/test_oracle.py
copy {airflow-core/src/airflow/_shared =>
providers/presto/src/airflow/providers/presto/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
presto/src/airflow/providers/presto/assets/presto.py} (62%)
copy {airflow-core/src/airflow/_shared =>
providers/presto/tests/unit/presto/assets}/__init__.py (100%)
create mode 100644 providers/presto/tests/unit/presto/assets/test_presto.py
copy {airflow-core/src/airflow/_shared =>
providers/sftp/src/airflow/providers/sftp/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
sftp/src/airflow/providers/sftp/assets/sftp.py} (68%)
copy {airflow-core/src/airflow/_shared =>
providers/sftp/tests/unit/sftp/assets}/__init__.py (100%)
create mode 100644 providers/sftp/tests/unit/sftp/assets/test_sftp.py
copy {airflow-core/src/airflow/_shared =>
providers/snowflake/src/airflow/providers/snowflake/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
snowflake/src/airflow/providers/snowflake/assets/snowflake.py} (65%)
copy {airflow-core/src/airflow/_shared =>
providers/snowflake/tests/unit/snowflake/assets}/__init__.py (100%)
copy providers/{postgres/tests/unit/postgres/assets/test_postgres.py =>
snowflake/tests/unit/snowflake/assets/test_snowflake.py} (52%)
copy {airflow-core/src/airflow/_shared =>
providers/teradata/src/airflow/providers/teradata/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
teradata/src/airflow/providers/teradata/assets/teradata.py} (66%)
copy {airflow-core/src/airflow/_shared =>
providers/teradata/tests/unit/teradata/assets}/__init__.py (100%)
create mode 100644
providers/teradata/tests/unit/teradata/assets/test_teradata.py
copy {airflow-core/src/airflow/_shared =>
providers/vertica/src/airflow/providers/vertica/assets}/__init__.py (100%)
copy providers/{google/src/airflow/providers/google/assets/bigquery.py =>
vertica/src/airflow/providers/vertica/assets/vertica.py} (62%)
copy {airflow-core/src/airflow/_shared =>
providers/vertica/tests/unit/vertica/assets}/__init__.py (100%)
create mode 100644 providers/vertica/tests/unit/vertica/assets/test_vertica.py