Commit 87f5216
committed
ENH: Adopt PEP518 and PEP631
Adopt PEP518 to specify minimum build system requirements for the
package.
Partially comply with PEP631:
- Dependencies are now stored in the `pyproject.toml` file, including
packages that are not in PyPI (e.g. source code URLs -GitHub, etc.),
so the related requirements file is removed.
Require `setuptools >= 66` so that the package can be effectively
installed in editable mode when using the minimum required version of
it. Avoids:
```
ERROR:
Project file:///home/runner/work/whitematteranalysis/whitematteranalysis
has a 'pyproject.toml' and its build backend is missing the
'build_editable' hook. Since it does not have a 'setup.py' nor a
'setup.cfg', it cannot be installed in editable mode. Consider using a
build backend that supports PEP 660.
```
Require `nibabel > 3.0.0` to avoid:
```
File "bin/wm_cluster_volumetric_measurements.py", line 7, in <module>
import nibabel as nib
File "python3.10/site-packages/nibabel/__init__.py", line 66, in <module>
(...)
AttributeError: module 'numpy' has no attribute 'float'.
`np.float` was a deprecated alias for the builtin `float`.
To avoid this error in existing code, use `float` by itself. Doing this
will not modify any behavior and is safe. If you specifically wanted
the numpy scalar type, use `np.float64` here.
The aliases was originally deprecated in NumPy 1.20; for more details
and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations. Did you mean: 'cfloat'?
```
Require `"scipy >= 1.7.0` for `python_version == '3.9'` to avoid:
```
whitematteranalysis/cluster.py:14: in <module>
import scipy.cluster.hierarchy
(...)
python3.9/site-packages/scipy/special/orthogonal.py:79: in <module>
from numpy import (exp, inf, pi, sqrt, floor, sin, cos, around, int,
E ImportError: cannot import name 'int' from 'numpy'
(python3.9/site-packages/numpy/__init__.py)
```
Require `statsmodels >= 0.14.0` to avoid:
```
ModuleNotFoundError: No module named 'statsmodels'
```
when using the minimum required version builds.
Require `vtk>=9.2.2` for `python_version == '3.9'` to avoid:
```
import vtk
ModuleNotFoundError: No module named 'vtk'
```
Require `vtk>=9.2.2` for `python_version >= '3.10'` to avoid:
```
ERROR: Could not find a version that satisfies the requirement
vtk==9.2.0
(from versions: 9.2.2, 9.2.4, 9.2.5, 9.2.6, 9.3.0rc1, 9.3.0rc2, 9.3.0, 9.3.20230807rc0)
ERROR: No matching distribution found for vtk==9.2.0
```
and `vtk>=9.2.4` for Python 3.11 to avoid:
```
File "whitematteranalysis/cluster.py", line 16, in <module>
import vtk
ModuleNotFoundError: No module named 'vtk'
```
List `importlib-resources` as a dependency explicitly to avoid Python
3.9 not finding the package.
Use `float` instad of `np.float` in `tract_measurement.py`. Fixes:
```
AttributeError: module 'numpy' has no attribute 'float'.
`np.float` was a deprecated alias for the builtin `float`. To avoid
this error in existing code, use `float` by itself. Doing this will not
modify any behavior and is safe. If you specifically wanted the numpy
scalar type, use `np.float64` here.
```
Adapt the Sphinx documentation config file to read the necessary
metadata from the `pyproject.toml` file.
Add the `tomli` package to the documentation dependencies so that
`readthedocs` can successfully find it.
Prepend the module location to the script testing `script_runner.run`
calls.
Adopt `tox.ini` for testing automation and standardization.
Adapt the GitHub Actions workflow accordingly
Do not use the `--doctest-modules` for now to avoid:
```
_____________________ ERROR collecting docs/source/conf.py _____________________
E FileNotFoundError: [Errno 2] No such file or directory: '../../pyproject.toml'
```
Documentation:
https://www.python.org/dev/peps/pep-0518/
https://www.python.org/dev/peps/pep-0631/1 parent e125aaa commit 87f5216
File tree
50 files changed
+231
-152
lines changed- .github/workflows
- bin/tests
- docs/source
- utilities/tests
- whitematteranalysis
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
50 files changed
+231
-152
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
32 | | - | |
33 | | - | |
| 31 | + | |
34 | 32 | | |
35 | 33 | | |
36 | 34 | | |
| |||
45 | 43 | | |
46 | 44 | | |
47 | 45 | | |
48 | | - | |
49 | | - | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
50 | 52 | | |
51 | 53 | | |
52 | 54 | | |
53 | 55 | | |
54 | 56 | | |
55 | 57 | | |
56 | | - | |
57 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
58 | 61 | | |
59 | | - | |
| 62 | + | |
| 63 | + | |
60 | 64 | | |
61 | 65 | | |
62 | 66 | | |
| |||
74 | 78 | | |
75 | 79 | | |
76 | 80 | | |
77 | | - | |
| 81 | + | |
78 | 82 | | |
79 | | - | |
| 83 | + | |
80 | 84 | | |
81 | 85 | | |
82 | 86 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
0 commit comments