scikit-build-core
scikit-build-core copied to clipboard
chore: bump macOS
The macOS 13 runner will will be retired by 4 December 2025, with jobs using macOS 13 failing temporarily during scheduled brownout time periods starting in November.
macos-13 was tracking the intel runner. There seems to be macos-15-intel runner, but I'm not sure if we still need to track the intel builds. @henryiii had some discussions about it across the board about it, but I didn't follow it closely.
I've changed to macos-15-intel or macos-latest instead.
Intel runners will eventually disappear any way. From Notice of macOS x86_64 (Intel) architecture deprecation:
Apple has discontinued support for the x86_64 (Intel) architecture. GitHub will no longer support this architecture on macOS after the macOS 15 runner image is retired in Fall 2027. You should begin migrating your workloads to arm64-based (Apple Silicon) runners as soon as possible to prepare for this eventual deprecation.
For some reason, macos-latest jobs fail.
I am thinking of using macos-14 instead, and creating an issue for macos-15.
Keep it as-is and we'll try to resolve it here. It seems our detection of macos architecture started to fail:
emod.cpython-311-darwin.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e' or 'arm64'))
probably we are not catching this new arm64e thing. I don't have macos or am familiar with the ecosystem to debug this, hopefully Henry has ideas about this.
Actually, it looks like an architecture problem:
ImportError: dlopen(.../venv/lib/python3.8/site-packages/cmake_example.cpython-38-darwin.so, 0x0002):
tried:
'.../venv/lib/python3.8/site-packages/cmake_example.cpython-38-darwin.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e' or 'arm64')),
'.../venv/lib/python3.8/site-packages/cmake_example.cpython-38-darwin.so' (no such file),
'.../venv/lib/python3.8/site-packages/cmake_example.cpython-38-darwin.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e' or 'arm64'))
While macos-13 would run on Intel, macos-14 and macos-15 run on ARM, but the build process still creates an Intel mach-o file. Using macos-15-intel might fix the issue, but we need to get to the bottom of this and fix the test on ARM.
Opened issue #1167 for the test failures on macOS ARM.
I'll try macos-14, which I expect to fail as well, and macos-15-intel, which I expect to pass.
Actually, macos-14 does pass. So again it's specific to macos-15.
I'll keep macos-14 for now and make a note that it needs to be updated to macos-latest.