environment.yml:7 pins python>=3.10 with no upper bound. Current conda-forge resolves that to the free-threaded build (python 3.14.7 …_cp314t, python_abi 3.14 9_cp314t). CMake's FindPython3 leaves the free-threading ABI flag off by default, so it skips the env interpreter and falls back to any other Python on the machine — on mine, base conda's, which has no matplotlib.
The failure is silent: configure prints Found Python3: … found suitable version "3.14.6" and succeeds. But Python3_EXECUTABLE is what CMakeLists.txt:763 hands to add_test, so every Python test harness runs on the wrong interpreter.
Fix: add python-gil to environment.yml. Verified: configure then resolves …/envs/parallelassemblycpp/bin/python3.14, and 20/20 tests pass.
environment.yml:7 pins python>=3.10 with no upper bound. Current conda-forge resolves that to the free-threaded build (python 3.14.7 …_cp314t, python_abi 3.14 9_cp314t). CMake's FindPython3 leaves the free-threading ABI flag off by default, so it skips the env interpreter and falls back to any other Python on the machine — on mine, base conda's, which has no matplotlib.
The failure is silent: configure prints Found Python3: … found suitable version "3.14.6" and succeeds. But Python3_EXECUTABLE is what CMakeLists.txt:763 hands to add_test, so every Python test harness runs on the wrong interpreter.
Fix: add python-gil to environment.yml. Verified: configure then resolves …/envs/parallelassemblycpp/bin/python3.14, and 20/20 tests pass.