1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
[tox]
envlist =
lint
py{312, 311, 310, 39, 38, 37}
safety
docs
skip_missing_interpreters = True
isolated_build = True
[testenv:lint]
description = Run pre-commit hooks
deps = pre-commit
commands = pre-commit run --all --all-files
[testenv]
description = Run the test suite ({basepython})
package = wheel
wheel_build_env = build_wheel
depends =
# The test suite currently cannot run in parallel due to I/O conflicts.
# To allow tox to run other test environments (like 'docs') in parallel,
# sequential dependencies are listed here for the test suite.
py37: py38
py38: py39
py39: py310
py310: py311
py311: py312
py312: lint
deps = -rtest_requirements.txt
commands = pytest --color=yes --cov-report=html --cov-report=xml --cov-branch --cov-fail-under=100 {posargs}
[testenv:safety]
description = Check with safety
deps = safety==2.3.5
commands = safety --disable-telemetry check --full-report
[testenv:docs]
description = Build the documentation
deps = -rdocs/requirements.txt
commands = sphinx-build -Wab html docs/ docs/_build/html
[testenv:servedocs]
description = Host the docs locally and rebuild on changes
deps = -rdocs/requirements.txt
commands = sphinx-autobuild -Wa docs/ docs/_build/html --open-browser --port 9812 --watch *.md --watch *.rst --watch *.py --watch cookiecutter
|