Repository navigation
Build Python 3.15 wheels via meta-ci-action build-dist v2.3 - #258
Merged
Merged
Conversation
Bump cibuildwheel to v4.3.1, which ships the final CPython 3.15.0, and add cp315-* to CIBW_BUILD. Drop CIBW_PRERELEASE_PYTHONS: cibuildwheel 3 removed that option, so it has been silently ignored since the move to v4, and 3.15 no longer needs prerelease enabling anyway. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Replace the hand-rolled cibuildwheel matrix with the shared reusable workflow. v2.3 runs cibuildwheel 4.3.1, which builds the final CPython 3.15.0 by default, and picks interpreters from requires-python, so new CPython releases need no edits here. Co-Authored-By: Claude Opus 5.5 (1M context) <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.
Python 3.15.0 is final. This adds cp315 wheels to the PyPI publish workflow.
Changes (
.github/workflows/publish-PyPI.ymlonly)pypa/cibuildwheelv4.1.0 → v4.3.1, which ships the final CPython 3.15.0.CIBW_BUILDnow includescp315-*. That pattern still excludes free-threadedcp315t, as before.CIBW_PRERELEASE_PYTHONS. cibuildwheel 3 removed this option in favour ofenable, so it has been silently ignored on v4. 3.15 does not need it.No other version pins needed changing:
requires-python = ">=3.12", there are no classifiers, and the test matrix lives in meta-ci-action. pyo3/numpy 0.29 already support 3.15, and every dependency has 3.15 wheels.Local verification on CPython 3.15.0 (
uv sync --locked --all-extras -p 3.15.0, which is how CI installs; the lockfile is unchanged):pytest testsgives 120 passed, 1 xfailed (the existing strict xfail on the EAS reference). The extension built and imported as_core.cpython-315-x86_64-linux-gnu.so.Update:
publish-PyPI.ymlnow callsucgmsim/meta-ci-action/.github/workflows/build-dist.yml@v2.3instead of pinning cibuildwheel itself (pinned to@v2.3because the floatingv2tag still predates build-dist). v2.3 runs cibuildwheel 4.3.1, which builds the final CPython 3.15.0 by default and takes interpreters fromrequires-python. The PyPI upload stays a local job, so thepypienvironment and trusted publisher are unchanged. Linted with actionlint 1.7.7. The explicitCIBW_BUILD: cp312-* … cp315-*list is replaced bycibw-skip: "pp* *-musllinux_* *t-*", which yields the same wheel set (GIL-enabled CPython >=3.12) without an edit for each new CPython.🤖 Generated with Claude Code