tobiscode / disstans

Package repository for the Decomposition and Inference of Sources through Spatiotemporal Analysis of Network Signals (DISSTANS) toolbox.
https://tobiscode.github.io/disstans/
GNU General Public License v3.0
22 stars 7 forks source link

Compatibility with Python 3.12 / change build system #4

Closed tobiscode closed 3 months ago

tobiscode commented 6 months ago

Just pinning this here until I get the chance to address this.

With Python 3.12, the distutils package will be removed from the standard library. Because of compiled.f90 (and the upstream dependency on okada_wrapper), DISSTANS up until version 2.0.1 relied on numpy.distutils which itself relied on distutils and setuptools. This was taken care of with upper version bounds in pyproject.toml (see v2.0.1) and the keeping of the setup.py file.

I don't want to fix DISSTANS to 3.11 moving forward so I'll follow NumPy (and okada-wrapper, see https://github.com/tbenthompson/okada_wrapper/pull/11) in switching to the meson build backend, which will eliminate all upper version bounds and keep DISSTANS future-proof. These changes will happen in the development branch and get merged to the main branch together with version 2.1. (This means that currently, the development branch still requires Python 3.11, even though the requirement files have not been updated to reflect this.)

tobiscode commented 3 months ago

Closed with version 2.1.