lxml>=6.1.0
memory-profiler
typing-inspect
tenacity<10,>=8.0
requests>=2.23
requests-aws4auth~=1.1
collate-data-diff>=0.11.11
idna>=3.15
antlr4-python3-runtime==4.9.2
python-dateutil>=2.8.1
shapely
collate-sqllineage>=2.1.3
Jinja2>=2.11.3
jaraco.functools<4.2.0
cachetools
jaraco.context>=6.1.0
packaging
Mako>=1.3.12
cryptography>=46.0.5
mypy_extensions>=0.4.3
kubernetes<36,>=21.0.0
sqlalchemy<3,>=2.0.0
setuptools>=78.1.1
cached-property==1.5.2
jsonpatch<2.0,>=1.24
azure-keyvault-secrets
google-cloud-secret-manager==2.24.0
boto3~=1.41.5
pymysql~=1.0
mistune>=3.2.1
PyJWT>=2.12.0
azure-identity~=1.12
chardet==4.0.0
pydantic-settings>=2.7.0,~=2.0
tabulate==0.9.0
python-dotenv>=0.19.0
google-crc32c
PyYAML~=6.0
httpx~=0.28.0
pydantic<2.12,>=2.7.0,~=2.0
importlib-metadata>=4.13.0
email-validator>=2.0
dbt-extractor>=0.5.0

[airflow]
apache-airflow-providers-http>=6.0.0
Werkzeug>=3.0.6
tornado>=6.5.5
apache-airflow-providers-elasticsearch>=6.5.3
apache-airflow==3.2.1
opentelemetry-exporter-otlp==1.37.0
attrs
starlette>=0.49.1
apache-airflow-providers-opensearch>=1.9.1
python-multipart>=0.0.27

[all]
pyOpenSSL>=26.0.0
pure-sasl
sqlalchemy-pgspider
collate-data-diff[mssql]
looker-sdk!=24.18.0,>=22.20.0
numpy<2
collate-data-diff>=0.11.11
grpcio-tools>=1.47.2
exasol-integration-test-docker-environment<4,>=3.1.0
collate-data-diff[snowflake]
google-cloud-monitoring>=2.0.0
confluent_kafka<=2.6.1,>=2.1.1
packaging
neo4j~=5.3
dagster_graphql>=1.8.0
databricks-sdk~=0.20.0
pymongo~=4.3
kubernetes<36,>=21.0.0
pymssql~=2.3.9
cached-property==1.5.2
google-cloud-logging
collate-data-diff[clickhouse]
azure-keyvault-secrets
asammdf~=7.4.5
boto3~=1.41.5
pinotdb~=5.0
scikit-learn<2,>=1.3
collate-data-diff[trino]
py7zr~=1.1.0
trino[sqlalchemy]
google-cloud-bigtable>=2.0.0
chardet==4.0.0
mlflow-skinny<3.13,>=3.11.1
cx_Oracle<9,>=8.3.0
PyYAML~=6.0
cassandra-driver>=3.28.0
GeoAlchemy2~=0.12
sqlalchemy-hana
s3fs~=2026.3
lxml>=6.1.0
psycopg2-binary
memory-profiler
avro<1.12,>=1.11.4
pydomo~=0.3
requests>=2.23
requests-aws4auth~=1.1
validators~=0.22.0
presidio-analyzer==2.2.358
antlr4-python3-runtime==4.9.2
python-dateutil>=2.8.1
protobuf>=5.29.6
jaraco.functools<4.2.0
cachetools
pandas~=2.1.4
sqlalchemy-cockroachdb~=2.0
databricks-sql-connector>=4.0.0
Mako>=1.3.12
pyspark==3.5.6
oracledb~=1.2
mypy_extensions>=0.4.3
sqlalchemy-vertica[vertica-python]>=0.0.5
impyla~=0.18.0
google-cloud-secret-manager==2.24.0
opensearch-py~=2.4.0
collate-dbt-artifacts-parser
pymysql~=1.0
ijson~=3.4
mistune>=3.2.1
requests-ntlm
PyJWT>=2.12.0
azure-storage-blob~=12.14
websocket-client~=1.6.1
gitpython~=3.1.34
pydantic-settings>=2.7.0,~=2.0
thrift-sasl~=0.4
cramjam~=2.7
google-api-python-client>=2.0.0
pyathena~=3.25.0
giturlparse
pyarrow~=16.0
kafka-connect-py==0.10.11
thrift<1,>=0.13
pure-transport==0.2.0
snowflake-sqlalchemy>=1.8.0
adlfs>=2023.1.0
hdbcli
fastavro>=1.2.0
adbc-driver-flightsql
tenacity<10,>=8.0
idna>=3.15
sqlalchemy-redshift~=1.0.0
python-liquid
databricks-sqlalchemy~=2.0.9
google-cloud-pubsub>=2.0.0
cryptography>=46.0.5
croniter<3
authlib>=1.6.9
sqlalchemy<3,>=2.0.0
jsonpatch<2.0,>=1.24
presto-types-parser>=0.0.2
azure-storage-blob
elasticsearch8~=8.9.0
great-expectations~=1.0
gcsfs~=2026.3
azure-identity~=1.12
sqlalchemy-pytds~=0.3
collate-data-diff[mysql]
pyodbc~=5.3.0
collate-data-diff[oracle]
delta-spark<4.0.0,>=3.0.0
google-cloud
dbt-extractor>=0.5.0
email-validator>=2.0
collate-data-diff[vertica]
sqlalchemy-bigquery>=1.15.0
pyasn1>=0.6.3
pyhive[hive_pure_sasl]~=0.7
clickhouse-driver~=0.2
typing-inspect
collate-data-diff[presto]
shapely
collate-sqllineage>=2.1.3
aiobotocore~=2.26.0
Jinja2>=2.11.3
jaraco.context>=6.1.0
ndg-httpsclient~=0.5.1
sqlalchemy_exasol<7,>=6
rarfile~=4.2
clickhouse-sqlalchemy>=0.3
adbc-driver-manager
setuptools>=78.1.1
iomete-sqlalchemy>=1.0.22
google-cloud-storage>=1.43.0
pydruid>=0.6.5
couchbase~=4.1
google-cloud-datacatalog>=3.6.2
impyla[kerberos]~=0.18.0
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0
lkml~=1.3
msal~=1.2
simple_salesforce~=1.11
tabulate==0.9.0
python-dotenv>=0.19.0
tableauserverclient==0.40
google-crc32c
httpx~=0.28.0
deltalake<0.20,>=0.19.0
pydantic<2.12,>=2.7.0,~=2.0
importlib-metadata>=4.13.0
spacy<3.8
teradatasqlalchemy==20.0.0.2

