-
Notifications
You must be signed in to change notification settings - Fork 1
/
setup.cfg
101 lines (86 loc) · 2.35 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
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
# All configuration for plugins and other utils is defined here.
# Read more about `setup.cfg`:
# https://docs.python.org/3/distutils/configfile.html
# === Linter configuration ===
# You can reuse this configuration in your own projects.
# See: https://wemake-python-stylegui.de/en/latest/pages/usage/integrations/nitpick.html
[flake8]
# Base flake8 configuration:
# https://flake8.pycqa.org/en/latest/user/configuration.html
format = wemake
show-source = True
statistics = False
doctests = True
# Plugins:
max-complexity = 6
max-line-length = 100
# Self settings:
max-imports = 17
min-variable-length = 1
# Excluding some directories:
exclude =
.git
__pycache__
.venv
.eggs
*.egg
dist
# These folders contain code badly written for reasons:
# Project spefic, do not copy.
scripts/**
tests/**
# Exclude some pydoctest checks globally:
ignore =
C408, # allow dict call instead of {}
D100,
D104,
D105, # magic methods without docstrings
D401,
W504,
RST303,
RST304,
DAR103,
DAR203,
WPS110, # wrong variable names like item, true, id
WPS111, # short names
WPS122, # usage of _
WPS603, # allow defining "restricted" magic methods
Z305, # f-strings!!!
Z304, # partial floats like 1. or .5
Z306, # base class not required
W503, # binary operator after line break
per-file-ignores =
# There are multiple fixtures, `assert`s, and subprocesses in tests:
tests/*.py: S101, S105, S404, S603, S607, WPS211, WPS226, WPS323
# Docs can have the configuration they need:
docs/conf.py: WPS407
[isort]
# isort configuration:
# https://github.com/timothycrosley/isort/wiki/isort-Settings
include_trailing_comma = true
use_parentheses = true
# See https://github.com/timothycrosley/isort#multi-line-output-modes
multi_line_output = 3
# Is the same as 100 in flake8:
line_length = 99
skip_glob =
# These folders contain code badly written for reasons:
scripts/**
tests/**
[darglint]
# darglint configuration:
# https://github.com/terrencepreilly/darglint
strictness = long
[yapf]
based_on_style = pep8
column_limit = 100
coalesce_brackets=true
#split_before_first_argument=true
split_before_closing_bracket=false
split_before_named_assigns=false
disable_ending_comma_heuristic=false
split_before_bitwise_operator=true
split_before_arithmetic_operator=true
split_before_logical_operator=true
split_before_dot=true
allow_multiline_lambdas=true