-
Notifications
You must be signed in to change notification settings - Fork 1.1k
/
setup.cfg
291 lines (275 loc) · 7.21 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
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
[metadata]
name = monai
author = MONAI Consortium
author_email = [email protected]
url = https://monai.io/
description = AI Toolkit for Healthcare Imaging
long_description = file:README.md
long_description_content_type = text/markdown; charset=UTF-8
platforms = OS Independent
license = Apache License 2.0
license_files =
LICENSE
project_urls =
Documentation=https://docs.monai.io/
Bug Tracker=https://github.com/Project-MONAI/MONAI/issues
Source Code=https://github.com/Project-MONAI/MONAI
classifiers =
Intended Audience :: Developers
Intended Audience :: Education
Intended Audience :: Science/Research
Intended Audience :: Healthcare Industry
Programming Language :: C++
Programming Language :: Python :: 3
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Topic :: Scientific/Engineering
Topic :: Scientific/Engineering :: Artificial Intelligence
Topic :: Scientific/Engineering :: Medical Science Apps.
Topic :: Scientific/Engineering :: Information Analysis
Topic :: Software Development
Topic :: Software Development :: Libraries
Typing :: Typed
[options]
python_requires = >= 3.9
# for compiling and develop setup only
# no need to specify the versions so that we could
# compile for multiple targeted versions.
setup_requires =
torch
ninja
packaging
install_requires =
torch>=1.9
numpy>=1.24,<2.0
[options.extras_require]
all =
nibabel
ninja
scikit-image>=0.14.2
scipy>=1.12.0; python_version >= '3.9'
pillow
tensorboard
gdown>=4.7.3
pytorch-ignite==0.4.11
torchvision
itk>=5.2
tqdm>=4.47.0
lmdb
psutil
cucim-cu12; python_version >= '3.9' and python_version <= '3.10'
openslide-python
tifffile
imagecodecs
pandas
einops
transformers>=4.36.0, <4.41.0; python_version <= '3.10'
mlflow>=2.12.2
clearml>=1.10.0rc0
matplotlib>=3.6.3
tensorboardX
pyyaml
fire
jsonschema
pynrrd
pydicom
h5py
nni
optuna
onnx>=1.13.0
onnxruntime; python_version <= '3.10'
zarr
lpips==0.1.4
nvidia-ml-py
huggingface_hub
pyamg>=5.0.0
nibabel =
nibabel
ninja =
ninja
skimage =
scikit-image>=0.14.2
scipy =
scipy>=1.12.0; python_version >= '3.9'
pillow =
pillow!=8.3.0
tensorboard =
tensorboard
gdown =
gdown>=4.7.3
ignite =
pytorch-ignite==0.4.11
torchvision =
torchvision
itk =
itk>=5.2
tqdm =
tqdm>=4.47.0
lmdb =
lmdb
psutil =
psutil
cucim =
cucim-cu12
openslide =
openslide-python
tifffile =
tifffile
imagecodecs =
imagecodecs
pandas =
pandas
einops =
einops
transformers =
transformers>=4.36.0, <4.41.0; python_version <= '3.10'
mlflow =
mlflow>=2.12.2
matplotlib =
matplotlib>=3.6.3
clearml =
clearml
tensorboardX =
tensorboardX
pyyaml =
pyyaml
fire =
fire
packaging =
packaging
jsonschema =
jsonschema
pynrrd =
pynrrd
pydicom =
pydicom
h5py =
h5py
nni =
nni
optuna =
optuna
onnx =
onnx>=1.13.0
onnxruntime; python_version <= '3.10'
zarr =
zarr
lpips =
lpips==0.1.4
pynvml =
nvidia-ml-py
polygraphy =
polygraphy
# # workaround https://github.com/Project-MONAI/MONAI/issues/5882
# MetricsReloaded =
# MetricsReloaded @ git+https://github.com/Project-MONAI/MetricsReloaded@monai-support#egg=MetricsReloaded
huggingface_hub =
huggingface_hub
pyamg =
pyamg>=5.0.0
# segment-anything =
# segment-anything @ git+https://github.com/facebookresearch/segment-anything@6fdee8f2727f4506cfbbe553e23b895e27956588#egg=segment-anything
[flake8]
select = B,C,E,F,N,P,T4,W,B9
max_line_length = 120
# C408 ignored because we like the dict keyword argument syntax
# E501 is not flexible enough, we're using B950 instead
# N812 lowercase 'torch.nn.functional' imported as non lowercase 'F'
# B023 https://github.com/Project-MONAI/MONAI/issues/4627
# B028 https://github.com/Project-MONAI/MONAI/issues/5855
# B907 https://github.com/Project-MONAI/MONAI/issues/5868
# B908 https://github.com/Project-MONAI/MONAI/issues/6503
# B036 https://github.com/Project-MONAI/MONAI/issues/7396
# E704 https://github.com/Project-MONAI/MONAI/issues/7421
ignore =
E203
E501
E741
W503
W504
C408
N812
B023
B905
B028
B907
B908
B036
E704
per_file_ignores = __init__.py: F401, __main__.py: F401
exclude = *.pyi,.git,.eggs,monai/_version.py,versioneer.py,venv,.venv,_version.py
[isort]
known_first_party = monai
profile = black
line_length = 120
skip = .git, .eggs, venv, .venv, versioneer.py, _version.py, conf.py, monai/__init__.py
skip_glob = *.pyi
add_imports = from __future__ import annotations
append_only = true
[versioneer]
VCS = git
style = pep440
versionfile_source = monai/_version.py
versionfile_build = monai/_version.py
tag_prefix =
parentdir_prefix =
[mypy]
# Suppresses error messages about imports that cannot be resolved.
ignore_missing_imports = True
# Changes the treatment of arguments with a default value of None by not implicitly making their type Optional.
no_implicit_optional = True
# Warns about casting an expression to its inferred type.
warn_redundant_casts = True
# No error on unneeded # type: ignore comments.
warn_unused_ignores = False
# Shows a warning when returning a value with type Any from a function declared with a non-Any return type.
warn_return_any = True
# Prohibit equality checks, identity checks, and container checks between non-overlapping types.
strict_equality = True
# Shows column numbers in error messages.
show_column_numbers = True
# Shows error codes in error messages.
show_error_codes = True
# Use visually nicer output in error messages: use soft word wrap, show source code snippets, and show error location markers.
pretty = False
# Warns about per-module sections in the config file that do not match any files processed when invoking mypy.
warn_unused_configs = True
# Make arguments prepended via Concatenate be truly positional-only.
extra_checks = True
# Allows variables to be redefined with an arbitrary type,
# as long as the redefinition is in the same block and nesting level as the original definition.
# allow_redefinition = True
exclude = venv/
[mypy-versioneer]
# Ignores all non-fatal errors.
ignore_errors = True
[mypy-monai._version]
# Ignores all non-fatal errors.
ignore_errors = True
[mypy-monai.eggs]
# Ignores all non-fatal errors.
ignore_errors = True
[mypy-monai.*]
# Also check the body of functions with no types in their type signature.
check_untyped_defs = True
# Warns about usage of untyped decorators.
disallow_untyped_decorators = True
[mypy-monai.visualize.*,monai.utils.*,monai.optimizers.*,monai.losses.*,monai.inferers.*,monai.config.*,monai._extensions.*,monai.fl.*,monai.engines.*,monai.handlers.*,monai.auto3dseg.*,monai.bundle.*,monai.metrics.*,monai.apps.*]
disallow_incomplete_defs = True
[coverage:run]
concurrency = multiprocessing
source = .
data_file = .coverage/.coverage
omit = setup.py
[coverage:report]
exclude_lines =
pragma: no cover
if TYPE_CHECKING:
# Don't complain if tests don't hit code:
raise NotImplementedError
if __name__ == .__main__.:
show_missing = True
skip_covered = True
[coverage:xml]
output = coverage.xml