[all-dev-env]
pyOpenSSL>=26.0.0
pure-sasl
sqlalchemy-pgspider
collate-data-diff[mssql]
looker-sdk!=24.18.0,>=22.20.0
numpy<2
collate-data-diff>=0.11.11
grpcio-tools>=1.47.2
exasol-integration-test-docker-environment<4,>=3.1.0
collate-data-diff[snowflake]
google-cloud-monitoring>=2.0.0
confluent_kafka<=2.6.1,>=2.1.1
packaging
neo4j~=5.3
dagster_graphql>=1.8.0
databricks-sdk~=0.20.0
pymongo~=4.3
kubernetes<36,>=21.0.0
cached-property==1.5.2
google-cloud-logging
collate-data-diff[clickhouse]
azure-keyvault-secrets
asammdf~=7.4.5
boto3~=1.41.5
pinotdb~=5.0
scikit-learn<2,>=1.3
collate-data-diff[trino]
py7zr~=1.1.0
trino[sqlalchemy]
google-cloud-bigtable>=2.0.0
chardet==4.0.0
mlflow-skinny<3.13,>=3.11.1
cx_Oracle<9,>=8.3.0
PyYAML~=6.0
cassandra-driver>=3.28.0
GeoAlchemy2~=0.12
sqlalchemy-hana
s3fs~=2026.3
lxml>=6.1.0
psycopg2-binary
memory-profiler
avro<1.12,>=1.11.4
pydomo~=0.3
requests>=2.23
requests-aws4auth~=1.1
validators~=0.22.0
presidio-analyzer==2.2.358
antlr4-python3-runtime==4.9.2
python-dateutil>=2.8.1
protobuf>=5.29.6
jaraco.functools<4.2.0
cachetools
pandas~=2.1.4
sqlalchemy-cockroachdb~=2.0
databricks-sql-connector>=4.0.0
Mako>=1.3.12
pyspark==3.5.6
oracledb~=1.2
mypy_extensions>=0.4.3
sqlalchemy-vertica[vertica-python]>=0.0.5
impyla~=0.18.0
google-cloud-secret-manager==2.24.0
opensearch-py~=2.4.0
collate-dbt-artifacts-parser
pymysql~=1.0
ijson~=3.4
mistune>=3.2.1
requests-ntlm
PyJWT>=2.12.0
azure-storage-blob~=12.14
websocket-client~=1.6.1
gitpython~=3.1.34
pydantic-settings>=2.7.0,~=2.0
thrift-sasl~=0.4
cramjam~=2.7
google-api-python-client>=2.0.0
pyathena~=3.25.0
giturlparse
pyarrow~=16.0
kafka-connect-py==0.10.11
thrift<1,>=0.13
pure-transport==0.2.0
snowflake-sqlalchemy>=1.8.0
adlfs>=2023.1.0
hdbcli
fastavro>=1.2.0
adbc-driver-flightsql
tenacity<10,>=8.0
idna>=3.15
sqlalchemy-redshift~=1.0.0
python-liquid
databricks-sqlalchemy~=2.0.9
google-cloud-pubsub>=2.0.0
cryptography>=46.0.5
croniter<3
authlib>=1.6.9
sqlalchemy<3,>=2.0.0
jsonpatch<2.0,>=1.24
presto-types-parser>=0.0.2
azure-storage-blob
elasticsearch8~=8.9.0
great-expectations~=1.0
gcsfs~=2026.3
azure-identity~=1.12
sqlalchemy-pytds~=0.3
collate-data-diff[mysql]
pyodbc~=5.3.0
collate-data-diff[oracle]
delta-spark<4.0.0,>=3.0.0
google-cloud
dbt-extractor>=0.5.0
email-validator>=2.0
collate-data-diff[vertica]
sqlalchemy-bigquery>=1.15.0
pyasn1>=0.6.3
pyhive[hive_pure_sasl]~=0.7
clickhouse-driver~=0.2
typing-inspect
collate-data-diff[presto]
shapely
collate-sqllineage>=2.1.3
aiobotocore~=2.26.0
Jinja2>=2.11.3
jaraco.context>=6.1.0
ndg-httpsclient~=0.5.1
sqlalchemy_exasol<7,>=6
rarfile~=4.2
clickhouse-sqlalchemy>=0.3
adbc-driver-manager
setuptools>=78.1.1
iomete-sqlalchemy>=1.0.22
google-cloud-storage>=1.43.0
pydruid>=0.6.5
couchbase~=4.1
google-cloud-datacatalog>=3.6.2
impyla[kerberos]~=0.18.0
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0
lkml~=1.3
msal~=1.2
simple_salesforce~=1.11
tabulate==0.9.0
python-dotenv>=0.19.0
tableauserverclient==0.40
google-crc32c
httpx~=0.28.0
deltalake<0.20,>=0.19.0
pydantic<2.12,>=2.7.0,~=2.0
importlib-metadata>=4.13.0
spacy<3.8
teradatasqlalchemy==20.0.0.2

