π 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)
π Single Python tests made more generic. (#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)
π Remove a system-wide install of pipx in the GitHub Action (#1745)
π No longer will cibuildwheel override the PIP_CONSTRAINT environment variable when using the build frontend. Instead it will be extended. (#1675)
π Fix a bug where building and testing both x86_86 and arm64 wheels on the same runner caused the wrong architectures in the test environment (#1750)
π Fix a bug that prevented testing a CPython 3.8 wheel targeting macOS 11+ on x86_64 (#1768)
π 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)
π Single Python tests made more generic. (#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)
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.15 to 2.19.
Release notes
Sourced from pypa/cibuildwheel's releases.
... (truncated)
Changelog
Sourced from pypa/cibuildwheel's changelog.
... (truncated)
Commits
a8d190a
Bump version: v2.19.0bf817c6
refactor: error handling to use exceptions (#1719)384c8d5
feat: build[uv] (#1856)c37e5a2
fix:util.move_file
shall not uselog.notice
(#1862)130fdd2
feat: free-threaded Python for macOS, MACOSX_DEPLOYMENT_TARGET updates (#1854)ed12054
chore: bump pyodide (#1859)6c6e0f6
fix: handle case where output_dir does not already exist on macos & windows (...877d3bf
[pre-commit.ci] pre-commit autoupdate (#1852)21e9ef1
[Bot] Update dependencies (#1848)c333b13
fix: include VIRTUAL_ENV variable (#1842)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