-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathsetup.cfg
183 lines (168 loc) · 4.62 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
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
[metadata]
name = nasty
project_urls =
Repository = https://github.com/lschmelzeisen/nasty
Issue Tracker = https://github.com/lschmelzeisen/nasty/issues
author = Lukas Schmelzeisen
author_email = [email protected]
classifiers =
Development Status :: 4 - Beta
Environment :: Console
Intended Audience :: Science/Research
License :: OSI Approved :: Apache Software License
Natural Language :: English
Operating System :: OS Independent
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: Implementation :: PyPy
Topic :: Internet
Topic :: Scientific/Engineering
Topic :: Sociology
Typing :: Typed
license = Apache License, Version 2.0
license_file = LICENSE
description = NASTY Advanced Search Tweet Yielder
long_description = file: README.rst
long_description_content_type = text/x-rst
platforms = any
keywords =
python
twitter
crawler
[options]
zip_safe = True
setup_requires =
setuptools_scm[toml]~=4.1
install_requires =
more-itertools~=8.5
nasty-utils~=0.1
overrides~=3.1
requests~=2.24
tweepy~=3.9
typing-extensions~=3.7
python_requires = >=3.6
include_package_data = True
package_dir =
=src
packages = find:
[options.extras_require]
test =
coverage[toml]~=5.3
pytest~=6.0
pytest-cov~=2.10
pytest-html~=2.1
responses~=0.12
dev =
autoflake~=1.4
black==20.8b1
flake8~=3.8
flake8-bandit~=2.1
flake8-bugbear~=20.1
flake8-builtins~=1.5
flake8-comprehensions~=3.2
flake8-eradicate~=0.4
flake8-print~=3.1
flake8-pyi~=20.5
isort~=5.5
licenseheaders~=0.8
mypy~=0.782
nasty-typeshed~=0.1
nox~=2020.8
pep8-naming~=0.11
twine~=3.2
vulture~=2.1
[options.entry_points]
console_scripts =
nasty = nasty.__main__:main
[options.packages.find]
where = src
[flake8]
# required for Black compatibility
max-line-length = 88
# flake8-mccabe
max-complexity = 10
select =
# pycodestyle / flake8-eradicate
E
W
# flake8
F
# flake8-mccabe / flake8-comprehensions
C
# flake8-builtins
A
# flake8-bugbear / flake8-bandit
B
# flake8-pyi
Y
# flake8-print
T
# pep8-naming
N
ignore =
# required for Black compatibility
E203
W503
# disable class-attributes overlapping with builtins
A003
per-file-ignores =
# Disable commented-out-code inspection in these files because we list explicitly
# list examples of JSON-Dicts returned by Twitter to illustrate the code, which
# trigger this inspection.
nasty/_retriever/replies_retriever.py:E800
nasty/_retriever/search_retriever.py:E800
nasty/_retriever/thread_retriever.py:E800
# Allow vulture's whitelist syntax and overlong lines
vulture-whitelist.py:F821,E501
[mypy]
mypy_path = ./src
python_version = 3.6
platform = linux
plugins = pydantic.mypy
pretty = True
; -- Disallow dynamic typing ---------------------------------------------------
disallow_any_unimported = True
; Sadly, I don't know how to type decorators when enabling the next three.
;disallow_any_expr = True
;disallow_any_decorated = True
;disallow_any_explicit = True
disallow_any_generics = True
disallow_subclassing_any = True
; -- Untyped definitions and calls ---------------------------------------------
disallow_untyped_calls = True
disallow_untyped_defs = True
disallow_incomplete_defs = True
check_untyped_defs = True
disallow_untyped_decorators = True
; -- None and Optional handling ------------------------------------------------
no_implicit_optional = True
strict_optional = True
; -- Configuring warnings ------------------------------------------------------
warn_redundant_casts = True
warn_unused_ignores = True
warn_no_return = True
warn_return_any = True
warn_unreachable = True
; -- Miscellaneous strictness flags --------------------------------------------
allow_redefinition = True
implicit_reexport = False
strict_equality = True
; -- Miscellaneous -------------------------------------------------------------
error_summary = False
warn_unused_configs = True
; __init__.py's import of _version.py contains type ignore comment should file
; not exist. If the file does exist it is detected as unused ignore comment.
[mypy-nasty]
warn_unused_ignores = False
; Ignore vulture's generated whitelist
[mypy-vulture-whitelist]
ignore_errors = True
[pydantic-mypy]
init_forbid_extra = True
init_typed = True
warn_required_dynamic_aliases = True
warn_untyped_fields = True