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

[airflow]
attrs
apache-airflow-providers-opensearch>=1.9.1
elasticsearch<9,>=8.10
apache-airflow-providers-http>=6.0.0
python-multipart>=0.0.31
opentelemetry-exporter-otlp==1.37.0
apache-airflow==3.3.1
pygtrie<2.6
starlette>=0.49.1
apache-airflow-providers-elasticsearch>=6.5.3
Werkzeug>=3.0.6
tornado>=6.5.7

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

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

[amundsen]
neo4j~=5.3

[athena]
pyathena~=3.35.4

[atlas]

[azure-sso]
msal~=1.2

[azuresql]
pyodbc~=5.3.0

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

[bigquery]
google-cloud-datacatalog>=3.6.2
google-cloud-logging
pyarrow<26,>=23.0.1
sqlalchemy-bigquery>=1.15.0
numpy<3,>=2

[bigtable]
pandas<3,>=2.2.2
numpy<3,>=2
google-cloud-bigtable>=2.0.0

[cassandra]
cassandra-driver>=3.28.0

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

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

[couchbase]
couchbase~=4.1

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

[data-insight]
elasticsearch8~=8.9.0

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

[datalake-azure]
pandas<3,>=2.2.2
azure-storage-blob~=12.14
cramjam~=2.7
avro<1.12,>=1.11.4
ijson~=3.4
numpy<3,>=2
asammdf<8.8,>=8.2
boto3~=1.41.5
azure-identity~=1.12
adlfs>=2023.1.0
pyarrow<26,>=23.0.1
fastavro>=1.2.0
aiobotocore~=2.26.0

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

[datalake-s3]
pandas<3,>=2.2.2
s3fs~=2026.3
ijson~=3.4
cramjam~=2.7
avro<1.12,>=1.11.4
asammdf<8.8,>=8.2
boto3~=1.41.5
numpy<3,>=2
pyarrow<26,>=23.0.1
fastavro>=1.2.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
collate-dbt-artifacts-parser
azure-storage-blob~=12.14
google-cloud
boto3~=1.41.5
azure-identity~=1.12

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

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

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

[dev]
ruff~=0.15.12
mypy-boto3-glue
presidio-analyzer==2.2.358
twine
build
pre-commit
google-api-python-client-stubs
sqlalchemy-bigquery>=1.15.0
uvloop==0.21.0
pandas-stubs~=2.2
spacy<3.9,>=3.8.2
google-auth-stubs
nox
avro<1.12,>=1.11.4
scipy-stubs
basedpyright==1.39.3
boto3-stubs
grpcio-tools>=1.47.2
datamodel-code-generator==0.64.0
types-requests

[docs]
griffe2md~=1.2

[domo]
pydomo~=0.3

[doris]
pydoris==1.2.0

[druid]
pydruid>=0.6.5

[dynamodb]
boto3~=1.41.5

[e2e_test]
luigi<=3.6.0,>=2.8.4
exasol-integration-test-docker-environment<7,>=6.0.0
pytest-base-url
pytest-playwright
sqlalchemy_exasol<8,>=7.1.1

[elasticsearch]
elasticsearch8~=8.9.0

[exasol]
sqlalchemy_exasol<8,>=7.1.1

[exasol-test]
luigi<=3.6.0,>=2.8.4
exasol-integration-test-docker-environment<7,>=6.0.0

[gcs]
pandas<3,>=2.2.2
google-cloud-storage>=1.43.0
py7zr~=1.1.0
rarfile~=4.2
pyarrow<26,>=23.0.1

[glue]
boto3~=1.41.5

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

[great-expectations]
great-expectations~=1.3

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

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

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

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

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

[kafkaconnect]
kafka-connect-py==0.10.11

[kinesis]
boto3~=1.41.5

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

[mlflow]
mlflow-skinny<3.15,>=3.13.0

[mongo]
pandas<3,>=2.2.2
numpy<3,>=2
pymongo~=4.3

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

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

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

[nifi]

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

[opensearch]
opensearch-py~=2.4.0

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

[pandas]
pandas<3,>=2.2.2
numpy<3,>=2

[pgspider]
sqlalchemy-pgspider
psycopg2-binary

[pii-processor]
pandas<3,>=2.2.2
presidio-analyzer==2.2.358
spacy<3.9,>=3.8.2
numpy<3,>=2

[pinotdb]
pinotdb~=5.0

[playwright]
collate-data-diff[snowflake]
google-cloud-datacatalog>=3.6.2
google-cloud-storage>=1.43.0
presidio-analyzer==2.2.358
mlflow-skinny<3.15,>=3.13.0
protobuf>=5.29.6
elasticsearch<9,>=8.10
apache-airflow-providers-http>=6.0.0
cramjam~=2.7
asammdf<8.8,>=8.2
exasol-integration-test-docker-environment<7,>=6.0.0
snowflake-sqlalchemy>=1.8.0
apache-airflow-providers-elasticsearch>=6.5.3
Werkzeug>=3.0.6
ijson~=3.4
sqlalchemy-bigquery>=1.15.0
numpy<3,>=2
apache-airflow-providers-opensearch>=1.9.1
s3fs~=2026.3
sqlalchemy-redshift~=1.0.0
avro<1.12,>=1.11.4
cloud-sql-python-connector[pymysql]<2.0.0,>=1.0.0
python-multipart>=0.0.31
sqlalchemy_exasol<8,>=7.1.1
luigi<=3.6.0,>=2.8.4
apache-airflow==3.3.1
grpcio-tools>=1.47.2
confluent_kafka<=2.6.1,>=2.1.1
azure-identity~=1.12
pyarrow<26,>=23.0.1
fastavro>=1.2.0
packaging
pandas<3,>=2.2.2
pytest-base-url
psycopg2-binary
pytest-playwright
azure-storage-blob~=12.14
google-cloud
pygtrie<2.6
collate-data-diff[mysql]
tornado>=6.5.7
aiobotocore~=2.26.0
attrs
collate-dbt-artifacts-parser
google-cloud-logging
opentelemetry-exporter-otlp==1.37.0
starlette>=0.49.1
boto3~=1.41.5
pymysql~=1.0
GeoAlchemy2~=0.12

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

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

[prefect]

[presidio-analyzer]
presidio-analyzer==2.2.358

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

[pubsub]
google-cloud-pubsub>=2.0.0

[pyarrow]
pyarrow<26,>=23.0.1

[pymssql]
pymssql~=2.3.9

[qliksense]
websocket-client~=1.6.1

[questdb]
psycopg2-binary

[quicksight]
boto3~=1.41.5

[redash]
packaging

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

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

[s3]
pyarrow<26,>=23.0.1
pandas<3,>=2.2.2
py7zr~=1.1.0
rarfile~=4.2

[sagemaker]
boto3~=1.41.5

[salesforce]
authlib>=1.6.9
simple_salesforce~=1.11

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

[sap-hana]
hdbcli
sqlalchemy-hana

[sas]

[sftp]
paramiko<6,>=3.5

[singlestore]
pymysql~=1.0

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

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

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

[ssrs]
requests-ntlm

[starrocks]
pymysql~=1.0

[superset]

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

[teradata]
teradatasqlalchemy==20.0.0.2

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

[test-unit]
testcontainers
dirty-equals
pytest==7.0.1
factory-boy~=3.3.3
faker==37.1.0
pytest-rerunfailures
sqlalchemy_exasol<8,>=7.1.1
pytest-cov
pytest-order
pytest-timeout~=2.4
teradatasqlalchemy==20.0.0.2

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

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