-
-
Notifications
You must be signed in to change notification settings - Fork 63
/
Copy pathtox.ini
69 lines (61 loc) · 1.31 KB
/
tox.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
[tox]
envlist =
py3{13,12,11,10,9}
py3{13,12,11,10,9}-async
style
typing-{mypy,pytype,pyright}
security-{safety,bandit}
docs
skip_missing_interpreters = true
[testenv]
package = wheel
wheel_build_env = .pkg
envtmpdir = {toxworkdir}/tmp/{envname}
constrain_package_deps = true
use_frozen_constraints = true
deps =
-r requirements/tests.txt
async: Flask[async]>=3.0.0,<4.0
commands =
pytest -n auto -vv --tb=short --basetemp={envtmpdir} {posargs}
[testenv:style]
deps = pre-commit
skip_install = true
commands =
pre-commit run --all-files --show-diff-on-failure
[testenv:typing-mypy]
basepython=python3.13
deps =
-r requirements/typing.txt
commands =
mypy --install-types --non-interactive src/
[testenv:typing-pytype]
basepython=python3.11
deps =
-r requirements/typing.txt
commands =
pytype
[testenv:typing-pyright]
basepython=python3.13
deps =
-r requirements/typing.txt
commands =
pyright
[testenv:security-safety]
basepython=python3.13
deps =
safety
commands =
safety check -r requirements/production.txt
[testenv:security-bandit]
basepython=python3.13
deps =
bandit
commands =
bandit -r src/
[testenv:docs]
basepython=python3.13
deps =
-r requirements/docs.txt
commands =
sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html