Skip to content

break: drop Python 3.7, manylinux2010 & musllinux_1_1 #310

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

Merged
merged 1 commit into from
Aug 3, 2025

Conversation

mayeut
Copy link
Contributor

@mayeut mayeut commented Jul 26, 2025

backport work done in #301 now that cibuildwheel has been updated in master

@henryiii said

@mayeut, @jcfr, what should we do here:
Move to using manylinux_2_28 (cibuildwheel default)
Move to using manylinux_2014
Keep manylinux_2010 (fully specify)
And
Move to using musllinux_1_2 (cibuildwheel default)
Keep musllinux_1_1 (fully specify)
And
Move to requiring Python 3.8+ (might be best if increasing manylinux?)
Keep 3.7+ (we don't actually depend on Python at all, but 3.7 users might need older platforms)
?
(I think I like 2014 + 1_2 + 3.8+, though a step more modern is 2_28 + 1_2 + 3.8+ and a step less modern is 2014 + 1_2 + 3.7+ )
And should we do this for 1.13 or after?

@mayeut replied

I think I like 2014 + 1_2 + 3.8+ too. It's probably a bit too soon to move to 2_28. While python_requires ensures that the previous version will be installed on 3.7, this is not the case for the manylinux/musllinux targets. The move of the default in cibuildwheel will likely help see a change in the target builds (and numpy moving to 2_28 might move things towards seeing less & less manylinux2014 wheels being built) but my feeling is that it's too soon.
IMHO, this can be done in the next minor version (depending on #305)

Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR drops support for Python 3.7 and updates Linux build targets from older manylinux2010 and musllinux_1_1 to newer manylinux2014 and musllinux_1_2, aligning with modern Python packaging standards.

  • Bump minimum Python version from 3.7 to 3.8
  • Update manylinux build images from manylinux2010 to manylinux2014 for x86_64 and i686 architectures
  • Update musllinux build images from musllinux_1_1 to musllinux_1_2 for multiple architectures

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
pyproject.toml Updates Python requirement and build images, removes manylinux2010-specific build overrides
README.rst Documents the version support changes for users
.github/workflows/build.yml Updates CI test matrix to use Python 3.8-3.13 instead of 3.7-3.12
Comments suppressed due to low confidence (1)

@mayeut mayeut requested review from jcfr and henryiii August 2, 2025 14:52
@mayeut mayeut merged commit ead9ee6 into scikit-build:master Aug 3, 2025
21 checks passed
@mayeut mayeut deleted the drop-3.7 branch August 3, 2025 05:12
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.

3 participants