[amundsen]
neo4j~=5.3

[athena]
pyathena~=3.25.0

[atlas]

[azure-sso]
msal~=1.2

[azuresql]
pyodbc~=5.3.0

[backup]
boto3~=1.41.5
azure-identity~=1.12
azure-storage-blob

[bigquery]
numpy<2
google-cloud-datacatalog>=3.6.2
pyarrow~=16.0
sqlalchemy-bigquery>=1.15.0
google-cloud-logging

[bigtable]
pandas~=2.1.4
google-cloud-bigtable>=2.0.0
numpy<2

[cassandra]
cassandra-driver>=3.28.0

[clickhouse]
clickhouse-sqlalchemy>=0.3
collate-data-diff[clickhouse]
clickhouse-driver~=0.2

[cockroach]
psycopg2-binary
sqlalchemy-cockroachdb~=2.0

[couchbase]
couchbase~=4.1

[dagster]
psycopg2-binary
pymysql~=1.0
dagster_graphql>=1.8.0
GeoAlchemy2~=0.12
croniter<3

[data-insight]
elasticsearch8~=8.9.0

[databricks]
pyOpenSSL>=26.0.0
ndg-httpsclient~=0.5.1
databricks-sql-connector>=4.0.0
databricks-sdk~=0.20.0
databricks-sqlalchemy~=2.0.9
pyasn1>=0.6.3

