dulwich<2,>=1.2.1
giturlparse<0.15,>=0.12
imagesize<2.1,>=2.0.0
packaging<27,>=22
pypac<1,>=0.16.3
python-rule-engine<1.1,>=0.5
pyyaml<7,>=5.4
requests<3,>=2.32.3
truststore<1,>=0.10.1

[:sys_platform == "linux"]
distro==1.9.*

[:sys_platform == "win32"]
python-win-ad==0.6.2
pywin32==311

[dev]
ruff>=0.13.1
pre-commit<5,>=4

[doc]
furo>=2024
matplotlib<4,>=3.8.2
myst-parser[linkify]>=2
sphinx-argparse-cli>=1.19
sphinx-autobuild>=2024
sphinx-copybutton<1
sphinx-design<1,>=0.5
sphinx-sitemap<3,>=2.4
sphinxcontrib-mermaid>=1
sphinxext-opengraph>=0.10

[packaging]
pyinstaller<6.21,>=6.20
pyinstaller-hooks-contrib<2027,>=2025

[packaging:sys_platform == "win32"]
pypiwin32==223
tzdata>=2026

[security]
bandit[toml]<2,>=1.8.3
safety<4,>=3.3.1

[test]
GitPython<3.2,>=3.1
Pillow<13,>=12.1.1
pytest-cov<8,>=4
validators<0.36,>=0.29.0
