sanic-routing>=23.12.0
httptools>=0.0.10
aiofiles>=0.6.0
websockets>=10.0
multidict<7.0,>=5.0
html5tagger>=1.2.1
tracerite>=1.0.0
typing-extensions>=4.4.0

[:sys_platform != "win32" and implementation_name == "cpython"]
uvloop>=0.15.0
ujson>=1.35

[all]
bandit
docutils
cryptography
pytest-benchmark
uvicorn<0.15.0
mypy
sanic-testing>=23.6.0
tox
m2r2
coverage
sphinx>=2.1.2
sphinx_rtd_theme>=0.4.3
mistune<2.0.0
ruff
beautifulsoup4
pygments
chardet==3.*
enum-tools[sphinx]
autodocsumm>=0.2.11
pytest-sanic
slotscheck<1,>=0.8.0
pytest==7.1.*
towncrier

[all:sys_platform != "win32" and implementation_name == "cpython"]
types-ujson

[dev]
sanic-testing>=23.6.0
pytest==7.1.*
coverage
beautifulsoup4
pytest-sanic
pytest-benchmark
chardet==3.*
ruff
bandit
mypy
docutils
pygments
uvicorn<0.15.0
slotscheck<1,>=0.8.0
cryptography
tox
towncrier

[dev:sys_platform != "win32" and implementation_name == "cpython"]
types-ujson

[docs]
sphinx>=2.1.2
sphinx_rtd_theme>=0.4.3
docutils
pygments
m2r2
enum-tools[sphinx]
mistune<2.0.0
autodocsumm>=0.2.11

[ext]
sanic-ext

[http3]
aioquic

[test]
sanic-testing>=23.6.0
pytest==7.1.*
coverage
beautifulsoup4
pytest-sanic
pytest-benchmark
chardet==3.*
ruff
bandit
mypy
docutils
pygments
uvicorn<0.15.0
slotscheck<1,>=0.8.0

[test:sys_platform != "win32" and implementation_name == "cpython"]
types-ujson
