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
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,8 +178,8 @@ Here are some repos that use cibuildwheel.
| Name | CI | OS | Notes |
|-----------------------------------|----|----|:------|
| [scikit-learn][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | The machine learning library. A complex but clean config using many of cibuildwheel's features to build a large project with Cython and C++ extensions. |
| [pytorch-fairseq][] | ![github icon][] | ![apple icon][] ![linux icon][] | Facebook AI Research Sequence-to-Sequence Toolkit written in Python. |
| [duckdb][] | ![github icon][] | ![apple icon][] ![linux icon][] ![windows icon][] | DuckDB is an analytical in-process SQL database management system |
| [pytorch-fairseq][] | ![github icon][] | ![apple icon][] ![linux icon][] | Facebook AI Research Sequence-to-Sequence Toolkit written in Python. |
| [NumPy][] | ![github icon][] ![travisci icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | The fundamental package for scientific computing with Python. |
| [Tornado][] | ![github icon][] | ![linux icon][] ![apple icon][] ![windows icon][] | Tornado is a Python web framework and asynchronous networking library. Uses stable ABI for a small C extension. |
| [NCNN][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | ncnn is a high-performance neural network inference framework optimized for the mobile platform |
Expand All @@ -189,8 +189,8 @@ Here are some repos that use cibuildwheel.
| [Kivy][] | ![github icon][] | ![windows icon][] ![apple icon][] ![linux icon][] | Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS |

[scikit-learn]: https://github.com/scikit-learn/scikit-learn
[pytorch-fairseq]: https://github.com/facebookresearch/fairseq
[duckdb]: https://github.com/duckdb/duckdb
[pytorch-fairseq]: https://github.com/facebookresearch/fairseq
[NumPy]: https://github.com/numpy/numpy
[Tornado]: https://github.com/tornadoweb/tornado
[NCNN]: https://github.com/Tencent/ncnn
Expand Down
48 changes: 24 additions & 24 deletions cibuildwheel/resources/build-platforms.toml
Original file line number Diff line number Diff line change
Expand Up @@ -159,18 +159,18 @@ python_configurations = [
{ identifier = "cp312-macosx_x86_64", version = "3.12", url = "https://www.python.org/ftp/python/3.12.10/python-3.12.10-macos11.pkg" },
{ identifier = "cp312-macosx_arm64", version = "3.12", url = "https://www.python.org/ftp/python/3.12.10/python-3.12.10-macos11.pkg" },
{ identifier = "cp312-macosx_universal2", version = "3.12", url = "https://www.python.org/ftp/python/3.12.10/python-3.12.10-macos11.pkg" },
{ identifier = "cp313-macosx_x86_64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp313-macosx_arm64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp313-macosx_universal2", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp313t-macosx_x86_64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp313t-macosx_arm64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp313t-macosx_universal2", version = "3.13", url = "https://www.python.org/ftp/python/3.13.6/python-3.13.6-macos11.pkg" },
{ identifier = "cp314-macosx_x86_64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp314-macosx_arm64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp314-macosx_universal2", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp314t-macosx_x86_64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp314t-macosx_arm64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp314t-macosx_universal2", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc1-macos11.pkg" },
{ identifier = "cp313-macosx_x86_64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp313-macosx_arm64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp313-macosx_universal2", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp313t-macosx_x86_64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp313t-macosx_arm64", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp313t-macosx_universal2", version = "3.13", url = "https://www.python.org/ftp/python/3.13.7/python-3.13.7-macos11.pkg" },
{ identifier = "cp314-macosx_x86_64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "cp314-macosx_arm64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "cp314-macosx_universal2", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "cp314t-macosx_x86_64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "cp314t-macosx_arm64", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "cp314t-macosx_universal2", version = "3.14", url = "https://www.python.org/ftp/python/3.14.0/python-3.14.0rc2-macos11.pkg" },
{ identifier = "pp38-macosx_x86_64", version = "3.8", url = "https://downloads.python.org/pypy/pypy3.8-v7.3.11-macos_x86_64.tar.bz2" },
{ identifier = "pp38-macosx_arm64", version = "3.8", url = "https://downloads.python.org/pypy/pypy3.8-v7.3.11-macos_arm64.tar.bz2" },
{ identifier = "pp39-macosx_x86_64", version = "3.9", url = "https://downloads.python.org/pypy/pypy3.9-v7.3.16-macos_x86_64.tar.bz2" },
Expand All @@ -195,22 +195,22 @@ python_configurations = [
{ identifier = "cp311-win_amd64", version = "3.11.9", arch = "64" },
{ identifier = "cp312-win32", version = "3.12.10", arch = "32" },
{ identifier = "cp312-win_amd64", version = "3.12.10", arch = "64" },
{ identifier = "cp313-win32", version = "3.13.6", arch = "32" },
{ identifier = "cp313t-win32", version = "3.13.6", arch = "32" },
{ identifier = "cp313-win_amd64", version = "3.13.6", arch = "64" },
{ identifier = "cp313t-win_amd64", version = "3.13.6", arch = "64" },
{ identifier = "cp314-win32", version = "3.14.0-rc1", arch = "32" },
{ identifier = "cp314t-win32", version = "3.14.0-rc1", arch = "32" },
{ identifier = "cp314-win_amd64", version = "3.14.0-rc1", arch = "64" },
{ identifier = "cp314t-win_amd64", version = "3.14.0-rc1", arch = "64" },
{ identifier = "cp313-win32", version = "3.13.7", arch = "32" },
{ identifier = "cp313t-win32", version = "3.13.7", arch = "32" },
{ identifier = "cp313-win_amd64", version = "3.13.7", arch = "64" },
{ identifier = "cp313t-win_amd64", version = "3.13.7", arch = "64" },
{ identifier = "cp314-win32", version = "3.14.0-rc2", arch = "32" },
{ identifier = "cp314t-win32", version = "3.14.0-rc2", arch = "32" },
{ identifier = "cp314-win_amd64", version = "3.14.0-rc2", arch = "64" },
{ identifier = "cp314t-win_amd64", version = "3.14.0-rc2", arch = "64" },
{ identifier = "cp39-win_arm64", version = "3.9.10", arch = "ARM64" },
{ identifier = "cp310-win_arm64", version = "3.10.11", arch = "ARM64" },
{ identifier = "cp311-win_arm64", version = "3.11.9", arch = "ARM64" },
{ identifier = "cp312-win_arm64", version = "3.12.10", arch = "ARM64" },
{ identifier = "cp313-win_arm64", version = "3.13.6", arch = "ARM64" },
{ identifier = "cp313t-win_arm64", version = "3.13.6", arch = "ARM64" },
{ identifier = "cp314-win_arm64", version = "3.14.0-rc1", arch = "ARM64" },
{ identifier = "cp314t-win_arm64", version = "3.14.0-rc1", arch = "ARM64" },
{ identifier = "cp313-win_arm64", version = "3.13.7", arch = "ARM64" },
{ identifier = "cp313t-win_arm64", version = "3.13.7", arch = "ARM64" },
{ identifier = "cp314-win_arm64", version = "3.14.0-rc2", arch = "ARM64" },
{ identifier = "cp314t-win_arm64", version = "3.14.0-rc2", arch = "ARM64" },
{ identifier = "pp38-win_amd64", version = "3.8", arch = "64", url = "https://downloads.python.org/pypy/pypy3.8-v7.3.11-win64.zip" },
{ identifier = "pp39-win_amd64", version = "3.9", arch = "64", url = "https://downloads.python.org/pypy/pypy3.9-v7.3.16-win64.zip" },
{ identifier = "pp310-win_amd64", version = "3.10", arch = "64", url = "https://downloads.python.org/pypy/pypy3.10-v7.3.19-win64.zip" },
Expand Down
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-pyodide312.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ click==8.1.8
# typer
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
h11==0.16.0
# via httpcore
Expand Down Expand Up @@ -107,7 +107,7 @@ unearth==0.17.5
# via pyodide-build
urllib3==2.5.0
# via requests
virtualenv==20.33.1
virtualenv==20.34.0
# via
# build
# pyodide-build
Expand Down
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-pyodide313.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ click==8.1.8
# typer
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
h11==0.16.0
# via httpcore
Expand Down Expand Up @@ -106,7 +106,7 @@ unearth==0.17.5
# via pyodide-build
urllib3==2.5.0
# via requests
virtualenv==20.33.1
virtualenv==20.34.0
# via
# build
# pyodide-build
Expand Down
8 changes: 5 additions & 3 deletions cibuildwheel/resources/constraints-python310.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
importlib-metadata==8.7.0
# via build
Expand All @@ -27,8 +27,10 @@ pyproject-hooks==1.2.0
tomli==2.2.1
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
# via
# delocate
# virtualenv
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
zipp==3.23.0
# via importlib-metadata
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-python311.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
macholib==1.16.3
# via delocate
Expand All @@ -24,5 +24,5 @@ pyproject-hooks==1.2.0
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-python312.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
macholib==1.16.3
# via delocate
Expand All @@ -24,5 +24,5 @@ pyproject-hooks==1.2.0
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-python313.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
macholib==1.16.3
# via delocate
Expand All @@ -24,5 +24,5 @@ pyproject-hooks==1.2.0
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints-python314.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
macholib==1.16.3
# via delocate
Expand All @@ -24,5 +24,5 @@ pyproject-hooks==1.2.0
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
6 changes: 4 additions & 2 deletions cibuildwheel/resources/constraints-python38.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,10 @@ pyproject-hooks==1.2.0
tomli==2.2.1
# via build
typing-extensions==4.13.2
# via delocate
virtualenv==20.33.1
# via
# delocate
# virtualenv
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
zipp==3.20.2
# via importlib-metadata
8 changes: 5 additions & 3 deletions cibuildwheel/resources/constraints-python39.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
importlib-metadata==8.7.0
# via build
Expand All @@ -27,8 +27,10 @@ pyproject-hooks==1.2.0
tomli==2.2.1
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
# via
# delocate
# virtualenv
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
zipp==3.23.0
# via importlib-metadata
4 changes: 2 additions & 2 deletions cibuildwheel/resources/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ delocate==0.13.0
# via -r cibuildwheel/resources/constraints.in
distlib==0.4.0
# via virtualenv
filelock==3.18.0
filelock==3.19.1
# via virtualenv
macholib==1.16.3
# via delocate
Expand All @@ -24,5 +24,5 @@ pyproject-hooks==1.2.0
# via build
typing-extensions==4.14.1
# via delocate
virtualenv==20.33.1
virtualenv==20.34.0
# via -r cibuildwheel/resources/constraints.in
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.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.08.02-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2025.08.09-0
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_x86_64:2025.08.15-1

[i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.08.02-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2025.08.09-0
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_i686:2025.08.15-1

[aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.08.02-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2025.08.09-0
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_aarch64:2025.08.15-1

[ppc64le]
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2025.08.02-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2025.08.09-0
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_ppc64le:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_ppc64le:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_ppc64le:2025.08.15-1

[s390x]
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2025.08.02-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2025.08.09-0
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_s390x:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_s390x:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_s390x:2025.08.15-1

[pypy_x86_64]
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.08.02-1
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_x86_64:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_x86_64:2025.08.15-1

[pypy_i686]
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.08.02-1
manylinux2014 = quay.io/pypa/manylinux2014_i686:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_i686:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_i686:2025.08.15-1

[pypy_aarch64]
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.08.09-0
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.08.09-0
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.08.02-1
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2025.08.15-1
manylinux_2_28 = quay.io/pypa/manylinux_2_28_aarch64:2025.08.15-1
manylinux_2_34 = quay.io/pypa/manylinux_2_34_aarch64:2025.08.15-1

[armv7l]
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2025.08.09-0
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2025.08.09-0
manylinux_2_31 = quay.io/pypa/manylinux_2_31_armv7l:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_armv7l:2025.08.15-1

[riscv64]
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2025.08.09-0
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2025.08.09-0
manylinux_2_39 = quay.io/pypa/manylinux_2_39_riscv64:2025.08.15-1
musllinux_1_2 = quay.io/pypa/musllinux_1_2_riscv64:2025.08.15-1

Loading
Loading