# Pip requirements file for development dependencies.


# Direct dependencies for development
# (must be consistent with minimum-constraints-develop.txt)

# Tox
tox>=4.15.0

# Package builder
build>=1.0.0

# Change log manager
towncrier>=22.8.0

# Test tools
pytest>=8.4.0; python_version == '3.9'
pytest>=9.0.3; python_version >= '3.10'
requests-mock>=1.6.0
testfixtures>=6.9.0
tzdata>=2023.4; sys_platform == 'win32'

# Coverage reporting tools
coverage>=7.8.0
coveralls>=4.0.1; python_version == '3.9'
coveralls>=4.0.2; python_version >= '3.10'

# Sphinx doc builder and optional extensions
Sphinx>=7.2.0
autodocsumm>=0.2.12
sphinx-git>=10.1.1
sphinx-rtd-theme>=2.0.0

# Package dependency checkers
pipdeptree>=2.28.0
pip-check-reqs>=2.5.6; python_version == '3.9'
pip-check-reqs>=3.0.0; python_version >= '3.10'

# Safety checker
safety>=3.8.1

# Flake8 checker
flake8>=6.1.0

# Ruff checker
ruff>=0.16.0

# PyLint checker
pylint>=3.3.1; python_version == '3.9'
pylint>=4.1.2; python_version >= '3.10'

# Bandit checker
bandit>=1.7.8

# Jupyter notebook
# TODO: Re-enable for Python 3.13 on Windows once pywin32 install issue is solved, see
#       https://github.com/mhammond/pywin32/issues/2367
notebook>=7.5.6; sys_platform != 'win32' or python_version <= '3.12'
jupyter>=1.1.1; sys_platform != 'win32' or python_version <= '3.12'


# Indirect dependencies for development that are needed for some reason

# Pip is covered by requirements-base.txt but needs to be repeated here because it is used by pip-check-reqs.
pip>=26.0.1; python_version == '3.9'
pip>=26.2.0; python_version >= '3.10'
