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

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

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

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

[amundsen]
neo4j~=5.3

[athena]
pyathena~=3.35.4

[atlas]

[azure-sso]
msal~=1.2

[azuresql]
pyodbc~=5.3.0

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

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

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

[cassandra]
cassandra-driver>=3.28.0

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

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

[couchbase]
couchbase~=4.1

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

[data-insight]
elasticsearch8~=8.9.0

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

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

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

[datalake-s3]
avro<1.12,>=1.11.4
s3fs~=2026.3
ijson~=3.4
pyarrow<26,>=23.0.1
cramjam~=2.7
asammdf<8.8,>=8.2
aiobotocore~=2.26.0
numpy<3,>=2
pandas<3,>=2.2.2
boto3~=1.41.5
fastavro>=1.2.0

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

[db2-ibmi]

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

[deltalake]
delta-spark<4.0.0,>=3.0.0
deltalake<0.20,>=0.19.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]
boto3-stubs
isort
presidio-analyzer==2.2.358
pre-commit
build
basedpyright==1.39.3
pandas-stubs~=2.2
datamodel-code-generator==0.64.0
types-requests
twine
uvloop==0.21.0
avro<1.12,>=1.11.4
google-auth-stubs
spacy<3.9,>=3.8.2
grpcio-tools>=1.47.2
pycln
sqlalchemy-bigquery>=1.15.0
mypy-boto3-glue
nox
black==22.3.0
google-api-python-client-stubs
scipy-stubs
pylint~=3.2.0

[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]
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]
rarfile~=4.2
google-cloud-storage>=1.43.0
pyarrow<26,>=23.0.1
pandas<3,>=2.2.2
py7zr~=1.1.0

[glue]
boto3~=1.41.5

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

[great-expectations]
great-expectations==0.18.8

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

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

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

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

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

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

[kafkaconnect]
kafka-connect-py==0.10.11

[kinesis]
boto3~=1.41.5

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

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

[mongo]
pandas<3,>=2.2.2
pymongo~=4.3
numpy<3,>=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]
avro<1.12,>=1.11.4
confluent_kafka<=2.6.1,>=2.1.1
protobuf>=5.29.6
grpcio-tools>=1.47.2
fastavro>=1.2.0

[opensearch]
opensearch-py~=2.4.0

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

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

[pgspider]
psycopg2-binary
sqlalchemy-pgspider

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

[pinotdb]
pinotdb~=5.0

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

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

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

[presidio-analyzer]
presidio-analyzer==2.2.358

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

[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]
avro<1.12,>=1.11.4
confluent_kafka<=2.6.1,>=2.1.1
protobuf>=5.29.6
grpcio-tools>=1.47.2
fastavro>=1.2.0

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

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

[sagemaker]
boto3~=1.41.5

[salesforce]
authlib>=1.6.9
simple_salesforce~=1.11

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

[sap-hana]
sqlalchemy-hana
hdbcli

[sas]

[singlestore]
pymysql~=1.0

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

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

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

[ssrs]
requests-ntlm

[starrocks]
pymysql~=1.0

[superset]

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

[teradata]
teradatasqlalchemy==20.0.0.2

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

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

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

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

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

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