Source code

Revision control

Copy as Markdown

Other Tools

[tox]
envlist = py36, py37, py38, py39, py310, pypy3, lint, docs, packaging
[gh-actions]
python =
3.6: py36
3.7: py37
3.8: py38
3.9: py39, lint, docs, packaging, h2spec
3.10: py310
pypy3: pypy3
[testenv]
passenv =
GITHUB_*
deps =
pytest>=6.0.1,<7
pytest-cov>=2.10.1,<3
pytest-xdist>=2.0.0,<3
hypothesis>=5.5,<7
commands =
pytest --cov-report=xml --cov-report=term --cov=h2 {posargs}
[testenv:pypy3]
# temporarily disable coverage testing on PyPy due to performance problems
commands = pytest {posargs}
[testenv:lint]
deps =
flake8>=3.9.1,<4
commands = flake8 src/ test/
[testenv:docs]
deps =
sphinx>=4.0.2,<5
whitelist_externals = make
changedir = {toxinidir}/docs
commands =
make clean
make html
[testenv:packaging]
basepython = python3.9
deps =
check-manifest==0.46
readme-renderer==29.0
twine>=3.4.1,<4
whitelist_externals = rm
commands =
rm -rf dist/
check-manifest
python setup.py sdist bdist_wheel
twine check dist/*
[testenv:publish]
basepython = {[testenv:packaging]basepython}
deps =
{[testenv:packaging]deps}
whitelist_externals = {[testenv:packaging]whitelist_externals}
commands =
{[testenv:packaging]commands}
twine upload dist/*
[testenv:graphs]
basepython = python3.8
deps =
graphviz==0.14.1
commands =
python visualizer/visualize.py -i docs/source/_static
[testenv:h2spec]
basepython = python3.8
deps =
twisted[tls]==20.3.0
whitelist_externals = {toxinidir}/test/h2spectest.sh
commands =
{toxinidir}/test/h2spectest.sh