[tox] envlist = python minversion = 3.25 # https://github.com/jaraco/skeleton/issues/6 tox_pip_extensions_ext_venv_update = true toxworkdir={env:TOX_WORK_DIR:.tox} [testenv] deps = # Ideally all the dependencies should be set as "extras" setenv = PYTHONWARNDEFAULTENCODING = 1 SETUPTOOLS_ENFORCE_DEPRECATION = 1 commands = pytest {posargs} usedevelop = True extras = testing passenv = SETUPTOOLS_USE_DISTUTILS PRE_BUILT_SETUPTOOLS_WHEEL PRE_BUILT_SETUPTOOLS_SDIST TIMEOUT_BACKEND_TEST # timeout (in seconds) for test_build_meta windir # required for test_pkg_resources # honor git config in pytest-perf HOME [testenv:integration] deps = {[testenv]deps} extras = testing-integration passenv = {[testenv]passenv} DOWNLOAD_PATH setenv = PROJECT_ROOT = {toxinidir} commands = pytest --integration {posargs:-vv --durations=10} setuptools/tests/integration # use verbose mode by default to facilitate debugging from CI logs [testenv:docs] extras = docs testing changedir = docs commands = python -m sphinx -W --keep-going . {toxinidir}/build/html python -m sphinxlint [testenv:finalize] skip_install = True deps = towncrier bump2version passenv = * commands = python tools/finalize.py [testenv:vendor] skip_install = True deps = path commands = python -m tools.vendored [testenv:generate-validation-code] skip_install = True deps = validate-pyproject[all]==0.12.2 commands = python -m tools.generate_validation_code [testenv:release] skip_install = True deps = build twine>=3 jaraco.develop>=7.1 passenv = TWINE_PASSWORD GITHUB_TOKEN setenv = TWINE_USERNAME = {env:TWINE_USERNAME:__token__} commands = python -c "import shutil; shutil.rmtree('dist', ignore_errors=True)" # unset tag_build and tag_date pypa/setuptools#2500 python setup.py egg_info -Db "" saveopts python -m build python -m twine upload dist/* python -m jaraco.develop.create-github-release