Fix manylinux2014 compliance check#2922
Merged
Conversation
konstin
reviewed
Jan 6, 2026
Comment on lines
-752
to
+754
| // With zig we can compile to any glibc version that we want, but | ||
| // there are some black-listed libc symbols in auditwheel for manylinux <= 2.17/2024. | ||
| // Thus we let auditwheel decide the compatibility tag. | ||
| None | ||
| // With zig we can compile to any glibc version that we want, so we pick the lowest | ||
| // one supported by the rust compiler | ||
| Some(target.get_minimum_manylinux_tag()) |
Member
There was a problem hiding this comment.
The comment is outdated now, but doesn't it still make sense to use auditwheel to compute the real tag?
Member
There was a problem hiding this comment.
IMHO for future proof we should still let auditwheel compute the tag.
Contributor
Author
There was a problem hiding this comment.
From my understanding, the original comment and implementation was correct. At this point in the code, we need to decide on a specific manylinux tag, as this will be used in the package build to pass the right glibc version and target triple to zig. By returning None, we would target a later glibc version.
Member
There was a problem hiding this comment.
Oh you're right - The default gets us 2.31, with the explicit minimum version we get 2.17.
messense
approved these changes
Jan 6, 2026
This was referenced Jan 7, 2026
wjones127
added a commit
to lance-format/lance
that referenced
this pull request
Jan 7, 2026
Workaround for #5646, by pinning maturin. We can upgrade maturin again once this bugfix is released: PyO3/maturin#2922
konstin
added a commit
that referenced
this pull request
Jan 8, 2026
Remove "sudo pip" style commands, they are a bad practice and we shouldn't have them in our CI. This change relies on uv covering the same platforms as maturin in CI. Also pin maturin==1.10.1 for cross builds for now, see https://github.com/PyO3/maturin/actions/runs/20812085659/job/59778558155 and #2922
jackye1995
pushed a commit
to jackye1995/lance
that referenced
this pull request
Jan 21, 2026
Workaround for lance-format#5646, by pinning maturin. We can upgrade maturin again once this bugfix is released: PyO3/maturin#2922
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.
PR #2901 updated the manylinux policies, which now include
__cxa_thread_atexit_impl. This symbol is linked weakly by the Rust stdlib.Rather than requiring a bump of the minimum manylinux platform tag for users, ignore weak symbols in the check. This is in line with changes to PyPA's auditwheel (pypa/auditwheel#665).