fix(ci): drop retired macos-13 runner and skip cp39/pp39 in wheel matrix#1693
Merged
Conversation
GitHub fully retired macos-13 on 2025-12-04 (actions/runner-images#13046). The matrix entry stays `queued` until the ~6h timeout, blocking `upload_pypi` since `build_wheels` never concludes successfully (see run 25975208751, where one stalled macos-13 entry held up 0.149.1). Replace it with cross-arch builds on macos-latest (arm64): `CIBW_ARCHS_MACOS="x86_64 arm64"` tells cibuildwheel to produce both Intel and Apple Silicon wheels from the same runner, so 0.149.x keeps shipping x86_64 mac wheels for Intel users.
`requires-python = ">=3.10"` since #1688. Add cp39 and pp39 to `CIBW_SKIP` so any future matrix entry that accidentally targets 3.9 gets a silent skip instead of the "No build identifiers selected" hard error that broke 0.149.0. Also sort cpXX and ppXX into ascending order while reordering.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1693 +/- ##
=======================================
Coverage 99.76% 99.76%
=======================================
Files 33 33
Lines 3410 3410
Branches 464 464
=======================================
Hits 3402 3402
Misses 5 5
Partials 3 3 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two CI follow-ups from the Python-3.9-drop wheel-publish hiccup:
macos-13from the wheel matrix. GitHub fully retired themacos-13runner image on 2025-12-04 (actions/runner-images#13046), so the matrix entry sitsqueueduntil the ~6h timeout — exactly what blockedupload_pypifor0.149.1(run 25975208751). Replaced withCIBW_ARCHS_MACOS="x86_64 arm64"onmacos-latest(arm64), so cibuildwheel cross-builds both architectures from one runner and Intel-Mac users keep getting x86_64 wheels.cp39-*andpp39-*inCIBW_SKIP.pyproject.tomlisrequires-python = ">=3.10"since feat: drop Python 3.9 support #1688, so any matrix entry that targets 3.9 would hit "No build identifiers selected" — the same hard error that crashed the cp39 armv7l job in0.149.0. Belt-and-suspenders alongside fix(ci): drop cp39 from cibuildwheel matrix #1691 which removed the explicit cp39 matrix rows.Details
CIBW_ARCHS_MACOS="x86_64 arm64"only affects macOS runs; it's a no-op on the Linux/Windows entries.pypa/cibuildwheel@v3.4.1so this works out of the box.Test plan
0.149.2.macos-13), and thatmacos-latestproduces both*-macosx_x86_64.whland*-macosx_arm64.whl.upload_pypiruns and0.149.2lands on PyPI with the full wheel set.Follow-up
Once #1692 (
ci: don't fail-fast the wheel matrix) lands, future single-arch breakage won't take down the rest of the matrix.