-
Notifications
You must be signed in to change notification settings - Fork 1
/
setup.cfg
168 lines (156 loc) · 3.12 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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
[metadata]
name = isshub
description = Yout essential Git.Hub.Lab companion
long_description = file:README.rst
version = 0
author = Stéphane "Twidi" Angel
author_email = [email protected]
license = MIT
classifiers =
Development Status :: 2 - Pre-Alpha
License :: OSI Approved :: MIT License
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3 :: Only
keywords =
issues
github
gitlab
url = https://github.com/Isshub-io/isshub
requires-python = >=3.8
[options]
zip_safe = True
packages = find:
install_requires =
attrs
[options.packages.find]
exclude =
tests
*.tests
*.tests.*
[options.extras_require]
dev =
ipython
mypy
wheel
tests =
faker
faker-enum
factory-boy
pytest
pytest-bdd
pytest-cov
pytest-lazy-fixture
pytest-sugar
lint=
black
colorama
flake8
flake8-bugbear
flake8-comprehensions
flake8-docstrings
flake8-formatter-abspath
gitpython
isort
pycodestyle
pydocstyle
pylint
docs =
cached-property
pydriller
Pygments
rstcheck
sphinx
sphinx-autodoc-typehints
sphinx-gherkindoc
sphinx_rtd_theme
sphinxprettysearchresults
[mypy]
check_untyped_defs = true
disallow_incomplete_defs = true
# because of django models for example
disallow_subclassing_any = false
disallow_untyped_calls = true
disallow_untyped_decorators = true
disallow_untyped_defs = true
ignore_missing_imports = true
python_version = 3.6
strict_optional = true
warn_incomplete_stub = true
plugins = isshub.domain.utils.mypy_plugin
[mypy-isshub.*.tests.*]
ignore_errors = True
[mypy-isshub.domain.utils.mypy_plugin]
ignore_errors = True
[flake8]
ignore =
# Line too long: we let black manage it
E501
# Line break occurred before a binary operator: we let black manage it
W503
# Allow assigning lambda expressions
E731
# Ignore line length, handled by black
B950
max-complexity = 15
select =
# flake8 error class
F
# mccabe plugin
C
# pycodestyle plugin
E
W
# docstrings (using pydocstyle) plugin
D
# mypy plugin
T4
# bugbear plugin
B
B9
B950
# pep3101 (enforce .format over %) plugin
S001
exclude =
manage.py
stubs.py
*/migrations/*.py
docs/
*.egg-info
dist/
build/
ci/
test_*.py
per-file-ignores =
# ignore mypy missing annotations in tests
test_*:T4
factories.py:T4
isshub/domain/utils/entity.py:T4
[pycodestyle]
max-line-length = 99
[tool:pytest]
addopts =
--cov=isshub
--cov-report term-missing:skip-covered
--doctest-modules
--ignore setup.py
--ignore docs
--ignore ci
--pyargs
[coverage:run]
branch = True
[coverage:report]
exclude_lines =
raise NotImplementedError
[isort]
combine_as_imports=1
include_trailing_comma=true
indent=' '
known_thirdparty_python=factory,pytest,pytest_bdd
known_first_party=isshub
line_length=88
lines_after_imports=2
multi_line_output=3
sections=FUTURE,STDLIB,THIRDPARTY_PYTHON,THIRDPARTY,FIRSTPARTY,LOCALFOLDER
use_parentheses=1