-
Notifications
You must be signed in to change notification settings - Fork 2
/
setup.cfg
135 lines (119 loc) · 3.58 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
[metadata]
name = tnmf
author = Adrian Šošić, Mathias Winkel
author_email = [email protected], [email protected]
description = Transform-Invariant Non-Negative Matrix Factorization
long_description = file: README.md
long_description_content_type = text/markdown
platforms = any
license = Apache License, Version 2.0
license_file = LICENSE
classifiers =
Programming Language :: Python :: 3
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Operating System :: OS Independent
License :: OSI Approved :: Apache Software License
url = https://github.com/emdgroup/tnmf
project_urls =
Documentation = https://emdgroup.github.io/tnmf/
Bug Tracker = https://github.com/emdgroup/tnmf/issues
[options]
package_dir =
= .
packages = find:
python_requires = >=3.7
install_requires =
matplotlib>=3.3.3
more-itertools>=8.6.0
numpy>=1.19.4
opt-einsum>=3.3.0
scipy>=1.5.4
streamlit>=0.84.0
torch>=1.8.1
[options.package_data]
logos = *
[options.entry_points]
console_scripts =
tnmf = scripts.tnmf:main
[aliases]
test = pytest
[tool:pytest]
log_cli = True
addopts =
--ignore doc
[flake8]
exclude = .git,__pycache__,doc,env,venv,.venv
max-complexity = 10
max-line-length = 127
count = True
show_source = True
statistics = True
extend-ignore =
# Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.
S101
per-file-ignores =
# 'tnmf.*' imported but unused, 'from tnmf import *' used; unable to detect undefined names
tnmf/tests/test_init.py: F401, F403
# 'fftconvolve_sum' is too complex (11)
tnmf/backends/NumPy_FFT.py: C901
# import statements after 'sys.path.append'
demos/demo_image.py: E402
[pylint.MASTER]
# see http://pylint.pycqa.org/en/latest/technical_reference/features.html for all pylint options
# or run pylint --generate-rcfile
ignore = .git,__pycache__,doc,env,venv,.venv,_version.py
[pylint.REPORTS]
output-format = colorized
[pylint.'MESSAGES CONTROL']
# to get the identifier of a message ID run, e.g. pylint --help-msg=W0511
disable = invalid-name,
fixme,
too-many-instance-attributes,
too-many-arguments,
too-many-locals,
too-many-statements,
duplicate-code,
logging-fstring-interpolation,
# TODO: the following should be removed rather sooner than later
missing-function-docstring
[pylint.'FORMAT']
max-line-length = 127
[pylint.BASIC]
bad-names-rgxs=_?num_.*
[pylint.TYPECHECK]
# List of members which are set dynamically and missed by Pylint inference
# system, and so shouldn't trigger E1101 when accessed.
generated-members=numpy.*, torch.*
[coverage:run]
source =
tnmf
examples
demos
branch = True
command_line = -m pytest
# create individual files per process that need to be combined afterwards
# This is necessary as we are running dedicated subprocesses for examples and demos.
parallel = True
[coverage:report]
# Target code coverage in integer percent. If overall coverage is below, coverage.py reports failure.
# TODO: should gradually increase this
fail_under = 95
# Do not report files with coverage at 100%
skip_covered = True
# Do not report empty files
skip_empty = True
# List line numbers in the report table
show_missing = True
# exclusion list (regular expressions)
exclude_lines =
pragma: no cover
raise NotImplementedError
raise AssertionError
raise ValueError
except ImportError:
except PackageNotFoundError:
# file patterns to ignore
omit =
tnmf/_version.py