[tox] minversion = 4.0.0 envlist = lint docs py{37,38,39,310,311,312,313} isolated_build = True [testenv] description = Run unit-testing deps = poetry # do not put * in passenv as it may break builds due to reduced isolation passenv = CI GITHUB_* HOME PYTEST_* SSH_AUTH_SOCK TERM setenv = PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1 commands = poetry install pytest --cov-report term-missing --cov=rich tests/ {posargs} [testenv:lint] description = Runs all linting tasks commands_pre = poetry install -vv --with lint commands = ; poetry install --only dev # as long GHA pipelines are not configured to use tox, we should call # `make` in order to make testing similar and prevent divergence. make format-check make typecheck deps = poetry skip_install = true allowlist_externals = make poetry [testenv:docs] description = Builds documentation changedir = docs deps = -r docs/requirements.txt commands = sphinx-build -M html source build