11[build-system ]
2- requires = [
3- " setuptools>=45" ,
4- " setuptools_scm[toml]>=6.2" ,
5- ]
2+ requires = [" setuptools>=45" , " setuptools_scm[toml]>=6.2" ]
63build-backend = " setuptools.build_meta"
74
85[project ]
96name = " topostats"
107description = " Automated Analysis for Atomic Force Microscopy Images of Biomolecules"
118readme = " README.md"
12- license = {text = " GPL-3.0-only" }
9+ license = { text = " GPL-3.0-only" }
1310dynamic = [" version" ]
1411authors = [
15- {name = " TopoStats Team" , email = " topostats@sheffield.ac.uk" },
16- {name = " Alice Pyne" , email = " a.l.pyne@sheffield.ac.uk" },
17- {name = " Sylvia Whittle" , email = " sylvia.whittle@sheffield.ac.uk" },
18- {name = " Neil Shephard" , email = " n.shephard@sheffield.ac.uk" },
19- {name = " Max Gamill" , email = " mcgamill1@sheffield.ac.uk " },
20- {name = " Jean Du" , email = " mdu12@sheffield.ac.uk" },
12+ { name = " TopoStats Team" , email = " topostats@sheffield.ac.uk" },
13+ { name = " Alice Pyne" , email = " a.l.pyne@sheffield.ac.uk" },
14+ { name = " Sylvia Whittle" , email = " sylvia.whittle@sheffield.ac.uk" },
15+ { name = " Neil Shephard" , email = " n.shephard@sheffield.ac.uk" },
16+ { name = " Max Gamill" , email = " maxgamill@live.com " },
17+ { name = " Jean Du" , email = " mdu12@sheffield.ac.uk" },
2118]
2219classifiers = [
2320 " Programming Language :: Python :: 3" ,
@@ -27,19 +24,15 @@ classifiers = [
2724 " Operating System :: OS Independent" ,
2825 " Intended Audience :: Science/Research" ,
2926]
30- keywords = [
31- " afm" ,
32- " atomic force microscopy" ,
33- " image processing" ,
34- ]
27+ keywords = [" afm" , " atomic force microscopy" , " image processing" ]
3528requires-python = " >=3.10, <3.12"
3629dependencies = [
3730 " art" ,
3831 " AFMReader" ,
3932 " h5py" ,
4033 " keras" ,
4134 " matplotlib" ,
42- " numpy~=2.0.0" , # Until TensorFlow supports newer versions
35+ " numpy~=2.0.0" , # Until TensorFlow supports newer versions
4336 " numpyencoder" ,
4437 " pandas" ,
4538 " pillow<=11.1.0" ,
@@ -87,11 +80,7 @@ dev = [
8780 " pytest-icdiff" ,
8881 " pytest-testmon" ,
8982]
90- pypi = [
91- " build" ,
92- " setuptools_scm[toml]" ,
93- " wheel" ,
94- ]
83+ pypi = [" build" , " setuptools_scm[toml]" , " wheel" ]
9584notebooks = [
9685 " ipython" ,
9786 " ipywidgets" ,
@@ -127,23 +116,17 @@ addopts = ["--cov", "--mpl", "-ra", "--strict-config", "--strict-markers"]
127116log_level = " INFO"
128117log_cli = true
129118log_cli_level = " INFO"
130- testpaths = [
131- " tests" ,
132- ]
119+ testpaths = [" tests" ]
133120filterwarnings = [
134- " ignore::DeprecationWarning" ,
135- " ignore::PendingDeprecationWarning" ,
136- " ignore::UserWarning"
121+ " ignore::DeprecationWarning" ,
122+ " ignore::PendingDeprecationWarning" ,
123+ " ignore::UserWarning" ,
137124]
138125xfail_strict = true
139126
140127[tool .coverage .run ]
141128source = [" topostats" ]
142- omit = [
143- " topostats/_version.py" ,
144- " *tests*" ,
145- " **/__init__*" ,
146- ]
129+ omit = [" topostats/_version.py" , " *tests*" , " **/__init__*" ]
147130
148131[tool .black ]
149132line-length = 120
@@ -194,46 +177,40 @@ line-length = 120
194177
195178[tool .ruff .lint ]
196179select = [
197- " A" , # flake8-builtins
198- " B" , # flake8-bugbear
199- " C" , #
200- " D" , # pydocstyle
201- " E" , # pycodestyle error
180+ " A" , # flake8-builtins
181+ " B" , # flake8-bugbear
182+ " C" , #
183+ " D" , # pydocstyle
184+ " E" , # pycodestyle error
202185 " F" ,
203- " I" , # isort
186+ " I" , # isort
204187 " NPY" , # numpy
205- " PT" , # flake8-pytest-style
188+ " PT" , # flake8-pytest-style
206189 " PTH" , # flake8-use-pathlib
207190 " R" ,
208- " S" , # flake8-bandit
209- " W" , # pycodestyle warning
191+ " S" , # flake8-bandit
192+ " W" , # pycodestyle warning
210193 " U" ,
211- " UP" , # pyupgrade
212- ]
213- ignore = [
214- " A005" ,
215- " B905" ,
216- " E501" ,
217- " S101" ,
218- " S403" ,
194+ " UP" , # pyupgrade
219195]
196+ ignore = [" A005" , " B905" , " E501" , " S101" , " S403" ]
220197# Allow autofix for all enabled rules (when `--fix`) is provided.
221198fixable = [
222- " A" , # flake8-builtins
223- " B" , # flake8-bugbear
224- " C" , #
225- " D" , # pydocstyle
226- " E" , # pycodestyle error
199+ " A" , # flake8-builtins
200+ " B" , # flake8-bugbear
201+ " C" , #
202+ " D" , # pydocstyle
203+ " E" , # pycodestyle error
227204 " F" ,
228- " I" , # isort
205+ " I" , # isort
229206 " NPY" , # numpy
230- " PT" , # flake8-pytest-style
207+ " PT" , # flake8-pytest-style
231208 " PTH" , # flake8-use-pathlib
232209 " R" ,
233- " S" , # flake8-bandit
234- " W" , # pycodestyle warning
210+ " S" , # flake8-bandit
211+ " W" , # pycodestyle warning
235212 " U" ,
236- " UP" , # pyupgrade
213+ " UP" , # pyupgrade
237214]
238215unfixable = []
239216
@@ -261,24 +238,24 @@ ignore-words-list = 'OT'
261238
262239[tool .numpydoc_validation ]
263240checks = [
264- " all" , # Perform all check except those listed below
241+ " all" , # Perform all check except those listed below
265242 " ES01" ,
266243 " EX01" ,
267244 " PR10" , # Conflicts with black formatting
268245 " SA01" ,
269246]
270- exclude = [ # don't report on objects that match any of these regex
271- " \\ .undocumented_method$" ,
272- " \\ .__repr__$" ,
273- " ^test_" ,
274- " ^conftest" ,
275- " ^conf$" ,
276- " ^notebooks/*.py$"
247+ exclude = [ # don't report on objects that match any of these regex
248+ " \\ .undocumented_method$" ,
249+ " \\ .__repr__$" ,
250+ " ^test_" ,
251+ " ^conftest" ,
252+ " ^conf$" ,
253+ " ^notebooks/*.py$" ,
277254]
278- override_SS05 = [ # override SS05 to allow docstrings starting with these words
279- " ^Process " ,
280- " ^Assess " ,
281- " ^Access " ,
255+ override_SS05 = [ # override SS05 to allow docstrings starting with these words
256+ " ^Process " ,
257+ " ^Assess " ,
258+ " ^Access " ,
282259]
283260
284261[project .scripts ]
0 commit comments