Metadata-Version: 2.1
Name: apache-airflow
Version: 2.7.3
Summary: Programmatically author, schedule and monitor data pipelines
Home-page: https://airflow.apache.org/
Author: Apache Software Foundation
Author-email: dev@airflow.apache.org
License: Apache License 2.0
Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
Project-URL: Documentation, https://airflow.apache.org/docs/
Project-URL: Downloads, https://archive.apache.org/dist/airflow/
Project-URL: Release Notes, https://airflow.apache.org/docs/apache-airflow/stable/release_notes.html
Project-URL: Slack Chat, https://s.apache.org/airflow-slack
Project-URL: Source Code, https://github.com/apache/airflow
Project-URL: Twitter, https://twitter.com/ApacheAirflow
Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: System :: Monitoring
Classifier: Framework :: Apache Airflow
Requires-Python: <3.12,~=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
License-File: licenses/LICENSE-bootstrap.txt
License-File: licenses/LICENSE-bootstrap3-typeahead.txt
License-File: licenses/LICENSE-d3-shape.txt
License-File: licenses/LICENSE-d3-tip.txt
License-File: licenses/LICENSE-d3js.txt
License-File: licenses/LICENSE-dagre-d3.txt
License-File: licenses/LICENSE-datatables.txt
License-File: licenses/LICENSE-elasticmock.txt
License-File: licenses/LICENSE-eonasdan-bootstrap-datetimepicker.txt
License-File: licenses/LICENSE-flask-kerberos.txt
License-File: licenses/LICENSE-hue.txt
License-File: licenses/LICENSE-jqclock.txt
License-File: licenses/LICENSE-jquery.txt
License-File: licenses/LICENSE-moment.txt
License-File: licenses/LICENSE-normalize.txt
License-File: licenses/LICENSE-pytest-capture-warnings.txt
License-File: licenses/LICENSE-unicodecsv.txt
Requires-Dist: WTForms (<3.1.0)
Requires-Dist: alembic (<2.0,>=1.6.3)
Requires-Dist: argcomplete (>=1.10)
Requires-Dist: asgiref
Requires-Dist: attrs (>=22.1.0)
Requires-Dist: blinker
Requires-Dist: cattrs (>=22.1.0)
Requires-Dist: colorlog (<5.0,>=4.0.2)
Requires-Dist: configupdater (>=3.1.1)
Requires-Dist: connexion[flask] (<3.0,>=2.10.0)
Requires-Dist: cron-descriptor (>=1.2.24)
Requires-Dist: croniter (>=0.3.17)
Requires-Dist: cryptography (>=0.9.3)
Requires-Dist: deprecated (>=1.2.13)
Requires-Dist: dill (>=0.2.2)
Requires-Dist: flask (<2.3,>=2.2)
Requires-Dist: flask-appbuilder (==4.3.6)
Requires-Dist: flask-caching (>=1.5.0)
Requires-Dist: flask-login (>=0.6.2)
Requires-Dist: flask-session (>=0.4.0)
Requires-Dist: flask-wtf (>=0.15)
Requires-Dist: google-re2 (>=1.0)
Requires-Dist: graphviz (>=0.12)
Requires-Dist: gunicorn (>=20.1.0)
Requires-Dist: httpx
Requires-Dist: itsdangerous (>=2.0)
Requires-Dist: jinja2 (>=3.0.0)
Requires-Dist: jsonschema (>=4.18.0)
Requires-Dist: lazy-object-proxy
Requires-Dist: linkify-it-py (>=2.0.0)
Requires-Dist: lockfile (>=0.12.2)
Requires-Dist: markdown (>=3.0)
Requires-Dist: markdown-it-py (>=2.1.0)
Requires-Dist: markupsafe (>=1.1.1)
Requires-Dist: marshmallow-oneofschema (>=2.0.1)
Requires-Dist: mdit-py-plugins (>=0.3.0)
Requires-Dist: opentelemetry-api (>=1.15.0)
Requires-Dist: opentelemetry-exporter-otlp
Requires-Dist: packaging (>=14.0)
Requires-Dist: pathspec (>=0.9.0)
Requires-Dist: pendulum (<3.0,>=2.0)
Requires-Dist: pluggy (>=1.0)
Requires-Dist: psutil (>=4.2.0)
Requires-Dist: pydantic (>=1.10.0)
Requires-Dist: pygments (>=2.0.1)
Requires-Dist: pyjwt (>=2.0.0)
Requires-Dist: python-daemon (>=3.0.0)
Requires-Dist: python-dateutil (>=2.3)
Requires-Dist: python-nvd3 (>=0.15.0)
Requires-Dist: python-slugify (>=5.0)
Requires-Dist: rfc3339-validator (>=0.1.4)
Requires-Dist: rich (>=12.4.4)
Requires-Dist: rich-argparse (>=1.0.0)
Requires-Dist: setproctitle (>=1.1.8)
Requires-Dist: sqlalchemy (<2.0,>=1.4.28)
Requires-Dist: sqlalchemy-jsonfield (>=1.0)
Requires-Dist: tabulate (>=0.7.5)
Requires-Dist: tenacity (!=8.2.0,>=6.2.0)
Requires-Dist: termcolor (>=1.1.0)
Requires-Dist: typing-extensions (>=4.0.0)
Requires-Dist: unicodecsv (>=0.14.1)
Requires-Dist: werkzeug (>=2.0)
Requires-Dist: apache-airflow-providers-common-sql
Requires-Dist: apache-airflow-providers-ftp
Requires-Dist: apache-airflow-providers-http
Requires-Dist: apache-airflow-providers-imap
Requires-Dist: apache-airflow-providers-sqlite
Requires-Dist: importlib-metadata (>=1.7) ; python_version < "3.9"
Requires-Dist: importlib-resources (>=5.2) ; python_version < "3.9"
Provides-Extra: aiobotocore
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'aiobotocore'
Provides-Extra: airbyte
Requires-Dist: apache-airflow-providers-airbyte ; extra == 'airbyte'
Provides-Extra: alibaba
Requires-Dist: apache-airflow-providers-alibaba ; extra == 'alibaba'
Provides-Extra: all
Requires-Dist: PyGithub (!=1.58) ; extra == 'all'
Requires-Dist: PyOpenSSL ; extra == 'all'
Requires-Dist: adal (>=1.2.7) ; extra == 'all'
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'all'
Requires-Dist: aiohttp ; extra == 'all'
Requires-Dist: aiohttp (<4,>=3.6.3) ; extra == 'all'
Requires-Dist: alibabacloud-adb20211201 (>=1.0.0) ; extra == 'all'
Requires-Dist: alibabacloud-tea-openapi (>=0.3.7) ; extra == 'all'
Requires-Dist: amqp ; extra == 'all'
Requires-Dist: analytics-python (>=1.2.9) ; extra == 'all'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'all'
Requires-Dist: apache-airflow (>=2.5.0) ; extra == 'all'
Requires-Dist: apache-airflow (>=2.7.0) ; extra == 'all'
Requires-Dist: apache-beam (>=2.47.0) ; extra == 'all'
Requires-Dist: apprise ; extra == 'all'
Requires-Dist: arrow (>=0.16.0) ; extra == 'all'
Requires-Dist: asana (<4.0.0,>=0.10) ; extra == 'all'
Requires-Dist: asgiref ; extra == 'all'
Requires-Dist: asgiref (>=3.5.2) ; extra == 'all'
Requires-Dist: atlasclient (>=0.1.2) ; extra == 'all'
Requires-Dist: atlassian-python-api (>=1.14.2) ; extra == 'all'
Requires-Dist: attrs (>=22.2) ; extra == 'all'
Requires-Dist: authlib (>=1.0.0) ; extra == 'all'
Requires-Dist: azure-batch (>=8.0.0) ; extra == 'all'
Requires-Dist: azure-cosmos (>=4.0.0) ; extra == 'all'
Requires-Dist: azure-datalake-store (>=0.0.45) ; extra == 'all'
Requires-Dist: azure-identity (>=1.3.1) ; extra == 'all'
Requires-Dist: azure-keyvault-secrets (>=4.1.0) ; extra == 'all'
Requires-Dist: azure-kusto-data (>=4.1.0) ; extra == 'all'
Requires-Dist: azure-mgmt-containerinstance (>=9.0.0) ; extra == 'all'
Requires-Dist: azure-mgmt-containerregistry (>=8.0.0) ; extra == 'all'
Requires-Dist: azure-mgmt-datafactory (>=2.0.0) ; extra == 'all'
Requires-Dist: azure-mgmt-datalake-store (>=0.5.0) ; extra == 'all'
Requires-Dist: azure-mgmt-resource (>=2.2.0) ; extra == 'all'
Requires-Dist: azure-servicebus (>=7.6.1) ; extra == 'all'
Requires-Dist: azure-storage-blob (>=12.14.0) ; extra == 'all'
Requires-Dist: azure-storage-common (>=2.1.0) ; extra == 'all'
Requires-Dist: azure-storage-file-datalake (>=12.9.1) ; extra == 'all'
Requires-Dist: azure-storage-file (>=2.1.0) ; extra == 'all'
Requires-Dist: azure-synapse-spark ; extra == 'all'
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'all'
Requires-Dist: blinker (>=1.1) ; extra == 'all'
Requires-Dist: boto3 (>=1.28.0) ; extra == 'all'
Requires-Dist: botocore (>=1.31.0) ; extra == 'all'
Requires-Dist: cassandra-driver (>=3.13.0) ; extra == 'all'
Requires-Dist: celery (!=5.3.2,!=5.3.3,<6,>=5.3.0) ; extra == 'all'
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'all'
Requires-Dist: cloudant (>=2.0) ; extra == 'all'
Requires-Dist: cloudpickle (>=1.4.1) ; extra == 'all'
Requires-Dist: confluent-kafka (>=1.8.2) ; extra == 'all'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'all'
Requires-Dist: dask (!=2022.10.1,!=2023.5.0,>=2.9.0) ; extra == 'all'
Requires-Dist: databricks-sql-connector (<3.0.0,>=2.0.0) ; extra == 'all'
Requires-Dist: datadog (>=0.14.0) ; extra == 'all'
Requires-Dist: distributed (!=2023.5.0,>=2.11.1) ; extra == 'all'
Requires-Dist: dnspython (>=1.13.0) ; extra == 'all'
Requires-Dist: docker (>=5.0.3) ; extra == 'all'
Requires-Dist: elasticsearch (<9,>8) ; extra == 'all'
Requires-Dist: eventlet (>=0.33.3) ; extra == 'all'
Requires-Dist: facebook-business (>=6.0.2) ; extra == 'all'
Requires-Dist: flask-appbuilder[oauth] (==4.3.6) ; extra == 'all'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'all'
Requires-Dist: flower (>=1.0.0) ; extra == 'all'
Requires-Dist: gcloud-aio-auth (<5.0.0,>=4.0.0) ; extra == 'all'
Requires-Dist: gcloud-aio-bigquery (>=6.1.2) ; extra == 'all'
Requires-Dist: gcloud-aio-storage ; extra == 'all'
Requires-Dist: gevent (>=0.13) ; extra == 'all'
Requires-Dist: google-ads (>=21.2.0) ; extra == 'all'
Requires-Dist: google-api-core (>=2.11.0) ; extra == 'all'
Requires-Dist: google-api-python-client (>=1.6.0) ; extra == 'all'
Requires-Dist: google-auth-httplib2 (>=0.0.1) ; extra == 'all'
Requires-Dist: google-auth (>=1.0.0) ; extra == 'all'
Requires-Dist: google-auth (<3.0.0,>=1.0.0) ; extra == 'all'
Requires-Dist: google-cloud-aiplatform (>=1.22.1) ; extra == 'all'
Requires-Dist: google-cloud-automl (>=2.11.0) ; extra == 'all'
Requires-Dist: google-cloud-bigquery-datatransfer (>=3.11.0) ; extra == 'all'
Requires-Dist: google-cloud-bigtable (>=2.17.0) ; extra == 'all'
Requires-Dist: google-cloud-build (>=3.13.0) ; extra == 'all'
Requires-Dist: google-cloud-compute (>=1.10.0) ; extra == 'all'
Requires-Dist: google-cloud-container (>=2.17.4) ; extra == 'all'
Requires-Dist: google-cloud-datacatalog (>=3.11.1) ; extra == 'all'
Requires-Dist: google-cloud-dataflow-client (>=0.8.2) ; extra == 'all'
Requires-Dist: google-cloud-dataform (>=0.5.0) ; extra == 'all'
Requires-Dist: google-cloud-dataplex (>=1.4.2) ; extra == 'all'
Requires-Dist: google-cloud-dataproc-metastore (>=1.12.0) ; extra == 'all'
Requires-Dist: google-cloud-dataproc (>=5.4.0) ; extra == 'all'
Requires-Dist: google-cloud-dlp (>=3.12.0) ; extra == 'all'
Requires-Dist: google-cloud-kms (>=2.15.0) ; extra == 'all'
Requires-Dist: google-cloud-language (>=2.9.0) ; extra == 'all'
Requires-Dist: google-cloud-logging (>=3.5.0) ; extra == 'all'
Requires-Dist: google-cloud-memcache (>=1.7.0) ; extra == 'all'
Requires-Dist: google-cloud-monitoring (>=2.14.1) ; extra == 'all'
Requires-Dist: google-cloud-orchestration-airflow (>=1.7.0) ; extra == 'all'
Requires-Dist: google-cloud-os-login (>=2.9.1) ; extra == 'all'
Requires-Dist: google-cloud-pubsub (>=2.15.0) ; extra == 'all'
Requires-Dist: google-cloud-redis (>=2.12.0) ; extra == 'all'
Requires-Dist: google-cloud-secret-manager (>=2.16.0) ; extra == 'all'
Requires-Dist: google-cloud-spanner (>=3.11.1) ; extra == 'all'
Requires-Dist: google-cloud-speech (>=2.18.0) ; extra == 'all'
Requires-Dist: google-cloud-storage-transfer (>=1.4.1) ; extra == 'all'
Requires-Dist: google-cloud-storage (>=2.7.0) ; extra == 'all'
Requires-Dist: google-cloud-tasks (>=2.13.0) ; extra == 'all'
Requires-Dist: google-cloud-texttospeech (>=2.14.1) ; extra == 'all'
Requires-Dist: google-cloud-translate (>=3.11.0) ; extra == 'all'
Requires-Dist: google-cloud-videointelligence (>=2.11.0) ; extra == 'all'
Requires-Dist: google-cloud-vision (>=3.4.0) ; extra == 'all'
Requires-Dist: google-cloud-workflows (>=1.10.0) ; extra == 'all'
Requires-Dist: greenlet (>=0.4.9) ; extra == 'all'
Requires-Dist: grpcio-gcp (>=0.2.2) ; extra == 'all'
Requires-Dist: grpcio (>=1.15.0) ; extra == 'all'
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'all'
Requires-Dist: hmsclient (>=0.1.0) ; extra == 'all'
Requires-Dist: httpx ; extra == 'all'
Requires-Dist: hvac (>=0.10) ; extra == 'all'
Requires-Dist: impyla (<1.0,>=0.18.0) ; extra == 'all'
Requires-Dist: influxdb-client (>=1.19.0) ; extra == 'all'
Requires-Dist: jaydebeapi (>=1.1.1) ; extra == 'all'
Requires-Dist: json-merge-patch (>=0.2) ; extra == 'all'
Requires-Dist: jsonpath-ng (>=1.5.3) ; extra == 'all'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'all'
Requires-Dist: kubernetes-asyncio (<25,>=18.20.1) ; extra == 'all'
Requires-Dist: kylinpy (>=2.6) ; extra == 'all'
Requires-Dist: ldap3 (>=2.5.1) ; extra == 'all'
Requires-Dist: looker-sdk (>=22.2.0) ; extra == 'all'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'all'
Requires-Dist: neo4j (>=4.2.1) ; extra == 'all'
Requires-Dist: openlineage-integration-common (>=0.28.0) ; extra == 'all'
Requires-Dist: openlineage-python (>=0.28.0) ; extra == 'all'
Requires-Dist: opensearch-py (>=2.2.0) ; extra == 'all'
Requires-Dist: opentelemetry-exporter-prometheus ; extra == 'all'
Requires-Dist: opsgenie-sdk (>=2.1.5) ; extra == 'all'
Requires-Dist: oracledb (>=1.0.0) ; extra == 'all'
Requires-Dist: oss2 (>=2.14.0) ; extra == 'all'
Requires-Dist: pandas-gbq ; extra == 'all'
Requires-Dist: pandas (>=0.17.1) ; extra == 'all'
Requires-Dist: papermill[all] (>=1.2.1) ; extra == 'all'
Requires-Dist: paramiko (>=2.6.0) ; extra == 'all'
Requires-Dist: pdpyras (>=4.1.2) ; extra == 'all'
Requires-Dist: pinotdb (>0.4.7) ; extra == 'all'
Requires-Dist: plyvel ; extra == 'all'
Requires-Dist: presto-python-client (>=0.8.4) ; extra == 'all'
Requires-Dist: proto-plus (>=1.19.6) ; extra == 'all'
Requires-Dist: psycopg2-binary (>=2.8.0) ; extra == 'all'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'all'
Requires-Dist: pydruid (>=0.4.1) ; extra == 'all'
Requires-Dist: pyexasol (>=0.5.1) ; extra == 'all'
Requires-Dist: pyhive[hive_pure_sasl] (>=0.7.0) ; extra == 'all'
Requires-Dist: pykerberos (>=1.1.13) ; extra == 'all'
Requires-Dist: pymongo (>=3.6.0) ; extra == 'all'
Requires-Dist: pymssql (>=2.1.5) ; extra == 'all'
Requires-Dist: pyodbc ; extra == 'all'
Requires-Dist: pypsrp (>=0.8.0) ; extra == 'all'
Requires-Dist: pyspark ; extra == 'all'
Requires-Dist: python-arango (>=7.3.2) ; extra == 'all'
Requires-Dist: python-dotenv (>=0.21.0) ; extra == 'all'
Requires-Dist: python-jenkins (>=1.0.0) ; extra == 'all'
Requires-Dist: python-ldap ; extra == 'all'
Requires-Dist: python-telegram-bot (>=20.0.0) ; extra == 'all'
Requires-Dist: pywinrm (>=0.4) ; extra == 'all'
Requires-Dist: redis (!=4.5.5,<5.0.0,>=4.5.2) ; extra == 'all'
Requires-Dist: redshift-connector (>=2.0.888) ; extra == 'all'
Requires-Dist: requests (>=2.26.0) ; extra == 'all'
Requires-Dist: requests (<3,>=2.27) ; extra == 'all'
Requires-Dist: requests-kerberos (>=0.10.0) ; extra == 'all'
Requires-Dist: requests-toolbelt ; extra == 'all'
Requires-Dist: scrapbook[all] ; extra == 'all'
Requires-Dist: sendgrid (>=6.0.0) ; extra == 'all'
Requires-Dist: sentry-sdk (!=1.33.0,>=1.32.0) ; extra == 'all'
Requires-Dist: simple-salesforce (>=1.0.0) ; extra == 'all'
Requires-Dist: slack-sdk (>=3.0.0) ; extra == 'all'
Requires-Dist: smbprotocol (>=1.5.0) ; extra == 'all'
Requires-Dist: snowflake-connector-python (>=2.4.1) ; extra == 'all'
Requires-Dist: snowflake-sqlalchemy (>=1.1.0) ; extra == 'all'
Requires-Dist: spython (>=0.0.56) ; extra == 'all'
Requires-Dist: sqlalchemy-bigquery (>=1.2.1) ; extra == 'all'
Requires-Dist: sqlalchemy-drill (>=1.1.0) ; extra == 'all'
Requires-Dist: sqlalchemy-spanner (>=1.6.2) ; extra == 'all'
Requires-Dist: sqlalchemy-redshift (>=0.8.6) ; extra == 'all'
Requires-Dist: sqlparse (>=0.4.2) ; extra == 'all'
Requires-Dist: sshtunnel (>=0.3.2) ; extra == 'all'
Requires-Dist: statsd (>=3.3.0) ; extra == 'all'
Requires-Dist: tableauserverclient ; extra == 'all'
Requires-Dist: thrift (>=0.9.2) ; extra == 'all'
Requires-Dist: thrift-sasl (>=0.2.0) ; extra == 'all'
Requires-Dist: trino (>=0.318.0) ; extra == 'all'
Requires-Dist: vertica-python (>=0.5.1) ; extra == 'all'
Requires-Dist: virtualenv ; extra == 'all'
Requires-Dist: watchtower (~=2.0.1) ; extra == 'all'
Requires-Dist: zenpy (>=2.0.24) ; extra == 'all'
Requires-Dist: apache-airflow-providers-airbyte ; extra == 'all'
Requires-Dist: apache-airflow-providers-alibaba ; extra == 'all'
Requires-Dist: apache-airflow-providers-amazon ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-beam ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-drill ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-flink ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-impala ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-kafka ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-kylin ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-livy ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-pig ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-spark ; extra == 'all'
Requires-Dist: apache-airflow-providers-apache-sqoop ; extra == 'all'
Requires-Dist: apache-airflow-providers-apprise ; extra == 'all'
Requires-Dist: apache-airflow-providers-arangodb ; extra == 'all'
Requires-Dist: apache-airflow-providers-asana ; extra == 'all'
Requires-Dist: apache-airflow-providers-atlassian-jira ; extra == 'all'
Requires-Dist: apache-airflow-providers-celery ; extra == 'all'
Requires-Dist: apache-airflow-providers-cloudant ; extra == 'all'
Requires-Dist: apache-airflow-providers-cncf-kubernetes ; extra == 'all'
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'all'
Requires-Dist: apache-airflow-providers-daskexecutor ; extra == 'all'
Requires-Dist: apache-airflow-providers-databricks ; extra == 'all'
Requires-Dist: apache-airflow-providers-datadog ; extra == 'all'
Requires-Dist: apache-airflow-providers-dbt-cloud ; extra == 'all'
Requires-Dist: apache-airflow-providers-dingding ; extra == 'all'
Requires-Dist: apache-airflow-providers-discord ; extra == 'all'
Requires-Dist: apache-airflow-providers-docker ; extra == 'all'
Requires-Dist: apache-airflow-providers-elasticsearch ; extra == 'all'
Requires-Dist: apache-airflow-providers-exasol ; extra == 'all'
Requires-Dist: apache-airflow-providers-facebook ; extra == 'all'
Requires-Dist: apache-airflow-providers-ftp ; extra == 'all'
Requires-Dist: apache-airflow-providers-github ; extra == 'all'
Requires-Dist: apache-airflow-providers-google ; extra == 'all'
Requires-Dist: apache-airflow-providers-grpc ; extra == 'all'
Requires-Dist: apache-airflow-providers-hashicorp ; extra == 'all'
Requires-Dist: apache-airflow-providers-http ; extra == 'all'
Requires-Dist: apache-airflow-providers-imap ; extra == 'all'
Requires-Dist: apache-airflow-providers-influxdb ; extra == 'all'
Requires-Dist: apache-airflow-providers-jdbc ; extra == 'all'
Requires-Dist: apache-airflow-providers-jenkins ; extra == 'all'
Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == 'all'
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'all'
Requires-Dist: apache-airflow-providers-microsoft-psrp ; extra == 'all'
Requires-Dist: apache-airflow-providers-microsoft-winrm ; extra == 'all'
Requires-Dist: apache-airflow-providers-mongo ; extra == 'all'
Requires-Dist: apache-airflow-providers-mysql ; extra == 'all'
Requires-Dist: apache-airflow-providers-neo4j ; extra == 'all'
Requires-Dist: apache-airflow-providers-odbc ; extra == 'all'
Requires-Dist: apache-airflow-providers-openfaas ; extra == 'all'
Requires-Dist: apache-airflow-providers-openlineage ; extra == 'all'
Requires-Dist: apache-airflow-providers-opensearch ; extra == 'all'
Requires-Dist: apache-airflow-providers-opsgenie ; extra == 'all'
Requires-Dist: apache-airflow-providers-oracle ; extra == 'all'
Requires-Dist: apache-airflow-providers-pagerduty ; extra == 'all'
Requires-Dist: apache-airflow-providers-papermill ; extra == 'all'
Requires-Dist: apache-airflow-providers-plexus ; extra == 'all'
Requires-Dist: apache-airflow-providers-postgres ; extra == 'all'
Requires-Dist: apache-airflow-providers-presto ; extra == 'all'
Requires-Dist: apache-airflow-providers-redis ; extra == 'all'
Requires-Dist: apache-airflow-providers-salesforce ; extra == 'all'
Requires-Dist: apache-airflow-providers-samba ; extra == 'all'
Requires-Dist: apache-airflow-providers-segment ; extra == 'all'
Requires-Dist: apache-airflow-providers-sendgrid ; extra == 'all'
Requires-Dist: apache-airflow-providers-sftp ; extra == 'all'
Requires-Dist: apache-airflow-providers-singularity ; extra == 'all'
Requires-Dist: apache-airflow-providers-slack ; extra == 'all'
Requires-Dist: apache-airflow-providers-smtp ; extra == 'all'
Requires-Dist: apache-airflow-providers-snowflake ; extra == 'all'
Requires-Dist: apache-airflow-providers-sqlite ; extra == 'all'
Requires-Dist: apache-airflow-providers-ssh ; extra == 'all'
Requires-Dist: apache-airflow-providers-tableau ; extra == 'all'
Requires-Dist: apache-airflow-providers-tabular ; extra == 'all'
Requires-Dist: apache-airflow-providers-telegram ; extra == 'all'
Requires-Dist: apache-airflow-providers-trino ; extra == 'all'
Requires-Dist: apache-airflow-providers-vertica ; extra == 'all'
Requires-Dist: apache-airflow-providers-zendesk ; extra == 'all'
Provides-Extra: all_dbs
Requires-Dist: aiohttp (<4,>=3.6.3) ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-common-sql (>=1.3.1) ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-common-sql (>=1.5.0) ; extra == 'all_dbs'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'all_dbs'
Requires-Dist: cassandra-driver (>=3.13.0) ; extra == 'all_dbs'
Requires-Dist: cloudant (>=2.0) ; extra == 'all_dbs'
Requires-Dist: databricks-sql-connector (<3.0.0,>=2.0.0) ; extra == 'all_dbs'
Requires-Dist: dnspython (>=1.13.0) ; extra == 'all_dbs'
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'all_dbs'
Requires-Dist: hmsclient (>=0.1.0) ; extra == 'all_dbs'
Requires-Dist: impyla (<1.0,>=0.18.0) ; extra == 'all_dbs'
Requires-Dist: influxdb-client (>=1.19.0) ; extra == 'all_dbs'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'all_dbs'
Requires-Dist: neo4j (>=4.2.1) ; extra == 'all_dbs'
Requires-Dist: pandas (>=0.17.1) ; extra == 'all_dbs'
Requires-Dist: pinotdb (>0.4.7) ; extra == 'all_dbs'
Requires-Dist: presto-python-client (>=0.8.4) ; extra == 'all_dbs'
Requires-Dist: psycopg2-binary (>=2.8.0) ; extra == 'all_dbs'
Requires-Dist: pydruid (>=0.4.1) ; extra == 'all_dbs'
Requires-Dist: pyexasol (>=0.5.1) ; extra == 'all_dbs'
Requires-Dist: pyhive[hive_pure_sasl] (>=0.7.0) ; extra == 'all_dbs'
Requires-Dist: pymongo (>=3.6.0) ; extra == 'all_dbs'
Requires-Dist: pymssql (>=2.1.5) ; extra == 'all_dbs'
Requires-Dist: python-arango (>=7.3.2) ; extra == 'all_dbs'
Requires-Dist: requests (>=2.26.0) ; extra == 'all_dbs'
Requires-Dist: requests (<3,>=2.27) ; extra == 'all_dbs'
Requires-Dist: sqlalchemy-drill (>=1.1.0) ; extra == 'all_dbs'
Requires-Dist: thrift (>=0.9.2) ; extra == 'all_dbs'
Requires-Dist: trino (>=0.318.0) ; extra == 'all_dbs'
Requires-Dist: vertica-python (>=0.5.1) ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-drill ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-impala ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-arangodb ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-cloudant ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-databricks ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-exasol ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-influxdb ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-mongo ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-mysql ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-neo4j ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-postgres ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-presto ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-trino ; extra == 'all_dbs'
Requires-Dist: apache-airflow-providers-vertica ; extra == 'all_dbs'
Provides-Extra: amazon
Requires-Dist: apache-airflow-providers-amazon ; extra == 'amazon'
Provides-Extra: apache.atlas
Requires-Dist: atlasclient (>=0.1.2) ; extra == 'apache.atlas'
Provides-Extra: apache.beam
Requires-Dist: apache-airflow-providers-apache-beam ; extra == 'apache.beam'
Provides-Extra: apache.cassandra
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'apache.cassandra'
Provides-Extra: apache.drill
Requires-Dist: apache-airflow-providers-apache-drill ; extra == 'apache.drill'
Provides-Extra: apache.druid
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'apache.druid'
Provides-Extra: apache.flink
Requires-Dist: apache-airflow-providers-apache-flink ; extra == 'apache.flink'
Provides-Extra: apache.hdfs
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'apache.hdfs'
Provides-Extra: apache.hive
Requires-Dist: apache-airflow-providers-apache-hive (>=5.1.0) ; extra == 'apache.hive'
Provides-Extra: apache.impala
Requires-Dist: apache-airflow-providers-apache-impala ; extra == 'apache.impala'
Provides-Extra: apache.kafka
Requires-Dist: apache-airflow-providers-apache-kafka ; extra == 'apache.kafka'
Provides-Extra: apache.kylin
Requires-Dist: apache-airflow-providers-apache-kylin ; extra == 'apache.kylin'
Provides-Extra: apache.livy
Requires-Dist: apache-airflow-providers-apache-livy ; extra == 'apache.livy'
Provides-Extra: apache.pig
Requires-Dist: apache-airflow-providers-apache-pig ; extra == 'apache.pig'
Provides-Extra: apache.pinot
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'apache.pinot'
Provides-Extra: apache.spark
Requires-Dist: apache-airflow-providers-apache-spark ; extra == 'apache.spark'
Provides-Extra: apache.sqoop
Requires-Dist: apache-airflow-providers-apache-sqoop ; extra == 'apache.sqoop'
Provides-Extra: apache.webhdfs
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'apache.webhdfs'
Provides-Extra: apprise
Requires-Dist: apache-airflow-providers-apprise ; extra == 'apprise'
Provides-Extra: arangodb
Requires-Dist: apache-airflow-providers-arangodb ; extra == 'arangodb'
Provides-Extra: asana
Requires-Dist: apache-airflow-providers-asana ; extra == 'asana'
Provides-Extra: async
Requires-Dist: eventlet (>=0.33.3) ; extra == 'async'
Requires-Dist: gevent (>=0.13) ; extra == 'async'
Requires-Dist: greenlet (>=0.4.9) ; extra == 'async'
Provides-Extra: atlas
Requires-Dist: apache-airflow-providers-apache-atlas ; extra == 'atlas'
Provides-Extra: atlassian.jira
Requires-Dist: apache-airflow-providers-atlassian-jira ; extra == 'atlassian.jira'
Provides-Extra: aws
Requires-Dist: apache-airflow-providers-amazon ; extra == 'aws'
Provides-Extra: azure
Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == 'azure'
Provides-Extra: cassandra
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'cassandra'
Provides-Extra: celery
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'celery'
Requires-Dist: celery (!=5.3.2,!=5.3.3,<6,>=5.3.0) ; extra == 'celery'
Requires-Dist: flower (>=1.0.0) ; extra == 'celery'
Requires-Dist: apache-airflow-providers-celery ; extra == 'celery'
Provides-Extra: cgroups
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'cgroups'
Provides-Extra: cloudant
Requires-Dist: apache-airflow-providers-cloudant ; extra == 'cloudant'
Provides-Extra: cncf.kubernetes
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'cncf.kubernetes'
Requires-Dist: asgiref (>=3.5.2) ; extra == 'cncf.kubernetes'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'cncf.kubernetes'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'cncf.kubernetes'
Requires-Dist: kubernetes-asyncio (<25,>=18.20.1) ; extra == 'cncf.kubernetes'
Requires-Dist: apache-airflow-providers-cncf-kubernetes ; extra == 'cncf.kubernetes'
Provides-Extra: common.sql
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'common.sql'
Provides-Extra: crypto
Provides-Extra: dask
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'dask'
Requires-Dist: cloudpickle (>=1.4.1) ; extra == 'dask'
Requires-Dist: dask (!=2022.10.1,!=2023.5.0,>=2.9.0) ; extra == 'dask'
Requires-Dist: distributed (!=2023.5.0,>=2.11.1) ; extra == 'dask'
Requires-Dist: apache-airflow-providers-daskexecutor ; extra == 'dask'
Provides-Extra: daskexecutor
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'daskexecutor'
Requires-Dist: cloudpickle (>=1.4.1) ; extra == 'daskexecutor'
Requires-Dist: dask (!=2022.10.1,!=2023.5.0,>=2.9.0) ; extra == 'daskexecutor'
Requires-Dist: distributed (!=2023.5.0,>=2.11.1) ; extra == 'daskexecutor'
Requires-Dist: apache-airflow-providers-daskexecutor ; extra == 'daskexecutor'
Provides-Extra: databricks
Requires-Dist: apache-airflow-providers-databricks ; extra == 'databricks'
Provides-Extra: datadog
Requires-Dist: apache-airflow-providers-datadog ; extra == 'datadog'
Provides-Extra: dbt.cloud
Requires-Dist: apache-airflow-providers-dbt-cloud ; extra == 'dbt.cloud'
Provides-Extra: deprecated_api
Requires-Dist: requests (>=2.26.0) ; extra == 'deprecated_api'
Provides-Extra: devel
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'devel'
Requires-Dist: aioresponses ; extra == 'devel'
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'devel'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'devel'
Requires-Dist: astroid (<3.0,>=2.12.3) ; extra == 'devel'
Requires-Dist: aws-xray-sdk ; extra == 'devel'
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'devel'
Requires-Dist: beautifulsoup4 (>=4.7.1) ; extra == 'devel'
Requires-Dist: black ; extra == 'devel'
Requires-Dist: blinker ; extra == 'devel'
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'devel'
Requires-Dist: checksumdir ; extra == 'devel'
Requires-Dist: click (>=8.0) ; extra == 'devel'
Requires-Dist: click (!=8.1.4,!=8.1.5,>=8.0) ; extra == 'devel'
Requires-Dist: coverage (>=7.2) ; extra == 'devel'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'devel'
Requires-Dist: docutils (<0.17.0) ; extra == 'devel'
Requires-Dist: duckdb (>=0.9.0) ; extra == 'devel'
Requires-Dist: eralchemy2 ; extra == 'devel'
Requires-Dist: filelock ; extra == 'devel'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'devel'
Requires-Dist: gitpython ; extra == 'devel'
Requires-Dist: ipdb ; extra == 'devel'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'devel'
Requires-Dist: mongomock ; extra == 'devel'
Requires-Dist: moto[cloudformation,glue] (>=4.2.5) ; extra == 'devel'
Requires-Dist: mypy-boto3-appflow (>=1.28.0) ; extra == 'devel'
Requires-Dist: mypy-boto3-rds (>=1.28.0) ; extra == 'devel'
Requires-Dist: mypy-boto3-redshift-data (>=1.28.0) ; extra == 'devel'
Requires-Dist: mypy-boto3-s3 (>=1.28.0) ; extra == 'devel'
Requires-Dist: mypy (==1.2.0) ; extra == 'devel'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'devel'
Requires-Dist: pandas (>=0.17.1) ; extra == 'devel'
Requires-Dist: pipdeptree ; extra == 'devel'
Requires-Dist: pre-commit ; extra == 'devel'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'devel'
Requires-Dist: pygithub ; extra == 'devel'
Requires-Dist: pytest ; extra == 'devel'
Requires-Dist: pytest-asyncio ; extra == 'devel'
Requires-Dist: pytest-cov ; extra == 'devel'
Requires-Dist: pytest-httpx ; extra == 'devel'
Requires-Dist: pytest-instafail ; extra == 'devel'
Requires-Dist: pytest-mock ; extra == 'devel'
Requires-Dist: pytest-rerunfailures ; extra == 'devel'
Requires-Dist: pytest-timeouts ; extra == 'devel'
Requires-Dist: pytest-xdist ; extra == 'devel'
Requires-Dist: pywinrm ; extra == 'devel'
Requires-Dist: requests-mock ; extra == 'devel'
Requires-Dist: rich-click (>=1.7.0) ; extra == 'devel'
Requires-Dist: ruff (>=0.0.219) ; extra == 'devel'
Requires-Dist: semver ; extra == 'devel'
Requires-Dist: sphinx-airflow-theme ; extra == 'devel'
Requires-Dist: sphinx-argparse (>=0.1.13) ; extra == 'devel'
Requires-Dist: sphinx-autoapi (>=2.0.0) ; extra == 'devel'
Requires-Dist: sphinx-copybutton ; extra == 'devel'
Requires-Dist: sphinx-jinja (>=2.0) ; extra == 'devel'
Requires-Dist: sphinx-rtd-theme (>=0.1.6) ; extra == 'devel'
Requires-Dist: sphinx (>=5.2.0) ; extra == 'devel'
Requires-Dist: sphinxcontrib-httpdomain (>=1.7.0) ; extra == 'devel'
Requires-Dist: sphinxcontrib-redoc (>=1.6.0) ; extra == 'devel'
Requires-Dist: sphinxcontrib-spelling (>=7.3) ; extra == 'devel'
Requires-Dist: time-machine ; extra == 'devel'
Requires-Dist: towncrier ; extra == 'devel'
Requires-Dist: twine ; extra == 'devel'
Requires-Dist: types-Deprecated ; extra == 'devel'
Requires-Dist: types-Markdown ; extra == 'devel'
Requires-Dist: types-PyMySQL ; extra == 'devel'
Requires-Dist: types-PyYAML ; extra == 'devel'
Requires-Dist: types-certifi ; extra == 'devel'
Requires-Dist: types-croniter ; extra == 'devel'
Requires-Dist: types-docutils ; extra == 'devel'
Requires-Dist: types-paramiko ; extra == 'devel'
Requires-Dist: types-protobuf ; extra == 'devel'
Requires-Dist: types-python-dateutil ; extra == 'devel'
Requires-Dist: types-python-slugify ; extra == 'devel'
Requires-Dist: types-pytz ; extra == 'devel'
Requires-Dist: types-redis ; extra == 'devel'
Requires-Dist: types-requests ; extra == 'devel'
Requires-Dist: types-setuptools ; extra == 'devel'
Requires-Dist: types-tabulate ; extra == 'devel'
Requires-Dist: types-termcolor ; extra == 'devel'
Requires-Dist: types-toml ; extra == 'devel'
Requires-Dist: wheel ; extra == 'devel'
Requires-Dist: yamllint ; extra == 'devel'
Requires-Dist: backports.zoneinfo (>=0.2.1) ; (python_version < "3.9") and extra == 'devel'
Provides-Extra: devel_all
Requires-Dist: PyGithub (!=1.58) ; extra == 'devel_all'
Requires-Dist: PyOpenSSL ; extra == 'devel_all'
Requires-Dist: adal (>=1.2.7) ; extra == 'devel_all'
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'devel_all'
Requires-Dist: aiohttp ; extra == 'devel_all'
Requires-Dist: aiohttp (<4,>=3.6.3) ; extra == 'devel_all'
Requires-Dist: aioresponses ; extra == 'devel_all'
Requires-Dist: alibabacloud-adb20211201 (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: alibabacloud-tea-openapi (>=0.3.7) ; extra == 'devel_all'
Requires-Dist: amqp ; extra == 'devel_all'
Requires-Dist: analytics-python (>=1.2.9) ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'devel_all'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'devel_all'
Requires-Dist: apache-airflow (>=2.5.0) ; extra == 'devel_all'
Requires-Dist: apache-airflow (>=2.7.0) ; extra == 'devel_all'
Requires-Dist: apache-beam (>=2.47.0) ; extra == 'devel_all'
Requires-Dist: apprise ; extra == 'devel_all'
Requires-Dist: arrow (>=0.16.0) ; extra == 'devel_all'
Requires-Dist: asana (<4.0.0,>=0.10) ; extra == 'devel_all'
Requires-Dist: asgiref ; extra == 'devel_all'
Requires-Dist: asgiref (>=3.5.2) ; extra == 'devel_all'
Requires-Dist: astroid (<3.0,>=2.12.3) ; extra == 'devel_all'
Requires-Dist: atlasclient (>=0.1.2) ; extra == 'devel_all'
Requires-Dist: atlassian-python-api (>=1.14.2) ; extra == 'devel_all'
Requires-Dist: attrs (>=22.2) ; extra == 'devel_all'
Requires-Dist: authlib (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: aws-xray-sdk ; extra == 'devel_all'
Requires-Dist: azure-batch (>=8.0.0) ; extra == 'devel_all'
Requires-Dist: azure-cosmos (>=4.0.0) ; extra == 'devel_all'
Requires-Dist: azure-datalake-store (>=0.0.45) ; extra == 'devel_all'
Requires-Dist: azure-identity (>=1.3.1) ; extra == 'devel_all'
Requires-Dist: azure-keyvault-secrets (>=4.1.0) ; extra == 'devel_all'
Requires-Dist: azure-kusto-data (>=4.1.0) ; extra == 'devel_all'
Requires-Dist: azure-mgmt-containerinstance (>=9.0.0) ; extra == 'devel_all'
Requires-Dist: azure-mgmt-containerregistry (>=8.0.0) ; extra == 'devel_all'
Requires-Dist: azure-mgmt-datafactory (>=2.0.0) ; extra == 'devel_all'
Requires-Dist: azure-mgmt-datalake-store (>=0.5.0) ; extra == 'devel_all'
Requires-Dist: azure-mgmt-resource (>=2.2.0) ; extra == 'devel_all'
Requires-Dist: azure-servicebus (>=7.6.1) ; extra == 'devel_all'
Requires-Dist: azure-storage-blob (>=12.14.0) ; extra == 'devel_all'
Requires-Dist: azure-storage-common (>=2.1.0) ; extra == 'devel_all'
Requires-Dist: azure-storage-file-datalake (>=12.9.1) ; extra == 'devel_all'
Requires-Dist: azure-storage-file (>=2.1.0) ; extra == 'devel_all'
Requires-Dist: azure-synapse-spark ; extra == 'devel_all'
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'devel_all'
Requires-Dist: beautifulsoup4 (>=4.7.1) ; extra == 'devel_all'
Requires-Dist: black ; extra == 'devel_all'
Requires-Dist: blinker ; extra == 'devel_all'
Requires-Dist: blinker (>=1.1) ; extra == 'devel_all'
Requires-Dist: boto3 (>=1.28.0) ; extra == 'devel_all'
Requires-Dist: botocore (>=1.31.0) ; extra == 'devel_all'
Requires-Dist: cassandra-driver (>=3.13.0) ; extra == 'devel_all'
Requires-Dist: celery (!=5.3.2,!=5.3.3,<6,>=5.3.0) ; extra == 'devel_all'
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'devel_all'
Requires-Dist: checksumdir ; extra == 'devel_all'
Requires-Dist: click (>=8.0) ; extra == 'devel_all'
Requires-Dist: click (!=8.1.4,!=8.1.5,>=8.0) ; extra == 'devel_all'
Requires-Dist: cloudant (>=2.0) ; extra == 'devel_all'
Requires-Dist: cloudpickle (>=1.4.1) ; extra == 'devel_all'
Requires-Dist: confluent-kafka (>=1.8.2) ; extra == 'devel_all'
Requires-Dist: coverage (>=7.2) ; extra == 'devel_all'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'devel_all'
Requires-Dist: dask (!=2022.10.1,!=2023.5.0,>=2.9.0) ; extra == 'devel_all'
Requires-Dist: databricks-sql-connector (<3.0.0,>=2.0.0) ; extra == 'devel_all'
Requires-Dist: datadog (>=0.14.0) ; extra == 'devel_all'
Requires-Dist: distributed (!=2023.5.0,>=2.11.1) ; extra == 'devel_all'
Requires-Dist: dnspython (>=1.13.0) ; extra == 'devel_all'
Requires-Dist: docker (>=5.0.3) ; extra == 'devel_all'
Requires-Dist: docutils (<0.17.0) ; extra == 'devel_all'
Requires-Dist: duckdb (>=0.9.0) ; extra == 'devel_all'
Requires-Dist: elasticsearch (<9,>8) ; extra == 'devel_all'
Requires-Dist: eralchemy2 ; extra == 'devel_all'
Requires-Dist: eventlet (>=0.33.3) ; extra == 'devel_all'
Requires-Dist: facebook-business (>=6.0.2) ; extra == 'devel_all'
Requires-Dist: filelock ; extra == 'devel_all'
Requires-Dist: flask-appbuilder[oauth] (==4.3.6) ; extra == 'devel_all'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'devel_all'
Requires-Dist: flower (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: gcloud-aio-auth (<5.0.0,>=4.0.0) ; extra == 'devel_all'
Requires-Dist: gcloud-aio-bigquery (>=6.1.2) ; extra == 'devel_all'
Requires-Dist: gcloud-aio-storage ; extra == 'devel_all'
Requires-Dist: gevent (>=0.13) ; extra == 'devel_all'
Requires-Dist: gitpython ; extra == 'devel_all'
Requires-Dist: google-ads (>=21.2.0) ; extra == 'devel_all'
Requires-Dist: google-api-core (>=2.11.0) ; extra == 'devel_all'
Requires-Dist: google-api-python-client (>=1.6.0) ; extra == 'devel_all'
Requires-Dist: google-auth-httplib2 (>=0.0.1) ; extra == 'devel_all'
Requires-Dist: google-auth (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: google-auth (<3.0.0,>=1.0.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-aiplatform (>=1.22.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-automl (>=2.11.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-bigquery-datatransfer (>=3.11.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-bigtable (>=2.17.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-build (>=3.13.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-compute (>=1.10.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-container (>=2.17.4) ; extra == 'devel_all'
Requires-Dist: google-cloud-datacatalog (>=3.11.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-dataflow-client (>=0.8.2) ; extra == 'devel_all'
Requires-Dist: google-cloud-dataform (>=0.5.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-dataplex (>=1.4.2) ; extra == 'devel_all'
Requires-Dist: google-cloud-dataproc-metastore (>=1.12.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-dataproc (>=5.4.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-dlp (>=3.12.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-kms (>=2.15.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-language (>=2.9.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-logging (>=3.5.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-memcache (>=1.7.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-monitoring (>=2.14.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-orchestration-airflow (>=1.7.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-os-login (>=2.9.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-pubsub (>=2.15.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-redis (>=2.12.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-secret-manager (>=2.16.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-spanner (>=3.11.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-speech (>=2.18.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-storage-transfer (>=1.4.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-storage (>=2.7.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-tasks (>=2.13.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-texttospeech (>=2.14.1) ; extra == 'devel_all'
Requires-Dist: google-cloud-translate (>=3.11.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-videointelligence (>=2.11.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-vision (>=3.4.0) ; extra == 'devel_all'
Requires-Dist: google-cloud-workflows (>=1.10.0) ; extra == 'devel_all'
Requires-Dist: greenlet (>=0.4.9) ; extra == 'devel_all'
Requires-Dist: grpcio-gcp (>=0.2.2) ; extra == 'devel_all'
Requires-Dist: grpcio (>=1.15.0) ; extra == 'devel_all'
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'devel_all'
Requires-Dist: hmsclient (>=0.1.0) ; extra == 'devel_all'
Requires-Dist: httpx ; extra == 'devel_all'
Requires-Dist: hvac (>=0.10) ; extra == 'devel_all'
Requires-Dist: impyla (<1.0,>=0.18.0) ; extra == 'devel_all'
Requires-Dist: influxdb-client (>=1.19.0) ; extra == 'devel_all'
Requires-Dist: ipdb ; extra == 'devel_all'
Requires-Dist: jaydebeapi (>=1.1.1) ; extra == 'devel_all'
Requires-Dist: json-merge-patch (>=0.2) ; extra == 'devel_all'
Requires-Dist: jsonpath-ng (>=1.5.3) ; extra == 'devel_all'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'devel_all'
Requires-Dist: kubernetes-asyncio (<25,>=18.20.1) ; extra == 'devel_all'
Requires-Dist: kylinpy (>=2.6) ; extra == 'devel_all'
Requires-Dist: ldap3 (>=2.5.1) ; extra == 'devel_all'
Requires-Dist: looker-sdk (>=22.2.0) ; extra == 'devel_all'
Requires-Dist: mongomock ; extra == 'devel_all'
Requires-Dist: moto[cloudformation,glue] (>=4.2.5) ; extra == 'devel_all'
Requires-Dist: mypy-boto3-appflow (>=1.28.0) ; extra == 'devel_all'
Requires-Dist: mypy-boto3-rds (>=1.28.0) ; extra == 'devel_all'
Requires-Dist: mypy-boto3-redshift-data (>=1.28.0) ; extra == 'devel_all'
Requires-Dist: mypy-boto3-s3 (>=1.28.0) ; extra == 'devel_all'
Requires-Dist: mypy (==1.2.0) ; extra == 'devel_all'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'devel_all'
Requires-Dist: neo4j (>=4.2.1) ; extra == 'devel_all'
Requires-Dist: openlineage-integration-common (>=0.28.0) ; extra == 'devel_all'
Requires-Dist: openlineage-python (>=0.28.0) ; extra == 'devel_all'
Requires-Dist: opensearch-py (>=2.2.0) ; extra == 'devel_all'
Requires-Dist: opentelemetry-exporter-prometheus ; extra == 'devel_all'
Requires-Dist: opsgenie-sdk (>=2.1.5) ; extra == 'devel_all'
Requires-Dist: oracledb (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: oss2 (>=2.14.0) ; extra == 'devel_all'
Requires-Dist: pandas-gbq ; extra == 'devel_all'
Requires-Dist: pandas (>=0.17.1) ; extra == 'devel_all'
Requires-Dist: papermill[all] (>=1.2.1) ; extra == 'devel_all'
Requires-Dist: paramiko (>=2.6.0) ; extra == 'devel_all'
Requires-Dist: pdpyras (>=4.1.2) ; extra == 'devel_all'
Requires-Dist: pinotdb (>0.4.7) ; extra == 'devel_all'
Requires-Dist: pipdeptree ; extra == 'devel_all'
Requires-Dist: plyvel ; extra == 'devel_all'
Requires-Dist: pre-commit ; extra == 'devel_all'
Requires-Dist: presto-python-client (>=0.8.4) ; extra == 'devel_all'
Requires-Dist: proto-plus (>=1.19.6) ; extra == 'devel_all'
Requires-Dist: psycopg2-binary (>=2.8.0) ; extra == 'devel_all'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'devel_all'
Requires-Dist: pydruid (>=0.4.1) ; extra == 'devel_all'
Requires-Dist: pyexasol (>=0.5.1) ; extra == 'devel_all'
Requires-Dist: pygithub ; extra == 'devel_all'
Requires-Dist: pyhive[hive_pure_sasl] (>=0.7.0) ; extra == 'devel_all'
Requires-Dist: pykerberos (>=1.1.13) ; extra == 'devel_all'
Requires-Dist: pymongo (>=3.6.0) ; extra == 'devel_all'
Requires-Dist: pymssql (>=2.1.5) ; extra == 'devel_all'
Requires-Dist: pyodbc ; extra == 'devel_all'
Requires-Dist: pypsrp (>=0.8.0) ; extra == 'devel_all'
Requires-Dist: pyspark ; extra == 'devel_all'
Requires-Dist: pytest ; extra == 'devel_all'
Requires-Dist: pytest-asyncio ; extra == 'devel_all'
Requires-Dist: pytest-cov ; extra == 'devel_all'
Requires-Dist: pytest-httpx ; extra == 'devel_all'
Requires-Dist: pytest-instafail ; extra == 'devel_all'
Requires-Dist: pytest-mock ; extra == 'devel_all'
Requires-Dist: pytest-rerunfailures ; extra == 'devel_all'
Requires-Dist: pytest-timeouts ; extra == 'devel_all'
Requires-Dist: pytest-xdist ; extra == 'devel_all'
Requires-Dist: python-arango (>=7.3.2) ; extra == 'devel_all'
Requires-Dist: python-dotenv (>=0.21.0) ; extra == 'devel_all'
Requires-Dist: python-jenkins (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: python-ldap ; extra == 'devel_all'
Requires-Dist: python-telegram-bot (>=20.0.0) ; extra == 'devel_all'
Requires-Dist: pywinrm ; extra == 'devel_all'
Requires-Dist: pywinrm (>=0.4) ; extra == 'devel_all'
Requires-Dist: redis (!=4.5.5,<5.0.0,>=4.5.2) ; extra == 'devel_all'
Requires-Dist: redshift-connector (>=2.0.888) ; extra == 'devel_all'
Requires-Dist: requests (>=2.26.0) ; extra == 'devel_all'
Requires-Dist: requests (<3,>=2.27) ; extra == 'devel_all'
Requires-Dist: requests-kerberos (>=0.10.0) ; extra == 'devel_all'
Requires-Dist: requests-mock ; extra == 'devel_all'
Requires-Dist: requests-toolbelt ; extra == 'devel_all'
Requires-Dist: rich-click (>=1.7.0) ; extra == 'devel_all'
Requires-Dist: ruff (>=0.0.219) ; extra == 'devel_all'
Requires-Dist: scrapbook[all] ; extra == 'devel_all'
Requires-Dist: semver ; extra == 'devel_all'
Requires-Dist: sendgrid (>=6.0.0) ; extra == 'devel_all'
Requires-Dist: sentry-sdk (!=1.33.0,>=1.32.0) ; extra == 'devel_all'
Requires-Dist: simple-salesforce (>=1.0.0) ; extra == 'devel_all'
Requires-Dist: slack-sdk (>=3.0.0) ; extra == 'devel_all'
Requires-Dist: smbprotocol (>=1.5.0) ; extra == 'devel_all'
Requires-Dist: snowflake-connector-python (>=2.4.1) ; extra == 'devel_all'
Requires-Dist: snowflake-sqlalchemy (>=1.1.0) ; extra == 'devel_all'
Requires-Dist: sphinx-airflow-theme ; extra == 'devel_all'
Requires-Dist: sphinx-argparse (>=0.1.13) ; extra == 'devel_all'
Requires-Dist: sphinx-autoapi (>=2.0.0) ; extra == 'devel_all'
Requires-Dist: sphinx-copybutton ; extra == 'devel_all'
Requires-Dist: sphinx-jinja (>=2.0) ; extra == 'devel_all'
Requires-Dist: sphinx-rtd-theme (>=0.1.6) ; extra == 'devel_all'
Requires-Dist: sphinx (>=5.2.0) ; extra == 'devel_all'
Requires-Dist: sphinxcontrib-httpdomain (>=1.7.0) ; extra == 'devel_all'
Requires-Dist: sphinxcontrib-redoc (>=1.6.0) ; extra == 'devel_all'
Requires-Dist: sphinxcontrib-spelling (>=7.3) ; extra == 'devel_all'
Requires-Dist: spython (>=0.0.56) ; extra == 'devel_all'
Requires-Dist: sqlalchemy-bigquery (>=1.2.1) ; extra == 'devel_all'
Requires-Dist: sqlalchemy-drill (>=1.1.0) ; extra == 'devel_all'
Requires-Dist: sqlalchemy-spanner (>=1.6.2) ; extra == 'devel_all'
Requires-Dist: sqlalchemy-redshift (>=0.8.6) ; extra == 'devel_all'
Requires-Dist: sqlparse (>=0.4.2) ; extra == 'devel_all'
Requires-Dist: sshtunnel (>=0.3.2) ; extra == 'devel_all'
Requires-Dist: statsd (>=3.3.0) ; extra == 'devel_all'
Requires-Dist: tableauserverclient ; extra == 'devel_all'
Requires-Dist: thrift (>=0.9.2) ; extra == 'devel_all'
Requires-Dist: thrift-sasl (>=0.2.0) ; extra == 'devel_all'
Requires-Dist: time-machine ; extra == 'devel_all'
Requires-Dist: towncrier ; extra == 'devel_all'
Requires-Dist: trino (>=0.318.0) ; extra == 'devel_all'
Requires-Dist: twine ; extra == 'devel_all'
Requires-Dist: types-Deprecated ; extra == 'devel_all'
Requires-Dist: types-Markdown ; extra == 'devel_all'
Requires-Dist: types-PyMySQL ; extra == 'devel_all'
Requires-Dist: types-PyYAML ; extra == 'devel_all'
Requires-Dist: types-certifi ; extra == 'devel_all'
Requires-Dist: types-croniter ; extra == 'devel_all'
Requires-Dist: types-docutils ; extra == 'devel_all'
Requires-Dist: types-paramiko ; extra == 'devel_all'
Requires-Dist: types-protobuf ; extra == 'devel_all'
Requires-Dist: types-python-dateutil ; extra == 'devel_all'
Requires-Dist: types-python-slugify ; extra == 'devel_all'
Requires-Dist: types-pytz ; extra == 'devel_all'
Requires-Dist: types-redis ; extra == 'devel_all'
Requires-Dist: types-requests ; extra == 'devel_all'
Requires-Dist: types-setuptools ; extra == 'devel_all'
Requires-Dist: types-tabulate ; extra == 'devel_all'
Requires-Dist: types-termcolor ; extra == 'devel_all'
Requires-Dist: types-toml ; extra == 'devel_all'
Requires-Dist: vertica-python (>=0.5.1) ; extra == 'devel_all'
Requires-Dist: virtualenv ; extra == 'devel_all'
Requires-Dist: watchtower (~=2.0.1) ; extra == 'devel_all'
Requires-Dist: wheel ; extra == 'devel_all'
Requires-Dist: yamllint ; extra == 'devel_all'
Requires-Dist: zenpy (>=2.0.24) ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-airbyte ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-alibaba ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-amazon ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-beam ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-drill ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-flink ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-impala ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-kafka ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-kylin ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-livy ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-pig ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-spark ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apache-sqoop ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-apprise ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-arangodb ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-asana ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-atlassian-jira ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-celery ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-cloudant ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-cncf-kubernetes ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-daskexecutor ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-databricks ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-datadog ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-dbt-cloud ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-dingding ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-discord ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-docker ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-elasticsearch ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-exasol ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-facebook ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-ftp ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-github ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-google ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-grpc ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-hashicorp ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-http ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-imap ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-influxdb ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-jdbc ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-jenkins ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-microsoft-psrp ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-microsoft-winrm ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-mongo ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-mysql ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-neo4j ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-odbc ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-openfaas ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-openlineage ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-opensearch ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-opsgenie ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-oracle ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-pagerduty ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-papermill ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-plexus ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-postgres ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-presto ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-redis ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-salesforce ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-samba ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-segment ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-sendgrid ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-sftp ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-singularity ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-slack ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-smtp ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-snowflake ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-sqlite ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-ssh ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-tableau ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-tabular ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-telegram ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-trino ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-vertica ; extra == 'devel_all'
Requires-Dist: apache-airflow-providers-zendesk ; extra == 'devel_all'
Requires-Dist: backports.zoneinfo (>=0.2.1) ; (python_version < "3.9") and extra == 'devel_all'
Provides-Extra: devel_ci
Requires-Dist: PyGithub (!=1.58) ; extra == 'devel_ci'
Requires-Dist: PyOpenSSL ; extra == 'devel_ci'
Requires-Dist: adal (>=1.2.7) ; extra == 'devel_ci'
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'devel_ci'
Requires-Dist: aiohttp ; extra == 'devel_ci'
Requires-Dist: aiohttp (<4,>=3.6.3) ; extra == 'devel_ci'
Requires-Dist: aioresponses ; extra == 'devel_ci'
Requires-Dist: alibabacloud-adb20211201 (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: alibabacloud-tea-openapi (>=0.3.7) ; extra == 'devel_ci'
Requires-Dist: amqp ; extra == 'devel_ci'
Requires-Dist: analytics-python (>=1.2.9) ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'devel_ci'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'devel_ci'
Requires-Dist: apache-airflow (>=2.5.0) ; extra == 'devel_ci'
Requires-Dist: apache-airflow (>=2.7.0) ; extra == 'devel_ci'
Requires-Dist: apache-beam (>=2.47.0) ; extra == 'devel_ci'
Requires-Dist: apprise ; extra == 'devel_ci'
Requires-Dist: arrow (>=0.16.0) ; extra == 'devel_ci'
Requires-Dist: asana (<4.0.0,>=0.10) ; extra == 'devel_ci'
Requires-Dist: asgiref ; extra == 'devel_ci'
Requires-Dist: asgiref (>=3.5.2) ; extra == 'devel_ci'
Requires-Dist: astroid (<3.0,>=2.12.3) ; extra == 'devel_ci'
Requires-Dist: atlasclient (>=0.1.2) ; extra == 'devel_ci'
Requires-Dist: atlassian-python-api (>=1.14.2) ; extra == 'devel_ci'
Requires-Dist: attrs (>=22.2) ; extra == 'devel_ci'
Requires-Dist: authlib (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: aws-xray-sdk ; extra == 'devel_ci'
Requires-Dist: azure-batch (>=8.0.0) ; extra == 'devel_ci'
Requires-Dist: azure-cosmos (>=4.0.0) ; extra == 'devel_ci'
Requires-Dist: azure-datalake-store (>=0.0.45) ; extra == 'devel_ci'
Requires-Dist: azure-identity (>=1.3.1) ; extra == 'devel_ci'
Requires-Dist: azure-keyvault-secrets (>=4.1.0) ; extra == 'devel_ci'
Requires-Dist: azure-kusto-data (>=4.1.0) ; extra == 'devel_ci'
Requires-Dist: azure-mgmt-containerinstance (>=9.0.0) ; extra == 'devel_ci'
Requires-Dist: azure-mgmt-containerregistry (>=8.0.0) ; extra == 'devel_ci'
Requires-Dist: azure-mgmt-datafactory (>=2.0.0) ; extra == 'devel_ci'
Requires-Dist: azure-mgmt-datalake-store (>=0.5.0) ; extra == 'devel_ci'
Requires-Dist: azure-mgmt-resource (>=2.2.0) ; extra == 'devel_ci'
Requires-Dist: azure-servicebus (>=7.6.1) ; extra == 'devel_ci'
Requires-Dist: azure-storage-blob (>=12.14.0) ; extra == 'devel_ci'
Requires-Dist: azure-storage-common (>=2.1.0) ; extra == 'devel_ci'
Requires-Dist: azure-storage-file-datalake (>=12.9.1) ; extra == 'devel_ci'
Requires-Dist: azure-storage-file (>=2.1.0) ; extra == 'devel_ci'
Requires-Dist: azure-synapse-spark ; extra == 'devel_ci'
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'devel_ci'
Requires-Dist: beautifulsoup4 (>=4.7.1) ; extra == 'devel_ci'
Requires-Dist: black ; extra == 'devel_ci'
Requires-Dist: blinker ; extra == 'devel_ci'
Requires-Dist: blinker (>=1.1) ; extra == 'devel_ci'
Requires-Dist: boto3 (>=1.28.0) ; extra == 'devel_ci'
Requires-Dist: botocore (>=1.31.0) ; extra == 'devel_ci'
Requires-Dist: cassandra-driver (>=3.13.0) ; extra == 'devel_ci'
Requires-Dist: celery (!=5.3.2,!=5.3.3,<6,>=5.3.0) ; extra == 'devel_ci'
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'devel_ci'
Requires-Dist: checksumdir ; extra == 'devel_ci'
Requires-Dist: click (>=8.0) ; extra == 'devel_ci'
Requires-Dist: click (!=8.1.4,!=8.1.5,>=8.0) ; extra == 'devel_ci'
Requires-Dist: cloudant (>=2.0) ; extra == 'devel_ci'
Requires-Dist: cloudpickle (>=1.4.1) ; extra == 'devel_ci'
Requires-Dist: confluent-kafka (>=1.8.2) ; extra == 'devel_ci'
Requires-Dist: coverage (>=7.2) ; extra == 'devel_ci'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'devel_ci'
Requires-Dist: dask (!=2022.10.1,!=2023.5.0,>=2.9.0) ; extra == 'devel_ci'
Requires-Dist: databricks-sql-connector (<3.0.0,>=2.0.0) ; extra == 'devel_ci'
Requires-Dist: datadog (>=0.14.0) ; extra == 'devel_ci'
Requires-Dist: distributed (!=2023.5.0,>=2.11.1) ; extra == 'devel_ci'
Requires-Dist: dnspython (>=1.13.0) ; extra == 'devel_ci'
Requires-Dist: docker (>=5.0.3) ; extra == 'devel_ci'
Requires-Dist: docutils (<0.17.0) ; extra == 'devel_ci'
Requires-Dist: duckdb (>=0.9.0) ; extra == 'devel_ci'
Requires-Dist: elasticsearch (<9,>8) ; extra == 'devel_ci'
Requires-Dist: eralchemy2 ; extra == 'devel_ci'
Requires-Dist: eventlet (>=0.33.3) ; extra == 'devel_ci'
Requires-Dist: facebook-business (>=6.0.2) ; extra == 'devel_ci'
Requires-Dist: filelock ; extra == 'devel_ci'
Requires-Dist: flask-appbuilder[oauth] (==4.3.6) ; extra == 'devel_ci'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'devel_ci'
Requires-Dist: flower (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: gcloud-aio-auth (<5.0.0,>=4.0.0) ; extra == 'devel_ci'
Requires-Dist: gcloud-aio-bigquery (>=6.1.2) ; extra == 'devel_ci'
Requires-Dist: gcloud-aio-storage ; extra == 'devel_ci'
Requires-Dist: gevent (>=0.13) ; extra == 'devel_ci'
Requires-Dist: gitpython ; extra == 'devel_ci'
Requires-Dist: google-ads (>=21.2.0) ; extra == 'devel_ci'
Requires-Dist: google-api-core (>=2.11.0) ; extra == 'devel_ci'
Requires-Dist: google-api-python-client (>=1.6.0) ; extra == 'devel_ci'
Requires-Dist: google-auth-httplib2 (>=0.0.1) ; extra == 'devel_ci'
Requires-Dist: google-auth (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: google-auth (<3.0.0,>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-aiplatform (>=1.22.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-automl (>=2.11.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-bigquery-datatransfer (>=3.11.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-bigtable (>=2.17.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-build (>=3.13.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-compute (>=1.10.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-container (>=2.17.4) ; extra == 'devel_ci'
Requires-Dist: google-cloud-datacatalog (>=3.11.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dataflow-client (>=0.8.2) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dataform (>=0.5.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dataplex (>=1.4.2) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dataproc-metastore (>=1.12.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dataproc (>=5.4.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-dlp (>=3.12.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-kms (>=2.15.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-language (>=2.9.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-logging (>=3.5.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-memcache (>=1.7.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-monitoring (>=2.14.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-orchestration-airflow (>=1.7.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-os-login (>=2.9.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-pubsub (>=2.15.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-redis (>=2.12.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-secret-manager (>=2.16.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-spanner (>=3.11.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-speech (>=2.18.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-storage-transfer (>=1.4.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-storage (>=2.7.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-tasks (>=2.13.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-texttospeech (>=2.14.1) ; extra == 'devel_ci'
Requires-Dist: google-cloud-translate (>=3.11.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-videointelligence (>=2.11.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-vision (>=3.4.0) ; extra == 'devel_ci'
Requires-Dist: google-cloud-workflows (>=1.10.0) ; extra == 'devel_ci'
Requires-Dist: greenlet (>=0.4.9) ; extra == 'devel_ci'
Requires-Dist: grpcio-gcp (>=0.2.2) ; extra == 'devel_ci'
Requires-Dist: grpcio (>=1.15.0) ; extra == 'devel_ci'
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'devel_ci'
Requires-Dist: hmsclient (>=0.1.0) ; extra == 'devel_ci'
Requires-Dist: httpx ; extra == 'devel_ci'
Requires-Dist: hvac (>=0.10) ; extra == 'devel_ci'
Requires-Dist: impyla (<1.0,>=0.18.0) ; extra == 'devel_ci'
Requires-Dist: influxdb-client (>=1.19.0) ; extra == 'devel_ci'
Requires-Dist: ipdb ; extra == 'devel_ci'
Requires-Dist: jaydebeapi (>=1.1.1) ; extra == 'devel_ci'
Requires-Dist: json-merge-patch (>=0.2) ; extra == 'devel_ci'
Requires-Dist: jsonpath-ng (>=1.5.3) ; extra == 'devel_ci'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'devel_ci'
Requires-Dist: kubernetes-asyncio (<25,>=18.20.1) ; extra == 'devel_ci'
Requires-Dist: kylinpy (>=2.6) ; extra == 'devel_ci'
Requires-Dist: ldap3 (>=2.5.1) ; extra == 'devel_ci'
Requires-Dist: looker-sdk (>=22.2.0) ; extra == 'devel_ci'
Requires-Dist: mongomock ; extra == 'devel_ci'
Requires-Dist: moto[cloudformation,glue] (>=4.2.5) ; extra == 'devel_ci'
Requires-Dist: mypy-boto3-appflow (>=1.28.0) ; extra == 'devel_ci'
Requires-Dist: mypy-boto3-rds (>=1.28.0) ; extra == 'devel_ci'
Requires-Dist: mypy-boto3-redshift-data (>=1.28.0) ; extra == 'devel_ci'
Requires-Dist: mypy-boto3-s3 (>=1.28.0) ; extra == 'devel_ci'
Requires-Dist: mypy (==1.2.0) ; extra == 'devel_ci'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'devel_ci'
Requires-Dist: neo4j (>=4.2.1) ; extra == 'devel_ci'
Requires-Dist: openlineage-integration-common (>=0.28.0) ; extra == 'devel_ci'
Requires-Dist: openlineage-python (>=0.28.0) ; extra == 'devel_ci'
Requires-Dist: opensearch-py (>=2.2.0) ; extra == 'devel_ci'
Requires-Dist: opentelemetry-exporter-prometheus ; extra == 'devel_ci'
Requires-Dist: opsgenie-sdk (>=2.1.5) ; extra == 'devel_ci'
Requires-Dist: oracledb (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: oss2 (>=2.14.0) ; extra == 'devel_ci'
Requires-Dist: pandas-gbq ; extra == 'devel_ci'
Requires-Dist: pandas (>=0.17.1) ; extra == 'devel_ci'
Requires-Dist: papermill[all] (>=1.2.1) ; extra == 'devel_ci'
Requires-Dist: paramiko (>=2.6.0) ; extra == 'devel_ci'
Requires-Dist: pdpyras (>=4.1.2) ; extra == 'devel_ci'
Requires-Dist: pinotdb (>0.4.7) ; extra == 'devel_ci'
Requires-Dist: pipdeptree ; extra == 'devel_ci'
Requires-Dist: plyvel ; extra == 'devel_ci'
Requires-Dist: pre-commit ; extra == 'devel_ci'
Requires-Dist: presto-python-client (>=0.8.4) ; extra == 'devel_ci'
Requires-Dist: proto-plus (>=1.19.6) ; extra == 'devel_ci'
Requires-Dist: psycopg2-binary (>=2.8.0) ; extra == 'devel_ci'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'devel_ci'
Requires-Dist: pydruid (>=0.4.1) ; extra == 'devel_ci'
Requires-Dist: pyexasol (>=0.5.1) ; extra == 'devel_ci'
Requires-Dist: pygithub ; extra == 'devel_ci'
Requires-Dist: pyhive[hive_pure_sasl] (>=0.7.0) ; extra == 'devel_ci'
Requires-Dist: pykerberos (>=1.1.13) ; extra == 'devel_ci'
Requires-Dist: pymongo (>=3.6.0) ; extra == 'devel_ci'
Requires-Dist: pymssql (>=2.1.5) ; extra == 'devel_ci'
Requires-Dist: pyodbc ; extra == 'devel_ci'
Requires-Dist: pypsrp (>=0.8.0) ; extra == 'devel_ci'
Requires-Dist: pyspark ; extra == 'devel_ci'
Requires-Dist: pytest ; extra == 'devel_ci'
Requires-Dist: pytest-asyncio ; extra == 'devel_ci'
Requires-Dist: pytest-cov ; extra == 'devel_ci'
Requires-Dist: pytest-httpx ; extra == 'devel_ci'
Requires-Dist: pytest-instafail ; extra == 'devel_ci'
Requires-Dist: pytest-mock ; extra == 'devel_ci'
Requires-Dist: pytest-rerunfailures ; extra == 'devel_ci'
Requires-Dist: pytest-timeouts ; extra == 'devel_ci'
Requires-Dist: pytest-xdist ; extra == 'devel_ci'
Requires-Dist: python-arango (>=7.3.2) ; extra == 'devel_ci'
Requires-Dist: python-dotenv (>=0.21.0) ; extra == 'devel_ci'
Requires-Dist: python-jenkins (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: python-ldap ; extra == 'devel_ci'
Requires-Dist: python-telegram-bot (>=20.0.0) ; extra == 'devel_ci'
Requires-Dist: pywinrm ; extra == 'devel_ci'
Requires-Dist: pywinrm (>=0.4) ; extra == 'devel_ci'
Requires-Dist: redis (!=4.5.5,<5.0.0,>=4.5.2) ; extra == 'devel_ci'
Requires-Dist: redshift-connector (>=2.0.888) ; extra == 'devel_ci'
Requires-Dist: requests (>=2.26.0) ; extra == 'devel_ci'
Requires-Dist: requests (<3,>=2.27) ; extra == 'devel_ci'
Requires-Dist: requests-kerberos (>=0.10.0) ; extra == 'devel_ci'
Requires-Dist: requests-mock ; extra == 'devel_ci'
Requires-Dist: requests-toolbelt ; extra == 'devel_ci'
Requires-Dist: rich-click (>=1.7.0) ; extra == 'devel_ci'
Requires-Dist: ruff (>=0.0.219) ; extra == 'devel_ci'
Requires-Dist: scrapbook[all] ; extra == 'devel_ci'
Requires-Dist: semver ; extra == 'devel_ci'
Requires-Dist: sendgrid (>=6.0.0) ; extra == 'devel_ci'
Requires-Dist: sentry-sdk (!=1.33.0,>=1.32.0) ; extra == 'devel_ci'
Requires-Dist: simple-salesforce (>=1.0.0) ; extra == 'devel_ci'
Requires-Dist: slack-sdk (>=3.0.0) ; extra == 'devel_ci'
Requires-Dist: smbprotocol (>=1.5.0) ; extra == 'devel_ci'
Requires-Dist: snowflake-connector-python (>=2.4.1) ; extra == 'devel_ci'
Requires-Dist: snowflake-sqlalchemy (>=1.1.0) ; extra == 'devel_ci'
Requires-Dist: sphinx-airflow-theme ; extra == 'devel_ci'
Requires-Dist: sphinx-argparse (>=0.1.13) ; extra == 'devel_ci'
Requires-Dist: sphinx-autoapi (>=2.0.0) ; extra == 'devel_ci'
Requires-Dist: sphinx-copybutton ; extra == 'devel_ci'
Requires-Dist: sphinx-jinja (>=2.0) ; extra == 'devel_ci'
Requires-Dist: sphinx-rtd-theme (>=0.1.6) ; extra == 'devel_ci'
Requires-Dist: sphinx (>=5.2.0) ; extra == 'devel_ci'
Requires-Dist: sphinxcontrib-httpdomain (>=1.7.0) ; extra == 'devel_ci'
Requires-Dist: sphinxcontrib-redoc (>=1.6.0) ; extra == 'devel_ci'
Requires-Dist: sphinxcontrib-spelling (>=7.3) ; extra == 'devel_ci'
Requires-Dist: spython (>=0.0.56) ; extra == 'devel_ci'
Requires-Dist: sqlalchemy-bigquery (>=1.2.1) ; extra == 'devel_ci'
Requires-Dist: sqlalchemy-drill (>=1.1.0) ; extra == 'devel_ci'
Requires-Dist: sqlalchemy-spanner (>=1.6.2) ; extra == 'devel_ci'
Requires-Dist: sqlalchemy-redshift (>=0.8.6) ; extra == 'devel_ci'
Requires-Dist: sqlparse (>=0.4.2) ; extra == 'devel_ci'
Requires-Dist: sshtunnel (>=0.3.2) ; extra == 'devel_ci'
Requires-Dist: statsd (>=3.3.0) ; extra == 'devel_ci'
Requires-Dist: tableauserverclient ; extra == 'devel_ci'
Requires-Dist: thrift (>=0.9.2) ; extra == 'devel_ci'
Requires-Dist: thrift-sasl (>=0.2.0) ; extra == 'devel_ci'
Requires-Dist: time-machine ; extra == 'devel_ci'
Requires-Dist: towncrier ; extra == 'devel_ci'
Requires-Dist: trino (>=0.318.0) ; extra == 'devel_ci'
Requires-Dist: twine ; extra == 'devel_ci'
Requires-Dist: types-Deprecated ; extra == 'devel_ci'
Requires-Dist: types-Markdown ; extra == 'devel_ci'
Requires-Dist: types-PyMySQL ; extra == 'devel_ci'
Requires-Dist: types-PyYAML ; extra == 'devel_ci'
Requires-Dist: types-certifi ; extra == 'devel_ci'
Requires-Dist: types-croniter ; extra == 'devel_ci'
Requires-Dist: types-docutils ; extra == 'devel_ci'
Requires-Dist: types-paramiko ; extra == 'devel_ci'
Requires-Dist: types-protobuf ; extra == 'devel_ci'
Requires-Dist: types-python-dateutil ; extra == 'devel_ci'
Requires-Dist: types-python-slugify ; extra == 'devel_ci'
Requires-Dist: types-pytz ; extra == 'devel_ci'
Requires-Dist: types-redis ; extra == 'devel_ci'
Requires-Dist: types-requests ; extra == 'devel_ci'
Requires-Dist: types-setuptools ; extra == 'devel_ci'
Requires-Dist: types-tabulate ; extra == 'devel_ci'
Requires-Dist: types-termcolor ; extra == 'devel_ci'
Requires-Dist: types-toml ; extra == 'devel_ci'
Requires-Dist: vertica-python (>=0.5.1) ; extra == 'devel_ci'
Requires-Dist: virtualenv ; extra == 'devel_ci'
Requires-Dist: watchtower (~=2.0.1) ; extra == 'devel_ci'
Requires-Dist: wheel ; extra == 'devel_ci'
Requires-Dist: yamllint ; extra == 'devel_ci'
Requires-Dist: zenpy (>=2.0.24) ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-airbyte ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-alibaba ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-amazon ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-beam ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-cassandra ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-drill ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-flink ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-impala ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-kafka ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-kylin ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-livy ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-pig ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-spark ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apache-sqoop ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-apprise ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-arangodb ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-asana ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-atlassian-jira ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-celery ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-cloudant ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-cncf-kubernetes ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-daskexecutor ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-databricks ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-datadog ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-dbt-cloud ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-dingding ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-discord ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-docker ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-elasticsearch ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-exasol ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-facebook ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-ftp ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-github ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-google ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-grpc ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-hashicorp ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-http ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-imap ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-influxdb ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-jdbc ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-jenkins ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-microsoft-psrp ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-microsoft-winrm ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-mongo ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-mysql ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-neo4j ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-odbc ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-openfaas ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-openlineage ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-opensearch ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-opsgenie ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-oracle ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-pagerduty ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-papermill ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-plexus ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-postgres ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-presto ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-redis ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-salesforce ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-samba ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-segment ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-sendgrid ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-sftp ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-singularity ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-slack ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-smtp ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-snowflake ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-sqlite ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-ssh ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-tableau ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-tabular ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-telegram ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-trino ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-vertica ; extra == 'devel_ci'
Requires-Dist: apache-airflow-providers-zendesk ; extra == 'devel_ci'
Requires-Dist: backports.zoneinfo (>=0.2.1) ; (python_version < "3.9") and extra == 'devel_ci'
Provides-Extra: devel_hadoop
Requires-Dist: aiobotocore (>=2.1.1) ; extra == 'devel_hadoop'
Requires-Dist: aioresponses ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow-providers-common-sql ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'devel_hadoop'
Requires-Dist: astroid (<3.0,>=2.12.3) ; extra == 'devel_hadoop'
Requires-Dist: aws-xray-sdk ; extra == 'devel_hadoop'
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'devel_hadoop'
Requires-Dist: beautifulsoup4 (>=4.7.1) ; extra == 'devel_hadoop'
Requires-Dist: black ; extra == 'devel_hadoop'
Requires-Dist: blinker ; extra == 'devel_hadoop'
Requires-Dist: cgroupspy (>=0.2.2) ; extra == 'devel_hadoop'
Requires-Dist: checksumdir ; extra == 'devel_hadoop'
Requires-Dist: click (>=8.0) ; extra == 'devel_hadoop'
Requires-Dist: click (!=8.1.4,!=8.1.5,>=8.0) ; extra == 'devel_hadoop'
Requires-Dist: coverage (>=7.2) ; extra == 'devel_hadoop'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'devel_hadoop'
Requires-Dist: docutils (<0.17.0) ; extra == 'devel_hadoop'
Requires-Dist: duckdb (>=0.9.0) ; extra == 'devel_hadoop'
Requires-Dist: eralchemy2 ; extra == 'devel_hadoop'
Requires-Dist: filelock ; extra == 'devel_hadoop'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'devel_hadoop'
Requires-Dist: gitpython ; extra == 'devel_hadoop'
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'devel_hadoop'
Requires-Dist: hmsclient (>=0.1.0) ; extra == 'devel_hadoop'
Requires-Dist: impyla (<1.0,>=0.18.0) ; extra == 'devel_hadoop'
Requires-Dist: ipdb ; extra == 'devel_hadoop'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'devel_hadoop'
Requires-Dist: mongomock ; extra == 'devel_hadoop'
Requires-Dist: moto[cloudformation,glue] (>=4.2.5) ; extra == 'devel_hadoop'
Requires-Dist: mypy-boto3-appflow (>=1.28.0) ; extra == 'devel_hadoop'
Requires-Dist: mypy-boto3-rds (>=1.28.0) ; extra == 'devel_hadoop'
Requires-Dist: mypy-boto3-redshift-data (>=1.28.0) ; extra == 'devel_hadoop'
Requires-Dist: mypy-boto3-s3 (>=1.28.0) ; extra == 'devel_hadoop'
Requires-Dist: mypy (==1.2.0) ; extra == 'devel_hadoop'
Requires-Dist: mysqlclient (>=1.3.6) ; extra == 'devel_hadoop'
Requires-Dist: pandas (>=0.17.1) ; extra == 'devel_hadoop'
Requires-Dist: pipdeptree ; extra == 'devel_hadoop'
Requires-Dist: pre-commit ; extra == 'devel_hadoop'
Requires-Dist: presto-python-client (>=0.8.4) ; extra == 'devel_hadoop'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'devel_hadoop'
Requires-Dist: pygithub ; extra == 'devel_hadoop'
Requires-Dist: pyhive[hive_pure_sasl] (>=0.7.0) ; extra == 'devel_hadoop'
Requires-Dist: pykerberos (>=1.1.13) ; extra == 'devel_hadoop'
Requires-Dist: pytest ; extra == 'devel_hadoop'
Requires-Dist: pytest-asyncio ; extra == 'devel_hadoop'
Requires-Dist: pytest-cov ; extra == 'devel_hadoop'
Requires-Dist: pytest-httpx ; extra == 'devel_hadoop'
Requires-Dist: pytest-instafail ; extra == 'devel_hadoop'
Requires-Dist: pytest-mock ; extra == 'devel_hadoop'
Requires-Dist: pytest-rerunfailures ; extra == 'devel_hadoop'
Requires-Dist: pytest-timeouts ; extra == 'devel_hadoop'
Requires-Dist: pytest-xdist ; extra == 'devel_hadoop'
Requires-Dist: pywinrm ; extra == 'devel_hadoop'
Requires-Dist: requests-kerberos (>=0.10.0) ; extra == 'devel_hadoop'
Requires-Dist: requests-mock ; extra == 'devel_hadoop'
Requires-Dist: rich-click (>=1.7.0) ; extra == 'devel_hadoop'
Requires-Dist: ruff (>=0.0.219) ; extra == 'devel_hadoop'
Requires-Dist: semver ; extra == 'devel_hadoop'
Requires-Dist: sphinx-airflow-theme ; extra == 'devel_hadoop'
Requires-Dist: sphinx-argparse (>=0.1.13) ; extra == 'devel_hadoop'
Requires-Dist: sphinx-autoapi (>=2.0.0) ; extra == 'devel_hadoop'
Requires-Dist: sphinx-copybutton ; extra == 'devel_hadoop'
Requires-Dist: sphinx-jinja (>=2.0) ; extra == 'devel_hadoop'
Requires-Dist: sphinx-rtd-theme (>=0.1.6) ; extra == 'devel_hadoop'
Requires-Dist: sphinx (>=5.2.0) ; extra == 'devel_hadoop'
Requires-Dist: sphinxcontrib-httpdomain (>=1.7.0) ; extra == 'devel_hadoop'
Requires-Dist: sphinxcontrib-redoc (>=1.6.0) ; extra == 'devel_hadoop'
Requires-Dist: sphinxcontrib-spelling (>=7.3) ; extra == 'devel_hadoop'
Requires-Dist: thrift (>=0.9.2) ; extra == 'devel_hadoop'
Requires-Dist: thrift-sasl (>=0.2.0) ; extra == 'devel_hadoop'
Requires-Dist: time-machine ; extra == 'devel_hadoop'
Requires-Dist: towncrier ; extra == 'devel_hadoop'
Requires-Dist: twine ; extra == 'devel_hadoop'
Requires-Dist: types-Deprecated ; extra == 'devel_hadoop'
Requires-Dist: types-Markdown ; extra == 'devel_hadoop'
Requires-Dist: types-PyMySQL ; extra == 'devel_hadoop'
Requires-Dist: types-PyYAML ; extra == 'devel_hadoop'
Requires-Dist: types-certifi ; extra == 'devel_hadoop'
Requires-Dist: types-croniter ; extra == 'devel_hadoop'
Requires-Dist: types-docutils ; extra == 'devel_hadoop'
Requires-Dist: types-paramiko ; extra == 'devel_hadoop'
Requires-Dist: types-protobuf ; extra == 'devel_hadoop'
Requires-Dist: types-python-dateutil ; extra == 'devel_hadoop'
Requires-Dist: types-python-slugify ; extra == 'devel_hadoop'
Requires-Dist: types-pytz ; extra == 'devel_hadoop'
Requires-Dist: types-redis ; extra == 'devel_hadoop'
Requires-Dist: types-requests ; extra == 'devel_hadoop'
Requires-Dist: types-setuptools ; extra == 'devel_hadoop'
Requires-Dist: types-tabulate ; extra == 'devel_hadoop'
Requires-Dist: types-termcolor ; extra == 'devel_hadoop'
Requires-Dist: types-toml ; extra == 'devel_hadoop'
Requires-Dist: wheel ; extra == 'devel_hadoop'
Requires-Dist: yamllint ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow-providers-presto ; extra == 'devel_hadoop'
Requires-Dist: apache-airflow-providers-trino ; extra == 'devel_hadoop'
Requires-Dist: backports.zoneinfo (>=0.2.1) ; (python_version < "3.9") and extra == 'devel_hadoop'
Provides-Extra: dingding
Requires-Dist: apache-airflow-providers-dingding ; extra == 'dingding'
Provides-Extra: discord
Requires-Dist: apache-airflow-providers-discord ; extra == 'discord'
Provides-Extra: doc
Requires-Dist: astroid (<3.0,>=2.12.3) ; extra == 'doc'
Requires-Dist: checksumdir ; extra == 'doc'
Requires-Dist: click (!=8.1.4,!=8.1.5,>=8.0) ; extra == 'doc'
Requires-Dist: docutils (<0.17.0) ; extra == 'doc'
Requires-Dist: eralchemy2 ; extra == 'doc'
Requires-Dist: sphinx-airflow-theme ; extra == 'doc'
Requires-Dist: sphinx-argparse (>=0.1.13) ; extra == 'doc'
Requires-Dist: sphinx-autoapi (>=2.0.0) ; extra == 'doc'
Requires-Dist: sphinx-copybutton ; extra == 'doc'
Requires-Dist: sphinx-jinja (>=2.0) ; extra == 'doc'
Requires-Dist: sphinx-rtd-theme (>=0.1.6) ; extra == 'doc'
Requires-Dist: sphinx (>=5.2.0) ; extra == 'doc'
Requires-Dist: sphinxcontrib-httpdomain (>=1.7.0) ; extra == 'doc'
Requires-Dist: sphinxcontrib-redoc (>=1.6.0) ; extra == 'doc'
Requires-Dist: sphinxcontrib-spelling (>=7.3) ; extra == 'doc'
Provides-Extra: doc_gen
Requires-Dist: eralchemy2 ; extra == 'doc_gen'
Provides-Extra: docker
Requires-Dist: apache-airflow-providers-docker ; extra == 'docker'
Provides-Extra: druid
Requires-Dist: apache-airflow-providers-apache-druid ; extra == 'druid'
Provides-Extra: elasticsearch
Requires-Dist: apache-airflow-providers-elasticsearch ; extra == 'elasticsearch'
Provides-Extra: exasol
Requires-Dist: apache-airflow-providers-exasol ; extra == 'exasol'
Provides-Extra: facebook
Requires-Dist: apache-airflow-providers-facebook ; extra == 'facebook'
Provides-Extra: ftp
Requires-Dist: apache-airflow-providers-ftp ; extra == 'ftp'
Provides-Extra: gcp
Requires-Dist: apache-airflow-providers-google ; extra == 'gcp'
Provides-Extra: gcp_api
Requires-Dist: apache-airflow-providers-google ; extra == 'gcp_api'
Provides-Extra: github
Requires-Dist: apache-airflow-providers-github ; extra == 'github'
Provides-Extra: github_enterprise
Requires-Dist: authlib (>=1.0.0) ; extra == 'github_enterprise'
Requires-Dist: flask-appbuilder[oauth] (==4.3.6) ; extra == 'github_enterprise'
Provides-Extra: google
Requires-Dist: apache-airflow-providers-google ; extra == 'google'
Provides-Extra: google_auth
Requires-Dist: authlib (>=1.0.0) ; extra == 'google_auth'
Requires-Dist: flask-appbuilder[oauth] (==4.3.6) ; extra == 'google_auth'
Provides-Extra: grpc
Requires-Dist: apache-airflow-providers-grpc ; extra == 'grpc'
Provides-Extra: hashicorp
Requires-Dist: apache-airflow-providers-hashicorp ; extra == 'hashicorp'
Provides-Extra: hdfs
Requires-Dist: apache-airflow-providers-apache-hdfs ; extra == 'hdfs'
Provides-Extra: hive
Requires-Dist: apache-airflow-providers-apache-hive ; extra == 'hive'
Provides-Extra: http
Requires-Dist: apache-airflow-providers-http ; extra == 'http'
Provides-Extra: imap
Requires-Dist: apache-airflow-providers-imap ; extra == 'imap'
Provides-Extra: influxdb
Requires-Dist: apache-airflow-providers-influxdb ; extra == 'influxdb'
Provides-Extra: jdbc
Requires-Dist: apache-airflow-providers-jdbc ; extra == 'jdbc'
Provides-Extra: jenkins
Requires-Dist: apache-airflow-providers-jenkins ; extra == 'jenkins'
Provides-Extra: kerberos
Requires-Dist: pykerberos (>=1.1.13) ; extra == 'kerberos'
Requires-Dist: requests-kerberos (>=0.10.0) ; extra == 'kerberos'
Requires-Dist: thrift-sasl (>=0.2.0) ; extra == 'kerberos'
Provides-Extra: kubernetes
Requires-Dist: apache-airflow (>=2.4.0) ; extra == 'kubernetes'
Requires-Dist: asgiref (>=3.5.2) ; extra == 'kubernetes'
Requires-Dist: cryptography (>=2.0.0) ; extra == 'kubernetes'
Requires-Dist: kubernetes (<24,>=21.7.0) ; extra == 'kubernetes'
Requires-Dist: kubernetes-asyncio (<25,>=18.20.1) ; extra == 'kubernetes'
Requires-Dist: apache-airflow-providers-cncf-kubernetes ; extra == 'kubernetes'
Provides-Extra: ldap
Requires-Dist: ldap3 (>=2.5.1) ; extra == 'ldap'
Requires-Dist: python-ldap ; extra == 'ldap'
Provides-Extra: leveldb
Requires-Dist: plyvel ; extra == 'leveldb'
Provides-Extra: microsoft.azure
Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == 'microsoft.azure'
Provides-Extra: microsoft.mssql
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'microsoft.mssql'
Provides-Extra: microsoft.psrp
Requires-Dist: apache-airflow-providers-microsoft-psrp ; extra == 'microsoft.psrp'
Provides-Extra: microsoft.winrm
Requires-Dist: apache-airflow-providers-microsoft-winrm ; extra == 'microsoft.winrm'
Provides-Extra: mongo
Requires-Dist: apache-airflow-providers-mongo ; extra == 'mongo'
Provides-Extra: mssql
Requires-Dist: apache-airflow-providers-microsoft-mssql ; extra == 'mssql'
Provides-Extra: mysql
Requires-Dist: apache-airflow-providers-mysql ; extra == 'mysql'
Provides-Extra: neo4j
Requires-Dist: apache-airflow-providers-neo4j ; extra == 'neo4j'
Provides-Extra: odbc
Requires-Dist: apache-airflow-providers-odbc ; extra == 'odbc'
Provides-Extra: openfaas
Requires-Dist: apache-airflow-providers-openfaas ; extra == 'openfaas'
Provides-Extra: openlineage
Requires-Dist: apache-airflow-providers-openlineage ; extra == 'openlineage'
Provides-Extra: opensearch
Requires-Dist: apache-airflow-providers-opensearch ; extra == 'opensearch'
Provides-Extra: opsgenie
Requires-Dist: apache-airflow-providers-opsgenie ; extra == 'opsgenie'
Provides-Extra: oracle
Requires-Dist: apache-airflow-providers-oracle ; extra == 'oracle'
Provides-Extra: otel
Requires-Dist: opentelemetry-exporter-prometheus ; extra == 'otel'
Provides-Extra: pagerduty
Requires-Dist: apache-airflow-providers-pagerduty ; extra == 'pagerduty'
Provides-Extra: pandas
Requires-Dist: pandas (>=0.17.1) ; extra == 'pandas'
Requires-Dist: pyarrow (>=9.0.0) ; extra == 'pandas'
Provides-Extra: papermill
Requires-Dist: apache-airflow-providers-papermill ; extra == 'papermill'
Provides-Extra: password
Requires-Dist: bcrypt (>=2.0.0) ; extra == 'password'
Requires-Dist: flask-bcrypt (>=0.7.1) ; extra == 'password'
Provides-Extra: pinot
Requires-Dist: apache-airflow-providers-apache-pinot ; extra == 'pinot'
Provides-Extra: plexus
Requires-Dist: apache-airflow-providers-plexus ; extra == 'plexus'
Provides-Extra: postgres
Requires-Dist: apache-airflow-providers-postgres ; extra == 'postgres'
Provides-Extra: presto
Requires-Dist: apache-airflow-providers-presto ; extra == 'presto'
Provides-Extra: qds
Requires-Dist: apache-airflow-providers-qubole ; extra == 'qds'
Provides-Extra: rabbitmq
Requires-Dist: amqp ; extra == 'rabbitmq'
Provides-Extra: redis
Requires-Dist: apache-airflow-providers-redis ; extra == 'redis'
Provides-Extra: s3
Requires-Dist: apache-airflow-providers-amazon ; extra == 's3'
Provides-Extra: salesforce
Requires-Dist: apache-airflow-providers-salesforce ; extra == 'salesforce'
Provides-Extra: samba
Requires-Dist: apache-airflow-providers-samba ; extra == 'samba'
Provides-Extra: segment
Requires-Dist: apache-airflow-providers-segment ; extra == 'segment'
Provides-Extra: sendgrid
Requires-Dist: apache-airflow-providers-sendgrid ; extra == 'sendgrid'
Provides-Extra: sentry
Requires-Dist: blinker (>=1.1) ; extra == 'sentry'
Requires-Dist: sentry-sdk (!=1.33.0,>=1.32.0) ; extra == 'sentry'
Provides-Extra: sftp
Requires-Dist: apache-airflow-providers-sftp ; extra == 'sftp'
Provides-Extra: singularity
Requires-Dist: apache-airflow-providers-singularity ; extra == 'singularity'
Provides-Extra: slack
Requires-Dist: apache-airflow-providers-slack ; extra == 'slack'
Provides-Extra: smtp
Requires-Dist: apache-airflow-providers-smtp ; extra == 'smtp'
Provides-Extra: snowflake
Requires-Dist: apache-airflow-providers-snowflake ; extra == 'snowflake'
Provides-Extra: spark
Requires-Dist: apache-airflow-providers-apache-spark ; extra == 'spark'
Provides-Extra: sqlite
Requires-Dist: apache-airflow-providers-sqlite ; extra == 'sqlite'
Provides-Extra: ssh
Requires-Dist: apache-airflow-providers-ssh ; extra == 'ssh'
Provides-Extra: statsd
Requires-Dist: statsd (>=3.3.0) ; extra == 'statsd'
Provides-Extra: tableau
Requires-Dist: apache-airflow-providers-tableau ; extra == 'tableau'
Provides-Extra: tabular
Requires-Dist: apache-airflow-providers-tabular ; extra == 'tabular'
Provides-Extra: telegram
Requires-Dist: apache-airflow-providers-telegram ; extra == 'telegram'
Provides-Extra: trino
Requires-Dist: apache-airflow-providers-trino ; extra == 'trino'
Provides-Extra: vertica
Requires-Dist: apache-airflow-providers-vertica ; extra == 'vertica'
Provides-Extra: virtualenv
Requires-Dist: virtualenv ; extra == 'virtualenv'
Provides-Extra: webhdfs
Requires-Dist: hdfs[avro,dataframe,kerberos] (>=2.0.4) ; extra == 'webhdfs'
Provides-Extra: winrm
Requires-Dist: apache-airflow-providers-microsoft-winrm ; extra == 'winrm'
Provides-Extra: zendesk
Requires-Dist: apache-airflow-providers-zendesk ; extra == 'zendesk'

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<!-- PLEASE DO NOT MODIFY THIS FILE. IT HAS BEEN GENERATED AUTOMATICALLY FROM THE `README.md` FILE OF THE
PROJECT BY THE `generate-pypi-readme` PRE-COMMIT. YOUR CHANGES HERE WILL BE AUTOMATICALLY OVERWRITTEN.-->

# Apache Airflow

[![PyPI version](https://badge.fury.io/py/apache-airflow.svg)](https://badge.fury.io/py/apache-airflow)
[![GitHub Build](https://github.com/apache/airflow/workflows/CI%20Build/badge.svg)](https://github.com/apache/airflow/actions)
[![Coverage Status](https://codecov.io/github/apache/airflow/coverage.svg?branch=main)](https://app.codecov.io/gh/apache/airflow/branch/main)
[![License](https://img.shields.io/:license-Apache%202-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0.txt)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/apache-airflow.svg)](https://pypi.org/project/apache-airflow/)
[![Docker Pulls](https://img.shields.io/docker/pulls/apache/airflow.svg)](https://hub.docker.com/r/apache/airflow)
[![Docker Stars](https://img.shields.io/docker/stars/apache/airflow.svg)](https://hub.docker.com/r/apache/airflow)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/apache-airflow)](https://pypi.org/project/apache-airflow/)
[![Artifact HUB](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/apache-airflow)](https://artifacthub.io/packages/search?repo=apache-airflow)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Twitter Follow](https://img.shields.io/twitter/follow/ApacheAirflow.svg?style=social&label=Follow)](https://twitter.com/ApacheAirflow)
[![Slack Status](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://s.apache.org/airflow-slack)
[![Contributors](https://img.shields.io/github/contributors/apache/airflow)](https://github.com/apache/airflow/graphs/contributors)
[![OSSRank](https://shields.io/endpoint?url=https://ossrank.com/shield/6)](https://ossrank.com/p/6)

[Apache Airflow](https://airflow.apache.org/docs/apache-airflow/stable/) (or simply Airflow) is a platform to programmatically author, schedule, and monitor workflows.

When workflows are defined as code, they become more maintainable, versionable, testable, and collaborative.

Use Airflow to author workflows as directed acyclic graphs (DAGs) of tasks. The Airflow scheduler executes your tasks on an array of workers while following the specified dependencies. Rich command line utilities make performing complex surgeries on DAGs a snap. The rich user interface makes it easy to visualize pipelines running in production, monitor progress, and troubleshoot issues when needed.

## Requirements

Apache Airflow is tested with:

|             | Main version (dev)           | Stable version (2.7.3) |
|-------------|------------------------------|------------------------|
| Python      | 3.8, 3.9, 3.10, 3.11         | 3.8, 3.9, 3.10, 3.11   |
| Platform    | AMD64/ARM64(\*)              | AMD64/ARM64(\*)        |
| Kubernetes  | 1.24, 1.25, 1.26, 1.27, 1.28 | 1.24, 1.25, 1.26, 1.27 |
| PostgreSQL  | 11, 12, 13, 14, 15           | 11, 12, 13, 14, 15     |
| MySQL       | 5.7, 8.0, 8.1                | 5.7, 8.0               |
| SQLite      | 3.15.0+                      | 3.15.0+                |
| MSSQL       | 2017(\*\*), 2019(\*\*)       | 2017(\*\*), 2019(\*\*) |

\* Experimental

\*\* **Discontinued soon**, not recommended for the new installation

**Note**: MySQL 5.x versions are unable to or have limitations with
running multiple schedulers -- please see the [Scheduler docs](https://airflow.apache.org/docs/apache-airflow/stable/scheduler.html).
MariaDB is not tested/recommended.

**Note**: SQLite is used in Airflow tests. Do not use it in production. We recommend
using the latest stable version of SQLite for local development.

**Note**: Airflow currently can be run on POSIX-compliant Operating Systems. For development, it is regularly
tested on fairly modern Linux Distros and recent versions of macOS.
On Windows you can run it via WSL2 (Windows Subsystem for Linux 2) or via Linux Containers.
The work to add Windows support is tracked via [#10388](https://github.com/apache/airflow/issues/10388), but
it is not a high priority. You should only use Linux-based distros as "Production" execution environment
as this is the only environment that is supported. The only distro that is used in our CI tests and that
is used in the [Community managed DockerHub image](https://hub.docker.com/p/apache/airflow) is
`Debian Bullseye`.

## Getting started

Visit the official Airflow website documentation (latest **stable** release) for help with
[installing Airflow](https://airflow.apache.org/docs/apache-airflow/stable/installation.html),
[getting started](https://airflow.apache.org/docs/apache-airflow/stable/start.html), or walking
through a more complete [tutorial](https://airflow.apache.org/docs/apache-airflow/stable/tutorial.html).

> Note: If you're looking for documentation for the main branch (latest development branch): you can find it on [s.apache.org/airflow-docs](https://s.apache.org/airflow-docs/).

For more information on Airflow Improvement Proposals (AIPs), visit
the [Airflow Wiki](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvement+Proposals).

Documentation for dependent projects like provider packages, Docker image, Helm Chart, you'll find it in [the documentation index](https://airflow.apache.org/docs/).

## Installing from PyPI

We publish Apache Airflow as `apache-airflow` package in PyPI. Installing it however might be sometimes tricky
because Airflow is a bit of both a library and application. Libraries usually keep their dependencies open, and
applications usually pin them, but we should do neither and both simultaneously. We decided to keep
our dependencies as open as possible (in `setup.py`) so users can install different versions of libraries
if needed. This means that `pip install apache-airflow` will not work from time to time or will
produce unusable Airflow installation.

To have repeatable installation, however, we keep a set of "known-to-be-working" constraint
files in the orphan `constraints-main` and `constraints-2-0` branches. We keep those "known-to-be-working"
constraints files separately per major/minor Python version.
You can use them as constraint files when installing Airflow from PyPI. Note that you have to specify
correct Airflow tag/version/branch and Python versions in the URL.


1. Installing just Airflow:

> Note: Only `pip` installation is currently officially supported.

While it is possible to install Airflow with tools like [Poetry](https://python-poetry.org) or
[pip-tools](https://pypi.org/project/pip-tools), they do not share the same workflow as
`pip` - especially when it comes to constraint vs. requirements management.
Installing via `Poetry` or `pip-tools` is not currently supported.

There are known issues with ``bazel`` that might lead to circular dependencies when using it to install
Airflow. Please switch to ``pip`` if you encounter such problems. ``Bazel`` community works on fixing
the problem in `this PR <https://github.com/bazelbuild/rules_python/pull/1166>`_ so it might be that
newer versions of ``bazel`` will handle it.

If you wish to install Airflow using those tools, you should use the constraint files and convert
them to the appropriate format and workflow that your tool requires.


```bash
pip install 'apache-airflow==2.7.3' \
 --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.7.3/constraints-3.8.txt"
```

2. Installing with extras (i.e., postgres, google)

```bash
pip install 'apache-airflow[postgres,google]==2.7.3' \
 --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.7.3/constraints-3.8.txt"
```

For information on installing provider packages, check
[providers](http://airflow.apache.org/docs/apache-airflow-providers/index.html).

## Official source code

Apache Airflow is an [Apache Software Foundation](https://www.apache.org) (ASF) project,
and our official source code releases:

- Follow the [ASF Release Policy](https://www.apache.org/legal/release-policy.html)
- Can be downloaded from [the ASF Distribution Directory](https://downloads.apache.org/airflow)
- Are cryptographically signed by the release manager
- Are officially voted on by the PMC members during the
  [Release Approval Process](https://www.apache.org/legal/release-policy.html#release-approval)

Following the ASF rules, the source packages released must be sufficient for a user to build and test the
release provided they have access to the appropriate platform and tools.

## Contributing

Want to help build Apache Airflow? Check out our [contributing documentation](https://github.com/apache/airflow/blob/main/CONTRIBUTING.rst).

Official Docker (container) images for Apache Airflow are described in [IMAGES.rst](https://github.com/apache/airflow/blob/main/IMAGES.rst).

## Who uses Apache Airflow?

More than 400 organizations are using Apache Airflow
[in the wild](https://github.com/apache/airflow/blob/main/INTHEWILD.md).

## Who maintains Apache Airflow?

Airflow is the work of the [community](https://github.com/apache/airflow/graphs/contributors),
but the [core committers/maintainers](https://people.apache.org/committers-by-project.html#airflow)
are responsible for reviewing and merging PRs as well as steering conversations around new feature requests.
If you would like to become a maintainer, please review the Apache Airflow
[committer requirements](https://github.com/apache/airflow/blob/main/COMMITTERS.rst#guidelines-to-become-an-airflow-committer).


