click>=8.1
pyyaml>=6.0
jsonschema>=4.22
rich>=13.7
pydantic>=2.7
typing-extensions>=4.8
jinja2>=3.1
httpx>=0.27
requests>=2.32.5
litellm>=1.50
python-dotenv>=1.0
cryptography>=42.0
keyring>=24.0
pydantic-settings>=2.0

[:platform_system == "Windows"]
colorama>=0.4.6

[all]
data-product-forge[copilot,dev,docs,gcp,local,opds,postgres,snowflake,tui,vector,viz]

[catalogs]
data-product-forge[snowflake]
data-product-forge[gcp]
data-product-forge[databricks]
data-product-forge[datahub]
data-product-forge[keyring]

[copilot]
pyarrow>=14
fastavro>=1.9

[databricks]
databricks-sdk>=0.20

[datahub]
acryl-datahub>=0.13

[dev]
pytest>=7.4
pytest-cov>=4.1
pytest-asyncio>=0.23
pytest-randomly>=3.15
respx>=0.21
hypothesis>=6.100
mypy>=1.10
ruff>=0.5
types-PyYAML>=6.0.12
black==26.3.1
requests>=2.32.5

[docs]
mkdocs>=1.6
mkdocs-material>=9.5

[gcp]
google-auth>=2.29
google-auth-oauthlib>=1.2
google-cloud-bigquery>=3.20
google-cloud-storage>=2.16
google-cloud-dataplex>=1.0

[gcp:python_version >= "3.10"]
google-cloud-iam>=2.15
dbt-bigquery>=1.7

[keyring]

[litellm]

[local]
duckdb>=1.0
pandas>=2.2

[opds]
ruamel.yaml>=0.18

[postgres]
psycopg[binary]>=3.1

[sdk]
fluid-provider-sdk>=0.1.0

[snowflake]
snowflake-connector-python>=4.4

[snowflake:python_version >= "3.10"]
snowflake-snowpark-python>=1.15
dbt-snowflake>=1.7

[tui]
textual>=0.58

[vector]
sqlite-vec>=0.1

[viz]
graphviz>=0.20
