🌟 Add a Pyodide platform. Set with --platform pyodide or CIBW_PLATFORM: pyodide on Linux with a host Python 3.12 to build WebAssembly wheels. Not accepted on PyPI currently, but usable directly in a website using Pyodide, for live docs, etc. (#1456, #1859)
🌟 Add build[uv] backend, which will take a pre-existing uv install (or install cibuildwheel[uv]) and use uv for all environment setup and installs on Python 3.8+. This is significantly faster in most cases. (#1856)
✨ Add free-threaded macOS builds and update CPython to 3.13.0b2. (#1854)
🐛 Issue copying a wheel to a non-existent output dir fixed. (#1851, #1862)
🐛 Better determinism for the test environment seeding. (#1835)
🛠 Sped up our ci by splitting up emulation tests. (#1839)
v2.18.1
🌟 Add free-threaded Linux and Windows builds for 3.13. New identifiers cp313t-*, new option CIBW_FREE_THREADED_SUPPORT/tool.cibuildwheel.free-threaded-support required to opt-in. See the docs for more information. (#1831)
✨ The container-engine is now a build (non-global) option. (#1792)
🛠 The build backend for cibuildwheel is now hatchling. (#1297)
🛠 Significant improvements and modernization to our noxfile. (#1823)
🛠 Use pylint's new GitHub Actions reporter instead of a custom matcher. (#1823)
🛠 Unpin virtualenv updates for Python 3.7+ (#1830)
🐛 Fix running linux tests from Windows or macOS ARM. (#1788)
✨ Adds CPython 3.13 support, under the prerelease flag CIBW_PRERELEASE_PYTHONS. This version of cibuildwheel uses 3.13.0b1. Free-threading mode is not available yet (#1657), waiting on official binaries (planned for beta 2) and pip support.
While CPython is in beta, the ABI can change, so your wheels might not be compatible with the final release. For this reason, we don't recommend distributing wheels until RC1, at which point 3.13 will be available in cibuildwheel without the flag. (#1815)
✨ Musllinux now defaults to musllinux_1_2. You can set the older musllinux_1_1 via config if needed. (#1817)
🛠 No longer pre-seed setuptools/wheel in virtual environments (#1819)
🛠 Respect the constraints file when building with pip, matching build (#1818)
🛠 Use uv to compile our pinned dependencies, 10x faster and doesn't require special setup (#1778)
📚 Speed up our readthedocs builds with uv, 26 seconds -> 6 seconds to install dependencies (#1816)
v2.17.0
🌟 Adds the ability to inherit configuration in TOML overrides. This makes certain configurations much simpler. If you're overriding an option like before-build or environment, and you just want to add an extra command or environment variable, you can just append (or prepend) to the previous config. See the docs for more information. (#1730)
🌟 Adds official support for native arm64 macOS GitHub runners. To use them, just specify macos-14 as an os of your job in your workflow file. You can also keep macos-13 in your build matrix to build x86_64. Check out the new GitHub Actions example config.
✨ You no longer need to specify --platform to run cibuildwheel locally! Instead it will detect your platform automatically. This was a safety feature, no longer necessary. (#1727)
🛠 Removed setuptools and wheel pinned versions. This only affects old-style projects without a pyproject.toml, projects with pyproject.toml are already getting fresh versions of their build-system.requires installed into an isolated environment. (#1725)
🛠 Improve how the GitHub Action passes arguments (#1757)
See the release post for more info on new features!
🌟 Add Pyodide platform. Set with --platform pyodide or CIBW_PLATFORM: pyodide on Linux with a host Python 3.12 to build WebAssembly wheels. Not accepted on PyPI currently, but usable directly in a website using Pyodide, for live docs, etc. (#1456, #1859)
🌟 Add build[uv] backend, which will take a pre-existing uv install (or install cibuildwheel[uv]) and use uv for all environment setup and installs on Python 3.8+. This is significantly faster in most cases. (#1856)
✨ Add free-threaded macOS builds and update CPython to 3.13.0b2. (#1854)
🐛 Issue copying a wheel to a non-existent output dir fixed. (#1851, #1862)
🐛 Better determinism for the test environment seeding. (#1835)
🛠 Sped up our ci by splitting up emulation tests. (#1839)
v2.18.1
🌟 Add free-threaded Linux and Windows builds for 3.13. New identifiers cp313t-*, new option CIBW_FREE_THREADED_SUPPORT/tool.cibuildwheel.free-threaded-support required to opt-in. See the docs for more information. (#1831)
✨ The container-engine is now a build (non-global) option. (#1792)
🛠 The build backend for cibuildwheel is now hatchling. (#1297)
🛠 Significant improvements and modernization to our noxfile. (#1823)
🛠 Use pylint's new GitHub Actions reporter instead of a custom matcher. (#1823)
🛠 Unpin virtualenv updates for Python 3.7+ (#1830)
🐛 Fix running linux tests from Windows or macOS ARM. (#1788)
✨ Adds CPython 3.13 support, under the prerelease flag CIBW_PRERELEASE_PYTHONS. This version of cibuildwheel uses 3.13.0b1. Free-threading mode is not available yet (#1657), waiting on official binaries (planned for beta 2) and pip support.
While CPython is in beta, the ABI can change, so your wheels might not be compatible with the final release. For this reason, we don't recommend distributing wheels until RC1, at which point 3.13 will be available in cibuildwheel without the flag. (#1815)
✨ Musllinux now defaults to musllinux_1_2. You can set the older musllinux_1_1 via config if needed. (#1817)
🛠 No longer pre-seed setuptools/wheel in virtual environments (#1819)
🛠 Respect the constraints file when building with pip, matching build (#1818)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps pypa/cibuildwheel from 2.16.2 to 2.19.1.
Release notes
Sourced from pypa/cibuildwheel's releases.
... (truncated)
Changelog
Sourced from pypa/cibuildwheel's changelog.
... (truncated)
Commits
932529c
Bump version: v2.19.170fb1c4
fix: specify full path to non-venv Python (#1881)405a475
[Bot] Update dependencies (#1879)78da7ba
docs: update README.md (#1874)8d86d31
tests: don't print xfails (#1865)89a5cfe
DOC: Fix bug with link (#1870)8d5d84e
fix: accept current Python version if acceptable for Pyodide (#1868)4ada77d
[pre-commit.ci] pre-commit autoupdate (#1869)829441f
fix: warning in generate schema script (#1866)a8d190a
Bump version: v2.19.0Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show