[datalake-azure]
adlfs>=2023.1.0
asammdf~=7.4.5
pandas~=2.1.4
boto3~=1.41.5
cramjam~=2.7
fastavro>=1.2.0
numpy<2
avro<1.12,>=1.11.4
aiobotocore~=2.26.0
ijson~=3.4
pyarrow~=16.0
azure-identity~=1.12
azure-storage-blob~=12.14

[datalake-gcs]
google-cloud-storage>=1.43.0
asammdf~=7.4.5
pandas~=2.1.4
boto3~=1.41.5
cramjam~=2.7
fastavro>=1.2.0
numpy<2
avro<1.12,>=1.11.4
ijson~=3.4
pyarrow~=16.0
gcsfs~=2026.3
aiobotocore~=2.26.0
google-cloud-monitoring>=2.0.0

[datalake-s3]
s3fs~=2026.3
asammdf~=7.4.5
pandas~=2.1.4
boto3~=1.41.5
cramjam~=2.7
fastavro>=1.2.0
numpy<2
avro<1.12,>=1.11.4
ijson~=3.4
pyarrow~=16.0
aiobotocore~=2.26.0

[db2]
ibm-db-sa~=0.4.1
ibm-db>=3.2.6

[db2-ibmi]

[dbt]
google-cloud-storage>=1.43.0
boto3~=1.41.5
collate-dbt-artifacts-parser
google-cloud
azure-identity~=1.12
azure-storage-blob~=12.14

[deltalake]
deltalake<0.20,>=0.19.0
delta-spark<4.0.0,>=3.0.0
pyspark==3.5.6

[deltalake-spark]
delta-spark<4.0.0,>=3.0.0
pyspark==3.5.6

[deltalake-storage]
deltalake<0.20,>=0.19.0

[dev]
black==22.3.0
isort
nox
build
sqlalchemy-bigquery>=1.15.0
mypy-boto3-glue
pylint~=3.2.0
avro<1.12,>=1.11.4
boto3-stubs
basedpyright~=1.39.0
spacy<3.8
pre-commit
pycln
twine
datamodel-code-generator==0.25.6
uvloop==0.21.0
presidio-analyzer==2.2.358
grpcio-tools>=1.47.2

[docs]
griffe2md~=1.2

[domo]
pydomo~=0.3

[doris]

[druid]
pydruid>=0.6.5

[dynamodb]
boto3~=1.41.5

[e2e_test]
pytest-base-url
pytest-playwright

[elasticsearch]
elasticsearch8~=8.9.0

[exasol]
sqlalchemy_exasol<7,>=6
exasol-integration-test-docker-environment<4,>=3.1.0

[gcs]
google-cloud-storage>=1.43.0
pyarrow~=16.0
py7zr~=1.1.0
pandas~=2.1.4
rarfile~=4.2

[glue]
boto3~=1.41.5

[googledrive]
google-api-python-client>=2.0.0

[great-expectations]
great-expectations~=0.18.0

[great-expectations-1xx]
great-expectations~=1.0

[greenplum]
psycopg2-binary
GeoAlchemy2~=0.12
pymysql~=1.0
packaging

[hive]
pure-sasl
presto-types-parser>=0.0.2
thrift-sasl~=0.4
impyla~=0.18.0
thrift<1,>=0.13
pyhive[hive_pure_sasl]~=0.7
pure-transport==0.2.0

[impala]
impyla[kerberos]~=0.18.0
pure-sasl
thrift<1,>=0.13
presto-types-parser>=0.0.2
thrift-sasl~=0.4

[iomete]
adbc-driver-manager
adbc-driver-flightsql
iomete-sqlalchemy>=1.0.22

[kafka]
confluent_kafka<=2.6.1,>=2.1.1
protobuf>=5.29.6
fastavro>=1.2.0
grpcio-tools>=1.47.2
avro<1.12,>=1.11.4

[kafkaconnect]
kafka-connect-py==0.10.11

[kinesis]
boto3~=1.41.5

[looker]
gitpython~=3.1.34
looker-sdk!=24.18.0,>=22.20.0
giturlparse
python-liquid
lkml~=1.3

[mlflow]
mlflow-skinny<3.13,>=3.11.1

[mongo]
pandas~=2.1.4
pymongo~=4.3
numpy<2

