Files
dlt/pyproject.toml
2023-06-02 20:10:43 +02:00

141 lines
4.2 KiB
TOML

[tool.poetry]
name = "dlt"
version = "0.2.10a0"
description = "DLT is an open-source python-native scalable data loading framework that does not require any devops efforts to run."
authors = ["dltHub Inc. <services@dlthub.com>"]
maintainers = [ "Marcin Rudolf <marcin@dlthub.com>", "Adrian Brudaru <adrian@dlthub.com>", "Ty Dunn <ty@dlthub.com>"]
readme = "README.md"
license = "Apache-2.0"
homepage = "https://github.com/dlt-hub"
repository = "https://github.com/dlt-hub/dlt"
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Topic :: Software Development :: Libraries",
"Operating System :: MacOS :: MacOS X",
"Operating System :: POSIX :: Linux",]
keywords = [ "etl" ]
include = [ "LICENSE.txt", "README.md"]
packages = [
{ include = "dlt" },
]
[tool.poetry.dependencies]
python = ">=3.8,<4.0"
requests = ">=2.26.0"
pendulum = ">=2.1.2"
simplejson = ">=3.17.5"
PyYAML = ">=5.4.1"
json-logging = "1.4.1rc0"
semver = ">=2.13.0"
sentry-sdk = ">=1.4.3"
hexbytes = ">=0.2.2"
cachetools = ">=5.2.0"
tzdata = ">=2022.1"
tomlkit = ">=0.11.3"
asyncstdlib = ">=3.10.5"
pathvalidate = ">=2.5.2"
SQLAlchemy = ">=1.4.0"
typing-extensions = ">=4.0.0"
makefun = ">=1.15.0"
click = ">=7.1"
requirements-parser = ">=0.5.0"
setuptools = ">=65.6.0"
humanize = ">=4.4.0"
astunparse = ">=1.6.3"
cron-descriptor = ">=1.2.32"
pipdeptree = ">=2.3.3"
gitpython = ">=3.1.29"
pytz = ">=2022.6"
giturlparse = ">=0.10.0"
orjson = {version = "^3.8.6", markers="platform_python_implementation != 'PyPy'"}
tenacity = "^8.2.2"
jsonpath-ng = "^1.5.3"
deprecated = "^1.2.13"
psycopg2-binary = {version = ">=2.9.1", optional = true}
# use this dependency as the current version of psycopg2cffi does not have sql module
# psycopg2cffi = {git = "https://github.com/chtd/psycopg2cffi.git", optional = true, markers="platform_python_implementation == 'PyPy'"}
psycopg2cffi = {version = ">=2.9.0", optional = true, markers="platform_python_implementation == 'PyPy'"}
grpcio = {version = ">=1.50.0", optional = true}
google-cloud-bigquery = {version = ">=2.26.0", optional = true}
pyarrow = {version = ">=8.0.0", optional = true}
duckdb = {version = ">=0.6.1,<0.9.0", optional = true}
dbt-core = {version = ">=1.3.0,<1.5.0", optional = true}
dbt-redshift = {version = ">=1.3.0,<1.5.0", optional = true}
dbt-bigquery = {version = ">=1.3.0,<1.5.0", optional = true}
dbt-duckdb = {version = ">=1.3.0,<1.5.0", optional = true}
s3fs = {version = "^2023.5.0", optional = true}
gcsfs = {version = "^2023.5.0", optional = true}
boto3 = {version = ">=1.26", optional = true}
fsspec = "^2023.5.0"
[tool.poetry.dev-dependencies]
pytest = "^6.2.4"
mypy = "1.2.0"
flake8 = "^5.0.0"
bandit = "^1.7.0"
flake8-bugbear = "^22.0.0"
pytest-pythonpath = "^0.7.3"
pytest-order = "^1.0.0"
pytest-cases = "^3.6.9"
pytest-forked = "^1.3.0"
types-PyYAML = ">=6.0.7"
types-cachetools = ">=4.2.9"
types-protobuf = ">=3.19.8"
types-simplejson = ">=3.17.0"
types-requests = ">=2.25.6"
types-python-dateutil = ">=2.8.15"
flake8-tidy-imports = ">=4.8.0"
flake8-encodings = "^0.5.0"
flake8-builtins = "^1.5.3"
types-SQLAlchemy = ">=1.4.53"
[tool.poetry.extras]
dbt = ["dbt-core", "dbt-redshift", "dbt-bigquery", "dbt-duckdb"]
gcp = ["grpcio", "google-cloud-bigquery", "db-dtypes", "gcsfs"]
# bigquery is alias on gcp extras
bigquery = ["grpcio", "google-cloud-bigquery", "pyarrow", "db-dtypes", "gcsfs"]
postgres = ["psycopg2-binary", "psycopg2cffi"]
redshift = ["psycopg2-binary", "psycopg2cffi"]
duckdb = ["duckdb"]
filesystem = ["s3fs", "boto3"]
s3 = ["s3fs", "boto3"]
gs = ["gcsfs"]
[tool.poetry.scripts]
dlt = "dlt.cli._dlt:_main"
[tool.poetry.group.dev.dependencies]
requests-mock = "^1.10.0"
types-click = "^7.1.8"
pandas = "^1.5.3"
sqlfluff = "^1.4.5"
google-auth-oauthlib = "^1.0.0"
types-deprecated = "^1.2.9.2"
tqdm = "^4.65.0"
enlighten = "^1.11.2"
alive-progress = "^3.1.1"
[tool.poetry.group.airflow]
optional = true
[tool.poetry.group.airflow.dependencies]
apache-airflow = "^2.5.3"
[tool.poetry.group.providers]
optional = true
[tool.poetry.group.providers.dependencies]
google-api-python-client = "^2.86.0"
[build-system]
requires = ["poetry-core>=1.0.8"]
build-backend = "poetry.core.masonry.api"