1[tox]
2envlist =
3    py3{12,11,10,9,8,7}
4    pypy310
5    style
6    typing
7    docs
8skip_missing_interpreters = true
9
10[testenv]
11package = wheel
12deps = -r requirements/tests.txt
13commands = pytest -v --tb=short --basetemp={envtmpdir} {posargs}
14
15[testenv:style]
16deps = pre-commit
17skip_install = true
18commands = pre-commit run --all-files
19
20[testenv:typing]
21deps = -r requirements/typing.txt
22commands = mypy
23
24[testenv:docs]
25deps = -r requirements/docs.txt
26commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html
27
28[testenv:update-requirements]
29deps =
30    pip-tools
31    pre-commit
32skip_install = true
33change_dir = requirements
34commands =
35    pre-commit autoupdate -j4
36    pip-compile -U build.in
37    pip-compile -U docs.in
38    pip-compile -U tests.in
39    pip-compile -U typing.in
40    pip-compile -U dev.in
41