[mssql]
collate-data-diff[mssql]
sqlalchemy-pytds~=0.3

[mssql-odbc]
pyodbc~=5.3.0
collate-data-diff[mssql]

[mysql]
collate-data-diff[mysql]
pymysql~=1.0
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0

[nifi]

[openlineage]
confluent_kafka<=2.6.1,>=2.1.1
protobuf>=5.29.6
fastavro>=1.2.0
grpcio-tools>=1.47.2
avro<1.12,>=1.11.4

[opensearch]
opensearch-py~=2.4.0

[oracle]
cx_Oracle<9,>=8.3.0
collate-data-diff[oracle]
oracledb~=1.2

[pandas]
pandas~=2.1.4
numpy<2

[pgspider]
psycopg2-binary
sqlalchemy-pgspider

[pii-processor]
pandas~=2.1.4
presidio-analyzer==2.2.358
numpy<2
spacy<3.8

[pinotdb]
pinotdb~=5.0

[playwright]
snowflake-sqlalchemy>=1.8.0
s3fs~=2026.3
psycopg2-binary
fastavro>=1.2.0
numpy<2
avro<1.12,>=1.11.4
apache-airflow==3.2.1
opentelemetry-exporter-otlp==1.37.0
presidio-analyzer==2.2.358
sqlalchemy-redshift~=1.0.0
protobuf>=5.29.6
aiobotocore~=2.26.0
grpcio-tools>=1.47.2
collate-data-diff[snowflake]
confluent_kafka<=2.6.1,>=2.1.1
pandas~=2.1.4
packaging
attrs
pytest-base-url
python-multipart>=0.0.27
google-cloud-logging
google-cloud-storage>=1.43.0
Werkzeug>=3.0.6
tornado>=6.5.5
asammdf~=7.4.5
boto3~=1.41.5
collate-dbt-artifacts-parser
pymysql~=1.0
ijson~=3.4
google-cloud-datacatalog>=3.6.2
starlette>=0.49.1
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0
pytest-playwright
azure-identity~=1.12
azure-storage-blob~=12.14
mlflow-skinny<3.13,>=3.11.1
apache-airflow-providers-http>=6.0.0
collate-data-diff[mysql]
cramjam~=2.7
apache-airflow-providers-elasticsearch>=6.5.3
pyarrow~=16.0
GeoAlchemy2~=0.12
apache-airflow-providers-opensearch>=1.9.1
google-cloud
sqlalchemy-bigquery>=1.15.0

[postgres]
psycopg2-binary
GeoAlchemy2~=0.12
pymysql~=1.0
packaging

[powerbi]
google-cloud-storage>=1.43.0
boto3~=1.41.5
azure-identity~=1.12
azure-storage-blob~=12.14
msal~=1.2

[presidio-analyzer]
presidio-analyzer==2.2.358

[presto]
pyhive[hive_pure_sasl]~=0.7
presto-types-parser>=0.0.2
collate-data-diff[presto]
pure-transport==0.2.0

[pubsub]
google-cloud-pubsub>=2.0.0

[pyarrow]
pyarrow~=16.0

[pymssql]
pymssql~=2.3.9

[qliksense]
websocket-client~=1.6.1

[questdb]
psycopg2-binary

[quicksight]
boto3~=1.41.5

[redash]
packaging

[redpanda]
confluent_kafka<=2.6.1,>=2.1.1
protobuf>=5.29.6
fastavro>=1.2.0
grpcio-tools>=1.47.2
avro<1.12,>=1.11.4

[redshift]
psycopg2-binary
GeoAlchemy2~=0.12
sqlalchemy-redshift~=1.0.0

[s3]
pandas~=2.1.4
pyarrow~=16.0
rarfile~=4.2
py7zr~=1.1.0

[sagemaker]
boto3~=1.41.5

[salesforce]
simple_salesforce~=1.11
authlib>=1.6.9

[sample-data]
avro<1.12,>=1.11.4
presidio-analyzer==2.2.358
spacy<3.8
grpcio-tools>=1.47.2
sqlalchemy-bigquery>=1.15.0

[sap-hana]
hdbcli
sqlalchemy-hana

[sas]

[singlestore]
pymysql~=1.0

[sklearn]
scikit-learn<2,>=1.3

