-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.cfg
214 lines (203 loc) · 5.25 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
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
[metadata]
name = plasmapy
provides = plasmapy
author = PlasmaPy Community
description = Python package for plasma physics
long_description = file: README.md
long_description_content_type = text/markdown
license = BSD+Patent
license_file = LICENSE.md
url = https://www.plasmapy.org
project_urls =
Documentation = https://docs.plasmapy.org/
Changes = https://docs.plasmapy.org/en/stable/whatsnew/index.html
Source Code = https://github.com/plasmapy/plasmapy
Issue Tracker = https://github.com/plasmapy/plasmapy/issues/
Twitter = https://twitter.com/PlasmaPy
Chat = "https://app.element.io/#/room/#plasmapy:openastronomy.org"
edit_on_github = True
github_project = PlasmaPy/PlasmaPy
keywords=plasma physics, plasma, science, atomic
classifiers=
Development Status :: 3 - Alpha
Intended Audience :: Science/Research
License :: OSI Approved :: BSD License
Operating System :: OS Independent
Programming Language :: Python :: 3
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: Implementation :: CPython
Topic :: Scientific/Engineering :: Physics
Topic :: Scientific/Engineering :: Astronomy
[options]
python_requires = >=3.7
packages = find:
include_package_data = True
setup_requires =
# PEP-518 encourages the use of pyproject.toml for defining
# build dependencies...they should be defined under build-system.requires
install_requires =
# ought to mirror requirements/install.txt
astropy >= 4.0
cached-property >= 1.5.2
matplotlib >= 3.2
numpy >= 1.18.1
pandas >= 1.0.0
scipy >= 1.2
setuptools >= 41.2
tqdm >= 4.56.0
xarray >= 0.14.0
[options.extras_require]
# a weird "bug" since python 2 allows extras to depend on extras
# for backwards compatibility, setuptools will keep this active
# see https://github.com/pypa/setuptools/issues/1260#issuecomment-438187625
extras =
# ought to mirror requirements/extras.txt
# for developers
setuptools_scm
# for plasmapy.plasma
h5py
# for plasmapy.formulary
mpmath
lmfit
numba
numba-scipy
tests =
# ought to mirror requirements/tests.txt
%(extras)s
pytest >= 5.1
hypothesis
pytest-regressions
docs =
# ought to mirror requirements/docs.txt
%(extras)s
docutils < 0.17
ipykernel
ipywidgets
nbsphinx
numpydoc
pillow
pygments >= 2.4.1
sphinx >= 3.2.0
sphinx-changelog
sphinx-copybutton
sphinx-gallery
sphinx_rtd_theme
towncrier >= 19.2.0
developer =
# install everything for developers
# ought to functionally mirror requirements.txt
%(docs)s
%(extras)s
%(tests)s
all =
# for "backwards compatibility" in terms of install instructions
# "all" in the sense of "all optional requirements"
%(extras)s
[options.packages.find]
exclude = docs/automodapi
[options.package_data]
plasmapy.particles.data = *
plasmapy.tests = coveragerc
[build_docs]
source-dir = docs
build-dir = docs/_build
all_files = 1
[tool:pytest]
minversion = 5.1
testpaths = "plasmapy"
norecursedirs = "build" "docs/"
doctest_optionflags =
NORMALIZE_WHITESPACE
ELLIPSIS
NUMBER
addopts = --doctest-modules --doctest-continue-on-failure
filterwarnings =
ignore:.*Creating a LegacyVersion.*:DeprecationWarning
looponfailroots =
plasmapy
[flake8]
convention = numpy
# Checks marked as TODO should be eventually enabled,
# but are failing right now. These are *great*
# first contributions. ;)
# Checks not marked by TODO *maybe* should be
# eventually enabled ― ask!
extend-ignore =
D105,
D107,
# Ignoring D202 allows blank lines to be put on either side of code "paragraphs" at the beginning of a function.
D202,
# D205 and D400 are ignored to allow the "one-liner" to exceed one
# line, which is sometimes necessary for even concise descriptions of plasma
# physics functions and classes.
D205,
# D302 is unnecessary as we are using Python 3.6+.
D302,
# D205 and D400 are ignored to allow the "one-liner" to exceed one
# line, which is sometimes necessary for even concise descriptions of plasma
# physics functions and classes.
D400,
# D403: First word of the first line should be properly capitalized ('Latex', not 'LaTeX') # Dominik: good job, pydocstyle /s
D403,
# E203 something something whitespace? TODO check again
E203,
E501,
# E731 do not assign a lambda, use a def - Dominik: disagreed, lambdas have uses
E731,
F401,
F405,
# W605 invalid escape sequence,
W605,
RST210,
RST213,
# RST305 so that ReST substitutions in a different file can be used
RST305,
RST306
exclude =
extern,
sphinx,
*test*,
*parsetab.py,
conftest.py,
docs/conf.py,
setup.py,
.jupyter
rst-roles =
# TODO look into these
attr
class
confval
data
event
exc
file
func
meth
mod
ref
rst:dir
rst-directives =
confval
deprecated
event
nbgallery
rst:directive
todo
per-file-ignores =
plasmapy/formulary/__init__.py:F403
[coverage:run]
omit =
ci-helpers/*
*/tests/*
plasmapy/setup_package.py
plasmapy/version.py
[coverage:report]
exclude_lines =
coverage: ignore
ImportError
ModuleNotFoundError
@vectorize
@numba.vectorize