From 0eeb62aa875a24f511b3d18265f7056a6fa497b2 Mon Sep 17 00:00:00 2001 From: Kaxil Naik Date: Mon, 6 Jul 2026 19:38:47 +0530 Subject: [PATCH] Document each provider's optional extras in its docs index The provider docs index page only listed cross-provider extras (extras that pull in another Airflow provider). A provider's plain-PyPI optional extras -- common-ai's anthropic/openai/langchain, amazon's aiobotocore/ s3fs, and so on -- had no rendering path in the docs at all. Render the already-computed optional-dependencies table in the provider index template, mirroring what the PyPI README template already does. The shared index template drives every provider's index.rst, and the update-providers-build-files check regenerates them all, so this also regenerates the index for every provider that declares optional extras. --- .../PROVIDER_INDEX_TEMPLATE.rst.jinja2 | 16 ++++++++ dev/breeze/tests/test_packages.py | 40 +++++++++++++++++++ providers/akeyless/docs/index.rst | 17 ++++++++ providers/amazon/docs/index.rst | 35 ++++++++++++++++ providers/anthropic/docs/index.rst | 19 +++++++++ providers/apache/druid/docs/index.rst | 17 ++++++++ providers/apache/hive/docs/index.rst | 24 +++++++++++ providers/apache/impala/docs/index.rst | 18 +++++++++ providers/apache/kafka/docs/index.rst | 18 +++++++++ providers/apache/spark/docs/index.rst | 19 +++++++++ providers/celery/docs/index.rst | 17 ++++++++ providers/common/ai/docs/index.rst | 32 +++++++++++++++ providers/common/compat/docs/index.rst | 18 +++++++++ providers/common/io/docs/index.rst | 17 ++++++++ providers/common/messaging/docs/index.rst | 18 +++++++++ providers/common/sql/docs/index.rst | 24 +++++++++++ providers/databricks/docs/index.rst | 24 +++++++++++ providers/dbt/cloud/docs/index.rst | 17 ++++++++ providers/elasticsearch/docs/index.rst | 17 ++++++++ providers/exasol/docs/index.rst | 17 ++++++++ providers/fab/docs/index.rst | 18 +++++++++ providers/ftp/docs/index.rst | 17 ++++++++ providers/google/docs/index.rst | 37 +++++++++++++++++ providers/hashicorp/docs/index.rst | 18 +++++++++ providers/ibm/mq/docs/index.rst | 18 +++++++++ providers/informatica/docs/index.rst | 18 +++++++++ providers/jdbc/docs/index.rst | 17 ++++++++ providers/microsoft/azure/docs/index.rst | 22 ++++++++++ providers/microsoft/mssql/docs/index.rst | 17 ++++++++ providers/mysql/docs/index.rst | 22 ++++++++++ providers/openlineage/docs/index.rst | 17 ++++++++ providers/oracle/docs/index.rst | 18 +++++++++ providers/pgvector/docs/index.rst | 17 ++++++++ providers/postgres/docs/index.rst | 23 +++++++++++ providers/presto/docs/index.rst | 18 +++++++++ providers/redis/docs/index.rst | 17 ++++++++ providers/samba/docs/index.rst | 17 ++++++++ providers/sftp/docs/index.rst | 18 +++++++++ providers/snowflake/docs/index.rst | 18 +++++++++ providers/standard/docs/index.rst | 17 ++++++++ providers/teradata/docs/index.rst | 20 ++++++++++ providers/trino/docs/index.rst | 18 +++++++++ providers/vertica/docs/index.rst | 17 ++++++++ 43 files changed, 863 insertions(+) diff --git a/dev/breeze/src/airflow_breeze/templates/PROVIDER_INDEX_TEMPLATE.rst.jinja2 b/dev/breeze/src/airflow_breeze/templates/PROVIDER_INDEX_TEMPLATE.rst.jinja2 index f431d602e7ef6..1bd4e8cc7892e 100644 --- a/dev/breeze/src/airflow_breeze/templates/PROVIDER_INDEX_TEMPLATE.rst.jinja2 +++ b/dev/breeze/src/airflow_breeze/templates/PROVIDER_INDEX_TEMPLATE.rst.jinja2 @@ -89,6 +89,22 @@ You can install such cross-provider dependencies when installing from PyPI. For {{ CROSS_PROVIDERS_DEPENDENCIES_TABLE_RST | safe }} {%- endif %} +{%- if OPTIONAL_DEPENDENCIES %} + +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install {{ PACKAGE_PIP_NAME }}[{{ (OPTIONAL_DEPENDENCIES | list)[0] }}] + + +{{ OPTIONAL_DEPENDENCIES_TABLE_RST | safe }} +{%- endif %} + Downloading official packages ----------------------------- diff --git a/dev/breeze/tests/test_packages.py b/dev/breeze/tests/test_packages.py index 2d54ffdfe5168..2ce4db254639a 100644 --- a/dev/breeze/tests/test_packages.py +++ b/dev/breeze/tests/test_packages.py @@ -27,6 +27,7 @@ apply_version_suffix_to_non_provider_pyproject_tomls, apply_version_suffix_to_provider_pyproject_toml, convert_cross_package_dependencies_to_table, + convert_optional_dependencies_to_table, convert_pip_requirements_to_table, expand_all_provider_distributions, find_matching_long_package_names, @@ -39,11 +40,13 @@ get_pip_package_name, get_provider_details, get_provider_info_dict, + get_provider_jinja_context, get_provider_requirements, get_removed_provider_ids, get_short_package_name, get_suspended_provider_folders, get_suspended_provider_ids, + render_template, validate_provider_info_with_runtime_schema, ) from airflow_breeze.utils.path_utils import AIRFLOW_ROOT_PATH @@ -317,6 +320,43 @@ def test_convert_cross_package_dependencies_to_table(): ) +@pytest.mark.parametrize("markdown", [True, False]) +def test_convert_optional_dependencies_to_table(markdown: bool): + optional_dependencies = { + "aiobotocore": ["aiobotocore>=3.0.0"], + "s3fs": ["s3fs>=2023.10.0", "boto3>=1.0"], + } + table = convert_optional_dependencies_to_table(optional_dependencies, markdown=markdown) + quote = "`" if markdown else "``" + assert "Extra" in table + assert "Dependencies" in table + assert f"{quote}aiobotocore{quote}" in table + assert f"{quote}aiobotocore>=3.0.0{quote}" in table + # Multiple dependencies for a single extra are comma-joined in one cell. + assert f"{quote}s3fs>=2023.10.0{quote}, {quote}boto3>=1.0{quote}" in table + + +def test_provider_index_template_renders_optional_dependencies(): + # Amazon carries plain-PyPI extras (e.g. ``aiobotocore``) that are not cross-provider + # dependencies, so their only rendering path is the "Optional dependencies" section. + context = get_provider_jinja_context("amazon", current_release_version="1.0.0", version_suffix="") + rendered = render_template( + template_name="PROVIDER_INDEX", context=context, extension=".rst", keep_trailing_newline=True + ) + assert "Optional dependencies\n---------------------" in rendered + assert "``aiobotocore``" in rendered + + +def test_provider_index_template_omits_optional_dependencies_when_none(): + context = get_provider_jinja_context("amazon", current_release_version="1.0.0", version_suffix="") + context["OPTIONAL_DEPENDENCIES"] = {} + context["OPTIONAL_DEPENDENCIES_TABLE_RST"] = "" + rendered = render_template( + template_name="PROVIDER_INDEX", context=context, extension=".rst", keep_trailing_newline=True + ) + assert "Optional dependencies\n---------------------" not in rendered + + def test_get_provider_info_dict(): provider_info_dict = get_provider_info_dict("amazon") assert provider_info_dict["name"] == "Amazon" diff --git a/providers/akeyless/docs/index.rst b/providers/akeyless/docs/index.rst index 35d35f6738f89..6267b1b73fd91 100644 --- a/providers/akeyless/docs/index.rst +++ b/providers/akeyless/docs/index.rst @@ -106,6 +106,23 @@ PIP package Version required ``akeyless`` ``>=5.0.0`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-akeyless[cloud_id] + + +============ ===================== +Extra Dependencies +============ ===================== +``cloud_id`` ``akeyless_cloud_id`` +============ ===================== + Downloading official packages ----------------------------- diff --git a/providers/amazon/docs/index.rst b/providers/amazon/docs/index.rst index fbde740add842..507a0caa0501f 100644 --- a/providers/amazon/docs/index.rst +++ b/providers/amazon/docs/index.rst @@ -160,6 +160,41 @@ Dependent package `apache-airflow-providers-ssh `_ ``ssh`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-amazon[aiobotocore] + + +==================== ============================================================================================================================================================ +Extra Dependencies +==================== ============================================================================================================================================================ +``aiobotocore`` ``aiobotocore>=3.0.0`` +``cncf.kubernetes`` ``apache-airflow-providers-cncf-kubernetes>=7.2.0`` +``s3fs`` ``s3fs>=2023.10.0`` +``python3-saml`` ``python3-saml>=1.16.0; python_version < '3.13'``, ``xmlsec>=1.3.14; python_version < '3.13'``, ``lxml>=6.0.0; python_version < '3.13'`` +``apache.hive`` ``apache-airflow-providers-apache-hive`` +``exasol`` ``apache-airflow-providers-exasol`` +``fab`` ``apache-airflow-providers-fab>=2.2.0`` +``ftp`` ``apache-airflow-providers-ftp`` +``google`` ``apache-airflow-providers-google`` +``imap`` ``apache-airflow-providers-imap`` +``microsoft.azure`` ``apache-airflow-providers-microsoft-azure`` +``mongo`` ``apache-airflow-providers-mongo`` +``pandas`` ``pandas>=2.1.2; python_version <"3.13"``, ``pandas>=2.2.3; python_version >="3.13" and python_version <"3.14"``, ``pandas>=2.3.3; python_version >="3.14"`` +``openlineage`` ``apache-airflow-providers-openlineage>=2.3.0`` +``salesforce`` ``apache-airflow-providers-salesforce`` +``ssh`` ``apache-airflow-providers-ssh`` +``standard`` ``apache-airflow-providers-standard`` +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +==================== ============================================================================================================================================================ + Downloading official packages ----------------------------- diff --git a/providers/anthropic/docs/index.rst b/providers/anthropic/docs/index.rst index 01f5628577650..582dbff0402e2 100644 --- a/providers/anthropic/docs/index.rst +++ b/providers/anthropic/docs/index.rst @@ -101,6 +101,25 @@ PIP package Version required ``anthropic`` ``>=0.101.0`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-anthropic[bedrock] + + +=========== =============================== +Extra Dependencies +=========== =============================== +``bedrock`` ``anthropic[bedrock]>=0.101.0`` +``vertex`` ``anthropic[vertex]>=0.101.0`` +``aws`` ``anthropic[aws]>=0.101.0`` +=========== =============================== + Downloading official packages ----------------------------- diff --git a/providers/apache/druid/docs/index.rst b/providers/apache/druid/docs/index.rst index ff3e422695f60..b3991a754686f 100644 --- a/providers/apache/druid/docs/index.rst +++ b/providers/apache/druid/docs/index.rst @@ -124,6 +124,23 @@ Dependent package `apache-airflow-providers-apache-hive `_ ``apache.hive`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-apache-druid[apache.hive] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``apache.hive`` ``apache-airflow-providers-apache-hive`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/apache/hive/docs/index.rst b/providers/apache/hive/docs/index.rst index 17ef092669f32..6b7638ac6c4a7 100644 --- a/providers/apache/hive/docs/index.rst +++ b/providers/apache/hive/docs/index.rst @@ -137,6 +137,30 @@ Dependent package `apache-airflow-providers-vertica `_ ``vertica`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-apache-hive[amazon] + + +=================== ============================================================================================= +Extra Dependencies +=================== ============================================================================================= +``amazon`` ``apache-airflow-providers-amazon`` +``microsoft.mssql`` ``apache-airflow-providers-microsoft-mssql`` +``mysql`` ``apache-airflow-providers-mysql`` +``presto`` ``apache-airflow-providers-presto`` +``samba`` ``apache-airflow-providers-samba`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +``vertica`` ``apache-airflow-providers-vertica`` +``GSSAPI`` ``winkerberos>=0.7.0; sys_platform == "win32"``, ``kerberos>=1.3.0; sys_platform != "win32"`` +=================== ============================================================================================= + Downloading official packages ----------------------------- diff --git a/providers/apache/impala/docs/index.rst b/providers/apache/impala/docs/index.rst index fcf54c3264674..a5dec16eae305 100644 --- a/providers/apache/impala/docs/index.rst +++ b/providers/apache/impala/docs/index.rst @@ -113,6 +113,24 @@ PIP package Version required ``apache-airflow`` ``>=2.11.0`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-apache-impala[kerberos] + + +============== ====================== +Extra Dependencies +============== ====================== +``kerberos`` ``kerberos>=1.3.0`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +============== ====================== + Downloading official packages ----------------------------- diff --git a/providers/apache/kafka/docs/index.rst b/providers/apache/kafka/docs/index.rst index b6c8702ac4f7f..b3fc33f162a66 100644 --- a/providers/apache/kafka/docs/index.rst +++ b/providers/apache/kafka/docs/index.rst @@ -134,6 +134,24 @@ Dependent package `apache-airflow-providers-google `_ ``google`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-apache-kafka[google] + + +==================== ==================================================== +Extra Dependencies +==================== ==================================================== +``google`` ``apache-airflow-providers-google`` +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +==================== ==================================================== + Downloading official packages ----------------------------- diff --git a/providers/apache/spark/docs/index.rst b/providers/apache/spark/docs/index.rst index e6eb42d5ddce1..d48b7bd4c22e6 100644 --- a/providers/apache/spark/docs/index.rst +++ b/providers/apache/spark/docs/index.rst @@ -127,6 +127,25 @@ Dependent package `apache-airflow-providers-cncf-kubernetes `_ ``cncf.kubernetes`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-apache-spark[cncf.kubernetes] + + +=================== =================================================== +Extra Dependencies +=================== =================================================== +``cncf.kubernetes`` ``apache-airflow-providers-cncf-kubernetes>=7.4.0`` +``openlineage`` ``apache-airflow-providers-openlineage`` +``pyspark`` ``pyspark>=4.0.0`` +=================== =================================================== + Downloading official packages ----------------------------- diff --git a/providers/celery/docs/index.rst b/providers/celery/docs/index.rst index 581de97fc267d..8ad40a4af735c 100644 --- a/providers/celery/docs/index.rst +++ b/providers/celery/docs/index.rst @@ -115,6 +115,23 @@ Dependent package `apache-airflow-providers-cncf-kubernetes `_ ``cncf.kubernetes`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-celery[cncf.kubernetes] + + +=================== =================================================== +Extra Dependencies +=================== =================================================== +``cncf.kubernetes`` ``apache-airflow-providers-cncf-kubernetes>=7.4.0`` +=================== =================================================== + Downloading official packages ----------------------------- diff --git a/providers/common/ai/docs/index.rst b/providers/common/ai/docs/index.rst index 385ed423861d4..08915a67828bf 100644 --- a/providers/common/ai/docs/index.rst +++ b/providers/common/ai/docs/index.rst @@ -132,6 +132,38 @@ Dependent package `apache-airflow-providers-git `_ ``git`` ============================================================================================================ ============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-common-ai[anthropic] + + +============== ========================================================================================================== +Extra Dependencies +============== ========================================================================================================== +``anthropic`` ``pydantic-ai-slim[anthropic]`` +``bedrock`` ``pydantic-ai-slim[bedrock]`` +``google`` ``pydantic-ai-slim[google]`` +``openai`` ``pydantic-ai-slim[openai]`` +``mcp`` ``pydantic-ai-slim[mcp]`` +``code-mode`` ``pydantic-ai-harness[codemode]>=0.3.0`` +``skills`` ``apache-airflow-providers-git>=0.4.0``, ``pydantic-ai-skills>=0.11.0`` +``avro`` ``fastavro>=1.10.0; python_version < "3.14"``, ``fastavro>=1.12.1; python_version >= "3.14"`` +``parquet`` ``pyarrow>=18.0.0; python_version < '3.14'``, ``pyarrow>=22.0.0; python_version >= '3.14'`` +``sql`` ``apache-airflow-providers-common-sql``, ``sqlglot>=30.0.0`` +``common.sql`` ``apache-airflow-providers-common-sql`` +``langchain`` ``langchain>=1.0.0`` +``llamaindex`` ``llama-index-core>=0.13.0``, ``llama-index-embeddings-openai>=0.6.0``, ``llama-index-llms-openai>=0.6.0`` +``pdf`` ``pypdf>=4.0.0`` +``docx`` ``python-docx>=1.0.0`` +``git`` ``apache-airflow-providers-git`` +============== ========================================================================================================== + Downloading official packages ----------------------------- diff --git a/providers/common/compat/docs/index.rst b/providers/common/compat/docs/index.rst index 5dc44cf69c5c2..2d9486b65625f 100644 --- a/providers/common/compat/docs/index.rst +++ b/providers/common/compat/docs/index.rst @@ -109,6 +109,24 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-common-compat[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +``standard`` ``apache-airflow-providers-standard`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/common/io/docs/index.rst b/providers/common/io/docs/index.rst index c249104003ea2..38269e8adfc1a 100644 --- a/providers/common/io/docs/index.rst +++ b/providers/common/io/docs/index.rst @@ -126,6 +126,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-common-io[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/common/messaging/docs/index.rst b/providers/common/messaging/docs/index.rst index 3c0a233aaf8dd..225413f8c0c3b 100644 --- a/providers/common/messaging/docs/index.rst +++ b/providers/common/messaging/docs/index.rst @@ -103,6 +103,24 @@ PIP package Version required ``apache-airflow`` ``>=3.0.1`` ================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-common-messaging[amazon] + + +================ ================================================ +Extra Dependencies +================ ================================================ +``amazon`` ``apache-airflow-providers-amazon>=9.7.0`` +``apache.kafka`` ``apache-airflow-providers-apache-kafka>=1.9.0`` +================ ================================================ + Downloading official packages ----------------------------- diff --git a/providers/common/sql/docs/index.rst b/providers/common/sql/docs/index.rst index f1cab02497cd7..4041a2825e5cf 100644 --- a/providers/common/sql/docs/index.rst +++ b/providers/common/sql/docs/index.rst @@ -130,6 +130,30 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ==================================================================================================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-common-sql[pandas] + + +================== ======================================================================================================================================================================= +Extra Dependencies +================== ======================================================================================================================================================================= +``pandas`` ``pandas[sql-other]>=2.1.2; python_version <"3.13"``, ``pandas>=2.2.3; python_version >="3.13" and python_version <"3.14"``, ``pandas>=2.3.3; python_version >="3.14"`` +``openlineage`` ``apache-airflow-providers-openlineage`` +``polars`` ``polars>=1.26.0`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +``amazon`` ``apache-airflow-providers-amazon`` +``datafusion`` ``datafusion>=50.0.0,<52.0.0`` +``pyiceberg-core`` ``pyiceberg-core>=0.8.0`` +``apache.iceberg`` ``apache-airflow-providers-apache-iceberg`` +================== ======================================================================================================================================================================= + Downloading official packages ----------------------------- diff --git a/providers/databricks/docs/index.rst b/providers/databricks/docs/index.rst index 0edde578a19dc..2bacaef0aa2c5 100644 --- a/providers/databricks/docs/index.rst +++ b/providers/databricks/docs/index.rst @@ -136,6 +136,30 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-databricks[avro] + + +================== ================================================================================================================================================================ +Extra Dependencies +================== ================================================================================================================================================================ +``avro`` ``fastavro>=1.9.0; python_version<"3.14"``, ``fastavro>=1.10.0; python_version>="3.12" and python_version<"3.14"``, ``fastavro>=1.12.1; python_version>="3.14"`` +``azure-identity`` ``azure-identity>=1.3.1`` +``fab`` ``apache-airflow-providers-fab>=2.2.0`` +``google`` ``apache-airflow-providers-google>=10.24.0`` +``sdk`` ``databricks-sdk==0.10.0`` +``standard`` ``apache-airflow-providers-standard`` +``openlineage`` ``apache-airflow-providers-openlineage>=2.3.0`` +``sqlalchemy`` ``databricks-sqlalchemy>=1.0.2`` +================== ================================================================================================================================================================ + Downloading official packages ----------------------------- diff --git a/providers/dbt/cloud/docs/index.rst b/providers/dbt/cloud/docs/index.rst index e1b72906427ef..7933a655b1765 100644 --- a/providers/dbt/cloud/docs/index.rst +++ b/providers/dbt/cloud/docs/index.rst @@ -132,6 +132,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-dbt-cloud[openlineage] + + +=============== =============================================== +Extra Dependencies +=============== =============================================== +``openlineage`` ``apache-airflow-providers-openlineage>=2.3.0`` +=============== =============================================== + Downloading official packages ----------------------------- diff --git a/providers/elasticsearch/docs/index.rst b/providers/elasticsearch/docs/index.rst index 4eb4cd06e7a0e..18bde63449141 100644 --- a/providers/elasticsearch/docs/index.rst +++ b/providers/elasticsearch/docs/index.rst @@ -108,6 +108,23 @@ PIP package Version required ``elasticsearch`` ``<10,>=8.10`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-elasticsearch[polars] + + +========== ================== +Extra Dependencies +========== ================== +``polars`` ``polars>=1.26.0`` +========== ================== + Downloading official packages ----------------------------- diff --git a/providers/exasol/docs/index.rst b/providers/exasol/docs/index.rst index 98556fa345b42..188d77f80085a 100644 --- a/providers/exasol/docs/index.rst +++ b/providers/exasol/docs/index.rst @@ -107,6 +107,23 @@ PIP package Version required ``pandas`` ``>=2.3.3; python_version >= "3.14"`` ========================================== ================================================================= +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-exasol[sqlalchemy] + + +============== ====================== +Extra Dependencies +============== ====================== +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +============== ====================== + Downloading official packages ----------------------------- diff --git a/providers/fab/docs/index.rst b/providers/fab/docs/index.rst index 97f2832dfa07b..a331bb2c9ea99 100644 --- a/providers/fab/docs/index.rst +++ b/providers/fab/docs/index.rst @@ -129,6 +129,24 @@ PIP package Version required ``flask_limiter`` ``>3`` ========================================== ===================================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-fab[kerberos] + + +============ =================== +Extra Dependencies +============ =================== +``kerberos`` ``kerberos>=1.3.0`` +``oauth`` ``authlib>=1.0.0`` +============ =================== + Downloading official packages ----------------------------- diff --git a/providers/ftp/docs/index.rst b/providers/ftp/docs/index.rst index 168ec469ba865..e9b57e21d128a 100644 --- a/providers/ftp/docs/index.rst +++ b/providers/ftp/docs/index.rst @@ -130,6 +130,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-ftp[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/google/docs/index.rst b/providers/google/docs/index.rst index ff860c759857c..7d4a43d3475d2 100644 --- a/providers/google/docs/index.rst +++ b/providers/google/docs/index.rst @@ -229,6 +229,43 @@ Dependent package `apache-airflow-providers-trino `_ ``trino`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-google[cncf.kubernetes] + + +==================== ==================================================== +Extra Dependencies +==================== ==================================================== +``cncf.kubernetes`` ``apache-airflow-providers-cncf-kubernetes>=10.1.0`` +``fab`` ``apache-airflow-providers-fab>=2.0.0`` +``leveldb`` ``plyvel>=1.5.1; python_version < '3.13'`` +``oracle`` ``apache-airflow-providers-oracle>=3.1.0`` +``facebook`` ``apache-airflow-providers-facebook>=2.2.0`` +``amazon`` ``apache-airflow-providers-amazon>=2.6.0`` +``apache.cassandra`` ``apache-airflow-providers-apache-cassandra`` +``microsoft.azure`` ``apache-airflow-providers-microsoft-azure>=13.0.0`` +``microsoft.mssql`` ``apache-airflow-providers-microsoft-mssql`` +``mongo`` ``apache-airflow-providers-mongo`` +``mysql`` ``apache-airflow-providers-mysql`` +``openlineage`` ``apache-airflow-providers-openlineage`` +``postgres`` ``apache-airflow-providers-postgres`` +``presto`` ``apache-airflow-providers-presto`` +``salesforce`` ``apache-airflow-providers-salesforce`` +``sftp`` ``apache-airflow-providers-sftp`` +``ssh`` ``apache-airflow-providers-ssh`` +``trino`` ``apache-airflow-providers-trino`` +``http`` ``apache-airflow-providers-http`` +``standard`` ``apache-airflow-providers-standard`` +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +==================== ==================================================== + Downloading official packages ----------------------------- diff --git a/providers/hashicorp/docs/index.rst b/providers/hashicorp/docs/index.rst index ccfcb16941aae..8609cfa3a31f5 100644 --- a/providers/hashicorp/docs/index.rst +++ b/providers/hashicorp/docs/index.rst @@ -116,6 +116,24 @@ Dependent package `apache-airflow-providers-google `_ ``google`` ==================================================================================================== ========== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-hashicorp[boto3] + + +========== =================================== +Extra Dependencies +========== =================================== +``boto3`` ``boto3>=1.37.2`` +``google`` ``apache-airflow-providers-google`` +========== =================================== + Downloading official packages ----------------------------- diff --git a/providers/ibm/mq/docs/index.rst b/providers/ibm/mq/docs/index.rst index 7c13405965d50..70e6fe86092d0 100644 --- a/providers/ibm/mq/docs/index.rst +++ b/providers/ibm/mq/docs/index.rst @@ -125,6 +125,24 @@ Dependent package `apache-airflow-providers-common-messaging `_ ``common.messaging`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-ibm-mq[ibmmq] + + +==================== =============================================================================== +Extra Dependencies +==================== =============================================================================== +``ibmmq`` ``ibmmq>=2.0.6; platform_machine != "aarch64" and platform_machine != "arm64"`` +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +==================== =============================================================================== + Downloading official packages ----------------------------- diff --git a/providers/informatica/docs/index.rst b/providers/informatica/docs/index.rst index 7718bf6e6153b..e6540ee03eac5 100644 --- a/providers/informatica/docs/index.rst +++ b/providers/informatica/docs/index.rst @@ -162,6 +162,24 @@ Dependent package `apache-airflow-providers-common-sql `_ ``common.sql`` ============================================================================================================ ============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-informatica[common.compat] + + +================= ========================================== +Extra Dependencies +================= ========================================== +``common.compat`` ``apache-airflow-providers-common-compat`` +``common.sql`` ``apache-airflow-providers-common-sql`` +================= ========================================== + Downloading official packages ----------------------------- diff --git a/providers/jdbc/docs/index.rst b/providers/jdbc/docs/index.rst index 6bb81aa0e4152..5adbc2f642a9b 100644 --- a/providers/jdbc/docs/index.rst +++ b/providers/jdbc/docs/index.rst @@ -135,6 +135,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-jdbc[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/microsoft/azure/docs/index.rst b/providers/microsoft/azure/docs/index.rst index 0ebed3477d5f6..f4354dd6e9c5a 100644 --- a/providers/microsoft/azure/docs/index.rst +++ b/providers/microsoft/azure/docs/index.rst @@ -164,6 +164,28 @@ Dependent package `apache-airflow-providers-sftp `_ ``sftp`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-microsoft-azure[amazon] + + +==================== ==================================================== +Extra Dependencies +==================== ==================================================== +``amazon`` ``apache-airflow-providers-amazon`` +``oracle`` ``apache-airflow-providers-oracle`` +``sftp`` ``apache-airflow-providers-sftp`` +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +``google`` ``apache-airflow-providers-google`` +``openlineage`` ``apache-airflow-providers-openlineage>=2.3.0`` +==================== ==================================================== + Downloading official packages ----------------------------- diff --git a/providers/microsoft/mssql/docs/index.rst b/providers/microsoft/mssql/docs/index.rst index 0951304bad5cb..ec6ef64e5aeb7 100644 --- a/providers/microsoft/mssql/docs/index.rst +++ b/providers/microsoft/mssql/docs/index.rst @@ -128,6 +128,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-microsoft-mssql[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/mysql/docs/index.rst b/providers/mysql/docs/index.rst index b91f4513b13b3..90f66eedaf239 100644 --- a/providers/mysql/docs/index.rst +++ b/providers/mysql/docs/index.rst @@ -133,6 +133,28 @@ Dependent package `apache-airflow-providers-vertica `_ ``vertica`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-mysql[mysql-connector-python] + + +========================== ======================================== +Extra Dependencies +========================== ======================================== +``mysql-connector-python`` +``amazon`` ``apache-airflow-providers-amazon`` +``openlineage`` ``apache-airflow-providers-openlineage`` +``presto`` ``apache-airflow-providers-presto`` +``trino`` ``apache-airflow-providers-trino`` +``vertica`` ``apache-airflow-providers-vertica`` +========================== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/openlineage/docs/index.rst b/providers/openlineage/docs/index.rst index d4c66ae34a2db..bf617f1dc0e30 100644 --- a/providers/openlineage/docs/index.rst +++ b/providers/openlineage/docs/index.rst @@ -115,6 +115,23 @@ PIP package Version required ``openlineage-python`` ``>=1.47.0`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-openlineage[sqlalchemy] + + +============== ====================== +Extra Dependencies +============== ====================== +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +============== ====================== + Downloading official packages ----------------------------- diff --git a/providers/oracle/docs/index.rst b/providers/oracle/docs/index.rst index 17f0fa815fada..cfbfe261baf9d 100644 --- a/providers/oracle/docs/index.rst +++ b/providers/oracle/docs/index.rst @@ -125,6 +125,24 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-oracle[numpy] + + +=============== ============================================================================================================================================================================================================================================ +Extra Dependencies +=============== ============================================================================================================================================================================================================================================ +``numpy`` ``numpy>=1.22.4; python_version<'3.11'``, ``numpy>=1.23.2; python_version=='3.11'``, ``numpy>=1.26.0; python_version=='3.12'``, ``numpy>=2.1.0; python_version>='3.13' and python_version<'3.14'``, ``numpy>=2.4.3; python_version>='3.14'`` +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ============================================================================================================================================================================================================================================ + Downloading official packages ----------------------------- diff --git a/providers/pgvector/docs/index.rst b/providers/pgvector/docs/index.rst index 2c4cea3c3c6d3..640237d70937c 100644 --- a/providers/pgvector/docs/index.rst +++ b/providers/pgvector/docs/index.rst @@ -127,6 +127,23 @@ Dependent package `apache-airflow-providers-common-sql `_ ``common.sql`` ============================================================================================================ ============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-pgvector[common.sql] + + +============== ======================================= +Extra Dependencies +============== ======================================= +``common.sql`` ``apache-airflow-providers-common-sql`` +============== ======================================= + Downloading official packages ----------------------------- diff --git a/providers/postgres/docs/index.rst b/providers/postgres/docs/index.rst index b10aa40df7646..67393bb642da9 100644 --- a/providers/postgres/docs/index.rst +++ b/providers/postgres/docs/index.rst @@ -131,6 +131,29 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-postgres[amazon] + + +=================== ============================================================================================================================================================ +Extra Dependencies +=================== ============================================================================================================================================================ +``amazon`` ``apache-airflow-providers-amazon>=2.6.0`` +``asyncpg`` ``asyncpg>=0.30.0`` +``microsoft.azure`` ``apache-airflow-providers-microsoft-azure>=12.8.0`` +``openlineage`` ``apache-airflow-providers-openlineage`` +``pandas`` ``pandas>=2.1.2; python_version <"3.13"``, ``pandas>=2.2.3; python_version >="3.13" and python_version <"3.14"``, ``pandas>=2.3.3; python_version >="3.14"`` +``polars`` ``polars>=1.26.0`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +=================== ============================================================================================================================================================ + Downloading official packages ----------------------------- diff --git a/providers/presto/docs/index.rst b/providers/presto/docs/index.rst index ba02bb048751a..5730e6a1ab431 100644 --- a/providers/presto/docs/index.rst +++ b/providers/presto/docs/index.rst @@ -131,6 +131,24 @@ Dependent package `apache-airflow-providers-google `_ ``google`` ==================================================================================================== ========== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-presto[google] + + +============== =================================== +Extra Dependencies +============== =================================== +``google`` ``apache-airflow-providers-google`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +============== =================================== + Downloading official packages ----------------------------- diff --git a/providers/redis/docs/index.rst b/providers/redis/docs/index.rst index d222d867e88f4..7bb115392a2e6 100644 --- a/providers/redis/docs/index.rst +++ b/providers/redis/docs/index.rst @@ -126,6 +126,23 @@ Dependent package `apache-airflow-providers-common-messaging `_ ``common.messaging`` ======================================================================================================================== ==================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-redis[common.messaging] + + +==================== ==================================================== +Extra Dependencies +==================== ==================================================== +``common.messaging`` ``apache-airflow-providers-common-messaging>=2.0.0`` +==================== ==================================================== + Downloading official packages ----------------------------- diff --git a/providers/samba/docs/index.rst b/providers/samba/docs/index.rst index 7dd5747bc4dc0..63ff1e5fb6fbc 100644 --- a/providers/samba/docs/index.rst +++ b/providers/samba/docs/index.rst @@ -123,6 +123,23 @@ Dependent package `apache-airflow-providers-google `_ ``google`` ==================================================================================================== ========== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-samba[google] + + +========== =================================== +Extra Dependencies +========== =================================== +``google`` ``apache-airflow-providers-google`` +========== =================================== + Downloading official packages ----------------------------- diff --git a/providers/sftp/docs/index.rst b/providers/sftp/docs/index.rst index 96013f5eb4642..d760850d1a64d 100644 --- a/providers/sftp/docs/index.rst +++ b/providers/sftp/docs/index.rst @@ -128,6 +128,24 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-sftp[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +``sshfs`` ``sshfs>=2023.1.0`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/snowflake/docs/index.rst b/providers/snowflake/docs/index.rst index 6862ef8896c6f..260a52e788ab7 100644 --- a/providers/snowflake/docs/index.rst +++ b/providers/snowflake/docs/index.rst @@ -138,6 +138,24 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-snowflake[microsoft.azure] + + +=================== ==================================================== +Extra Dependencies +=================== ==================================================== +``microsoft.azure`` ``apache-airflow-providers-microsoft-azure>=12.8.0`` +``openlineage`` ``apache-airflow-providers-openlineage>=2.3.0`` +=================== ==================================================== + Downloading official packages ----------------------------- diff --git a/providers/standard/docs/index.rst b/providers/standard/docs/index.rst index c3dc55eb9b091..7d0d6dac8bf41 100644 --- a/providers/standard/docs/index.rst +++ b/providers/standard/docs/index.rst @@ -112,6 +112,23 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-standard[openlineage] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/teradata/docs/index.rst b/providers/teradata/docs/index.rst index b14126ed0c36c..ac12459dd095f 100644 --- a/providers/teradata/docs/index.rst +++ b/providers/teradata/docs/index.rst @@ -128,6 +128,26 @@ Dependent package `apache-airflow-providers-ssh `_ ``ssh`` ====================================================================================================================== =================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-teradata[microsoft.azure] + + +=================== ============================================ +Extra Dependencies +=================== ============================================ +``microsoft.azure`` ``apache-airflow-providers-microsoft-azure`` +``amazon`` ``apache-airflow-providers-amazon`` +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +``ssh`` ``apache-airflow-providers-ssh`` +=================== ============================================ + Downloading official packages ----------------------------- diff --git a/providers/trino/docs/index.rst b/providers/trino/docs/index.rst index 6db31dcc947b5..fc9ae7cbd8eb8 100644 --- a/providers/trino/docs/index.rst +++ b/providers/trino/docs/index.rst @@ -130,6 +130,24 @@ Dependent package `apache-airflow-providers-openlineage `_ ``openlineage`` ============================================================================================================== =============== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-trino[google] + + +=============== ======================================== +Extra Dependencies +=============== ======================================== +``google`` ``apache-airflow-providers-google`` +``openlineage`` ``apache-airflow-providers-openlineage`` +=============== ======================================== + Downloading official packages ----------------------------- diff --git a/providers/vertica/docs/index.rst b/providers/vertica/docs/index.rst index 2f8ac7a15aa4e..ff635daad8352 100644 --- a/providers/vertica/docs/index.rst +++ b/providers/vertica/docs/index.rst @@ -107,6 +107,23 @@ PIP package Version required ``vertica-python`` ``>=1.3.0`` ========================================== ================== +Optional dependencies +--------------------- + +These extras install optional third-party libraries that enable additional features of the provider. +Install them when installing from PyPI. For example: + +.. code-block:: bash + + pip install apache-airflow-providers-vertica[sqlalchemy] + + +============== ====================== +Extra Dependencies +============== ====================== +``sqlalchemy`` ``sqlalchemy>=1.4.54`` +============== ====================== + Downloading official packages -----------------------------