From f15dcae956726d161ac12fda48951905b7a63b79 Mon Sep 17 00:00:00 2001 From: Andrew Kenworthy Date: Mon, 19 Oct 2026 14:36:52 +0200 Subject: [PATCH 1/4] chore(airflow): Add version 3.3.2 --- airflow/README.md | 8 +- airflow/boil-config.toml | 18 +- .../opa-auth-manager/airflow-3/pyproject.toml | 4 +- airflow/opa-auth-manager/airflow-3/uv.lock | 30 +- .../build-constraints-python3.14.txt | 0 .../constraints-python3.14.txt | 483 +++++++++--------- ...overriding-the-logging-configuration.patch | 0 .../patches/{3.3.1 => 3.3.2}/patchable.toml | 2 +- 8 files changed, 271 insertions(+), 274 deletions(-) rename airflow/stackable/constraints/{3.3.1 => 3.3.2}/build-constraints-python3.14.txt (100%) rename airflow/stackable/constraints/{3.3.1 => 3.3.2}/constraints-python3.14.txt (66%) rename airflow/stackable/patches/{3.3.1 => 3.3.2}/0001-Allow-overriding-the-logging-configuration.patch (100%) rename airflow/stackable/patches/{3.3.1 => 3.3.2}/patchable.toml (52%) diff --git a/airflow/README.md b/airflow/README.md index e84181b5f..192d637a1 100644 --- a/airflow/README.md +++ b/airflow/README.md @@ -7,14 +7,14 @@ script resides. This example will assume you are running from the repository roo ```sh # Specify Airflow and Python versions: -./airflow/download_constraints.sh 3.3.1 3.14 +./airflow/download_constraints.sh 3.3.2 3.14 ``` Example output: ```output -Downloading constraints file for Airflow 3.3.1 (Python 3.14) -Successfully pulled new constraints file: constraints-3.3.1-python3.14.txt +Downloading constraints file for Airflow 3.3.2 (Python 3.14) +Successfully pulled new constraints file: constraints-3.3.2-python3.14.txt ``` @@ -25,7 +25,7 @@ The list of provider packages are listed in the build configuration file, matchi The expected versions are listed in the constraints files, but these can change over time. To keep the installation tightly coupled to the associated constraints it is best to only use providers listed in the relevant constraints file. -### Version 3.3.1 +### Version 3.3.2 Applying the filter above results in the omission of the following providers: diff --git a/airflow/boil-config.toml b/airflow/boil-config.toml index deed67677..fde3bc14d 100644 --- a/airflow/boil-config.toml +++ b/airflow/boil-config.toml @@ -164,16 +164,16 @@ nodejs-version = "22" # TODO: Specify the pnpm version here # Supported -[versions."3.3.1".local-images] +[versions."3.3.2".local-images] "shared/statsd-exporter" = "0.31.0" vector = "0.58.0" stackable-devel = "1.0.0" -[versions."3.3.1".build-arguments] +[versions."3.3.2".build-arguments] # NOTE: This can be bumped for new airflow versions, but once set, do not updated it, as it could # break many customer DAGs. We generally try to pick the latest supported version unless there are # reasons against it. -# This version of Airflow supports: 3.10 - 3.14 (see https://airflow.apache.org/docs/apache-airflow/3.3.1/installation/prerequisites.html) +# This version of Airflow supports: 3.10 - 3.14 (see https://airflow.apache.org/docs/apache-airflow/3.3.2/installation/prerequisites.html) python-version = "3.14" git-sync-version = "v4.7.1" # Must match the version in the constraints file (search for s3fs==) @@ -200,22 +200,22 @@ uv-version = "0.11.19" # Airflow extras are defined in separate lists to make them easier to check against the links below. # The lists will be concatenated and duplicates removed in the dockerfile. # TODO: Add policy for when to add extras. -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#core-airflow-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#core-airflow-extras airflow-extras-core = "async,graphviz,kerberos,memray,otel,sentry,standard,statsd" -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#meta-airflow-package-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#meta-airflow-package-extras airflow-extras-meta = "aiobotocore,amazon-aws-auth,cloudpickle,github-enterprise,google-auth,graphviz,gunicorn,ldap,leveldb,pandas,polars,rabbitmq,s3fs,saml,uv" -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#apache-software-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#apache-software-extras airflow-extras-provider-apache = "apache-beam,apache-cassandra,apache-drill,apache-druid,apache-flink,apache-hdfs,apache-hive,apache-iceberg,apache-impala,apache-kafka,apache-kylin,apache-livy,apache-pig,apache-pinot,apache-tinkerpop" -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#external-services-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#external-services-extras airflow-extras-external-services = "airbyte,akeyless,alibaba,apprise,amazon,asana,atlassian-jira,microsoft-azure,clickhousedb,cloudant,cohere,databricks,datadog,dbt-cloud,dingding,discord,facebook,github,google,hashicorp,openai,opsgenie,pagerduty,pgvector,pinecone,qdrant,salesforce,sendgrid,segment,slack,snowflake,tableau,tabular,telegram,vertica,vespa,weaviate,yandex,ydb,zendesk" -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#locally-installed-software-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#locally-installed-software-extras airflow-extras-locally-installed-software = "arangodb,celery,cncf-kubernetes,docker,edge3,elasticsearch,exasol,fab,git,github,influxdb,jenkins,mongo,microsoft-mssql,neo4j,odbc,openfaas,oracle,postgres,presto,redis,samba,singularity,teradata,trino" -# See https://airflow.apache.org/docs/apache-airflow/3.3.1/extra-packages-ref.html#other-extras +# See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#other-extras airflow-extras-other = "common-ai,common-compat,common-io,common-messaging,common-sql,ftp,grpc,http,imap,jdbc,keycloak,microsoft-psrp,microsoft-winrm,openlineage,opensearch,papermill,sftp,smtp,sqlite,ssh,informatica" opa-auth-manager = "airflow-3" diff --git a/airflow/opa-auth-manager/airflow-3/pyproject.toml b/airflow/opa-auth-manager/airflow-3/pyproject.toml index d81bb4ce6..8975ace9f 100644 --- a/airflow/opa-auth-manager/airflow-3/pyproject.toml +++ b/airflow/opa-auth-manager/airflow-3/pyproject.toml @@ -33,8 +33,8 @@ dev = [ # its constraints file. Floating these would test combinations we do not ship. local = [ { include-group = "dev" }, - "apache-airflow==3.3.1", - "apache-airflow-providers-fab==3.8.0", + "apache-airflow==3.3.2", + "apache-airflow-providers-fab==3.9.0", ] [build-system] diff --git a/airflow/opa-auth-manager/airflow-3/uv.lock b/airflow/opa-auth-manager/airflow-3/uv.lock index e81cbeb69..259692f81 100644 --- a/airflow/opa-auth-manager/airflow-3/uv.lock +++ b/airflow/opa-auth-manager/airflow-3/uv.lock @@ -1,5 +1,5 @@ version = 1 -revision = 2 +revision = 5 requires-python = ">=3.12, <3.15" resolution-markers = [ "python_full_version >= '3.14'", @@ -216,20 +216,20 @@ wheels = [ [[package]] name = "apache-airflow" -version = "3.3.1" +version = "3.3.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "apache-airflow-core" }, { name = "apache-airflow-task-sdk" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/05/f4/025fc6e41878ae075bfd50136542071abaac5ead6a967b53a878b4efbca8/apache_airflow-3.3.1.tar.gz", hash = "sha256:a62ee9c46b7b8c919a46a88ee9346e0b36bc4ff10d6f9ac7cde5a6165da52164", size = 31054, upload-time = "2026-08-12T08:10:24.808Z" } +sdist = { url = "https://files.pythonhosted.org/packages/e9/9e/148e8d9211c57689af9a8aafa228ff4d9b23bf23c203e973cd2fed9f1353/apache_airflow-3.3.2.tar.gz", hash = "sha256:cdbe0dcd47ff2e9ab267fcc050bc6e4fa6e40fb86bf3671e05d9672206da59bb", size = 31774, upload-time = "2026-09-17T08:39:00.645Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/46/a5/018810c3fe96f9d57377a7d5ca303c51231fe367bf16c34402fb1eb91e55/apache_airflow-3.3.1-py3-none-any.whl", hash = "sha256:0c047c0a0415b100d2966b35d0f0c191013dc996e7645023178c770296ce8602", size = 13048, upload-time = "2026-08-12T08:10:18.204Z" }, + { url = "https://files.pythonhosted.org/packages/72/0f/835c3e3d7a09ce377a1ebc475718f404a2f6c976cb2662f84c6fcb7aaa96/apache_airflow-3.3.2-py3-none-any.whl", hash = "sha256:c1fd40a00cfc50e7ef8d0aa07a1418b059f22db03ad25c2793bb030b176dc085", size = 13331, upload-time = "2026-09-17T08:38:26.148Z" }, ] [[package]] name = "apache-airflow-core" -version = "3.3.1" +version = "3.3.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "a2wsgi" }, @@ -298,9 +298,9 @@ dependencies = [ { name = "uuid6" }, { name = "uvicorn" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/37/42/d1d5f2e6172398ed4b5864a3f262eddd89008f8445678934c94eabdcee9d/apache_airflow_core-3.3.1.tar.gz", hash = "sha256:0c4ae4f3aea72dc2087b615305ea97ff0247b266bf6fa6661877ce1e1d9a951b", size = 7373613, upload-time = "2026-08-12T08:10:26.454Z" } +sdist = { url = "https://files.pythonhosted.org/packages/45/47/bcf1e5ebc134c6a39f06fe00534a8981ea195e7191ea2d60dabb7af0428e/apache_airflow_core-3.3.2.tar.gz", hash = "sha256:53f38e7749a2689a1d67c6e661284ecddaa687c1f7f3cae2d76b2eca7758210f", size = 7442317, upload-time = "2026-09-17T08:39:34.987Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/2f/e4/910a68502da13948877c91d6b605ea5f0988962792b0b3191025eb8d4423/apache_airflow_core-3.3.1-py3-none-any.whl", hash = "sha256:28c6aa88bdd47a4401436f1bfefbc979236de16fa4962d408218c67b8f9a00b8", size = 6875541, upload-time = "2026-08-12T08:10:22.343Z" }, + { url = "https://files.pythonhosted.org/packages/54/b9/1ee2db2eeda6411ce2611e7ce800f57a4b9d22920f5c4ccaed908f7664a1/apache_airflow_core-3.3.2-py3-none-any.whl", hash = "sha256:99258922bccec15be4700ff89f3c942b8acd93407e263c287ce863e671bb3c50", size = 6921273, upload-time = "2026-09-17T08:38:58.61Z" }, ] [[package]] @@ -403,7 +403,7 @@ wheels = [ [[package]] name = "apache-airflow-providers-fab" -version = "3.8.0" +version = "3.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "apache-airflow" }, @@ -424,9 +424,9 @@ dependencies = [ { name = "werkzeug" }, { name = "wtforms" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/de/b5/9c77c26cc63cb5e036f78ff5ad0644a8697880c3a6284b284eb1fa075aaf/apache_airflow_providers_fab-3.8.0.tar.gz", hash = "sha256:1d1a86e040ad3bdadcb0fc56e05ee10d3efca5755fb0e66155288f364c170419", size = 835777, upload-time = "2026-08-08T03:17:17.875Z" } +sdist = { url = "https://files.pythonhosted.org/packages/c6/b4/b61cf6b5e65a412b17beef180b5142322980bdd9c79acba8cf2b7c413d61/apache_airflow_providers_fab-3.9.0.tar.gz", hash = "sha256:0bdb1b21353b7df89ab5fa3d81da7969dc99b1a03d546fc2dc7035756bfab631", size = 852272, upload-time = "2026-09-14T14:48:12.037Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/68/b4/72153cf77eb9f06d90abeb22e0f3bedd176721b3a3a4ad42a3f144876b26/apache_airflow_providers_fab-3.8.0-py3-none-any.whl", hash = "sha256:d1ee865a23381f4d34126cb0eb23c7dc320fb3a6ba76971d85da523af78b117e", size = 605552, upload-time = "2026-08-08T03:16:13.634Z" }, + { url = "https://files.pythonhosted.org/packages/b7/44/ac8f2d0b28974e93073661435f28efad20ac04cbb2991a8e53a5b38985fc/apache_airflow_providers_fab-3.9.0-py3-none-any.whl", hash = "sha256:8e9d5eeff84e031f13b3035f1d8b9f3520f1a234d1ae27a3ba6e8ed6895e90ee", size = 611989, upload-time = "2026-09-14T14:47:31.91Z" }, ] [[package]] @@ -458,7 +458,7 @@ wheels = [ [[package]] name = "apache-airflow-task-sdk" -version = "1.3.1" +version = "1.3.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "apache-airflow-core" }, @@ -487,9 +487,9 @@ dependencies = [ { name = "tenacity" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/64/cb/00745b7e24958923d6422fc43deb3df94577dc3916edfa6330e3047dcdad/apache_airflow_task_sdk-1.3.1.tar.gz", hash = "sha256:21c1086c133ede94defde2b455541cadadf564f7e6d189d1af22c6ef186bb6e3", size = 1707061, upload-time = "2026-08-12T08:10:41.99Z" } +sdist = { url = "https://files.pythonhosted.org/packages/52/23/b80ddd45781d46c5924fceeb62dccffa8c7695b83ae98d5b26abad0dc442/apache_airflow_task_sdk-1.3.2.tar.gz", hash = "sha256:d9a1c7785684a215df3927b028a44b2b6927dacebd54c0d281b5906febc3efef", size = 1714211, upload-time = "2026-09-17T08:40:19.774Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/4d/5b/a97a9a6afacb9b2e1bfe5f3e3aef05aec9f966a41a6f2d17cdfa8b5702e2/apache_airflow_task_sdk-1.3.1-py3-none-any.whl", hash = "sha256:4c5619ce9bdc0f76becd4fe2d0c85aea0667ef6c213e8c8785ecdcc01176d41b", size = 604503, upload-time = "2026-08-12T08:10:39.565Z" }, + { url = "https://files.pythonhosted.org/packages/39/55/6739ddc778d08cae398c388e8ad72d2fae054a58dd32a7e0f75eac81a502/apache_airflow_task_sdk-1.3.2-py3-none-any.whl", hash = "sha256:5ff196842b7bc203e13332592ab78ed82cfa1225368a16bb91bf9d5705c62293", size = 607451, upload-time = "2026-09-17T08:39:56.324Z" }, ] [[package]] @@ -2231,9 +2231,9 @@ dev = [ { name = "pytest", specifier = ">=8.3.3,<9" }, ] local = [ - { name = "apache-airflow", specifier = "==3.3.1" }, + { name = "apache-airflow", specifier = "==3.3.2" }, { name = "apache-airflow-devel-common", specifier = "<=0.1.1" }, - { name = "apache-airflow-providers-fab", specifier = "==3.8.0" }, + { name = "apache-airflow-providers-fab", specifier = "==3.9.0" }, { name = "pytest", specifier = ">=8.3.3,<9" }, ] diff --git a/airflow/stackable/constraints/3.3.1/build-constraints-python3.14.txt b/airflow/stackable/constraints/3.3.2/build-constraints-python3.14.txt similarity index 100% rename from airflow/stackable/constraints/3.3.1/build-constraints-python3.14.txt rename to airflow/stackable/constraints/3.3.2/build-constraints-python3.14.txt diff --git a/airflow/stackable/constraints/3.3.1/constraints-python3.14.txt b/airflow/stackable/constraints/3.3.2/constraints-python3.14.txt similarity index 66% rename from airflow/stackable/constraints/3.3.1/constraints-python3.14.txt rename to airflow/stackable/constraints/3.3.2/constraints-python3.14.txt index 3b641a3fe..54cdd7366 100644 --- a/airflow/stackable/constraints/3.3.1/constraints-python3.14.txt +++ b/airflow/stackable/constraints/3.3.2/constraints-python3.14.txt @@ -1,6 +1,6 @@ # -# This constraints file was automatically generated on 2026-08-12T08:34:01.420804 +# This constraints file was automatically generated on 2026-09-17T09:04:29.025332 # via `uv pip install --resolution highest` for the "v3-3-test" branch of Airflow. # This variant of constraints install uses the HEAD of the branch version for 'apache-airflow' but installs # the providers from PIP-released packages at the moment of the constraint generation. @@ -31,7 +31,7 @@ # pip install "apache-airflow==X.Y.Z" "snowflake-connector-python[pandas]=N.M.O" # APScheduler==3.11.3 -Authlib==1.7.2 +Authlib==1.8.0 Deprecated==1.3.1 Events==0.5 Flask-JWT-Extended==4.7.4 @@ -41,30 +41,30 @@ Flask-SQLAlchemy==3.1.1 Flask-Session==0.8.0 Flask-WTF==1.3.0 Flask==3.1.3 -GitPython==3.1.58 +GitPython==3.1.62 JayDeBeApi==1.2.3 Jinja2==3.1.6 Mako==1.4.1 Markdown==3.10.3 MarkupSafe==3.0.3 -PyAthena==3.35.4 -PyGithub==2.9.1 +PyAthena==3.36.0 +PyGithub==2.10.0 PyHive==0.7.0 -PyJWT==2.13.0 +PyJWT==2.14.0 PyMySQL==1.1.3 PyNaCl==1.6.2 PyYAML==6.0.3 -Pygments==2.20.0 +Pygments==2.21.0 SQLAlchemy-Utils==0.42.1 -SQLAlchemy==2.0.51 +SQLAlchemy==2.0.52 SecretStorage==3.5.0 WTForms==3.2.2 Werkzeug==3.1.8 a2wsgi==1.10.10 adal==1.2.7 -adlfs==2026.5.0 +adlfs==2026.8.0 aenum==3.1.17 -aiobotocore==3.9.0 +aiobotocore==3.9.1 aiofiles==24.1.0 aiohappyeyeballs==2.7.1 aiohttp-cors==0.8.1 @@ -72,131 +72,128 @@ aiohttp==3.14.3 aioitertools==0.13.0 aiomysql==0.3.2 aiosignal==1.4.0 -aiosmtplib==5.1.2 +aiosmtplib==5.1.3 aiosqlite==0.22.1 airbyte-api==1.0.1 -akeyless==5.0.28 -alembic==1.19.0 -alibabacloud-adb20211201==3.7.0 +akeyless==5.0.37 +alembic==1.20.0 +alibabacloud-adb20211201==4.2.0 alibabacloud-credentials-api==1.0.1 -alibabacloud-credentials==1.0.11 +alibabacloud-credentials==1.0.12 alibabacloud-gateway-spi==0.0.4 -alibabacloud-openapi-util==0.2.4 -alibabacloud-oss-v2==1.3.2 +alibabacloud-oss-v2==1.4.0 +alibabacloud-tea-openapi==0.4.6 alibabacloud-tea-util==0.3.15 alibabacloud-tea==0.4.3 -alibabacloud_endpoint_util==0.0.4 -alibabacloud_tea_openapi==0.3.16 -alibabacloud_tea_xml==0.0.3 amqp==5.3.1 annotated-doc==0.0.5 annotated-types==0.8.0 -anyio==4.14.2 +anyio==4.15.1 apache-airflow-providers-airbyte==6.0.1 -apache-airflow-providers-akeyless==0.3.0 +apache-airflow-providers-akeyless==0.3.1 apache-airflow-providers-alibaba==3.4.0 -apache-airflow-providers-amazon==9.34.0 +apache-airflow-providers-amazon==9.36.0 apache-airflow-providers-apache-drill==3.3.3 apache-airflow-providers-apache-druid==4.5.2 apache-airflow-providers-apache-flink==1.8.5 -apache-airflow-providers-apache-hdfs==4.12.2 -apache-airflow-providers-apache-hive==9.6.1 -apache-airflow-providers-apache-iceberg==2.0.3 +apache-airflow-providers-apache-hdfs==4.13.0 +apache-airflow-providers-apache-hive==9.6.2 +apache-airflow-providers-apache-iceberg==2.1.1 apache-airflow-providers-apache-impala==1.9.3 -apache-airflow-providers-apache-kafka==1.15.1 +apache-airflow-providers-apache-kafka==2.0.0 apache-airflow-providers-apache-kylin==3.10.5 -apache-airflow-providers-apache-livy==4.6.0 +apache-airflow-providers-apache-livy==4.6.1 apache-airflow-providers-apache-pig==4.8.5 apache-airflow-providers-apache-pinot==4.10.3 -apache-airflow-providers-apache-spark==6.3.1 +apache-airflow-providers-apache-spark==6.3.2 apache-airflow-providers-apache-tinkerpop==1.1.4 apache-airflow-providers-apprise==2.3.4 apache-airflow-providers-arangodb==2.9.6 apache-airflow-providers-asana==2.11.4 apache-airflow-providers-atlassian-jira==3.3.5 -apache-airflow-providers-celery==3.23.1 +apache-airflow-providers-celery==3.24.0 apache-airflow-providers-clickhousedb==1.0.0 apache-airflow-providers-cloudant==4.3.5 -apache-airflow-providers-cncf-kubernetes==10.21.0 -apache-airflow-providers-cohere==1.6.7 -apache-airflow-providers-common-ai==0.7.0 -apache-airflow-providers-common-compat==1.18.0 -apache-airflow-providers-common-io==1.8.0 -apache-airflow-providers-common-messaging==2.0.4 -apache-airflow-providers-common-sql==2.1.0 -apache-airflow-providers-databricks==7.18.1 +apache-airflow-providers-cncf-kubernetes==10.22.0 +apache-airflow-providers-cohere==1.7.0 +apache-airflow-providers-common-ai==0.9.0 +apache-airflow-providers-common-compat==1.19.0 +apache-airflow-providers-common-io==1.9.0 +apache-airflow-providers-common-messaging==2.1.0 +apache-airflow-providers-common-sql==2.1.1 +apache-airflow-providers-databricks==7.20.0 apache-airflow-providers-datadog==3.10.5 apache-airflow-providers-dbt-cloud==4.9.3 apache-airflow-providers-dingding==3.9.5 apache-airflow-providers-discord==3.12.3 apache-airflow-providers-docker==4.5.9 -apache-airflow-providers-edge3==4.3.0 -apache-airflow-providers-elasticsearch==6.9.0 -apache-airflow-providers-exasol==4.10.5 -apache-airflow-providers-fab==3.8.0 +apache-airflow-providers-edge3==4.3.2 +apache-airflow-providers-elasticsearch==6.9.1 +apache-airflow-providers-exasol==4.10.6 +apache-airflow-providers-fab==3.9.0 apache-airflow-providers-facebook==3.9.5 apache-airflow-providers-ftp==3.15.2 -apache-airflow-providers-git==0.4.2 +apache-airflow-providers-git==0.5.0 apache-airflow-providers-github==2.11.3 -apache-airflow-providers-google==22.3.0 +apache-airflow-providers-google==22.5.0 apache-airflow-providers-grpc==3.9.5 -apache-airflow-providers-hashicorp==4.8.0 -apache-airflow-providers-http==6.0.5 +apache-airflow-providers-hashicorp==4.8.1 +apache-airflow-providers-http==6.1.0 apache-airflow-providers-imap==3.12.1 -apache-airflow-providers-influxdb==2.11.0 -apache-airflow-providers-informatica==0.2.0 -apache-airflow-providers-jdbc==5.5.0 +apache-airflow-providers-influxdb==2.11.1 +apache-airflow-providers-informatica==0.2.1 +apache-airflow-providers-jdbc==5.6.0 apache-airflow-providers-jenkins==4.2.6 -apache-airflow-providers-keycloak==0.8.2 -apache-airflow-providers-microsoft-azure==14.1.0 -apache-airflow-providers-microsoft-mssql==4.7.0 -apache-airflow-providers-microsoft-psrp==3.2.6 +apache-airflow-providers-keycloak==0.10.0 +apache-airflow-providers-microsoft-azure==15.1.0 +apache-airflow-providers-microsoft-mssql==4.7.1 +apache-airflow-providers-microsoft-psrp==3.2.7 apache-airflow-providers-microsoft-winrm==3.14.4 apache-airflow-providers-mongo==5.4.0 -apache-airflow-providers-mysql==6.6.1 +apache-airflow-providers-mysql==6.6.2 apache-airflow-providers-neo4j==3.12.1 -apache-airflow-providers-odbc==4.12.3 +apache-airflow-providers-odbc==4.13.0 apache-airflow-providers-openai==1.8.2 apache-airflow-providers-openfaas==3.9.5 -apache-airflow-providers-openlineage==2.20.0 -apache-airflow-providers-opensearch==1.12.0 +apache-airflow-providers-openlineage==2.20.1 +apache-airflow-providers-opensearch==1.12.1 apache-airflow-providers-opsgenie==5.10.4 -apache-airflow-providers-oracle==4.6.2 -apache-airflow-providers-pagerduty==5.2.6 +apache-airflow-providers-oracle==4.6.3 +apache-airflow-providers-pagerduty==5.2.7 apache-airflow-providers-papermill==3.13.2 apache-airflow-providers-pgvector==1.7.3 apache-airflow-providers-pinecone==2.4.5 -apache-airflow-providers-postgres==7.0.1 +apache-airflow-providers-postgres==7.0.2 apache-airflow-providers-presto==5.12.1 apache-airflow-providers-qdrant==1.5.6 -apache-airflow-providers-redis==4.5.0 +apache-airflow-providers-redis==4.6.0 apache-airflow-providers-salesforce==5.14.2 -apache-airflow-providers-samba==4.12.6 +apache-airflow-providers-samba==4.13.0 apache-airflow-providers-segment==3.9.5 apache-airflow-providers-sendgrid==4.2.4 apache-airflow-providers-sftp==6.0.1 apache-airflow-providers-singularity==3.9.4 apache-airflow-providers-slack==9.10.2 -apache-airflow-providers-smtp==3.0.3 -apache-airflow-providers-snowflake==6.16.0 +apache-airflow-providers-smtp==3.0.4 +apache-airflow-providers-snowflake==6.17.0 apache-airflow-providers-sqlite==4.3.3 apache-airflow-providers-ssh==6.0.1 -apache-airflow-providers-standard==1.17.0 -apache-airflow-providers-tableau==5.6.0 +apache-airflow-providers-standard==1.19.0 +apache-airflow-providers-tableau==5.6.1 apache-airflow-providers-telegram==4.9.6 -apache-airflow-providers-teradata==3.6.2 +apache-airflow-providers-teradata==3.6.3 apache-airflow-providers-trino==6.6.1 apache-airflow-providers-vertica==4.4.0 apache-airflow-providers-vespa==0.1.1 apache-airflow-providers-weaviate==3.4.1 -apache-airflow-providers-yandex==4.5.1 -apache-airflow-providers-ydb==2.5.3 +apache-airflow-providers-yandex==4.5.2 +apache-airflow-providers-ydb==2.6.0 apache-airflow-providers-zendesk==4.12.0 apispec==6.10.0 -apprise==1.12.0 +apprise==1.13.1 argcomplete==3.7.2 arrow==1.4.0 -asana==5.2.5 +asana==5.3.0 asgiref==3.12.1 asn1crypto==1.5.1 asttokens==3.0.2 @@ -204,18 +201,18 @@ async-timeout==4.0.3 asyncpg==0.31.0 asyncssh==2.24.0 atlasclient==1.0.0 -atlassian-python-api==4.0.7 +atlassian-python-api==5.0.4 attrs==26.1.0 azure-ai-projects==2.4.0 -azure-batch==14.2.0 +azure-batch==15.1.0 azure-common==1.1.28 azure-core==1.41.0 -azure-cosmos==4.16.3 +azure-cosmos==4.17.0 azure-datalake-store==0.0.53 azure-identity==1.25.3 -azure-keyvault-secrets==4.11.0 +azure-keyvault-secrets==4.11.2 azure-kusto-data==6.0.4 -azure-mgmt-compute==38.2.0 +azure-mgmt-compute==38.3.0 azure-mgmt-containerinstance==10.1.0 azure-mgmt-containerregistry==15.0.0 azure-mgmt-core==1.6.0 @@ -228,7 +225,7 @@ azure-mgmt-resource==26.0.0 azure-mgmt-storage==25.1.0 azure-nspkg==3.0.2 azure-servicebus==7.14.3 -azure-storage-blob==12.30.0 +azure-storage-blob==12.30.1 azure-storage-file-datalake==12.25.0 azure-storage-file-share==12.26.0 azure-synapse-artifacts==0.22.0 @@ -238,41 +235,42 @@ backoff==2.2.1 bcrypt==5.0.0 beautifulsoup4==4.15.0 billiard==4.2.4 -bitarray==3.10.1 +bitarray==3.11.0 black==26.5.1 bleach==6.4.0 blinker==1.9.0 -boto3==1.43.56 -botocore==1.43.56 -cachelib==0.15.2 -cachetools==6.2.6 +boto3==1.43.75 +botocore==1.43.75 +cachelib==0.17.0 +cachetools==7.1.8 cadwyn==7.0.0 capi_param_builder_python==1.3.0 -cattrs==26.1.0 +cattrs==26.2.0 celery==5.6.3 certifi==2026.7.22 cffi==2.1.1 -chardet==7.5.1 -charset-normalizer==3.4.9 +chardet==7.6.0 +charset-normalizer==3.5.1 ciso8601==2.3.3 click-didyoumean==0.3.1 click-plugins==1.1.1.2 click-repl==0.3.0 -click==8.4.2 -clickhouse-connect==1.6.0 +click==8.5.0 +clickhouse-connect==1.8.0 cloudpickle==3.1.2 -cohere==7.0.8 +cohere==7.1.1 colorama==0.4.6 colorful==0.5.8 colorlog==6.12.0 comm==0.2.3 -confluent-kafka==2.15.0 +confluent-kafka==2.15.1 crcmod-plus==2.3.1 cron_descriptor==2.1.0 croniter==6.2.4 -cryptography==50.0.0 +cryptography==50.0.1 curlify==3.0.0 -databricks-sql-connector==4.4.0 +darabonba-core==1.0.9 +databricks-sql-connector==4.5.0 datadog==0.53.0 db-dtypes==1.7.1 debugpy==1.8.21 @@ -286,81 +284,81 @@ dnspython==2.8.0 docker==7.2.0 docopt==0.6.2 docstring_parser==0.18.0 -durationpy==0.10 +durationpy==0.11 elastic-transport==9.4.2 -elasticsearch==9.5.0 +elasticsearch==9.5.1 email-validator==2.3.0 entrypoints==0.4 et_xmlfile==2.0.0 -eventlet==0.41.0 +eventlet==0.41.2 executing==2.2.1 -facebook_business==26.0.0 +facebook_business==26.0.1 fastapi-cli==0.0.32 fastapi==0.136.3 fastavro==1.12.2 -fastcore==2.2.5 -fastjsonschema==2.22.1 +fastcore==2.2.23 +fastjsonschema==2.22.2 fastuuid==0.14.0 -filelock==3.32.2 +filelock==3.32.6 flask-appbuilder==5.2.2 flask-babel==4.0.0 -flower==2.0.1 +flower==2.1.0 frozenlist==1.8.0 fsspec==2026.7.0 future==1.0.0 gcloud-aio-auth==5.5.0 gcloud-aio-bigquery==7.1.0 gcloud-aio-storage==9.6.4 -gcsfs==2026.7.0 -genai-prices==0.1.1 -gevent==26.7.0 +gcsfs==2026.8.1 +genai-prices==0.1.6 +gevent==26.8.0 gitdb==4.0.12 -google-ads==31.2.0 +google-ads==32.0.0 google-analytics-admin==0.30.1 -google-api-core==2.34.0 -google-api-python-client==2.198.0 -google-auth-httplib2==0.4.1 -google-auth-oauthlib==1.4.0 -google-auth==2.56.3 -google-cloud-aiplatform==1.163.0 -google-cloud-alloydb==0.11.0 +google-api-core==2.36.0 +google-api-python-client==2.200.0 +google-auth-httplib2==0.4.2 +google-auth-oauthlib==1.4.1 +google-auth==2.58.0 +google-cloud-aiplatform==2.1.0 +google-cloud-alloydb==0.11.1 google-cloud-appengine-logging==1.10.0 -google-cloud-audit-log==0.6.1 -google-cloud-automl==2.20.0 -google-cloud-batch==0.22.2 +google-cloud-audit-log==0.6.2 +google-cloud-automl==2.20.1 +google-cloud-batch==0.22.3 google-cloud-bigquery-datatransfer==3.23.0 -google-cloud-bigquery-storage==2.40.0 -google-cloud-bigquery==3.43.0 -google-cloud-bigtable==2.41.0 -google-cloud-build==3.38.1 -google-cloud-compute==1.50.0 -google-cloud-container==2.65.0 -google-cloud-core==2.6.1 +google-cloud-bigquery-storage==2.41.0 +google-cloud-bigquery==3.45.0 +google-cloud-bigtable==2.44.0 +google-cloud-build==3.39.0 +google-cloud-compute==1.52.0 +google-cloud-container==2.66.0 +google-cloud-core==2.7.0 google-cloud-datacatalog==3.31.0 google-cloud-dataflow-client==0.14.0 -google-cloud-dataform==0.11.2 +google-cloud-dataform==0.11.3 google-cloud-dataplex==2.20.0 google-cloud-dataproc-metastore==1.23.0 google-cloud-dataproc==5.30.0 -google-cloud-dlp==3.38.0 +google-cloud-dlp==3.39.0 google-cloud-kms==3.16.0 google-cloud-language==2.21.0 -google-cloud-logging==3.16.2 +google-cloud-logging==3.16.3 google-cloud-managedkafka==0.4.1 google-cloud-memcache==1.16.0 google-cloud-monitoring==2.31.0 google-cloud-orchestration-airflow==1.22.0 google-cloud-os-login==2.22.0 -google-cloud-pubsub==2.39.1 +google-cloud-pubsub==2.40.0 google-cloud-redis==2.22.0 google-cloud-resource-manager==1.18.0 google-cloud-run==0.16.1 google-cloud-secret-manager==2.30.0 -google-cloud-spanner==3.69.1 +google-cloud-spanner==3.71.0 google-cloud-speech==2.40.0 -google-cloud-storage-control==1.13.0 +google-cloud-storage-control==1.15.0 google-cloud-storage-transfer==1.21.0 -google-cloud-storage==3.13.1 +google-cloud-storage==3.14.1 google-cloud-tasks==2.24.0 google-cloud-texttospeech==2.37.0 google-cloud-translate==3.27.0 @@ -368,53 +366,53 @@ google-cloud-videointelligence==2.20.0 google-cloud-vision==3.15.0 google-cloud-workflows==1.23.0 google-crc32c==1.8.0 -google-genai==2.17.0 -google-resumable-media==2.10.1 -googleapis-common-protos==1.75.1 +google-genai==2.23.0 +google-resumable-media==2.10.2 +googleapis-common-protos==1.75.3 graphviz==0.21 greenback==1.3.0 -greenlet==3.5.4 -gremlinpython==3.8.1 -griffelib==2.1.0 +greenlet==3.5.5 +gremlinpython==3.8.2 +griffelib==2.3.0 grpc-google-iam-v1==0.14.5 grpc-interceptor==0.15.4 grpcio-gcp==0.2.2 grpcio-health-checking==1.81.1 -grpcio-status==1.83.0 +grpcio-status==1.83.1 grpcio-tools==1.81.1 -grpcio==1.83.0 -gssapi==1.11.1 -gunicorn==26.0.0 +grpcio==1.83.1 +gssapi==1.12.0 +gunicorn==26.2.0 h11==0.16.0 h2==4.4.1 hdfs==2.7.3 hf-xet==1.6.0 hmsclient==0.1.1 hpack==4.2.0 -httpcore2==2.9.1 +httpcore2==2.12.0 httpcore==1.0.9 httplib2==0.32.0 -httpr==0.6.0 +httpr==0.7.2 httptools==0.8.0 -httpx2==2.9.1 +httpx2==2.12.0 httpx==0.28.1 -huggingface_hub==1.27.0 +huggingface_hub==1.31.0 humanize==4.16.0 hvac==2.4.0 hyperframe==6.1.0 -ibm-cloud-sdk-core==3.25.0 -ibmcloudant==0.11.9 -idna==3.18 +ibm-cloud-sdk-core==3.26.0 +ibmcloudant==0.11.10 +idna==3.19 ijson==3.4.0.post0 immutabledict==4.3.1 importlib_metadata==8.9.0 impyla==0.24.0 inflection==0.5.1 influxdb-client==1.50.0 -influxdb3-python==0.20.0 +influxdb3-python==0.21.0 invoke==3.0.3 ipykernel==7.3.0 -ipython==9.16.1 +ipython==9.17.1 ipython_pygments_lexers==1.1.1 isodate==0.7.2 isoduration==20.11.0 @@ -424,80 +422,80 @@ jaraco.context==6.1.2 jaraco.functools==4.6.0 jedi==0.20.0 jeepney==0.9.0 -jiter==0.16.0 +jiter==0.17.0 jmespath==1.1.0 -joblib==1.5.3 -joserfc==1.7.4 +joblib==1.6.0 +joserfc==1.7.5 jpype1==1.7.1 jsonpath-ng==1.8.0 jsonschema-specifications==2025.9.1 jsonschema==4.26.0 -jupyter_client==8.9.1 +jupyter_client==8.10.0 jupyter_core==5.9.1 jupyterlab_pygments==0.3.0 -jwcrypto==1.5.8 +jwcrypto==1.6.0 keyring==25.7.0 kombu==5.6.2 -krb5==0.9.0 +krb5==0.10.0 kubernetes==36.0.3 kubernetes_asyncio==36.1.0 kylinpy==2.8.4 lazy-object-proxy==1.12.0 libcst==1.9.0 limits==5.8.0 -linkify-it-py==2.1.0 -litellm==1.95.0 +linkify-it-py==2.2.0 +litellm==1.96.2 lockfile==0.12.2 -logfire-api==4.40.0 +logfire-api==5.1.0 looker_sdk==26.12.0 -lxml==6.1.1 +lxml==6.1.3 lz4==4.4.5 markdown-it-py==4.2.0 marshmallow-sqlalchemy==1.5.0 -marshmallow==4.3.0 +marshmallow==4.3.1 matplotlib-inline==0.2.2 mdit-py-plugins==0.6.1 mdurl==0.1.2 memray==1.20.0 mergedeep==1.3.4 methodtools==0.4.7 -microsoft-kiota-abstractions==1.11.7 -microsoft-kiota-authentication-azure==1.11.7 -microsoft-kiota-http==1.11.7 -microsoft-kiota-serialization-json==1.11.7 -microsoft-kiota-serialization-text==1.11.7 +microsoft-kiota-abstractions==1.12.3 +microsoft-kiota-authentication-azure==1.12.3 +microsoft-kiota-http==1.12.3 +microsoft-kiota-serialization-json==1.12.3 +microsoft-kiota-serialization-text==1.12.3 mistune==3.3.4 -mmh3==5.2.1 +mmh3==5.3.0 more-itertools==11.1.0 msal-extensions==1.3.1 -msal==1.37.0 -msgpack==1.2.1 +msal==1.38.0 +msgpack==1.2.2 msgraph-core==1.5.1 msgraphfs==0.5 msgspec==0.21.1 msrest==0.7.1 msrestazure==0.6.4.post1 multi_key_dict==2.0.3 -multidict==6.7.1 +multidict==6.8.0 mypy_extensions==1.1.0 mysql-connector-python==26.7.0 mysqlclient==2.2.8 -narwhals==2.24.0 +narwhals==2.26.0 natsort==8.4.0 nbclient==0.11.0 nbconvert==7.17.1 -nbformat==5.11.0 -neo4j==6.2.0 +nbformat==5.11.1 +neo4j==6.3.0 nest-asyncio2==1.7.2 nest-asyncio==1.6.0 -numpy==2.5.1 +numpy==2.5.3 oauthlib==3.3.1 -openai==2.53.0 +openai==2.54.0 opencensus-context==0.1.3 opencensus==0.11.4 -openlineage-integration-common==1.52.0 -openlineage-python==1.52.0 -openlineage_sql==1.52.0 +openlineage-integration-common==1.53.0 +openlineage-python==1.53.0 +openlineage_sql==1.53.0 openpyxl==3.1.5 opensearch-protobufs==1.2.0 opensearch-py==3.2.0 @@ -512,13 +510,13 @@ opentelemetry-resourcedetector-gcp==1.14.0 opentelemetry-sdk==1.44.0 opentelemetry-semantic-conventions==0.65b0 opsgenie-sdk==2.1.5 -oracledb==4.0.2 +oracledb==26.0.0 ordered-set==4.1.0 -orjson==3.11.9 +orjson==3.12.0 outcome==1.3.0.post0 packaging==26.3 -pagerduty==7.0.0 -pandas-gbq==0.35.1 +pagerduty==7.0.1 +pandas-gbq==0.35.2 pandas==3.0.5 pandocfilters==1.5.1 papermill==2.7.0 @@ -530,81 +528,81 @@ pbr==7.0.3 pendulum==3.2.0 pexpect==4.9.0 pgvector==0.5.0 -pinecone==9.1.0 +pinecone==10.0.0 pinotdb==9.1.2 -platformdirs==4.11.1 +platformdirs==4.11.8 pluggy==1.6.0 -polars-runtime-32==1.43.2 -polars==1.43.2 +polars-runtime-32==1.44.2 +polars==1.44.2 portalocker==3.2.0 presto-python-client==0.8.4 prison==0.2.1 prometheus_client==0.26.0 prompt_toolkit==3.0.53 propcache==0.5.2 -proto-plus==1.28.3 +proto-plus==1.28.4 protobuf==6.33.6 psutil==7.2.2 -psycopg-binary==3.3.4 -psycopg2-binary==2.9.12 -psycopg==3.3.4 +psycopg-binary==3.3.5 +psycopg2-binary==2.9.13 +psycopg==3.3.5 ptyprocess==0.7.0 pure-sasl==0.6.2 -pure_eval==0.2.3 +pure_eval==0.2.4 py-spy==0.4.2 pyOpenSSL==26.4.0 -pyarrow==25.0.0 +pyarrow==25.0.1 pyasn1==0.6.4 pyasn1_modules==0.4.2 pybreaker==1.4.1 pycountry==26.2.16 pycparser==3.0 pycryptodome==3.23.0 -pydantic-ai-slim==2.27.0 +pydantic-ai-slim==2.43.0 pydantic-extra-types==2.11.1 -pydantic-graph==2.27.0 +pydantic-graph==2.43.0 pydantic-settings==2.15.0 -pydantic==2.13.4 -pydantic_core==2.46.4 +pydantic==2.13.5 +pydantic_core==2.46.5 pydata-google-auth==1.9.1 pydruid==0.6.9 -pyexasol==1.3.0 -pygtrie==2.5.0 -pyiceberg==0.11.1 +pyexasol==2.4.0 +pygtrie==2.6.1 +pyiceberg==0.12.0 pykerberos==1.2.4 -pymongo==4.17.0 -pymssql==2.3.13 +pymongo==4.18.1 +pymssql==2.4.1 pyodbc==5.3.0 -pyodps==0.13.0 +pyodps==0.13.2 pyparsing==3.3.2 pypsrp==0.9.1 pyroaring==1.1.0 pyspark-client==4.2.0 -pyspnego==0.12.1 -python-arango==8.3.3 +pyspnego==0.12.2 +python-arango==8.3.5 python-daemon==3.1.2 python-dateutil==2.9.0.post0 -python-discovery==1.5.1 -python-dotenv==1.2.2 +python-discovery==1.6.0 +python-dotenv==1.2.3 python-http-client==3.3.7 python-jenkins==1.8.3 python-keycloak==7.1.1 python-ldap==3.4.7 python-multipart==0.0.32 -python-slugify==8.0.4 +python-slugify==9.0.0 python-telegram-bot==22.8 pytokens==0.4.1 pytz==2026.3.post1 -pyvespa==1.2.4 +pyvespa==1.2.5 pywinrm==0.5.0 -pyzmq==27.1.0 +pyzmq==27.2.0 qdrant-client==1.19.0 -ray==2.56.1 +ray==2.58.0 reactivex==5.1.0 redis==6.4.0 redshift_connector==2.1.16 referencing==0.37.0 -regex==2026.7.19 +regex==2026.9.10 requests-file==3.0.1 requests-kerberos==0.15.0 requests-oauthlib==2.0.0 @@ -613,52 +611,52 @@ requests==2.34.2 requests_ntlm==1.3.0 retryhttp==1.5.0 rich-argparse==1.8.0 -rich-toolkit==0.20.3 -rich==14.3.4 +rich-toolkit==0.20.5 +rich==15.0.0 rpds-py==2026.6.3 rsa==4.9.1 ruamel.yaml==0.19.1 s3fs==2026.7.0 s3transfer==0.19.2 sagemaker_studio==1.0.27 -scikit-learn==1.9.0 -scipy==1.18.0 +scikit-learn==1.9.1 +scipy==1.18.1 scramp==1.4.17 scrapbook==0.5.0 segment-analytics-python==2.3.6 sendgrid==6.12.5 -sentry-sdk==2.66.1 +sentry-sdk==2.69.1 setproctitle==1.3.7 -setuptools==83.0.0 +setuptools==84.0.0 shellingham==1.5.4 simple-salesforce==1.12.10 six==1.17.0 -slack_sdk==3.43.0 +slack_sdk==3.44.1 smart_open==8.0.1 smbprotocol==1.17.0 smmap==5.0.3 sniffio==1.3.1 -snowflake-connector-python==4.7.2 -snowflake-sqlalchemy==1.11.0 +snowflake-connector-python==4.7.3 +snowflake-sqlalchemy==1.11.1 sortedcontainers==2.4.0 soupsieve==2.9.2 spython==0.3.14 sqlalchemy-bigquery==1.17.2 -sqlalchemy-spanner==1.19.0 +sqlalchemy-spanner==1.20.1 sqlalchemy_drill==1.1.10 -sqlglot==30.15.0 -sqlparse==0.5.5 +sqlglot==30.18.0 +sqlparse==0.6.0 stack-data==0.6.3 -starlette==1.5.0 +starlette==1.6.0 statsd==4.0.1 std-uritemplate==2.0.12 strictyaml==1.7.3 structlog==26.1.0 -svcs==26.1.0 +svcs==26.2.0 tableauserverclient==0.41 tabulate==0.10.0 tenacity==9.1.4 -teradatasql==20.0.0.64 +teradatasql==20.0.0.68 teradatasqlalchemy==20.0.0.9 termcolor==3.3.0 text-unidecode==1.3 @@ -666,52 +664,51 @@ textual==8.2.8 threadpoolctl==3.6.0 thrift-sasl==0.4.3 thrift==0.24.0 -tiktoken==0.13.0 +tiktoken==0.14.0 tinycss2==1.5.1 -tokenizers==0.23.1 +tokenizers==0.23.2 tomlkit==0.15.1 tornado==6.5.8 -tqdm==4.70.0 +tqdm==4.70.1 traitlets==5.16.1 -trino==0.338.0 +trino==0.339.0 truststore==0.10.4 -typer==0.27.1 -types-protobuf==7.34.1.20260518 -types-requests==2.33.0.20260712 -typing-inspection==0.4.2 +typer==0.27.2 +types-protobuf==7.35.1.20260906 +types-requests==2.33.0.20260906 +typing-inspection==0.4.4 typing_extensions==4.16.0 -tzdata==2026.3 +tzdata==2026.4 tzlocal==5.4.4 -uc-micro-py==2.0.0 universal_pathlib==0.3.10 uritemplate==4.2.0 urllib3==2.7.0 uuid6==2025.0.1 -uv==0.12.3 -uvicorn==0.52.1 +uv==0.12.13 +uvicorn==0.52.4 uvloop==0.22.1 validators==0.35.0 vertica-python==1.4.0 vine==5.1.0 -virtualenv==21.7.2 +virtualenv==21.7.9 watchfiles==1.2.0 watchtower==3.4.0 -wcwidth==0.8.2 +wcwidth==0.8.3 weaviate-client==4.16.2 -webencodings==0.5.1 -websocket-client==1.8.0 +webencodings==0.6.1 +websocket-client==1.9.0 websockets==16.1.1 wirerope==1.0.0 -wrapt==2.3.0 +wrapt==2.4.1 xmltodict==1.0.4 yandex-query-client==0.1.4 -yandexcloud==0.402.0 +yandexcloud==0.406.0 yarl==1.24.5 -ydb-dbapi==0.1.22 -ydb==3.31.2 +ydb-dbapi==0.1.23 +ydb==3.31.5 zeep==4.3.3 zenpy==2.0.57 zipp==4.1.0 zope.event==6.2 -zope.interface==8.5 +zope.interface==8.6 zstandard==0.25.0 diff --git a/airflow/stackable/patches/3.3.1/0001-Allow-overriding-the-logging-configuration.patch b/airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch similarity index 100% rename from airflow/stackable/patches/3.3.1/0001-Allow-overriding-the-logging-configuration.patch rename to airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch diff --git a/airflow/stackable/patches/3.3.1/patchable.toml b/airflow/stackable/patches/3.3.2/patchable.toml similarity index 52% rename from airflow/stackable/patches/3.3.1/patchable.toml rename to airflow/stackable/patches/3.3.2/patchable.toml index 4f1e07a12..9f47749c1 100644 --- a/airflow/stackable/patches/3.3.1/patchable.toml +++ b/airflow/stackable/patches/3.3.2/patchable.toml @@ -1,2 +1,2 @@ mirror = "https://github.com/stackabletech/airflow.git" -base = "3adbbe1c58e4532df1964cb7794805e763816ee8" +base = "aa19d2dbb9ed187ec01957a92848d9b005e9ba9d" From 3eb84d512fafb6023060581c4d9cc17e5f1c406a Mon Sep 17 00:00:00 2001 From: Andrew Kenworthy Date: Tue, 20 Oct 2026 10:26:02 +0200 Subject: [PATCH 2/4] update extras list --- airflow/README.md | 3 +++ airflow/boil-config.toml | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/airflow/README.md b/airflow/README.md index 192d637a1..5c9023a9c 100644 --- a/airflow/README.md +++ b/airflow/README.md @@ -30,8 +30,11 @@ To keep the installation tightly coupled to the associated constraints it is bes Applying the filter above results in the omission of the following providers: - `apache-atlas` +- `apache-beam` +- `apache-cassandra` - `apache-webhdfs` - `ibm-mq` +- `tabular` Other than the above, the only other providers that are currently excluded are: diff --git a/airflow/boil-config.toml b/airflow/boil-config.toml index fde3bc14d..4660ed993 100644 --- a/airflow/boil-config.toml +++ b/airflow/boil-config.toml @@ -207,10 +207,10 @@ airflow-extras-core = "async,graphviz,kerberos,memray,otel,sentry,standard,stats airflow-extras-meta = "aiobotocore,amazon-aws-auth,cloudpickle,github-enterprise,google-auth,graphviz,gunicorn,ldap,leveldb,pandas,polars,rabbitmq,s3fs,saml,uv" # See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#apache-software-extras -airflow-extras-provider-apache = "apache-beam,apache-cassandra,apache-drill,apache-druid,apache-flink,apache-hdfs,apache-hive,apache-iceberg,apache-impala,apache-kafka,apache-kylin,apache-livy,apache-pig,apache-pinot,apache-tinkerpop" +airflow-extras-provider-apache = "apache-drill,apache-druid,apache-flink,apache-hdfs,apache-hive,apache-iceberg,apache-impala,apache-kafka,apache-kylin,apache-livy,apache-pig,apache-pinot,apache-tinkerpop" # See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#external-services-extras -airflow-extras-external-services = "airbyte,akeyless,alibaba,apprise,amazon,asana,atlassian-jira,microsoft-azure,clickhousedb,cloudant,cohere,databricks,datadog,dbt-cloud,dingding,discord,facebook,github,google,hashicorp,openai,opsgenie,pagerduty,pgvector,pinecone,qdrant,salesforce,sendgrid,segment,slack,snowflake,tableau,tabular,telegram,vertica,vespa,weaviate,yandex,ydb,zendesk" +airflow-extras-external-services = "airbyte,akeyless,alibaba,apprise,amazon,asana,atlassian-jira,microsoft-azure,clickhousedb,cloudant,cohere,databricks,datadog,dbt-cloud,dingding,discord,facebook,github,google,hashicorp,openai,opsgenie,pagerduty,pgvector,pinecone,qdrant,salesforce,sendgrid,segment,slack,snowflake,tableau,telegram,vertica,vespa,weaviate,yandex,ydb,zendesk" # See https://airflow.apache.org/docs/apache-airflow/3.3.2/extra-packages-ref.html#locally-installed-software-extras airflow-extras-locally-installed-software = "arangodb,celery,cncf-kubernetes,docker,edge3,elasticsearch,exasol,fab,git,github,influxdb,jenkins,mongo,microsoft-mssql,neo4j,odbc,openfaas,oracle,postgres,presto,redis,samba,singularity,teradata,trino" From 72b48bc0eb97e964e21507085a3aeffec98eca9a Mon Sep 17 00:00:00 2001 From: Andrew Kenworthy Date: Tue, 20 Oct 2026 10:28:09 +0200 Subject: [PATCH 3/4] changelog --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 95ac84357..733f3cc05 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,7 @@ All notable changes to this project will be documented in this file. - hive: Add `4.2.1` ([#1637]). - kafka: Add `4.3.1` and deprecate `4.2.1` ([#1659], [#1706]). - stats-exporter: Add `0.31.0` ([#1664]). -- airflow: Add `3.3.1`, deprecate `3.2.2` ([#1665]). +- airflow: Add `3.3.2`, deprecate `3.2.2` ([#1665], [#1708]). - nifi: Add `2.12.0` ([#1667]). - opensearch: Add `3.8.0` ([#1669]). - opensearch: Add the `repository-azure` plugin ([#1689]). @@ -158,6 +158,7 @@ All notable changes to this project will be documented in this file. [#1705]: https://github.com/stackabletech/docker-images/pull/1705 [#1706]: https://github.com/stackabletech/docker-images/pull/1706 [#1707]: https://github.com/stackabletech/docker-images/pull/1707 +[#1708]: https://github.com/stackabletech/docker-images/pull/1708 [#1709]: https://github.com/stackabletech/docker-images/pull/1709 ## [26.7.0] - 2026-07-21 From d6065e542740ceb5a39c64401eab9593d890c39c Mon Sep 17 00:00:00 2001 From: Andrew Kenworthy Date: Tue, 20 Oct 2026 11:03:51 +0200 Subject: [PATCH 4/4] re-created patch by hand --- ...overriding-the-logging-configuration.patch | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch b/airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch index 587273c83..f898648ec 100644 --- a/airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch +++ b/airflow/stackable/patches/3.3.2/0001-Allow-overriding-the-logging-configuration.patch @@ -1,19 +1,19 @@ -From 443a6ad14c239789461ed0d952e91042e55a534c Mon Sep 17 00:00:00 2001 +From e36994ed267c581f17d9eae66f4bed02b544ecfa Mon Sep 17 00:00:00 2001 From: Andrew Kenworthy -Date: Wed, 16 Sep 2026 17:56:45 +0200 +Date: Tue, 20 Oct 2026 10:59:01 +0200 Subject: Allow overriding the logging configuration --- - .../src/airflow_shared/logging/structlog.py | 30 ++++++++++++++++++- - 1 file changed, 29 insertions(+), 1 deletion(-) + .../src/airflow_shared/logging/structlog.py | 28 ++++++++++++++++++- + 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/shared/logging/src/airflow_shared/logging/structlog.py b/shared/logging/src/airflow_shared/logging/structlog.py -index b13be19144567978e6f0fb2ae35d9474a941028c..117e6f655b394e7b27c01bb8ce1e0e11b995d0e8 100644 +index b13be19144567978e6f0fb2ae35d9474a941028c..75406fe6dd7141b2276c9cb0cdd213fd66298686 100644 --- a/shared/logging/src/airflow_shared/logging/structlog.py +++ b/shared/logging/src/airflow_shared/logging/structlog.py -@@ -532,6 +532,18 @@ def structlog_processors( - return shared_processors, console, console +@@ -531,6 +531,16 @@ def structlog_processors( + return shared_processors, console, console +def update_config( + config: dict, @@ -25,12 +25,10 @@ index b13be19144567978e6f0fb2ae35d9474a941028c..117e6f655b394e7b27c01bb8ce1e0e11 + else: + config[key] = value + return config -+ -+ + def configure_logging( *, - json_output: bool = False, -@@ -600,6 +612,19 @@ def configure_logging( +@@ -600,6 +610,19 @@ def configure_logging( PER_LOGGER_LEVELS[""] = NAME_TO_LEVEL[log_level.lower()] PER_LOGGER_LEVELS.update(parse_namespace_log_levels(namespace_log_levels)) @@ -50,7 +48,7 @@ index b13be19144567978e6f0fb2ae35d9474a941028c..117e6f655b394e7b27c01bb8ce1e0e11 shared_pre_chain, for_stdlib, for_structlog = structlog_processors( json_output, log_format=log_format, -@@ -646,7 +671,7 @@ def configure_logging( +@@ -646,7 +669,7 @@ def configure_logging( import logging.config @@ -59,7 +57,7 @@ index b13be19144567978e6f0fb2ae35d9474a941028c..117e6f655b394e7b27c01bb8ce1e0e11 config.setdefault("version", 1) config.setdefault("disable_existing_loggers", False) config["formatters"] = {**config.get("formatters", {})} -@@ -700,6 +725,9 @@ def configure_logging( +@@ -700,6 +723,9 @@ def configure_logging( "propagate": True, }