[tox] envlist = lint, py37,py38,py39,py310,pypy3, py38-cover,coverage, docs [testenv] commands = python --version pytest {posargs:} extras = testing setenv = COVERAGE_FILE=.coverage.{envname} [testenv:py38-cover] commands = python --version pytest --cov {posargs:} [testenv:lint] skip_install = true commands = flake8 src/pyramid tests setup.py isort --check-only --df src/pyramid tests setup.py black --check --diff src/pyramid tests setup.py python setup.py check -r -s -m check-manifest deps = flake8~=5.0.4 black~=22.6.0 isort~=5.10 readme_renderer check-manifest [testenv:docs] allowlist_externals = make commands = make -C docs {posargs:doctest html epub} BUILDDIR={envdir} "SPHINXOPTS=-W -E -D suppress_warnings=ref.term" extras = docs [testenv:pdf] allowlist_externals = make commands = make -C docs latexpdf BUILDDIR={envdir} "SPHINXOPTS=-W -E -D suppress_warnings=ref.term" extras = docs [testenv:coverage] skip_install = true commands = coverage combine coverage xml coverage report --fail-under=100 deps = coverage setenv = COVERAGE_FILE=.coverage depends = py38-cover [testenv:format] skip_install = true commands = isort src/pyramid tests setup.py black src/pyramid tests setup.py deps = black~=22.1.0 isort~=5.10 [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