[tox] minversion = 2.4.0 envlist = docs,flake8,mypy,twine,coverage,py{36,37,38,39,310},du{14,15,16,17} [testenv] usedevelop = True passenv = https_proxy http_proxy no_proxy COLORTERM PERL PERL5LIB PYTEST_ADDOPTS EPUBCHECK_PATH TERM description = py{36,37,38,39,310}: Run unit tests against {envname}. du{12,13,14}: Run unit tests with the given version of docutils. deps = du14: docutils==0.14.* du15: docutils==0.15.* du16: docutils==0.16.* du17: docutils==0.17.* extras = test setenv = PYTHONWARNINGS = all PYTEST_ADDOPTS = {env:PYTEST_ADDOPTS:} --color yes commands= python -X dev -m pytest --durations 25 {posargs} [testenv:du-latest] commands = python -m pip install "git+https://repo.or.cz/docutils.git#subdirectory=docutils" {[testenv]commands} [testenv:flake8] basepython = python3 description = Run style checks. whitelist_externals = flake8 extras = lint commands = flake8 {posargs} [testenv:isort] basepython = python3 description = Run import sorting checks. whitelist_externals = isort extras = lint commands = isort --check-only --diff . [testenv:coverage] basepython = python3 description = Run code coverage checks. setenv = PYTEST_ADDOPTS = --cov sphinx --cov-config "{toxinidir}/setup.cfg" commands = {[testenv]commands} coverage report [testenv:mypy] basepython = python3 description = Run type checks. extras = lint commands= mypy sphinx/ [testenv:docs] basepython = python3 description = Build documentation. extras = docs commands = python setup.py build_sphinx {posargs} [testenv:docslint] basepython = python3 description = Lint documentation. extras = docs commands = python utils/doclinter.py CHANGES CONTRIBUTING.rst README.rst doc/ [testenv:twine] basepython = python3 description = Lint package. deps = twine commands = python setup.py release bdist_wheel sdist twine check dist/* [testenv:bindep] description = Install binary dependencies. deps = bindep commands = bindep test