-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.cfg
108 lines (89 loc) · 2.34 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
# All configuration for plugins and other utils is defined here.
# Read more about `setup.cfg`:
# https://docs.python.org/3/distutils/configfile.html
[flake8]
# Base flake8 configuration:
# https://flake8.pycqa.org/en/latest/user/configuration.html
format = wemake
show-source = True
statistics = False
doctests = True
# darglint configuration:
# https://github.com/terrencepreilly/darglint
strictness = long
docstring-style = numpy
# Plugins:
max-complexity = 6
max-line-length = 80
# wemake-python-styleguide settings:
i-control-code = False
# Disable some pydocstyle checks:
# Exclude some pydoctest checks globally:
ignore = D100, D104, D106, D401, W504, X100, RST303, RST304, DAR103, DAR203
# Excluding some directories:
exclude =
.git
__pycache__
.venv
.eggs
*.egg
# Ignoring some errors in some files:
per-file-ignores =
# We allow re-export:
mypy_extras/__init__.py: F401
# Plugin can have some ugly code:
mypy_extras/plugin/*.py: S101
# Enable `assert` keyword and magic numbers for tests:
tests/*.py: S101, WPS226, WPS432
[isort]
# isort configuration:
# https://github.com/timothycrosley/isort/wiki/isort-Settings
profile = wemake
[tool:pytest]
# Directories that are not visited by pytest collector:
norecursedirs = *.egg .eggs dist build docs .tox .git __pycache__
# Extra options:
addopts =
--strict-config
--strict-markers
--tb=short
--doctest-modules
--cov=mypy_extras
--cov-report=term:skip-covered
--cov-report=html
--cov-report=xml
--cov-branch
--cov-fail-under=100
# pytest-mypy-plugins:
--mypy-ini-file=setup.cfg
[coverage:run]
omit =
# We test mypy plugins with `pytest-mypy-plugins`,
# which does not work with coverage:
mypy_extras/plugin/*
[mypy]
# mypy configurations: http://bit.ly/2zEl9WI
allow_redefinition = False
check_untyped_defs = True
disallow_any_explicit = True
disallow_any_generics = True
disallow_untyped_calls = True
ignore_errors = False
ignore_missing_imports = True
implicit_reexport = False
local_partial_types = True
strict_optional = True
strict_equality = True
no_implicit_optional = True
warn_no_return = True
warn_unused_ignores = True
warn_redundant_casts = True
warn_unused_configs = True
warn_unreachable = True
plugins =
mypy_extras.plugin.entrypoint
[doc8]
# doc8 configuration: https://pypi.org/project/doc8/
ignore-path = docs/_build
max-line-length = 80
sphinx = True