#
# This file is autogenerated by pip-compile with Python 3.14
# by the following command:
#
#    pip-compile --allow-unsafe --output-file=dev-requirements.txt --strip-extras dev-requirements.in
#
ast-serialize==0.13.1
    # via
    #   -r mypy-requirements.txt
    #   -r test-requirements.txt
attrs==26.1.0
    # via -r test-requirements.txt
cfgv==3.5.0
    # via pre-commit
coverage==7.15.4
    # via
    #   -r test-requirements.txt
    #   pytest-cov
distlib==0.4.3
    # via virtualenv
execnet==2.1.2
    # via
    #   -r test-requirements.txt
    #   pytest-xdist
filelock==3.32.3
    # via
    #   -r test-requirements.txt
    #   python-discovery
    #   virtualenv
identify==2.6.19
    # via pre-commit
iniconfig==2.3.0
    # via
    #   -r test-requirements.txt
    #   pytest
librt==0.16.0 ; platform_python_implementation != "PyPy"
    # via
    #   -r mypy-requirements.txt
    #   -r test-requirements.txt
lxml==6.1.2 ; python_version < "3.16"
    # via -r test-requirements.txt
mypy-extensions==1.1.0
    # via
    #   -r mypy-requirements.txt
    #   -r test-requirements.txt
nodeenv==1.10.0
    # via pre-commit
packaging==26.3
    # via
    #   -r test-requirements.txt
    #   pytest
pathspec==1.1.1
    # via
    #   -r mypy-requirements.txt
    #   -r test-requirements.txt
platformdirs==4.11.9
    # via virtualenv
pluggy==1.6.0
    # via
    #   -r test-requirements.txt
    #   pytest
    #   pytest-cov
pre-commit==4.6.2
    # via -r dev-requirements.in
psutil==7.2.2
    # via -r test-requirements.txt
pygments==2.21.0
    # via
    #   -r test-requirements.txt
    #   pytest
pytest==9.1.1
    # via
    #   -r test-requirements.txt
    #   pytest-cov
    #   pytest-xdist
pytest-cov==7.1.0
    # via -r test-requirements.txt
pytest-xdist==3.8.0
    # via -r test-requirements.txt
python-discovery==1.6.0
    # via virtualenv
pyyaml==6.0.3
    # via pre-commit
tomli==2.4.1
    # via -r test-requirements.txt
types-psutil==7.2.2.20260518
    # via
    #   -r build-requirements.txt
    #   -r test-requirements.txt
types-setuptools==84.0.0.20260812
    # via
    #   -r build-requirements.txt
    #   -r test-requirements.txt
typing-extensions==4.16.0 ; python_version < "3.15"
    # via
    #   -r mypy-requirements.txt
    #   -r test-requirements.txt
virtualenv==21.7.10
    # via pre-commit

# The following packages are considered to be unsafe in a requirements file:
setuptools==84.0.0
    # via -r test-requirements.txt
