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
8 changes: 4 additions & 4 deletions cibuildwheel/resources/build-platforms.toml
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,8 @@ python_configurations = [
{ identifier = "pp311-macosx_arm64", version = "3.11", url = "https://downloads.python.org/pypy/pypy3.11-v7.3.20-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.0/graalpy-25.0.0-macos-amd64.tar.gz" },
{ identifier = "gp312_250-macosx_arm64", version = "3.12", url = "https://github.com/oracle/graalpython/releases/download/graal-25.0.0/graalpy-25.0.0-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" },
{ identifier = "gp312_250-macosx_arm64", version = "3.12", url = "https://github.com/oracle/graalpython/releases/download/graal-25.0.1/graalpy-25.0.1-macos-aarch64.tar.gz" },
]

[windows]
Expand Down Expand Up @@ -220,13 +220,13 @@ python_configurations = [
{ 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.20-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.0/graalpy-25.0.0-windows-amd64.zip" },
{ identifier = "gp312_250-win_amd64", version = "3.12", url = "https://github.com/oracle/graalpython/releases/download/graal-25.0.1/graalpy-25.0.1-windows-amd64.zip" },
]

[pyodide]
python_configurations = [
{ identifier = "cp312-pyodide_wasm32", version = "3.12", default_pyodide_version = "0.27.7", node_version = "v22" },
{ identifier = "cp313-pyodide_wasm32", version = "3.13", default_pyodide_version = "0.28.3", node_version = "v22" },
{ identifier = "cp313-pyodide_wasm32", version = "3.13", default_pyodide_version = "0.29.0", node_version = "v22" },
]

[android]
Expand Down
8 changes: 4 additions & 4 deletions cibuildwheel/resources/constraints-pyodide312.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ packaging==25.0
# build
# pyodide-build
# unearth
pip==25.2
pip==25.3
# via -r .nox/update_constraints/tmp/constraints-pyodide.in
platformdirs==4.5.0
# via
Expand All @@ -62,7 +62,7 @@ pydantic-core==2.41.4
# via pydantic
pygments==2.19.2
# via rich
pyodide-build==0.30.7
pyodide-build==0.30.8
# via -r .nox/update_constraints/tmp/constraints-pyodide.in
pyodide-cli==0.4.0
# via
Expand All @@ -81,15 +81,15 @@ rich==14.2.0
# pyodide-build
# pyodide-cli
# typer
ruamel-yaml==0.18.15
ruamel-yaml==0.18.16
# via pyodide-build
ruamel-yaml-clib==0.2.14
# via ruamel-yaml
shellingham==1.5.4
# via typer
sniffio==1.3.1
# via anyio
typer==0.19.2
typer==0.20.0
# via
# auditwheel-emscripten
# pyodide-build
Expand Down
8 changes: 4 additions & 4 deletions cibuildwheel/resources/constraints-pyodide313.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ packaging==25.0
# build
# pyodide-build
# unearth
pip==25.2
pip==25.3
# via -r .nox/update_constraints/tmp/constraints-pyodide.in
platformdirs==4.5.0
# via
Expand All @@ -62,7 +62,7 @@ pydantic-core==2.41.4
# via pydantic
pygments==2.19.2
# via rich
pyodide-build==0.30.7
pyodide-build==0.30.8
# via -r .nox/update_constraints/tmp/constraints-pyodide.in
pyodide-cli==0.4.0
# via
Expand All @@ -81,15 +81,15 @@ rich==14.2.0
# pyodide-build
# pyodide-cli
# typer
ruamel-yaml==0.18.15
ruamel-yaml==0.18.16
# via pyodide-build
ruamel-yaml-clib==0.2.14
# via ruamel-yaml
shellingham==1.5.4
# via typer
sniffio==1.3.1
# via anyio
typer==0.19.2
typer==0.20.0
# via
# auditwheel-emscripten
# pyodide-build
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python310.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python311.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python312.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python313.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python314.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints-python39.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.4.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ packaging==25.0
# via
# build
# delocate
pip==25.2
pip==25.3
# via -r cibuildwheel/resources/constraints.in
platformdirs==4.5.0
# via virtualenv
Expand Down
2 changes: 1 addition & 1 deletion cibuildwheel/resources/nodejs.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
url = "https://nodejs.org/dist/"
v22 = "v22.20.0"
v22 = "v22.21.0"
v20 = "v20.19.5"
66 changes: 33 additions & 33 deletions cibuildwheel/resources/pinned_docker_images.cfg
Original file line number Diff line number Diff line change
@@ -1,53 +1,53 @@
[x86_64]
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2025.10.24-1

[i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2025.10.24-1

[aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2025.10.24-1

[ppc64le]
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2025.10.24-1

[s390x]
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2025.10.24-1

[pypy_x86_64]
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.10.24-1

[pypy_i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.10.24-1

[pypy_aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.10.19-2
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.10.19-2
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.10.19-2
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.10.24-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.10.24-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.10.24-1

[armv7l]
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2025.10.19-2
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2025.10.24-1

[riscv64]
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2025.10.19-2
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2025.10.19-2
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2025.10.24-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2025.10.24-1

8 changes: 4 additions & 4 deletions docs/working-examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ title: Working examples
| [cmake][] | ![github icon][] ![travisci icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Multitagged binary builds for all supported platforms, using cibw 2 config configuration. |
| [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][] | Image processing library. Uses cibuildwheel to build and test a project that uses Cython with platform-native code. |
| [PyOxidizer][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A modern Python application packaging and distribution tool |
| [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 |
| [twisted-iocpsupport][] | ![github icon][] | ![windows icon][] | A submodule of Twisted that hooks into native C APIs using Cython. |
| [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). |
| [River][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | 🌊 Online machine learning in Python |
Expand All @@ -55,8 +55,8 @@ title: Working examples
| [numexpr][] | ![github icon][] ![travisci icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Fast numerical array expression evaluator for Python, NumPy, Pandas, PyTables and more |
| [Wrapt][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | A Python module for decorators, wrappers and monkey patching. |
| [h5py][] | ![azurepipelines icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | HDF5 for Python -- The h5py package is a Pythonic interface to the HDF5 binary data format. |
| [envd][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A machine learning development environment build tool |
| [Psycopg 3][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | A modern implementation of a PostgreSQL adapter for Python |
| [envd][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A machine learning development environment build tool |
| [OpenColorIO][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | A color management framework for visual effects and animation. |
| [ruptures][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | Extensive Cython + NumPy [pyproject.toml](https://github.com/deepcharles/ruptures/blob/master/pyproject.toml) example. |
| [aioquic][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | QUIC and HTTP/3 implementation in Python |
Expand Down Expand Up @@ -142,8 +142,8 @@ title: Working examples
[cmake]: https://github.com/scikit-build/cmake-python-distributions
[pyinstrument]: https://github.com/joerick/pyinstrument
[scikit-image]: https://github.com/scikit-image/scikit-image
[PyOxidizer]: https://github.com/indygreg/PyOxidizer
[cvxpy]: https://github.com/cvxpy/cvxpy
[PyOxidizer]: https://github.com/indygreg/PyOxidizer
[twisted-iocpsupport]: https://github.com/twisted/twisted-iocpsupport
[pedalboard]: https://github.com/spotify/pedalboard
[River]: https://github.com/online-ml/river
Expand All @@ -166,8 +166,8 @@ title: Working examples
[numexpr]: https://github.com/pydata/numexpr
[Wrapt]: https://github.com/GrahamDumpleton/wrapt
[h5py]: https://github.com/h5py/h5py
[envd]: https://github.com/tensorchord/envd
[Psycopg 3]: https://github.com/psycopg/psycopg
[envd]: https://github.com/tensorchord/envd
[OpenColorIO]: https://github.com/AcademySoftwareFoundation/OpenColorIO
[ruptures]: https://github.com/deepcharles/ruptures
[aioquic]: https://github.com/aiortc/aioquic
Expand Down
Loading