# This file was autogenerated by uv via the following command:
#    uv pip compile --universal --python-version 3.7 --all-extras --unsafe-package=cffi --unsafe-package=pycparser --unsafe-package=setuptools --unsafe-package=cryptography-vectors --unsafe-package=bcrypt pyproject.toml -o ci-constraints-requirements.txt
alabaster==0.7.13 ; python_full_version < '3.9'
    # via sphinx
alabaster==0.7.16 ; python_full_version == '3.9.*'
    # via sphinx
alabaster==1.0.0 ; python_full_version >= '3.10'
    # via sphinx
argcomplete==3.1.2 ; python_full_version < '3.8'
    # via nox
argcomplete==3.6.2 ; python_full_version >= '3.8'
    # via nox
attrs==25.3.0 ; python_full_version >= '3.8'
    # via nox
babel==2.14.0 ; python_full_version < '3.8'
    # via sphinx
babel==2.17.0 ; python_full_version >= '3.8'
    # via sphinx
bleach==6.0.0 ; python_full_version < '3.8'
    # via readme-renderer
build==1.1.1 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
build==1.2.2.post1 ; python_full_version >= '3.8'
    # via
    #   cryptography (pyproject.toml)
    #   check-sdist
certifi==2025.4.26
    # via
    #   cryptography (pyproject.toml)
    #   requests
charset-normalizer==3.4.2
    # via requests
check-sdist==1.2.0 ; python_full_version >= '3.8'
    # via cryptography (pyproject.toml)
click==8.1.8 ; python_full_version < '3.10'
    # via cryptography (pyproject.toml)
click==8.2.0 ; python_full_version >= '3.10'
    # via cryptography (pyproject.toml)
colorama==0.4.6 ; os_name == 'nt' or sys_platform == 'win32'
    # via
    #   build
    #   click
    #   colorlog
    #   pytest
    #   sphinx
colorlog==6.9.0
    # via nox
coverage==7.2.7 ; python_full_version < '3.8'
    # via pytest-cov
coverage==7.6.1 ; python_full_version == '3.8.*'
    # via pytest-cov
coverage==7.8.0 ; python_full_version >= '3.9'
    # via pytest-cov
dependency-groups==1.3.1 ; python_full_version >= '3.8'
    # via nox
distlib==0.3.9
    # via virtualenv
docutils==0.19 ; python_full_version < '3.8'
    # via
    #   readme-renderer
    #   sphinx
docutils==0.20.1 ; python_full_version == '3.8.*'
    # via
    #   readme-renderer
    #   sphinx
    #   sphinx-rtd-theme
docutils==0.21.2 ; python_full_version >= '3.9'
    # via
    #   readme-renderer
    #   sphinx
    #   sphinx-rtd-theme
exceptiongroup==1.3.0 ; python_full_version < '3.11'
    # via pytest
execnet==2.0.2 ; python_full_version < '3.8'
    # via pytest-xdist
execnet==2.1.1 ; python_full_version >= '3.8'
    # via pytest-xdist
filelock==3.12.2 ; python_full_version < '3.8'
    # via virtualenv
filelock==3.16.1 ; python_full_version == '3.8.*'
    # via virtualenv
filelock==3.18.0 ; python_full_version >= '3.9'
    # via virtualenv
idna==3.10
    # via requests
imagesize==1.4.1
    # via sphinx
importlib-metadata==6.7.0 ; python_full_version < '3.8'
    # via
    #   argcomplete
    #   build
    #   click
    #   nox
    #   pluggy
    #   pytest
    #   pytest-randomly
    #   sphinx
    #   sphinxcontrib-spelling
    #   virtualenv
importlib-metadata==8.5.0 ; python_full_version == '3.8.*'
    # via
    #   build
    #   pytest-randomly
    #   sphinx
importlib-metadata==8.7.0 ; python_full_version >= '3.9' and python_full_version < '3.10.2'
    # via
    #   build
    #   pytest-randomly
    #   sphinx
importlib-resources==6.4.5 ; python_full_version == '3.8.*'
    # via check-sdist
iniconfig==2.0.0 ; python_full_version < '3.8'
    # via pytest
iniconfig==2.1.0 ; python_full_version >= '3.8'
    # via pytest
jinja2==3.1.6
    # via sphinx
markupsafe==2.1.5 ; python_full_version < '3.9'
    # via jinja2
markupsafe==3.0.2 ; python_full_version >= '3.9'
    # via jinja2
mypy==1.4.1 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
mypy==1.14.1 ; python_full_version == '3.8.*'
    # via cryptography (pyproject.toml)
