-
Notifications
You must be signed in to change notification settings - Fork 5
/
tox.ini
130 lines (113 loc) · 2.76 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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
[tox]
isolated_build = True
envlist = bandit, safety, check-copyright, black-check, isort-check, vulture, flake8, mypy, docs, py3{8,9,10,11}
[tox:.package]
basepython = python3
[testenv]
setenv =
PYTHONPATH = {toxinidir}
deps =
pytest>=7.3.1,<7.4.0
pytest-cov>=4.1.0,<4.2.0
pytest-randomly>=3.12.0,<3.13.0
hypothesis-pytest>=0.19.0,<0.20.0
hypothesis>=6.75.9,<6.76.0
mistune>=2.0.5,<2.1.0
allowlist_externals = pytest
commands =
pytest --basetemp={envtmpdir} --doctest-modules \
pylogics tests/ \
--cov=pylogics \
--cov-report=xml \
--cov-report=html \
--cov-report=term
[testenv:py{37,38,39,310}]
commands =
{[testenv]commands}
deps =
[testenv:flake8]
skip_install = True
deps =
flake8
flake8-bugbear>=23.5.9,<23.6.0
flake8-docstrings>=1.7.0,<1.8.0
flake8-eradicate>=1.5.0,<1.6.0
flake8-isort>=6.0.0,<6.1.0
pydocstyle
commands =
flake8 pylogics tests scripts
[testenv:mypy]
skip_install = True
deps =
mypy>=1.3.0,<1.4.0
hypothesis>=6.75.9,<6.76.0
packaging>=23.0,<24
importlib-metadata>=6.6.0,<6.7.0
types-requests>=2.31.0.1,<2.31.1.0
types-setuptools>=67.8.0.0,<67.8.1.0
types-toml>=0.10.8.6,<0.10.9.0
commands =
mypy pylogics tests scripts
[testenv:pylint]
skipdist = True
deps = pylint>=2.17.4,<2.18.0
commands = pylint pylogics tests scripts
[testenv:black]
skip_install = True
deps = black>=23.3.0,<23.4.0
commands = black pylogics tests scripts
[testenv:black-check]
skip_install = True
deps = black>=23.3.0,<23.4.0
commands = black pylogics tests scripts --check --verbose
[testenv:isort]
skip_install = True
deps = isort>=5.12.0,<5.13.0
commands = isort pylogics tests scripts
[testenv:isort-check]
skip_install = True
deps = isort>=5.12.0,<5.13.0
commands = isort --check-only pylogics tests scripts
[testenv:bandit]
skipsdist = True
skip_install = True
deps = bandit>=1.7.5,<1.8.0
commands = bandit pylogics tests scripts
[testenv:safety]
skipsdist = True
skip_install = True
deps = safety>=2.3.5,<2.4.0
commands = safety
[testenv:docs]
skip_install = True
deps =
mkdocs>=1.4.3,<1.5.0
mkdocs-material>=9.1.15,<9.2.0
markdown-include>=0.8.1,<0.9.0
pymdown-extensions>=10.0.1,<10.1.0
markdown>=3.3.4,<3.4.0
mknotebooks>=0.7.1,<0.8.0
commands =
mkdocs build --clean
[testenv:docs-serve]
skip_install = True
deps =
mkdocs>=1.4.3,<1.5.0
mkdocs-material>=9.1.15,<9.2.0
markdown-include>=0.8.1,<0.9.0
pymdown-extensions>=10.0.1,<10.1.0
markdown>=3.3.4,<3.4.0
mknotebooks>=0.7.1,<0.8.0
commands =
mkdocs build --clean
python -c 'print("###### Starting local server. Press Control+C to stop server ######")'
mkdocs serve
[testenv:check-copyright]
skip_install = True
deps =
commands = python3 scripts/check_copyright.py
[testenv:vulture]
skipsdist = True
skip_install = True
deps = vulture>=2.7,<3
commands = vulture pylogics scripts/whitelist.py