[slim]
snowflake-sqlalchemy>=1.8.0
adlfs>=2023.1.0
hdbcli
pyOpenSSL>=26.0.0
pure-sasl
sqlalchemy-pgspider
collate-data-diff[mssql]
fastavro>=1.2.0
adbc-driver-flightsql
numpy<2
tenacity<10,>=8.0
looker-sdk!=24.18.0,>=22.20.0
collate-data-diff>=0.11.11
idna>=3.15
sqlalchemy-redshift~=1.0.0
python-liquid
databricks-sqlalchemy~=2.0.9
exasol-integration-test-docker-environment<4,>=3.1.0
grpcio-tools>=1.47.2
google-cloud-monitoring>=2.0.0
collate-data-diff[snowflake]
confluent_kafka<=2.6.1,>=2.1.1
google-cloud-pubsub>=2.0.0
packaging
neo4j~=5.3
cryptography>=46.0.5
dagster_graphql>=1.8.0
databricks-sdk~=0.20.0
pymongo~=4.3
kubernetes<36,>=21.0.0
croniter<3
sqlalchemy<3,>=2.0.0
pymssql~=2.3.9
authlib>=1.6.9
cached-property==1.5.2
google-cloud-logging
collate-data-diff[clickhouse]
jsonpatch<2.0,>=1.24
azure-keyvault-secrets
presto-types-parser>=0.0.2
azure-storage-blob
asammdf~=7.4.5
boto3~=1.41.5
elasticsearch8~=8.9.0
great-expectations~=1.0
pinotdb~=5.0
collate-data-diff[trino]
py7zr~=1.1.0
gcsfs~=2026.3
trino[sqlalchemy]
azure-identity~=1.12
google-cloud-bigtable>=2.0.0
chardet==4.0.0
sqlalchemy-pytds~=0.3
mlflow-skinny<3.13,>=3.11.1
collate-data-diff[mysql]
cx_Oracle<9,>=8.3.0
pyodbc~=5.3.0
collate-data-diff[oracle]
PyYAML~=6.0
cassandra-driver>=3.28.0
GeoAlchemy2~=0.12
google-cloud
dbt-extractor>=0.5.0
email-validator>=2.0
sqlalchemy-hana
collate-data-diff[vertica]
sqlalchemy-bigquery>=1.15.0
pyasn1>=0.6.3
pyhive[hive_pure_sasl]~=0.7
s3fs~=2026.3
lxml>=6.1.0
clickhouse-driver~=0.2
psycopg2-binary
memory-profiler
typing-inspect
collate-data-diff[presto]
avro<1.12,>=1.11.4
pydomo~=0.3
requests>=2.23
requests-aws4auth~=1.1
validators~=0.22.0
presidio-analyzer==2.2.358
antlr4-python3-runtime==4.9.2
python-dateutil>=2.8.1
shapely
collate-sqllineage>=2.1.3
aiobotocore~=2.26.0
protobuf>=5.29.6
Jinja2>=2.11.3
jaraco.functools<4.2.0
cachetools
jaraco.context>=6.1.0
ndg-httpsclient~=0.5.1
sqlalchemy_exasol<7,>=6
pandas~=2.1.4
rarfile~=4.2
databricks-sql-connector>=4.0.0
Mako>=1.3.12
sqlalchemy-cockroachdb~=2.0
oracledb~=1.2
clickhouse-sqlalchemy>=0.3
mypy_extensions>=0.4.3
adbc-driver-manager
setuptools>=78.1.1
iomete-sqlalchemy>=1.0.22
google-cloud-storage>=1.43.0
pydruid>=0.6.5
couchbase~=4.1
sqlalchemy-vertica[vertica-python]>=0.0.5
impyla~=0.18.0
google-cloud-secret-manager==2.24.0
opensearch-py~=2.4.0
collate-dbt-artifacts-parser
pymysql~=1.0
ijson~=3.4
mistune>=3.2.1
google-cloud-datacatalog>=3.6.2
impyla[kerberos]~=0.18.0
requests-ntlm
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0
PyJWT>=2.12.0
lkml~=1.3
azure-storage-blob~=12.14
msal~=1.2
websocket-client~=1.6.1
simple_salesforce~=1.11
gitpython~=3.1.34
pydantic-settings>=2.7.0,~=2.0
tabulate==0.9.0
python-dotenv>=0.19.0
thrift-sasl~=0.4
cramjam~=2.7
google-api-python-client>=2.0.0
tableauserverclient==0.40
pyathena~=3.25.0
google-crc32c
httpx~=0.28.0
giturlparse
pyarrow~=16.0
deltalake<0.20,>=0.19.0
thrift<1,>=0.13
kafka-connect-py==0.10.11
pydantic<2.12,>=2.7.0,~=2.0
importlib-metadata>=4.13.0
spacy<3.8
teradatasqlalchemy==20.0.0.2
pure-transport==0.2.0

