Skip to content

CI: bump uv to 0.11.26 so Python 3.14 builds use stable CPython#681

Merged
swahtz merged 1 commit into
release/v0.5from
fix/ci-uv-python314
Jul 2, 2026
Merged

CI: bump uv to 0.11.26 so Python 3.14 builds use stable CPython#681
swahtz merged 1 commit into
release/v0.5from
fix/ci-uv-python314

Conversation

@swahtz

@swahtz swahtz commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Problem

Both Python 3.14 variants of publish.yml fail on release/v0.5 (run 28566079399), and the same two jobs fail in nightly-publish.yml on main (run 28433783911). The 3.14 lane has never built successfully since it was added in #573.

The CMake error is misleading:

Segmentation fault
CMake Error at src/cmake/get_torch.cmake:21 (message):
  Failed to import PyTorch.

Root cause

.github/versions.json pins uv 0.7.5 (May 2025), which predates the stable CPython 3.14.0 release. Its bundled python-build-standalone list tops out at the March 2025 alpha, so the build jobs install a pre-release interpreter:

Run uv python install 3.14
Downloading cpython-3.14.0a6-linux-x86_64-gnu
Installed Python 3.14.0a6

The torch 2.11 cp314 wheel installs fine (the alpha reports the cp314 tag) but is compiled against the stable 3.14 ABI, which CPython alphas don't guarantee — so import torch segfaults inside the get_torch.cmake probe. Python 3.10–3.13 are unaffected because uv 0.7.5 knows stable builds of those series.

Fix

Bump uv.version to 0.11.26. Verified locally that it resolves 3.14 to stable CPython 3.14.6. No workflow changes needed: the pinned setup-uv action (v5.4.2) installs whatever uv version is requested, downloading by URL and skipping checksum validation for versions not in its manifest.

Side effect: newer patch releases of 3.10–3.13 will also be picked up.

After merge

This needs to be cherry-picked to main per the burndown process — nightly-publish there hits the same failure.

🤖 Generated with Claude Code

@swahtz swahtz requested a review from a team as a code owner July 2, 2026 05:16
uv 0.7.5 predates the stable CPython 3.14.0 release, so
`uv python install 3.14` resolved to the newest 3.14 in its bundled
python-build-standalone list: 3.14.0a6. The torch 2.11 cp314 wheel is
built against the stable 3.14 ABI, and importing it on the alpha
interpreter segfaults, which get_torch.cmake reports as "Failed to
import PyTorch". This broke both Python 3.14 variants of publish.yml
on release/v0.5 and nightly-publish.yml on main.

uv 0.11.26 resolves 3.14 to stable CPython 3.14.6. The pinned
setup-uv action (v5.4.2) downloads the requested uv version by URL
and skips checksum validation for versions it does not know, so no
workflow changes are needed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
@swahtz swahtz force-pushed the fix/ci-uv-python314 branch from 45d21ce to 8404d62 Compare July 2, 2026 05:21
@swahtz swahtz enabled auto-merge (squash) July 2, 2026 05:24
@swahtz swahtz merged commit 4e192dd into release/v0.5 Jul 2, 2026
40 checks passed
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.

2 participants