LIHPC-Computational-Geometry / gmds

GMDS, for Generic Mesh Data Structures and Services, provide a set of libraries to represent and handles meshes in the context of numerical simulation. It mainly targets quad and hex mesh generation and adaptation.
https://lihpc-computational-geometry.github.io/gmds/
GNU Lesser General Public License v2.1
26 stars 5 forks source link

macos_CI_missing_distutil #337

Closed nicolaslg closed 8 months ago

nicolaslg commented 10 months ago

The macOS CI fails with a No module named distutils

The macos runner switched from python-3.11 to 3.12, where distutils is removed (see https://github.com/actions/runner-images/commit/7b64e0503ed2f3fcec42ffb8a4e518a7f975135f)

and spack-0.19.2 seems to not be compatible with that. The 0.20.2 release notes indicate that it should be compatible with 3.12 but I guess the discussions in PR 40067 tends to show that not all the packages have made the transition, and in any case the CI also fails with0.20.3.

The fix in PR 40844 (not merged in 0.20.3) might solve the issue, so I am switching the macos CI to the spack:develop branch and we will see what happens

nicolaslg commented 10 months ago

Seems I am confused by the release note and the doc spack-0.20 requires python 3.6-3.11 (see https://spack.readthedocs.io/en/v0.20.3/getting_started.html#system-prerequisites; and only from 0.21 does it support 3.6-3.12 (see https://spack.readthedocs.io/en/v0.21.0/getting_started.html#system-prerequisites)

PR 40067 is for building the packages using python@3.12, not spack itself

nicolaslg commented 8 months ago

Clingo is installed for bootstrapping, but it is installed again with another hash; it is prevented (there is a collision) to do so with our current procedure where we chose to have a fixed install path for the dependencies by removing the hash.

Using spack find -p to locate the dependencies allows us to lift this limitation