sanic-routing>=23.6.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]
docutils
enum-tools[sphinx]
bandit
pytest==7.1.*
pygments
tox
coverage
cryptography
m2r2
pytest-benchmark
flake8
chardet==3.*
mistune<2.0.0
pytest-sanic
isort>=5.0.0
black
towncrier
uvicorn<0.15.0
slotscheck<1,>=0.8.0
sanic-testing>=23.6.0
sphinx>=2.1.2
beautifulsoup4
sphinx_rtd_theme>=0.4.3
mypy

[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.*
flake8
black
isort>=5.0.0
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

[ext]
sanic-ext

[http3]
aioquic

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

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