-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.cfg
More file actions
107 lines (88 loc) · 3.04 KB
/
Copy pathsetup.cfg
File metadata and controls
107 lines (88 loc) · 3.04 KB
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
# All configuration for plugins and other utils is defined here.
# Read more about `setup.cfg`:
# https://docs.python.org/3/distutils/configfile.html
[flake8]
format = default
show-source = True
statistics = False
doctests = True
enable-extensions = G
# Flake plugins:
max-line-length = 120
max-complexity = 6
# Excluding some directories:
exclude = .git,__pycache__,.venv,.eggs,*.egg, migrations, apps.py
# Disable some pydocstyle checks:
ignore = D100, D104, D106, D401, X100, W504, RST303, RST304, DAR103, DAR203, WPS305, D105, WPS323, WPS306, WPS602, WPS100, WPS115, S105
allowed-domain-names = info
# Docs: https://github.com/snoack/flake8-per-file-ignores
# You can completely or partially disable our custom checks,
# to do so you have to ignore `WPS` letters for all python files:
per-file-ignores =
# Allow `__init__.py` with logic for configuration:
manage.py: D103, WPS433, Q000, C812, WPS326
server/settings/*.py: WPS226, WPS407, WPS412, WPS432, WPS221, C812, E501, WPS407, WPS421, F401, I001, I004
tests/*.py: WPS306, S105, S101, S106, PT009
server/*/migrations/*.py: WPS102, WPS114, WPS432
server/schema.py: WPS301, WPS458, WPS219
python_base_graphql_api/schema.py: WPS301
*/graphql/inputs.py: WPS202
*/graphql/outputs.py: WPS202
*/graphql/mutations.py: WPS115, WPS431, D102, WPS226
*/mutations/*.py: WPS115, WPS431, D102, WPS226
*/models.py: WPS115, WPS110, WPS432, S105, WPS601
server/__init__.py: WPS412, WPS410
server/core/graphql/types/*.py: WPS121, WPS609, WPS437, S101, WPS122, Q000, P101, WPS326, WPS454, WPS404, B008, WPS231, WPS210, WPS211, C901, WPS232, WPS238
server/core/graphql/__init__.py: WPS412
server/core/auth/jwt/models.py: WPS214, WPS601, WPS110, WPS432
; graphql_core/__init__.py: WPS412
exceptions.py:
tests/*.py: WPS118, WPS210, WPS437, WPS431
[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
default_section = FIRSTPARTY
line_length = 80
[darglint]
# darglint configuration:
# https://github.com/terrencepreilly/darglint
strictness = long
[coverage:run]
plugins =
django_coverage_plugin
[mypy]
# Mypy configuration:
# https://mypy.readthedocs.io/en/latest/config_file.html
allow_redefinition = False
check_untyped_defs = True
disallow_untyped_decorators = True
disallow_any_explicit = True
disallow_any_generics = True
disallow_untyped_calls = True
ignore_errors = True
ignore_missing_imports = True
implicit_reexport = False
local_partial_types = True
strict_optional = True
strict_equality = True
no_implicit_optional = True
warn_unused_ignores = True
warn_redundant_casts = True
warn_unused_configs = True
warn_unreachable = True
warn_no_return = True
plugins =
mypy_django_plugin.main
[mypy.plugins.django-stubs]
django_settings_module = server.settings
[mypy-users.*.migrations.*]
# Django migrations should not produce any errors:
ignore_errors = True
[doc8]
ignore-path = docs/_build
max-line-length = 80
sphinx = True