mypy==1.15.0 ; python_full_version >= '3.9'
    # via cryptography (pyproject.toml)
mypy-extensions==1.0.0 ; python_full_version < '3.8'
    # via mypy
mypy-extensions==1.1.0 ; python_full_version >= '3.8'
    # via mypy
nh3==0.2.21 ; python_full_version >= '3.8'
    # via readme-renderer
nox==2024.4.15 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
nox==2025.5.1 ; python_full_version >= '3.8'
    # via cryptography (pyproject.toml)
packaging==24.0 ; python_full_version < '3.8'
    # via
    #   build
    #   nox
    #   pytest
    #   sphinx
packaging==25.0 ; python_full_version >= '3.8'
    # via
    #   build
    #   dependency-groups
    #   nox
    #   pytest
    #   sphinx
pathspec==0.12.1 ; python_full_version >= '3.8'
    # via check-sdist
platformdirs==4.0.0 ; python_full_version < '3.8'
    # via virtualenv
platformdirs==4.3.6 ; python_full_version == '3.8.*'
    # via virtualenv
platformdirs==4.3.8 ; python_full_version >= '3.9'
    # via virtualenv
pluggy==1.2.0 ; python_full_version < '3.8'
    # via pytest
pluggy==1.5.0 ; python_full_version == '3.8.*'
    # via pytest
pluggy==1.6.0 ; python_full_version >= '3.9'
    # via pytest
pretend==1.0.9
    # via cryptography (pyproject.toml)
py-cpuinfo==9.0.0
    # via pytest-benchmark
pyenchant==3.2.2
    # via
    #   cryptography (pyproject.toml)
    #   sphinxcontrib-spelling
pygments==2.17.2 ; python_full_version < '3.8'
    # via
    #   readme-renderer
    #   sphinx
pygments==2.19.1 ; python_full_version >= '3.8'
    # via
    #   readme-renderer
    #   sphinx
pyproject-hooks==1.2.0
    # via build
pytest==7.4.4 ; python_full_version < '3.8'
    # via
    #   cryptography (pyproject.toml)
    #   pytest-benchmark
    #   pytest-cov
    #   pytest-randomly
    #   pytest-xdist
pytest==8.3.5 ; python_full_version >= '3.8'
    # via
    #   cryptography (pyproject.toml)
    #   pytest-benchmark
    #   pytest-cov
    #   pytest-randomly
    #   pytest-xdist
pytest-benchmark==4.0.0 ; python_full_version < '3.9'
    # via cryptography (pyproject.toml)
pytest-benchmark==5.1.0 ; python_full_version >= '3.9'
    # via cryptography (pyproject.toml)
pytest-cov==4.1.0 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
pytest-cov==5.0.0 ; python_full_version == '3.8.*'
    # via cryptography (pyproject.toml)
pytest-cov==6.1.1 ; python_full_version >= '3.9'
    # via cryptography (pyproject.toml)
pytest-randomly==3.12.0 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
pytest-randomly==3.15.0 ; python_full_version == '3.8.*'
    # via cryptography (pyproject.toml)
pytest-randomly==3.16.0 ; python_full_version >= '3.9'
    # via cryptography (pyproject.toml)
pytest-xdist==3.5.0 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
pytest-xdist==3.6.1 ; python_full_version >= '3.8'
    # via cryptography (pyproject.toml)
pytz==2025.2 ; python_full_version < '3.9'
    # via babel
readme-renderer==37.3 ; python_full_version < '3.8'
    # via cryptography (pyproject.toml)
readme-renderer==43.0 ; python_full_version == '3.8.*'
    # via cryptography (pyproject.toml)
readme-renderer==44.0 ; python_full_version >= '3.9'
    # via cryptography (pyproject.toml)
requests==2.31.0 ; python_full_version < '3.8'
    # via sphinx
requests==2.32.3 ; python_full_version >= '3.8'
    # via
    #   sphinx
    #   sphinxcontrib-spelling
roman-numerals-py==3.1.0 ; python_full_version >= '3.11'
    # via sphinx
ruff==0.11.10
    # via cryptography (pyproject.toml)
six==1.17.0 ; python_full_version < '3.8'
    # via bleach
snowballstemmer==3.0.1
    # via sphinx
sphinx==5.3.0 ; python_full_version < '3.8'
    # via
    #   cryptography (pyproject.toml)
    #   sphinxcontrib-spelling
sphinx==7.1.2 ; python_full_version == '3.8.*'
    # via
    #   cryptography (pyproject.toml)
    #   sphinx-inline-tabs
    #   sphinx-rtd-theme
    #   sphinxcontrib-jquery
    #   sphinxcontrib-spelling
