-c ../pinned-requirements.txt
-c constraints.txt

aiohttp-devtools>=1.1,<2
build>=1.1,<1.2
pylint>3.3,<4
pre-commit>=3.3.3,<4
ruff>=0.11,<0.12
uv>=0.10.0,<0.11
uv-build>=0.10.0,<0.11
curlylint>=0.13.1,<1
click>=8.1.2,<9
mock>=5.1,<5.2
pytest>=7.1.3,<8
pytest-html>=1.20.0,<2
pytest-xdist>=2.2.1,<3
pytest-instafail>=0.4.2,<1
# https://github.com/hail-is/hail/issues/14130
pytest-asyncio>=0.14.0,<0.23
pytest-timestamper>=0.0.9,<1
pytest-timeout>=2.1,<3
pytest-mock>=3.14,<4
pyright[nodejs]>=1.1.349,<1.2
sphinx>=6,<7
sphinx-autodoc-typehints==1.23.0
nbsphinx>=0.8.8,<1
sphinx_rtd_theme>=1.0.0,<2
jupyter>=1.0.0,<2
sphinxcontrib.katex>=0.9.0,<1
fswatch>=0.1.1,<1
# https://github.com/jupyter/nbconvert/issues/2092
nbconvert<7.14

# library type stubs
types-Deprecated
types-PyMySQL
types-PyYAML
types-chardet
types-decorator
types-python-dateutil
# https://github.com/python/typeshed/blob/main/stubs/requests/METADATA.toml#L5-L10
types-requests<2.31.0.7
types-setuptools
types-six
types-tabulate
types-urllib3
pillow>=10.0.1 # not directly required, pinned by Snyk to avoid a vulnerability

matplotlib>=3.5,<4 # for benchmarks
