Skip to content

Build Linux wheels across Python and libc matrix - #18

Merged
bright2227 merged 1 commit into
feature/self-contained-liburing-buildfrom
feature/linux-wheel-build-matrix
Aug 1, 2026
Merged

Build Linux wheels across Python and libc matrix#18
bright2227 merged 1 commit into
feature/self-contained-liburing-buildfrom
feature/linux-wheel-build-matrix

Conversation

@bright2227

Copy link
Copy Markdown
Owner

Summary

  • build CPython 3.12 and 3.13 wheels for manylinux x86-64 and musllinux x86-64
  • exercise the distribution workflow on pull requests and manual runs
  • retain PyPI upload as a release-only job
  • validate each installed wheel imports both native extensions
  • inspect both extension ELF dynamic sections and reject any liburing.so dependency
  • upload the sdist and each wheel as separate workflow artifacts

Why

PR #17 makes source builds self-contained, but the release workflow currently publishes only an sdist. Without compatible wheels, users still need a compiler and make. This matrix establishes the first binary Linux release targets and verifies that the vendored static-linking guarantee holds in both glibc and musl build containers.

This PR is stacked on #17 (feature/self-contained-liburing-build). PR #17 itself is unchanged.

Validation

  • .venv/bin/pytest — 25 passed
  • Ruff check and format check pass for scripts/verify_wheel.py
  • workflow parses as valid YAML
  • local verifier imports _liburing and _uringcore_liburing and finds no liburing.so
  • the four container builds are intentionally left to this draft PR's GitHub Actions matrix

@bright2227
bright2227 marked this pull request as ready for review August 1, 2026 03:47
@bright2227
bright2227 merged commit 3ccbe55 into feature/self-contained-liburing-build Aug 1, 2026
6 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.

1 participant