sphinx==7.4.7 ; python_full_version == '3.9.*'
    # via
    #   cryptography (pyproject.toml)
    #   sphinx-inline-tabs
    #   sphinx-rtd-theme
    #   sphinxcontrib-jquery
    #   sphinxcontrib-spelling
sphinx==8.1.3 ; python_full_version == '3.10.*'
    # via
    #   cryptography (pyproject.toml)
    #   sphinx-inline-tabs
    #   sphinx-rtd-theme
    #   sphinxcontrib-jquery
    #   sphinxcontrib-spelling
sphinx==8.2.3 ; python_full_version >= '3.11'
    # via
    #   cryptography (pyproject.toml)
    #   sphinx-inline-tabs
    #   sphinx-rtd-theme
    #   sphinxcontrib-jquery
    #   sphinxcontrib-spelling
sphinx-inline-tabs==2023.4.21 ; python_full_version >= '3.8'
    # via cryptography (pyproject.toml)
sphinx-rtd-theme==3.0.2 ; python_full_version >= '3.8'
    # via cryptography (pyproject.toml)
sphinxcontrib-applehelp==1.0.2 ; python_full_version < '3.8'
    # via sphinx
sphinxcontrib-applehelp==1.0.4 ; python_full_version == '3.8.*'
    # via sphinx
sphinxcontrib-applehelp==2.0.0 ; python_full_version >= '3.9'
    # via sphinx
sphinxcontrib-devhelp==1.0.2 ; python_full_version < '3.9'
    # via sphinx
sphinxcontrib-devhelp==2.0.0 ; python_full_version >= '3.9'
    # via sphinx
sphinxcontrib-htmlhelp==2.0.0 ; python_full_version < '3.8'
    # via sphinx
sphinxcontrib-htmlhelp==2.0.1 ; python_full_version == '3.8.*'
    # via sphinx
sphinxcontrib-htmlhelp==2.1.0 ; python_full_version >= '3.9'
    # via sphinx
sphinxcontrib-jquery==4.1 ; python_full_version >= '3.8'
    # via sphinx-rtd-theme
sphinxcontrib-jsmath==1.0.1
    # via sphinx
sphinxcontrib-qthelp==1.0.3 ; python_full_version < '3.9'
    # via sphinx
sphinxcontrib-qthelp==2.0.0 ; python_full_version >= '3.9'
    # via sphinx
sphinxcontrib-serializinghtml==1.1.5 ; python_full_version < '3.9'
    # via sphinx
sphinxcontrib-serializinghtml==2.0.0 ; python_full_version >= '3.9'
    # via sphinx
sphinxcontrib-spelling==8.0.0 ; python_full_version < '3.10'
    # via cryptography (pyproject.toml)
sphinxcontrib-spelling==8.0.1 ; python_full_version >= '3.10'
    # via cryptography (pyproject.toml)
tomli==2.0.1 ; python_full_version < '3.8'
    # via
    #   build
    #   coverage
    #   mypy
    #   nox
    #   pytest
tomli==2.2.1 ; python_full_version >= '3.8' and python_full_version <= '3.11'
    # via
    #   build
    #   check-sdist
    #   coverage
    #   dependency-groups
    #   mypy
    #   nox
    #   pytest
    #   sphinx
typed-ast==1.5.5 ; python_full_version < '3.8'
    # via mypy
typing-extensions==4.7.1 ; python_full_version < '3.8'
    # via
    #   exceptiongroup
    #   importlib-metadata
    #   mypy
    #   nox
    #   platformdirs
typing-extensions==4.13.2 ; python_full_version >= '3.8'
    # via
    #   exceptiongroup
    #   mypy
urllib3==2.0.7 ; python_full_version < '3.8'
    # via requests
urllib3==2.2.3 ; python_full_version == '3.8.*'
    # via requests
urllib3==2.4.0 ; python_full_version >= '3.9'
    # via requests
uv==0.7.4 ; python_full_version >= '3.8'
    # via nox
virtualenv==20.26.6 ; python_full_version < '3.8'
    # via nox
virtualenv==20.31.2 ; python_full_version >= '3.8'
    # via nox
webencodings==0.5.1 ; python_full_version < '3.8'
    # via bleach
zipp==3.15.0 ; python_full_version < '3.8'
    # via importlib-metadata
zipp==3.20.2 ; python_full_version == '3.8.*'
    # via
    #   importlib-metadata
    #   importlib-resources
zipp==3.21.0 ; python_full_version >= '3.9' and python_full_version < '3.10.2'
    # via importlib-metadata

# The following packages were excluded from the output:
# cffi
# pycparser
# cryptography-vectors
# bcrypt
