Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: move default manylinux build to manylinux_2_28 #1988

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

EwoutH
Copy link
Contributor

@EwoutH EwoutH commented Aug 27, 2024

Summary

This PR moves the default manylinux build from manylinux2014 to manylinux_2_28. The main motivation behind this is that CentOS 7, on which manylinux2014 is based, became end-of-life end of June. It also helps projects by defaulting to more performant wheels that have improved support for modern microarchitectures.

Motivation

The motivation to move the default manylinux build from manylinux2014 to manylinux_2_28 is two fold: On the one hand there's a necessity and on the other hand an oppertunity.

Implementation

  • Updated default manylinux image references in cibuildwheel/options.py and cibuildwheel/resources/defaults.toml
  • Modified documentation in docs/options.md to reflect the new default
  • Adjusted test expectations in test/utils.py and unit_test/option_prepare_test.py

This PR closely follows the default move to musllinux_1_2 in #1817.

Impact

  • Projects using cibuildwheel will now build manylinux_2_28 wheels by default
  • Existing configurations specifying manylinux2014 or earlier will continue to work as before
  • Users can still override the default to use other manylinux versions if needed

Closes #1772.

@EwoutH
Copy link
Contributor Author

EwoutH commented Aug 27, 2024

The remaining errors are about a manylinux_2_28 image for "i686" not existing. There are three ways to resolve this:

  • Keep the default "i686" build on manylinux2014
  • Stop building "i686" by default, and thus requiring "i686" to opt-in with a specific manylinux version.

I think for this PR the first options is most logical, while maybe on the long term the second options should be discussed.

@henryiii henryiii marked this pull request as draft September 3, 2024 06:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update default image away from manylinux2014
1 participant