[tox] envlist = validate linting typecheck [testenv:validate] skip_install = true dependency_groups = validate commands = validate-pyproject ./pyproject.toml [testenv:docs] skip_install = true deps = -r {toxinidir}/requirements.txt commands = # generate `docs/source/api.rst` with module listing {envpython} ./generate_api_module_listing.py # regenerate autodoc stub pages sphinx-autogen docs/source/api.rst # build api docs sphinx-build -b html -d ../build/docs/doctrees docs/source ../build/docs/api/py {posargs} setenv = PYTHONPATH = {toxinidir}/. [testenv:typecheck] skip_install = true deps = -r {toxinidir}/requirements.txt dependency_groups = typecheck commands = mypy --install-types selenium {posargs} [testenv:linting] skip_install = true dependency_groups = lint commands = ruff check --fix --show-fixes --exit-non-zero-on-fix {posargs:.} ruff format --exit-non-zero-on-format {posargs:.}