polars!=1.35.1,<2,>=1.37
typing_extensions

[adm]
plotly[express]<7,>=6.0
pydot<5,>=4.0
requests

[all]
pdstools[app,explanations,onnx,pega_io]

[api]
httpx<1,>=0.27
pydantic<3,>=2.10
anyio<5,>=4.0

[app]
pdstools[healthcheck]
streamlit<2,>=1.45
polars[rt64]!=1.35.1,<2,>=1.37
humanize<5,>=4.0.0
fastexcel<1,>=0.19
questionary<3,>=2.0

[dev]
pre-commit
ruff<0.16,>=0.15.19
mypy<2,>=1.18
pyright<2,>=1.1.411
pyrefly<2,>=1.1.1
types-PyYAML
types-requests

[docs]
sphinx
furo
sphinx-autoapi
nbsphinx
sphinx-copybutton
sphinx-tabs
myst-parser
sphinx-argparse
xgboost
pydantic
httpx
streamlit
duckdb
anyio

[explanations]
duckdb<2,>=1.1
plotly[express]<7,>=6.0
pyarrow<25,>=18
pyyaml<7,>=6
ipywidgets

[healthcheck]
pdstools[adm]
great_tables<1,>=0.13
quarto
papermill<3,>=2.6
xlsxwriter<4,>=3.0
pydot<5,>=4.0
ipykernel<8,>=6

[nlp]
pdstools[torch]
numpy
scikit-learn
plotly[express]<7,>=6.0

[nlp:python_version < "3.14"]
sentence-transformers
umap-learn
cleanlab[datalab]

[onnx]
scikit-learn>=1.6.1
skl2onnx>=1.19.1
onnx<1.22,>=1.18
pdstools[api]
scipy>=1.15.3

[onnx:python_version < "3.11"]
onnxruntime<1.24,>=1.22

[onnx:python_version >= "3.11"]
onnxruntime<1.25,>=1.22

[pega_io]
aioboto3<16,>=15.5
polars_hash<1,>=0.5

[tests]
testbook>=0.4
pytest>=8
pytest-cov>=5
pytest-httpx>=0.30
pytest-mock>=3.10
pytest-xdist>=3.5
pytest-asyncio>=0.25
moto>=5.1
openpyxl>=3
pdstools[all]
coverage>=7
itables>=2

[torch]

[torch:python_version < "3.14"]
torch<3,>=2.12
onnxscript<1,>=0.7
