Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions cibuildwheel/resources/build-platforms.toml
Original file line number Diff line number Diff line change
Expand Up @@ -179,8 +179,8 @@ python_configurations = [
{ identifier = "pp39-macosx_arm64", version = "3.9", url = "https://downloads.python.org/pypy/pypy3.9-v7.3.16-macos_arm64.tar.bz2" },
{ identifier = "pp310-macosx_x86_64", version = "3.10", url = "https://downloads.python.org/pypy/pypy3.10-v7.3.19-macos_x86_64.tar.bz2" },
{ identifier = "pp310-macosx_arm64", version = "3.10", url = "https://downloads.python.org/pypy/pypy3.10-v7.3.19-macos_arm64.tar.bz2" },
{ identifier = "pp311-macosx_x86_64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.21-macos_x86_64.tar.bz2" },
{ identifier = "pp311-macosx_arm64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.21-macos_arm64.tar.bz2" },
{ identifier = "pp311-macosx_x86_64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.22-macos_x86_64.tar.bz2" },
{ identifier = "pp311-macosx_arm64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.22-macos_arm64.tar.bz2" },
{ identifier = "gp311_242-macosx_x86_64", version = "3.11", url = "https://github.com/oracle/graalpython/releases/download/graal-24.2.2/graalpy-24.2.2-macos-amd64.tar.gz" },
{ identifier = "gp311_242-macosx_arm64", version = "3.11", url = "https://github.com/oracle/graalpython/releases/download/graal-24.2.2/graalpy-24.2.2-macos-aarch64.tar.gz" },
{ identifier = "gp312_250-macosx_x86_64", version = "3.12", url = "https://github.com/oracle/graalpython/releases/download/graal-25.0.1/graalpy-25.0.1-macos-amd64.tar.gz" },
Expand Down Expand Up @@ -218,7 +218,7 @@ python_configurations = [
{ identifier = "pp38-win_amd64", version = "3.8", url = "https://downloads.python.org/pypy/pypy3.8-v7.3.11-win64.zip" },
{ identifier = "pp39-win_amd64", version = "3.9", url = "https://downloads.python.org/pypy/pypy3.9-v7.3.16-win64.zip" },
{ identifier = "pp310-win_amd64", version = "3.10", url = "https://downloads.python.org/pypy/pypy3.10-v7.3.19-win64.zip" },
{ identifier = "pp311-win_amd64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.21-win64.zip" },
{ identifier = "pp311-win_amd64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.22-win64.zip" },
{ identifier = "gp311_242-win_amd64", version = "3.11", url = "https://github.com/oracle/graalpython/releases/download/graal-24.2.2/graalpy-24.2.2-windows-amd64.zip" },
{ identifier = "gp312_250-win_amd64", version = "3.12", url = "https://github.com/oracle/graalpython/releases/download/graal-25.0.2/graalpy-25.0.2-windows-amd64.zip" },
]
Expand Down
8 changes: 4 additions & 4 deletions cibuildwheel/resources/constraints-python310.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
importlib-metadata==9.0.0
# via build
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand All @@ -38,5 +38,5 @@ typing-extensions==4.15.0
# virtualenv
virtualenv==21.2.1
# via -r cibuildwheel/resources/constraints.in
zipp==3.23.0
zipp==3.23.1
# via importlib-metadata
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints-python311.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints-python312.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints-python313.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints-python314.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python38.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ importlib-metadata==8.5.0
# via build
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints-python39.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.4.4
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
Expand All @@ -16,7 +16,7 @@ importlib-metadata==8.7.1
# via build
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand All @@ -38,5 +38,5 @@ typing-extensions==4.15.0
# virtualenv
virtualenv==21.2.1
# via -r cibuildwheel/resources/constraints.in
zipp==3.23.0
zipp==3.23.1
# via importlib-metadata
6 changes: 3 additions & 3 deletions cibuildwheel/resources/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@
# nox -s update_constraints
altgraph==0.17.5
# via macholib
build==1.4.3
build==1.5.0
# via -r cibuildwheel/resources/constraints.in
delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.25.2
filelock==3.29.0
# via
# python-discovery
# virtualenv
macholib==1.16.4
# via delocate
packaging==26.0
packaging==26.2
# via
# build
# delocate
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/nodejs.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
url = "https://nodejs.org/dist/"
v24 = "v24.14.1"
v24 = "v24.15.0"
v22 = "v22.22.2"
v20 = "v20.20.2"
68 changes: 34 additions & 34 deletions cibuildwheel/resources/pinned_docker_images.cfg
Original file line number Diff line number Diff line change
@@ -1,54 +1,54 @@
[x86_64]
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2026.05.02-2

[i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_i686:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2026.05.02-2

[aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2026.05.02-2

[ppc64le]
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2026.05.02-2

[s390x]
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2026.05.02-2

[pypy_x86_64]
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2026.05.02-2

[pypy_i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_i686:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2026.05.02-2

[pypy_aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2026.04.08-5
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2026.04.08-5
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2026.04.08-5
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2026.05.02-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2026.05.02-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2026.05.02-2

[armv7l]
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2026.04.08-5
manylinux_2_35 = quay.io/pypa/manylinux_2_35_armv7l:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2026.04.08-5
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2026.05.02-2
manylinux_2_35 = quay.io/pypa/manylinux_2_35_armv7l:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2026.05.02-2

[riscv64]
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2026.04.08-5
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2026.04.08-5
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2026.05.02-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2026.05.02-2

12 changes: 6 additions & 6 deletions docs/working-examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ title: Working examples
| [pyinstrument][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Python profiler with a C extension. No external dependencies. |
| [scikit-image][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] ![pyodide icon][] | Image processing library. Uses cibuildwheel to build and test a project that uses Cython with platform-native code. |
| [cvxpy][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A Python-embedded modeling language for convex optimization problems. |
| [PyOxidizer][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A modern Python application packaging and distribution tool |
| [pedalboard][] | ![github icon][] | ![windows icon][] ![linux icon][] ![apple icon][] | A Python library for working with audio data and audio plugins by wrapping the [JUCE](https://github.com/juce-framework/JUCE/) C++ framework. Uses cibuildwheel to deploy on as many operating systems and Python versions as possible with only one dependency (any NumPy). |
| [PyOxidizer][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A modern Python application packaging and distribution tool |
| [twisted-iocpsupport][] | ![github icon][] | ![windows icon][] | A submodule of Twisted that hooks into native C APIs using Cython. |
| [River][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | 🌊 Online machine learning in Python |
| [websockets][] | ![travisci icon][] | ![apple icon][] ![linux icon][] | Library for building WebSocket servers and clients. Mostly written in Python, with a small C 'speedups' extension module. |
Expand All @@ -43,8 +43,8 @@ title: Working examples
| [UltraJSON][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Ultra fast JSON decoder and encoder written in C with Python bindings |
| [CTranslate2][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Includes libraries from the [Intel oneAPI toolkit](https://www.intel.com/content/www/us/en/developer/tools/oneapi/base-toolkit.html) and CUDA kernels compiled for multiple GPU architectures. |
| [pyzmq][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] ![android icon][] | Python bindings for zeromq, the networking library. Uses Cython on CPython and CFFI on PyPy. ARM wheels for linux are built natively on GitHub Actions. |
| [Implicit][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Includes GPU support for linux wheels |
| [tinyobjloader][] | ![azurepipelines icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Tiny but powerful single file wavefront obj loader |
| [Implicit][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Includes GPU support for linux wheels |
| [vispy][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Main repository for Vispy |
| [coverage.py][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | The coverage tool for Python |
| [Line Profiler][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Line-by-line profiling for Python |
Expand Down Expand Up @@ -106,8 +106,8 @@ title: Working examples
| [clang-format][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Scikit-build wrapper around LLVM's CMake, all platforms, generic wheels. |
| [polaroid][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Full range of wheels for setuptools rust, with auto release and PyPI deploy. |
| [ninja][] | ![github icon][] ![travisci icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Multitagged binary builds for all supported platforms, using cibw 2 config configuration. |
| [etebase-py][] | ![travisci icon][] | ![linux icon][] | Python bindings to a Rust library using `setuptools-rust`, and `sccache` for improved speed. |
| [cf-units][] | ![github icon][] | ![apple icon][] ![linux icon][] | Units of measure as required by the Climate and Forecast (CF) Metadata Conventions |
| [etebase-py][] | ![travisci icon][] | ![linux icon][] | Python bindings to a Rust library using `setuptools-rust`, and `sccache` for improved speed. |
| [SiPM][] | ![github icon][] | ![apple icon][] ![linux icon][] | High performance library for SiPM detectors simulation using C++17, OpenMP and AVX2 intrinsics. |
| [numpythia][] | ![github icon][] | ![apple icon][] ![linux icon][] | The interface between PYTHIA and NumPy |
| [aalink][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Async Python interface for Ableton Link. |
Expand Down Expand Up @@ -143,8 +143,8 @@ title: Working examples
[pyinstrument]: https://github.com/joerick/pyinstrument
[scikit-image]: https://github.com/scikit-image/scikit-image
[cvxpy]: https://github.com/cvxpy/cvxpy
[PyOxidizer]: https://github.com/indygreg/PyOxidizer
[pedalboard]: https://github.com/spotify/pedalboard
[PyOxidizer]: https://github.com/indygreg/PyOxidizer
[twisted-iocpsupport]: https://github.com/twisted/twisted-iocpsupport
[River]: https://github.com/online-ml/river
[websockets]: https://github.com/python-websockets/websockets
Expand All @@ -154,8 +154,8 @@ title: Working examples
[UltraJSON]: https://github.com/ultrajson/ultrajson
[CTranslate2]: https://github.com/OpenNMT/CTranslate2
[pyzmq]: https://github.com/zeromq/pyzmq
[Implicit]: https://github.com/benfred/implicit
[tinyobjloader]: https://github.com/tinyobjloader/tinyobjloader
[Implicit]: https://github.com/benfred/implicit
[vispy]: https://github.com/vispy/vispy
[coverage.py]: https://github.com/nedbat/coveragepy
[Line Profiler]: https://github.com/pyutils/line_profiler
Expand Down Expand Up @@ -217,8 +217,8 @@ title: Working examples
[clang-format]: https://github.com/ssciwr/clang-format-wheel
[polaroid]: https://github.com/daggy1234/polaroid
[ninja]: https://github.com/scikit-build/ninja-python-distributions
[etebase-py]: https://github.com/etesync/etebase-py
[cf-units]: https://github.com/SciTools/cf-units
[etebase-py]: https://github.com/etesync/etebase-py
[SiPM]: https://github.com/EdoPro98/SimSiPM
[numpythia]: https://github.com/scikit-hep/numpythia
[aalink]: https://github.com/artfwo/aalink
Expand Down
Loading