Installation with just `pip install shtns` ?
It would be great if the Python package SHTns could be installable with just pip install shtns
.
I think it should not be too complicated to produce a package (or maybe 2 packages, something like shtns
and shtns-openmp
) that could be uploaded to PyPI (only as source distribution, no need for wheel).
Technically, I don't know what should be put in the source distribution and what should be produced during the build. It's possible to install cmake and swig as wheels (from PyPI), so the build could depend on these programs. However, it could also be simpler with just the C++ source, the files produced by Swig and a moderately simple setup.py
using setuptools.
Why
I create this issue because I would need such PyPi shtns packages for 2 different purposes:
- for fluiddyn CI, I don't see how to install SHTns when using Tox on Gitlab CI (see https://foss.heptapod.net/fluiddyn/fluiddyn/-/issues/26).
- I was thinking about playing with Xshells to create fluidsim solvers using Xshells, as we did with snek5000 and fluidsimfoam. It seems to me that Xshells would be a good target for fluidsim-core. It would be much simpler than for OpenFOAM and would demonstrate how one can create with fluidsim-core a Python UI from a "simple" CFD code written in a static language. Moreover, Xshells uses a very standard workflow and there is already lot of Python code for post-processing which could be used in fluidxshells. For fluidxshells, we would not need a proper Python interface to the Xshells C++ objects. However, for postprocessing, I think we would need the Python package SHTns, and we would need it to be installable simply with pip.