Repository navigation
[RELEASE ONLY CHANGES] Fix Python 3.15 wheel builds - #232
Merged
JacobSzwejbka merged 1 commit intoOct 29, 2026
Merged
Conversation
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.
Fix the four Python 3.15 wheel failures from the 1.6.0 RC1 builds, using the existing ExecuTorch fixes in #23876, #23932 and #24238 and pytorch/test-infra#9265.
The wheel build jobs check out test-infra commit
b46669025788e540ed4ecc7c56cc52db343e284f, matching ExecuTorch's Windows CUDA pin. This installs final Python 3.15 from conda-forge instead of downloading the broken RC marker package. The reusable release/2.15 workflows and the full Python 3.11–3.15 release matrices remain in place.The shared pre-build hook exports and persists the PyPI extra index so later smoke installs can resolve packages such as tiktoken. On Linux ARM64 it exposes the existing libatomic runtime through a temporary linker directory and persists that directory for SentencePiece's source build. macOS now runs the same hook, which preinstalls SentencePiece 0.2.2 on Python 3.15 with the libc++ availability workaround scoped to that package's subprocess.
Validation: all four workflows parse; their full version matrices and reusable workflow references are unchanged; all platforms are wired to the hook; bash syntax and git diff checks pass. Running the actual hook in a fresh CPython 3.15.0rc1 environment built a macOS 14 ARM64 SentencePiece wheel from source. Training and Unicode encode/decode checks pass, and the compiler workaround does not leak into the parent environment.
Python 3.15 build and installed-wheel smoke validation is running on an isolated branch. Only the four workflow matrix values differ from this PR, limiting validation to Python 3.15: Linux x64 https://github.com/meta-pytorch/tokenizers/actions/runs/40799730247, Linux ARM64 https://github.com/meta-pytorch/tokenizers/actions/runs/40799735551, macOS ARM64 https://github.com/meta-pytorch/tokenizers/actions/runs/40799740545, Windows x64 https://github.com/meta-pytorch/tokenizers/actions/runs/40799744135.
Authored with Codex assistance.