email-validator>=2.0
tabulate==0.9.0
PyYAML~=6.0
azure-identity~=1.12
shapely
importlib-metadata>=4.13.0
google-cloud-secret-manager==2.24.0
kubernetes>=21.0.0
jaraco.functools<4.2.0
pydantic<2.12,>=2.7.0,~=2.0
packaging
httpx~=0.28.0
google-crc32c
requests-aws4auth~=1.1
snowflake-connector-python~=3.18.0
jaraco.context==6.0.1
collate-data-diff>=0.11.9
pymysql~=1.0
Jinja2>=2.11.3
python-dateutil>=2.8.1
boto3~=1.41.5
jsonpatch<2.0,>=1.24
cached-property==1.5.2
cryptography>=42.0.0
memory-profiler
collate-sqllineage>=2.1.1
setuptools<81,>=78.1.1
python-dotenv>=0.19.0
pydantic-settings>=2.7.0,~=2.0
sqlalchemy<2,>=1.4.0
dbt-extractor>=0.5.0
azure-keyvault-secrets
mypy_extensions>=0.4.3
requests>=2.23
typing-inspect
antlr4-python3-runtime==4.9.2
chardet==4.0.0

[:python_version < "3.9"]
mysql-connector-python>=8.0.29

[:python_version >= "3.9"]
mysql-connector-python>=9.1

[airflow]
apache-airflow==3.1.5
opentelemetry-exporter-otlp==1.37.0
attrs

[all]
adlfs>=2023.1.0
email-validator>=2.0
pydomo~=0.3
google-cloud-logging
sqlalchemy-pgspider
snowflake-sqlalchemy~=1.4
presidio-analyzer==2.2.358
pymongo~=4.3
giturlparse
cassandra-driver>=3.28.0
collate-data-diff[presto]
azure-storage-blob
pydruid>=0.6.5
kubernetes>=21.0.0
msal~=1.2
pinotdb~=5.0
sqlalchemy_exasol<6,>=5
delta-spark<4.0.0,>=3.0.0
pydantic<2.12,>=2.7.0,~=2.0
protobuf
simple_salesforce~=1.11
validators~=0.22.0
requests-aws4auth~=1.1
avro<1.12,>=1.11.4
pyarrow~=16.0
aiobotocore~=2.26.0
gitpython~=3.1.34
impyla[kerberos]~=0.18.0
GeoAlchemy2~=0.12
asammdf~=7.4.5
pymysql~=1.0
psycopg2-binary
ndg-httpsclient~=0.5.1
websocket-client~=1.6.1
python-dateutil>=2.8.1
boto3~=1.41.5
exasol-integration-test-docker-environment<4,>=3.1.0
pandas~=2.0.3
jsonpatch<2.0,>=1.24
pure-sasl
cryptography>=42.0.0
memory-profiler
sqlalchemy-pytds~=0.3
oracledb~=1.2
python-dotenv>=0.19.0
pyOpenSSL~=24.1.0
impyla~=0.18.0
collate-data-diff[snowflake]
sqlalchemy<2,>=1.4.0
google-cloud-datacatalog>=3.6.2
dbt-extractor>=0.5.0
ijson~=3.4
sqlalchemy-ibmi~=0.9.3
spacy<3.8
numpy<2
google-cloud
mypy_extensions>=0.4.3
teradatasqlalchemy==20.0.0.2
fastavro>=1.2.0
opensearch-py~=2.4.0
requests>=2.23
s3fs~=2023.12.1
python-liquid
typing-inspect
httpx~=0.28.0
pyathena~=3.25.0
pydantic-settings>=2.7.0,~=2.0
chardet==4.0.0
great-expectations~=1.0
pyhive[hive_pure_sasl]~=0.7
grpcio-tools>=1.47.2
authlib>=1.3.1
tabulate==0.9.0
databricks-sdk~=0.20.0
PyYAML~=6.0
neo4j~=5.3
azure-identity~=1.12
shapely
sqlalchemy-bigquery~=1.15.0
cachetools
collate-data-diff[vertica]
importlib-metadata>=4.13.0
collate-data-diff[trino]
google-cloud-secret-manager==2.24.0
cx_Oracle<9,>=8.3.0
pymssql~=2.3.9
sqlalchemy-redshift==0.8.12
collate-data-diff[mssql]
requests-ntlm
jaraco.functools<4.2.0
tableauserverclient==0.25
google-cloud-storage>=1.43.0
sqlalchemy-cockroachdb~=2.0
deltalake<0.20,>=0.19.0
packaging
google-crc32c
snowflake-connector-python~=3.18.0
jaraco.context==6.0.1
collate-data-diff>=0.11.9
collate-data-diff[clickhouse]
Jinja2>=2.11.3
pyodbc<5,>=4.0.35
kafka-connect-py==0.10.11
thrift-sasl~=0.4
croniter<3
mlflow-skinny~=3.6.0
collate-data-diff[mysql]
clickhouse-driver~=0.2
azure-storage-blob~=12.14
google-cloud-monitoring>=2.0.0
hdbcli
pydoris-custom<1.5,>=1.0.2
cached-property==1.5.2
thrift<1,>=0.13
google-cloud-bigtable>=2.0.0
lkml~=1.3
cramjam~=2.7
pyiceberg==0.5.1
collate-sqllineage>=2.1.1
setuptools<81,>=78.1.1
clickhouse-sqlalchemy~=0.2.0
elasticsearch8~=8.9.0
trino[sqlalchemy]
pyasn1~=0.6.0
sqlalchemy-hana
collate-dbt-artifacts-parser
looker-sdk!=24.18.0,>=22.20.0
pyspark==3.5.6
collate-data-diff[oracle]
presto-types-parser>=0.0.2
pure-transport==0.2.0
azure-keyvault-secrets
confluent_kafka<=2.6.1,>=2.1.1
scikit-learn~=1.0
sqlalchemy-vertica[vertica-python]>=0.0.5
dagster_graphql>=1.8.0
sqlalchemy-databricks~=0.1
gcsfs~=2023.12.1
couchbase~=4.1
antlr4-python3-runtime==4.9.2

