/
tox.ini
103 lines (91 loc) · 2.33 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
# Quicktro
# --------
#
# To use, run::
#
# tox
#
# To list all entry points and their descriptions, run::
#
# tox -alv
#
# To run a specific environment, run::
#
# tox -e {environment}
#
# To add positional arguments after a command, run::
#
# tox -e {environment} -- {posargs}
#
[tox]
envlist=flake8,pylint,docformatter,pydocstyle,isort
skipsdist=True
[base]
deps =
Django==1.11.18
[testenv]
# The default environment. All other environments extend this one.
basepython = python3.6
passenv = USER
[pylint]
deps =
pylint==2.5.3
[pycodestyle]
# Both flake8 and pycodestyle configuration overlap, be sure to update both!
ignore = E501,W503,W504,E704,E731,E701
max-line-length = 100
statistics = True
explain = True
deps =
autopep8==1.4.3
pycodestyle==2.5.0
[docformatter]
deps =
docformatter==1.0
untokenize==0.1.1
[pydocstyle]
# D101: Missing docstring in public class
# D212: Multi-line docstring summary should start at the first line
# D203,D204: 1 blank line required before/after class docstring
ignore = D101,D212,D203,D204
deps = pydocstyle==5.0.2
six==1.12.0
snowballstemmer==1.2.1
[testenv:pylint]
# NOTE: Specific instances of pylint rules can be disabled with a
#pylint:disable=example-rule
description = Quick and basic Lint using 'pylint' Tool
deps =
{[base]deps}
{[pylint]deps}
commands =
{envbindir}/pylint --rcfile=.pylintrc \
{toxinidir}/teamwork/{posargs}
[testenv:pydocstyle]
description = Checks docstrings for compliance with a subset of google conventions
deps =
{[pydocstyle]deps}
commands =
{envbindir}/pydocstyle --source --explain --count \
--convention=google \
--add-ignore D101,D212,D213,D203,D204 \
{toxinidir}/teamwork/{posargs}
[testenv:docformatter]
description = Automatically formats docstrings to follow a subset of the PEP 257 conventions. NOTE: We are using google conventions so this may be outdated.
deps =
{[docformatter]deps}
commands =
{envbindir}/docformatter \
--recursive \
--pre-summary-newline \
--in-place \
--wrap-summaries=100 \
--wrap-descriptions=100 \
{toxinidir}
[testenv:isort]
description = Automatically sort python imports
deps =
isort==4.3.17
commands =
{envbindir}/isort --quiet --apply --recursive --combine-star --atomic \
{toxinidir}