numpy>=1.24.0
pandas>=2.0.0
jinja2>=3.1.2
pyarrow>=14.0.0
scipy>=1.10.0
ruptures>=1.1.9
optbinning>=0.19.0
joblib>=1.3.0
colorlog>=6.7.0
tqdm>=4.66.0
ipython>=8.0.0
openpyxl>=3.1.0
xlsxwriter>=3.1.0
xlwings>=0.30.0
matplotlib>=3.7.0
seaborn>=0.12.0

[:python_version < "3.9"]
polars==1.8.2
scikit-learn<1.4,>=1.3.2

[:python_version >= "3.10"]
scikit-learn>=1.7.2

[:python_version >= "3.9"]
polars>=1.33.1

[:python_version >= "3.9" and python_version < "3.10"]
scikit-learn<1.7,>=1.6.1

[dev]
pytest>=7.4.0
ruff>=0.8.0
mypy==1.13.0
pydoclint>=0.8.0
mkdocs-material>=9.5.0
mkdocstrings[python]>=0.25.0
mkdocs-git-revision-date-localized-plugin>=1.2.0
mkdocs-jupyter>=0.25.0
nbclient>=0.10.0
nbformat>=5.10.0
ipykernel>=6.29.0
black>=23.0.0
jupyterlab>=4.0.0
tqdm>=4.66.0
psutil>=5.9.0
statsmodels>=0.14.0
shap>=0.45.0
build>=1.2.2
packaging>=24.0
twine>=5.1.0

[dev:python_version < "3.11"]
tomli>=2.0.0

[docs]
mkdocs-material>=9.5.0
mkdocstrings[python]>=0.25.0
mkdocs-git-revision-date-localized-plugin>=1.2.0
mkdocs-jupyter>=0.25.0
nbclient>=0.10.0
nbformat>=5.10.0
ipykernel>=6.29.0

[docs:python_version < "3.11"]
tomli>=2.0.0

[ml]
xgboost>=3.0.0
lightgbm>=4.6.0
catboost>=1.2.9
statsmodels>=0.14.0
shap>=0.45.0

[notebook]
jupyterlab>=4.0.0

[tuning]
optuna>=4.0.0
optuna-integration>=4.0.0
