-
Notifications
You must be signed in to change notification settings - Fork 4
/
setup.cfg
49 lines (49 loc) · 1.66 KB
/
setup.cfg
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
[flake8]
max-line-length = 88
docstring-convention = google
docstring_style = google
strictness = long
max-complexity = 10
use_class_attributes_order_strict_mode = True
select =
AZ400, # alphabetize __all__ list
B, # bugbear
B9, # bugbear opinionated errors; disabled by default
C4 # comprehensions
C90, # mccabe
CCE, # class attributes order
D, # docstrings
DAR, # darglint (another docstring linter)
E, # flake8 and pycodestyle error
F, # pyflakes
FS, # use-fstring
N8, # pep8-naming
PT, # pytest style
W6, # pycodestyle deprecation warnings
ignore =
# allow `@pytest.fixture` (no parens)
PT001,
# allow `@pytest.mark.foo` (no parens)
PT023,
# bug-bear line length; just use flake8 line length limit
B950,
# whitespace before ':' (black conflict)
E203,
# Excess exceptions in "Raises" (I like to document sub-private-methods)
DAR402,
# too many leading '#' for block comment
E266,
per-file-ignores =
# E800: config file has commented out code as examples
alembic/env.py:E800
# D1: database migrations don't need docstrings
# I: isort errors tend to misinterpret alembic as a local package
alembic/versions/*.py:D1,I
# B907: manually specified quotes are usually intentional for testing purposes
# C901: don't check complexity for tests
# DAR101: pytest uses fixtures as arguments, documenting each use is unnecessary
# DAR102: factory arguments with fixtures can be weird
tests/*:B907,C901,DAR101,DAR102
# F401: import unused
# F403: allow * imports (used for packaging in some cases)
*/__init__.py:F401,F403