secp256k1<1.0.0,>=0.14.0
bech32<2.0.0,>=1.2.0
aiohttp<4.0.0,>=3.8.0
aiohttp-socks<1.0.0,>=0.8.0

[:python_version < "3.9"]
typing-extensions>=4.0.0

[all]
nostr-tools[dev,docs,security,test]

[dev]
pytest<8.0.0,>=7.4.0
pytest-asyncio<0.24.0,>=0.23.0
pytest-cov<5.0.0,>=4.0.0
pytest-mock<4.0.0,>=3.12.0
pytest-timeout<3.0.0,>=2.1.0
pytest-xdist<4.0.0,>=3.3.0
ruff<1.0.0,>=0.4.0
mypy<2.0.0,>=1.8.0
pre-commit<4.0.0,>=3.5.0
build<2.0.0,>=0.10.0
twine<6.0.0,>=4.0.0
setuptools-scm<9.0.0,>=7.0.0
bandit[toml]<2.0.0,>=1.7.0
safety<4.0.0,>=2.3.0
pip-audit<3.0.0,>=2.6.0
sphinx<8.0.0,>=7.2.0
sphinx-rtd-theme<4.0.0,>=1.3.0
myst-parser<4.0.0,>=0.19.0
sphinx-autodoc-typehints<3.0.0,>=1.24.0
sphinxext-opengraph<1.0.0,>=0.8.0
sphinx-design<1.0.0,>=0.4.0
furo>=2025.7.19

[docs]
sphinx<8.0.0,>=7.2.0
sphinx-rtd-theme<4.0.0,>=1.3.0
myst-parser<4.0.0,>=0.19.0
sphinx-autodoc-typehints<3.0.0,>=1.24.0
sphinxext-opengraph<1.0.0,>=0.8.0
sphinx-design<1.0.0,>=0.4.0
furo>=2025.7.19

[security]
bandit[toml]<2.0.0,>=1.7.0
safety<4.0.0,>=2.3.0
pip-audit<3.0.0,>=2.6.0

[test]
pytest<8.0.0,>=7.4.0
pytest-asyncio<0.24.0,>=0.23.0
pytest-cov<5.0.0,>=4.0.0
pytest-mock<4.0.0,>=3.12.0
pytest-timeout<3.0.0,>=2.1.0
pytest-xdist<4.0.0,>=3.3.0
