Use cibuildwheel to build wheels for all Python versions, platforms and architectures
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 28.5k
- Forks
- 2.3k
- Avg merge
- 3d 8h
- Merged PRs (30d)
- 62
Description
Several platforms, architectures and Python versions are not being build (for example Python 3.14, musllinux, most glibc variants, ...).
https://pypi.org/project/mlx/0.28.0/#files
The manylinux project supports:
- manylinux2014 images for x86_64, i686, aarch64, ppc64le and s390x.
- manylinux_2_28 images for x86_64, i686, aarch64, ppc64le and s390x.
- manylinux_2_34 images for x86_64, i686, aarch64, ppc64le and s390x.
- manylinux_2_39 images for aarch64 and riscv64.
- musllinux_1_2 images for x86_64, i686, aarch64, ppc64le, s390x and armv7l.
https://github.com/pypa/manylinux
Debian 13 uses glibc 2.41 for example.
The standard GitHub Action cibuildwheel builds all possible variants, can the wheel builds be modernized to allow a larger user base?
https://github.com/pypa/cibuildwheel/#example-setup
To build manylinux, musllinux, macOS, and Windows wheels on GitHub Actions, you could use this .github/workflows/wheels.yml:
name: Build on: [push, pull_request] jobs: build_wheels: name: Build wheels on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, ubuntu-24.04-arm, windows-latest, windows-11-arm, macos-13, macos-latest]
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the wheel workflow under .github/workflows/wheels.yml and compare its current matrix with cibuildwheel's documented GitHub Actions setup. Verify the workflow covers the requested Python versions, manylinux and musllinux platforms, architectures, macOS, and Windows; done means the resulting wheels are built successfully for the supported variants.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, python
- Domain
- build-system, ci-cd
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100