| [tox] |
| envlist = |
| lint, |
| py37,py38,py39,py310,pypy38, |
| coverage, |
| docs |
| isolated_build = True |
| |
| [testenv] |
| commands = |
| python --version |
| python -mpytest \ |
| pypy38: --no-cov \ |
| {posargs:} |
| extras = |
| testing |
| setenv = |
| COVERAGE_FILE=.coverage.{envname} |
| |
| [testenv:coverage] |
| skip_install = True |
| commands = |
| coverage combine |
| coverage xml |
| coverage report --fail-under=100 |
| deps = |
| coverage |
| setenv = |
| COVERAGE_FILE=.coverage |
| |
| [testenv:docs] |
| whitelist_externals = |
| make |
| commands = |
| make -C docs html BUILDDIR={envdir} "SPHINXOPTS=-W -E -D suppress_warnings=ref.term" |
| extras = |
| docs |
| |
| [testenv:lint] |
| skip_install = True |
| commands = |
| isort --check-only --df src/waitress tests |
| black --check --diff . |
| check-manifest |
| # flake8 src/waitress/ tests |
| # build sdist/wheel |
| python -m build . |
| twine check dist/* |
| deps = |
| black |
| build |
| check-manifest |
| flake8 |
| flake8-bugbear |
| isort |
| readme_renderer |
| twine |
| |
| [testenv:format] |
| skip_install = true |
| commands = |
| isort src/waitress tests |
| black . |
| deps = |
| black |
| isort |
| |
| [testenv:build] |
| skip_install = true |
| commands = |
| # clean up build/ and dist/ folders |
| python -c 'import shutil; shutil.rmtree("build", ignore_errors=True)' |
| # Make sure we aren't forgetting anything |
| check-manifest |
| # build sdist/wheel |
| python -m build . |
| # Verify all is well |
| twine check dist/* |
| |
| deps = |
| build |
| check-manifest |
| readme_renderer |
| twine |