[snowflake]
snowflake-sqlalchemy>=1.8.0
collate-data-diff[snowflake]

[ssrs]
requests-ntlm

[starrocks]
pymysql~=1.0

[superset]

[tableau]
packaging
validators~=0.22.0
tableauserverclient==0.40

[teradata]
teradatasqlalchemy==20.0.0.2

[test]
snowflake-sqlalchemy>=1.8.0
sqlalchemy-pgspider
collate-data-diff[mssql]
fastavro>=1.2.0
looker-sdk!=24.18.0,>=22.20.0
numpy<2
pytest-order
faker==37.1.0
boto3-stubs
opentelemetry-exporter-otlp==1.37.0
python-liquid
kafka-python==2.0.2
grpcio-tools>=1.47.2
exasol-integration-test-docker-environment<4,>=3.1.0
google-cloud-monitoring>=2.0.0
confluent_kafka<=2.6.1,>=2.1.1
neo4j~=5.3
databricks-sdk~=0.20.0
dagster_graphql>=1.8.0
pymongo~=4.3
croniter<3
google-cloud-logging
collate-data-diff[clickhouse]
factory-boy~=3.3.3
asammdf~=7.4.5
elasticsearch8~=8.9.0
boto3~=1.41.5
great-expectations~=0.18.0
freezegun
pytest-cov
scikit-learn<2,>=1.3
locust~=2.32.0
coverage
gcsfs~=2026.3
trino[sqlalchemy]
google-cloud-bigtable>=2.0.0
sqlalchemy-pytds~=0.3
mlflow-skinny<3.13,>=3.11.1
collate-data-diff[mysql]
cx_Oracle<9,>=8.3.0
collate-data-diff[oracle]
cassandra-driver>=3.28.0
delta-spark<4.0.0,>=3.0.0
GeoAlchemy2~=0.12
minio==7.2.5
sqlalchemy-bigquery>=1.15.0
pyhive[hive_pure_sasl]~=0.7
s3fs~=2026.3
requests<3,>=2.31.0
clickhouse-driver~=0.2
psycopg2-binary
dirty-equals
avro<1.12,>=1.11.4
apache-airflow==3.2.1
pydomo~=0.3
validators~=0.22.0
presidio-analyzer==2.2.358
protobuf>=5.29.6
aiobotocore~=2.26.0
sqlalchemy_exasol<7,>=6
pandas~=2.1.4
sqlalchemy-cockroachdb~=2.0
databricks-sql-connector>=4.0.0
pyspark==3.5.6
oracledb~=1.2
clickhouse-sqlalchemy>=0.3
google-cloud-storage>=1.43.0
pytest==7.0.1
mypy-boto3-glue
opensearch-py~=2.4.0
collate-dbt-artifacts-parser
pytest-xdist~=3.5
pymysql~=1.0
ijson~=3.4
google-cloud-datacatalog>=3.6.2
lkml~=1.3
tableauserverclient==0.40
cramjam~=2.7
giturlparse
pyathena~=3.25.0
pyarrow~=16.0
deltalake<0.20,>=0.19.0
kafka-connect-py==0.10.11
spacy<3.8
teradatasqlalchemy==20.0.0.2

[test-unit]
factory-boy~=3.3.3
sqlalchemy_exasol<7,>=6
pytest==7.0.1
testcontainers
faker==37.1.0
pytest-order
dirty-equals
pytest-cov
teradatasqlalchemy==20.0.0.2
pytest-rerunfailures
exasol-integration-test-docker-environment<4,>=3.1.0

[test:python_version < "3.9"]
testcontainers==3.7.1

[test:python_version >= "3.9"]
testcontainers~=4.8.0

[trino]
trino[sqlalchemy]
collate-data-diff[trino]

[vertica]
sqlalchemy-vertica[vertica-python]>=0.0.5
collate-data-diff[vertica]
