fix: bump manylinux images to 2_28, add fail-fast: false to wheel matrix - #128
Merged
Merged
Conversation
The v2.0.0rc1 rehearsal's Linux wheel builds failed: NumPy is a build-time dependency here (setup.py's C extension needs its headers), and the manylinux2014 container has no matching prebuilt NumPy 2 wheel to install, so pip tried compiling NumPy from source instead -- which then failed because NumPy's own build needs a newer GCC than that container ships. Fix: bump manylinux-x86_64-image/manylinux-aarch64-image from "manylinux2014" to "manylinux_2_28". Checked PyPI directly first -- NumPy 2.5.2's actual published wheels for x86_64/aarch64 are tagged manylinux_2_27/2_28, nothing for manylinux2014. Building inside a manylinux_2_28 container means pip finds and installs that real prebuilt wheel instead of falling back to a from-source build at all, which removes the GCC-version problem entirely rather than working around it. Also adds fail-fast: false to the wheel-build matrix: without it, the one real failure (aarch64) cancelled the two genuinely fine sibling jobs (windows, x86_64 -- both show no real error in their logs, just "operation was canceled"), masking whether they'd have actually succeeded and making the failure harder to diagnose than necessary. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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
The
v2.0.0rc1rehearsal's Linux wheel builds failed. NumPy is a build-time dependency here (setup.py's C extension needs its headers), and themanylinux2014container has no matching prebuilt NumPy 2 wheel to install, so pip tried compiling NumPy from source instead — which then failed because NumPy's own build needs a newer GCC than that container ships.Checked PyPI directly: NumPy 2.5.2's actual published wheels for x86_64/aarch64 are tagged
manylinux_2_27/manylinux_2_28, nothing formanylinux2014. Bumpingmanylinux-x86_64-image/manylinux-aarch64-imagetomanylinux_2_28means pip finds and installs that real prebuilt wheel instead of falling back to a from-source build at all — this removes the GCC-version problem entirely, rather than working around it.Also adds
fail-fast: falseto the wheel-build matrix — the rc1 run'subuntu-24.04-armfailure cancelled the other three (otherwise fine) platform builds via GitHub's default fail-fast cascade, which made the actual failure harder to diagnose than it needed to be.Test plan
manylinux2014wheels exist for x86_64/aarch64)v2.0.0rc1(orrc2) after merge and confirm all 4 platforms build +upload_pypisucceeds