[all-dev-env]
adlfs>=2023.1.0
email-validator>=2.0
pydomo~=0.3
google-cloud-logging
sqlalchemy-pgspider
snowflake-sqlalchemy~=1.4
presidio-analyzer==2.2.358
pymongo~=4.3
giturlparse
cassandra-driver>=3.28.0
collate-data-diff[presto]
azure-storage-blob
pydruid>=0.6.5
kubernetes>=21.0.0
msal~=1.2
pinotdb~=5.0
sqlalchemy_exasol<6,>=5
delta-spark<4.0.0,>=3.0.0
pydantic<2.12,>=2.7.0,~=2.0
protobuf
simple_salesforce~=1.11
validators~=0.22.0
requests-aws4auth~=1.1
avro<1.12,>=1.11.4
pyarrow~=16.0
aiobotocore~=2.26.0
gitpython~=3.1.34
impyla[kerberos]~=0.18.0
GeoAlchemy2~=0.12
asammdf~=7.4.5
pymysql~=1.0
psycopg2-binary
ndg-httpsclient~=0.5.1
websocket-client~=1.6.1
python-dateutil>=2.8.1
boto3~=1.41.5
exasol-integration-test-docker-environment<4,>=3.1.0
pandas~=2.0.3
jsonpatch<2.0,>=1.24
pure-sasl
cryptography>=42.0.0
memory-profiler
sqlalchemy-pytds~=0.3
oracledb~=1.2
python-dotenv>=0.19.0
pyOpenSSL~=24.1.0
impyla~=0.18.0
collate-data-diff[snowflake]
sqlalchemy<2,>=1.4.0
google-cloud-datacatalog>=3.6.2
dbt-extractor>=0.5.0
ijson~=3.4
sqlalchemy-ibmi~=0.9.3
spacy<3.8
numpy<2
google-cloud
mypy_extensions>=0.4.3
teradatasqlalchemy==20.0.0.2
fastavro>=1.2.0
opensearch-py~=2.4.0
requests>=2.23
s3fs~=2023.12.1
python-liquid
typing-inspect
httpx~=0.28.0
pyathena~=3.25.0
pydantic-settings>=2.7.0,~=2.0
chardet==4.0.0
great-expectations~=1.0
pyhive[hive_pure_sasl]~=0.7
grpcio-tools>=1.47.2
authlib>=1.3.1
tabulate==0.9.0
databricks-sdk~=0.20.0
PyYAML~=6.0
neo4j~=5.3
azure-identity~=1.12
shapely
sqlalchemy-bigquery~=1.15.0
cachetools
collate-data-diff[vertica]
importlib-metadata>=4.13.0
collate-data-diff[trino]
google-cloud-secret-manager==2.24.0
cx_Oracle<9,>=8.3.0
sqlalchemy-redshift==0.8.12
requests-ntlm
collate-data-diff[mssql]
tableauserverclient==0.25
jaraco.functools<4.2.0
google-cloud-storage>=1.43.0
sqlalchemy-cockroachdb~=2.0
deltalake<0.20,>=0.19.0
packaging
google-crc32c
snowflake-connector-python~=3.18.0
jaraco.context==6.0.1
collate-data-diff>=0.11.9
collate-data-diff[clickhouse]
Jinja2>=2.11.3
pyodbc<5,>=4.0.35
kafka-connect-py==0.10.11
thrift-sasl~=0.4
croniter<3
mlflow-skinny~=3.6.0
collate-data-diff[mysql]
clickhouse-driver~=0.2
azure-storage-blob~=12.14
google-cloud-monitoring>=2.0.0
hdbcli
pydoris-custom<1.5,>=1.0.2
cached-property==1.5.2
thrift<1,>=0.13
google-cloud-bigtable>=2.0.0
lkml~=1.3
cramjam~=2.7
pyiceberg==0.5.1
collate-sqllineage>=2.1.1
setuptools<81,>=78.1.1
clickhouse-sqlalchemy~=0.2.0
elasticsearch8~=8.9.0
trino[sqlalchemy]
pyasn1~=0.6.0
sqlalchemy-hana
collate-dbt-artifacts-parser
looker-sdk!=24.18.0,>=22.20.0
pyspark==3.5.6
collate-data-diff[oracle]
presto-types-parser>=0.0.2
pure-transport==0.2.0
azure-keyvault-secrets
confluent_kafka<=2.6.1,>=2.1.1
scikit-learn~=1.0
sqlalchemy-vertica[vertica-python]>=0.0.5
dagster_graphql>=1.8.0
sqlalchemy-databricks~=0.1
gcsfs~=2023.12.1
couchbase~=4.1
antlr4-python3-runtime==4.9.2

