timeout_decorator
PyYAML>=3.10
db-facts>=4
chardet>=3
tenacity>=8.0.1
config-resolver>=5.0.1
typing_inspect
typing-extensions

[airflow]
apache-airflow>=2
apache-airflow-providers-amazon
apache-airflow-providers-google

[aws]
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2

[bigquery]
sqlalchemy-bigquery
google-cloud-storage
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[cli]
odictliteral
jsonschema
docstring_parser

[db]
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[docs]
sphinx>=5
sphinx-rtd-theme>=1
sphinx-argparse
readthedocs-sphinx-ext>=2
recommonmark
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
apache-airflow>=2
apache-airflow-providers-amazon
apache-airflow-providers-google
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
odictliteral
jsonschema
docstring_parser

[gcs]
google-cloud-storage
smart_open>=2

[gsheets]
google
google_auth_httplib2
PyOpenSSL
google-api-python-client>=1.8.0
grpcio>=1.29.0

[itest]
jsonschema
pytz
wheel
parameterized
pytest
pytest-cov
google-api-python-client>=1.8.0
grpcio>=1.29.0

[literally_every_single_database_binary]
sqlalchemy-vertica-python>=0.5.5
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
psycopg2-binary
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
psycopg2-binary
sqlalchemy-redshift>=0.7.7
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
sqlalchemy-bigquery
google-cloud-storage
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
pymysql
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[mysql]
pymysql
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[pandas]
pandas>=1.3.5

[parquet]
pyarrow

[postgres-binary]
psycopg2-binary
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[postgres-source]
psycopg2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[redshift-binary]
psycopg2-binary
sqlalchemy-redshift>=0.7.7
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[redshift-source]
psycopg2
sqlalchemy-redshift>=0.7.7
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0

[typecheck]
mypy>=1.7.1
lxml
sqlalchemy-stubs>=0.3
types-pytz
types-mock

[unittest]
coverage
mock
pytest
pytest-cov
odictliteral
jsonschema
docstring_parser
apache-airflow>=2
apache-airflow-providers-amazon
apache-airflow-providers-google
google
google_auth_httplib2
PyOpenSSL
google-api-python-client>=1.8.0
grpcio>=1.29.0
sqlalchemy-vertica-python>=0.5.5
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
psycopg2-binary
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
psycopg2-binary
sqlalchemy-redshift>=0.7.7
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
sqlalchemy-bigquery
google-cloud-storage
smart_open>=2
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
pymysql
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
awscli>=1
boto<3,>=2
boto3
s3-concat>=0.1.7
smart_open>=2
pandas>=1.3.5
google-cloud-storage
smart_open>=2

[vertica]
sqlalchemy-vertica-python>=0.5.5
sqlalchemy>=1.4
sqlalchemy_privileges>=0.2.0
