-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.cfg
154 lines (123 loc) · 3.72 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
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
[flake8]
# format = wemake
# show-source = True
# statistics = False
max-line-length = 88
# Estamos sobrescribiendo los `ignore` por defecto. Los que no estén aquí como W504
# estarán activos
# https://pycodestyle.pycqa.org/en/latest/intro.html#error-codes
ignore =
# No pita si falta el docstrings, pero si existe debe seguir las convenciones
D1,
# Pero teniendo en cuenta que no hay criterio único, desactivamos todo
# D, DAR, RST #
# Google Python style is not RST until after processed by Napoleon
# See https://github.com/peterjc/flake8-rst-docstrings/issues/17
RST201, RST203, RST301,
# flake8-eradicate es demasiado agresivo para nosotros
E800,
# W503 line break before binary operator
# W504 line break after binary operator. Este es compatible con black
W503,
# TODO. DE AQUÍ EN ADELANTE DEBERÍAN REEVALUARSE
# Found wrong variable name: obj
WPS110,
# Found too many module members: 10 > 7
WPS202,
# Found too short name: c < 2
WPS111,
# Forbid f strings
WPS305,
# WPS348 Found a line that starts with a dot. Incompatible con black
WPS348,
# WPS412 Found `__init__.py` module with logic. No sense for Pyramid projects.
WPS412,
# WPS432 Found magic number. Nice to have, but a bit buggy
WPS432,
# HANDLED BY BLACK. Delegates to black all the followings checks
# flake8-commas vs black es un TODO
C812,
C815,
# E501 Line too long. black sometimes allow longer lines to don't break strings
E501,
# black compatibility with flake8: https://black.readthedocs.io/en/latest/guides/using_black_with_other_tools.html#flake8
E203
# # Ignoring some errors in some files:
per-file-ignores =
# Enable `assert` keyword and magic numbers for tests:
utentes/tests/**/*.py: S101, WPS226, WPS432
# WPS601 Found shadowed class attribute
# https://github.com/wemake-services/wemake-python-styleguide/issues/1197
**/models/**: WPS601
model.py: WPS601
extend-exclude =
node_modules,
build,
dist,
.eggs,
*.egg,
geomet
# wemake
doctests = True
# flake8-docstrings, pydocstyle
# D100 - D417
# numpy | google | pep257 | all
# con `all` seleccionamos los errores a mano mediante ignore/select
docstring-convention = google
# darglint
# DAR001 - DAR501
# numpy | google | sphinx
docstring_style=google
# short | long | full
strictness=long
# flake8-rst-docstrings
# RST201 - RST903
# necesita configuración para afinar el comportamiento
# mccabe
# C901
# TODO. Ir bajando este número. 6 podría ser un buen target.
max-complexity = 10
# flake8-coding
# C101 - C103
no-accept-encodings = True
# flake8-debugger
# T100
# flake8-isort
# I001 - I005
# flake8-print
# T001 - T004
# flake8-quotes
# Q000 - Q003
inline-quotes = double
multiline-quotes = double
docstring-quotes = double
# flake8-broken-line
# N400
# pep8-naming
# N801 - N817
# opciones con sus valores por defecto
# --ignore-names=['setUp', 'tearDown', 'setUpClass', 'tearDownClass', 'setUpTestData', 'failureException', 'longMessage', 'maxDiff']
# --classmethod-decorators=['classmethod']
# --staticmethod-decorators=['staticmethod']
# flake8-bugbear
# B001 - B013
# B301 - B306
# B901 - B950 # opcionales y están cubiertos por otros plugins
# flake8-comprehensions
# C400 - C416
# flake8-bandit
# Son los de `bandit` cambiando la B por S
# S
# flake8-commas
# C812 - C819
# flake8-class-attributes-order
# TODO: ¿Es necesario definir un orden propio? En Django por defecto obliga a poner Meta
# antes de los Fields, y las ForeignKey como últimos Fields
use_class_attributes_order_strict_mode = True
# CCE001 - CCE002
# flake8-string-format
# P101 - P103, P201 - P205, P301 - P302
# dlint
# DUO101 - DUO138
# flake8-eradicate
# E800