[all-dev-env:python_version < "3.9"]
mysql-connector-python>=8.0.29

[all-dev-env:python_version >= "3.9"]
mysql-connector-python>=9.1

[all:python_version < "3.9"]
mysql-connector-python>=8.0.29

[all:python_version >= "3.9"]
mysql-connector-python>=9.1

[amundsen]
neo4j~=5.3

[athena]
pyathena~=3.25.0

[atlas]

[azure-sso]
msal~=1.2

[azuresql]
pyodbc<5,>=4.0.35

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

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

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

[cassandra]
cassandra-driver>=3.28.0

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

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

[couchbase]
couchbase~=4.1

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

[data-insight]
elasticsearch8~=8.9.0

[databricks]
databricks-sdk~=0.20.0
sqlalchemy-databricks~=0.1
ndg-httpsclient~=0.5.1
pyasn1~=0.6.0
pyOpenSSL~=24.1.0
pyhive[hive_pure_sasl]~=0.7

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

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

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

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

[db2-ibmi]
sqlalchemy-ibmi~=0.9.3

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

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

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

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

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

[docs]
griffe2md~=1.2

[domo]
pydomo~=0.3

[doris]
pydoris-custom<1.5,>=1.0.2

[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<6,>=5
exasol-integration-test-docker-environment<4,>=3.1.0

[glue]
boto3~=1.41.5

[great-expectations]
great-expectations~=0.18.0

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

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

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

[iceberg]
adlfs>=2023.1.0
pydantic<2.12,>=2.7.0,~=2.0
pyarrow~=16.0
pyiceberg==0.5.1
gcsfs~=2023.12.1

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

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

[kafkaconnect]
kafka-connect-py==0.10.11

[kinesis]
boto3~=1.41.5

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

[mlflow]
mlflow-skinny~=3.6.0

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

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

[mssql-odbc]
collate-data-diff[mssql]
pyodbc<5,>=4.0.35

[mysql]
collate-data-diff[mysql]
pymysql~=1.0

[nifi]

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

[opensearch]
opensearch-py~=2.4.0

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

[pandas]
pandas~=2.0.3
numpy<2

[pgspider]
sqlalchemy-pgspider
psycopg2-binary

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

[pinotdb]
pinotdb~=5.0

[playwright]
google-cloud-logging
snowflake-sqlalchemy~=1.4
presidio-analyzer==2.2.358
sqlalchemy-bigquery~=1.15.0
azure-identity~=1.12
cachetools
apache-airflow==3.1.5
sqlalchemy-redshift==0.8.12
google-cloud-storage>=1.43.0
protobuf
attrs
packaging
avro<1.12,>=1.11.4
pyarrow~=16.0
aiobotocore~=2.26.0
GeoAlchemy2~=0.12
asammdf~=7.4.5
pymysql~=1.0
psycopg2-binary
collate-data-diff[mysql]
mlflow-skinny~=3.6.0
boto3~=1.41.5
azure-storage-blob~=12.14
pandas~=2.0.3
cramjam~=2.7
pytest-playwright
collate-data-diff[snowflake]
collate-dbt-artifacts-parser
google-cloud-datacatalog>=3.6.2
confluent_kafka<=2.6.1,>=2.1.1
ijson~=3.4
numpy<2
google-cloud
pytest-base-url
fastavro>=1.2.0
s3fs~=2023.12.1
opentelemetry-exporter-otlp==1.37.0
grpcio-tools>=1.47.2

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

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

[presidio-analyzer]
presidio-analyzer==2.2.358

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

[pyarrow]
pyarrow~=16.0

[pymssql]
pymssql~=2.3.9

[qliksense]
websocket-client~=1.6.1

[quicksight]
boto3~=1.41.5

[redash]
packaging

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

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

[sagemaker]
boto3~=1.41.5

[salesforce]
simple_salesforce~=1.11
authlib>=1.3.1

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

[sap-hana]
hdbcli
sqlalchemy-hana

[sas]

[singlestore]
pymysql~=1.0

[sklearn]
scikit-learn~=1.0

[slim]
adlfs>=2023.1.0
email-validator>=2.0
pydomo~=0.3
google-cloud-logging
sqlalchemy-pgspider
snowflake-sqlalchemy~=1.4
presidio-analyzer==2.2.358
pymongo~=4.3
giturlparse
cassandra-driver>=3.28.0
collate-data-diff[presto]
azure-storage-blob
pydruid>=0.6.5
kubernetes>=21.0.0
msal~=1.2
pinotdb~=5.0
sqlalchemy_exasol<6,>=5
protobuf
pydantic<2.12,>=2.7.0,~=2.0
validators~=0.22.0
simple_salesforce~=1.11
requests-aws4auth~=1.1
avro<1.12,>=1.11.4
pyarrow~=16.0
aiobotocore~=2.26.0
gitpython~=3.1.34
impyla[kerberos]~=0.18.0
GeoAlchemy2~=0.12
asammdf~=7.4.5
pymysql~=1.0
psycopg2-binary
ndg-httpsclient~=0.5.1
websocket-client~=1.6.1
python-dateutil>=2.8.1
boto3~=1.41.5
exasol-integration-test-docker-environment<4,>=3.1.0
pandas~=2.0.3
jsonpatch<2.0,>=1.24
pure-sasl
cryptography>=42.0.0
memory-profiler
sqlalchemy-pytds~=0.3
oracledb~=1.2
python-dotenv>=0.19.0
pyOpenSSL~=24.1.0
impyla~=0.18.0
collate-data-diff[snowflake]
sqlalchemy<2,>=1.4.0
google-cloud-datacatalog>=3.6.2
dbt-extractor>=0.5.0
ijson~=3.4
sqlalchemy-ibmi~=0.9.3
spacy<3.8
numpy<2
google-cloud
mypy_extensions>=0.4.3
teradatasqlalchemy==20.0.0.2
fastavro>=1.2.0
opensearch-py~=2.4.0
requests>=2.23
s3fs~=2023.12.1
python-liquid
typing-inspect
httpx~=0.28.0
pyathena~=3.25.0
pydantic-settings>=2.7.0,~=2.0
chardet==4.0.0
great-expectations~=1.0
pyhive[hive_pure_sasl]~=0.7
grpcio-tools>=1.47.2
authlib>=1.3.1
tabulate==0.9.0
databricks-sdk~=0.20.0
PyYAML~=6.0
neo4j~=5.3
azure-identity~=1.12
shapely
sqlalchemy-bigquery~=1.15.0
cachetools
collate-data-diff[vertica]
importlib-metadata>=4.13.0
collate-data-diff[trino]
google-cloud-secret-manager==2.24.0
cx_Oracle<9,>=8.3.0
pymssql~=2.3.9
sqlalchemy-redshift==0.8.12
collate-data-diff[mssql]
requests-ntlm
jaraco.functools<4.2.0
tableauserverclient==0.25
google-cloud-storage>=1.43.0
sqlalchemy-cockroachdb~=2.0
deltalake<0.20,>=0.19.0
packaging
google-crc32c
snowflake-connector-python~=3.18.0
jaraco.context==6.0.1
collate-data-diff>=0.11.9
collate-data-diff[clickhouse]
Jinja2>=2.11.3
pyodbc<5,>=4.0.35
kafka-connect-py==0.10.11
thrift-sasl~=0.4
croniter<3
mlflow-skinny~=3.6.0
collate-data-diff[mysql]
clickhouse-driver~=0.2
azure-storage-blob~=12.14
google-cloud-monitoring>=2.0.0
hdbcli
pydoris-custom<1.5,>=1.0.2
cached-property==1.5.2
thrift<1,>=0.13
google-cloud-bigtable>=2.0.0
lkml~=1.3
cramjam~=2.7
pyiceberg==0.5.1
collate-sqllineage>=2.1.1
setuptools<81,>=78.1.1
clickhouse-sqlalchemy~=0.2.0
elasticsearch8~=8.9.0
trino[sqlalchemy]
pyasn1~=0.6.0
sqlalchemy-hana
collate-dbt-artifacts-parser
looker-sdk!=24.18.0,>=22.20.0
collate-data-diff[oracle]
presto-types-parser>=0.0.2
pure-transport==0.2.0
azure-keyvault-secrets
confluent_kafka<=2.6.1,>=2.1.1
sqlalchemy-vertica[vertica-python]>=0.0.5
dagster_graphql>=1.8.0
sqlalchemy-databricks~=0.1
gcsfs~=2023.12.1
couchbase~=4.1
antlr4-python3-runtime==4.9.2

[slim:python_version < "3.9"]
mysql-connector-python>=8.0.29

[slim:python_version >= "3.9"]
mysql-connector-python>=9.1

[snowflake]
collate-data-diff[snowflake]
snowflake-sqlalchemy~=1.4

[ssrs]
requests-ntlm

[starrocks]
pymysql~=1.0

[superset]

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

[teradata]
teradatasqlalchemy==20.0.0.2

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

[test-unit]
pytest-rerunfailures
factory-boy~=3.3.3
dirty-equals
pytest-order
pytest-cov
testcontainers
pytest==7.0.1
faker==37.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]
collate-data-diff[vertica]
sqlalchemy-vertica[vertica-python]>=0.0.5
