Skip to content

Bump uvloop to 0.22.1 so the arm64 image build finds a wheel - #139

Merged
pellepim merged 2 commits into
mainfrom
fix/uvloop-py314-wheels
Jul 12, 2026
Merged

Bump uvloop to 0.22.1 so the arm64 image build finds a wheel#139
pellepim merged 2 commits into
mainfrom
fix/uvloop-py314-wheels

Conversation

@pellepim

Copy link
Copy Markdown
Contributor

The v1.11.0 publish run stalled compiling uvloop from source and had to be cancelled. Nothing was published (no GHCR image, no GitHub release).

Cause: uvloop 0.21.0 ships no cp314 wheel for any architecture, so the Python 3.14 upgrade in this release forces pip to build it (and libuv) from the sdist. On the linux/arm64 leg of the multi-arch build that runs under QEMU emulation, where it sat at 400+ seconds with no end in sight — against a 9-minute baseline for the entire job at 1.10.0.

Fix: uvloop 0.22.1 publishes cp314 manylinux aarch64 wheels.

Verified by installing both versions in a linux/arm64 python:3.14-slim container:

  • uvloop==0.21.0 → downloads uvloop-0.21.0.tar.gz (source, must compile)
  • uvloop==0.22.1 → downloads uvloop-0.22.1-cp314-cp314-...aarch64.whl (prebuilt)

A sweep of all 73 pinned production dependencies confirms uvloop was the only one missing a cp314-compatible aarch64 wheel, so this should be the single blocker.

Full suite green (6817 passed). Changelog line updated to record the uvloop bump and why.

pellepim added 2 commits July 12, 2026 23:28
Re-enabling CodeQL surfaced 39 open py/url-redirection alerts with no shared
redirect-target validation behind them. Logs that as a Medium security issue
with the reasoning for why suppressing the rule is the wrong fix, since redirect
targets here cross tenant and service-provider boundaries.

Also archives the pygments DEPS entry, resolved in 1.11.0 when pymdown-extensions
11.0.1 unblocked the 2.20.0 bump, and corrects the dependency-audit note that
still claimed the pin was in place.
The v1.11.0 publish run stalled compiling uvloop from source. uvloop 0.21.0
ships no cp314 wheel for any architecture, so the Python 3.14 upgrade forced pip
to build it (and libuv) from the sdist. On the linux/arm64 leg of the multi-arch
build that happens under QEMU emulation, where it ran for 400+ seconds with no
end in sight, against a 9-minute baseline for the whole job at 1.10.0.

uvloop 0.22.1 publishes cp314 manylinux aarch64 wheels. Verified by installing
both versions in a linux/arm64 python:3.14-slim container: 0.21.0 pulls
uvloop-0.21.0.tar.gz, 0.22.1 pulls a prebuilt .whl. A sweep of all 73 pinned
production dependencies confirms uvloop was the only one missing a
cp314-compatible aarch64 wheel.
@pellepim
pellepim merged commit 39d81ae into main Jul 12, 2026
6 checks passed
@pellepim
pellepim deleted the fix/uvloop-py314-wheels branch July 12, 2026 21:57
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.

1 participant