# ------------------------------------------------------------------------------
# Pip constraints file for minimum versions of base packages and packages needed
# for development.
#
# Note: Base packages are those needed for setting up an initial environment,
# mainly to bring pip to a defined level.


# ------------------------------------------------------------------------------
# Direct and necessary iundirect dependencies for development.
# Must be consistent with requirements-develop.txt.

# PEP517 package builder, used in Makefile
build==1.0.0
# build requires virtualenv.cli_run which was added in virtualenv 20.1
virtualenv==20.26.6
pyproject-hooks==1.1.0

# Change log
towncrier==22.8.0
incremental==22.10.0
click-default-group==1.2.4

# Safety CI by pyup.io
safety==3.1.0
safety-schemas==0.0.2
# TODO: Change to dparse 0.6.4 once released
dparse==0.6.4b0
ruamel.yaml==0.17.21
click==8.0.2
Authlib==1.3.1
marshmallow==3.15.0
pydantic==2.8.0
typer==0.12.0
typer-cli==0.12.0
typer-slim==0.12.0
psutil==6.0.0

# Bandit checker
bandit==1.7.8
# PyYAML is used by bandit and is covered in minimum-constraints-install.txt

# Unit test (imports into testcases):
pytest==8.0.0
pluggy==1.3.0
importlib-metadata==4.8.3
colorama==0.4.6

packaging==22.0

# Coverage reporting (no imports, invoked via coveralls script):
coverage==5.0
pytest-cov==2.7.0
coveralls==3.3.0

# Flake8 (no imports, invoked via flake8 script):
flake8==6.1.0
mccabe==0.7.0
pycodestyle==2.11.0
pyflakes==3.1.0
entrypoints==0.3.0

# Ruff checker (no imports, invoked via ruff script):
ruff==0.3.5

# PyLint (no imports, invoked via pylint script):
pylint==3.0.1; python_version == '3.8'
pylint==3.3.1; python_version >= '3.9'
astroid==3.0.1; python_version == '3.8'
astroid==3.3.5; python_version >= '3.9'
lazy-object-proxy==1.4.3
wrapt==1.15
platformdirs==4.1.0
isort==4.3.8
tomlkit==0.10.1
dill==0.3.7

# Sphinx (no imports, invoked via sphinx-build script):
Sphinx==7.1.0; python_version == '3.8'
Sphinx==7.2.0; python_version >= '3.9'
docutils==0.18.1
sphinx-git==10.1.1
GitPython==3.1.41
Pygments==2.15.0
sphinx-rtd-theme==2.0.0
sphinxcontrib-applehelp==1.0.4
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==2.0.1
sphinxcontrib-jquery==4.1
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.5; python_version == '3.8'
sphinxcontrib-serializinghtml==1.1.9; python_version >= '3.9'
sphinxcontrib-websupport==1.2.4
autodocsumm==0.2.12
Babel==2.11.0

# Package dependency management tools (not used by any make rules)
pipdeptree==2.2.0
pip-check-reqs==2.4.3; python_version <= '3.11'
pip-check-reqs==2.5.1; python_version >= '3.12'

# towncrier depends on importlib-resources>=5, which is included in Python starting with 3.10
importlib-resources==5.12.0; python_version <= '3.9'


# ------------------------------------------------------------------------------
# All remaining dependencies for development that are not in any other
# requirements file.

alabaster==0.7.9
atomicwrites==1.4.0  # used with minimum package levels
appdirs==1.4.3
bleach==3.3.0
chardet==3.0.4  # used with minimum package levels
contextlib2==0.6.0
filelock==3.12.2
gitdb==4.0.8
html5lib==1.0.1  # used with minimum package levels
imagesize==1.3.0
iniconfig==1.1.1
Jinja2==3.1.4
keyring==18.0.0
more-itertools==8.0.0  # used with minimum package levels
pkginfo==1.4.2
pyparsing==2.4.5
requests-toolbelt==0.8.0
rfc3986==1.4.0
rich==12.0.0
smmap==3.0.1
snowballstemmer==2.0.0
stevedore==5.2.0
toml==0.10.0  # used by pylint and pytest since some version
tomli==1.1.0
tqdm==4.66.3
typing==3.6.1
webencodings==0.5.1
