Releases: pypa/cibuildwheel
Releases · pypa/cibuildwheel
v2.23.1
⚠️ Added warnings when the shorthand valuesmanylinux1
,manylinux2010
,manylinux_2_24
, andmusllinux_1_1
are used to specify the images in linux builds. The shorthand to these (unmaintainted) images will be removed in v3.0. If you want to keep using these images, explicitly opt-in using the full image URL, which can be found in this file. (#2312)- 🛠 Dependency updates, including a manylinux update which fixes an issue with rustup. (#2315)
v2.23.0
- ✨ Adds official support for the new GitHub Actions Arm runners. In fact these worked out-of-the-box, now we include them in our tests and example configs. (#2135 via #2281)
- ✨ Adds support for building PyPy 3.11 wheels (#2268 via #2281)
- 🛠 Adopts the beta pypa/manylinux image for armv7l builds (#2269 via #2281)
- 🛠 Dependency updates, including Pyodide 0.27 (#2117 and #2281)
Version 2.22.0
- 🌟 Added a new
CIBW_ENABLE
/enable
feature that replacesCIBW_FREETHREADED_SUPPORT
/free-threaded-support
andCIBW_PRERELEASE_PYTHONS
with a system that supports both. In cibuildwheel 3, this will also include a PyPy setting and the deprecated options will be removed. (#2048) - 🌟 Dependency groups are now supported for tests. Use
CIBW_TEST_GROUPS
/test-groups
to specify groups in[dependency-groups]
for testing. (#2063) - 🌟 Support for the experimental Ubuntu-based ARMv7l manylinux image (#2052)
- ✨ Show a warning when cibuildwheel is run from Python 3.10 or older; cibuildwheel 3.0 will require Python 3.11 or newer as host (#2050)
- 🐛 Fix issue with stderr interfering with checking the docker version (#2074)
- 🛠 Python 3.9 is now used in
CIBW_BEFORE_ALL
/before-all
on linux, replacing 3.8, which is now EoL (#2043) - 🛠 Error messages for producing a pure-Python wheel are slightly more informative (#2044)
- 🛠 Better error when
uname -m
fails on ARM (#2049) - 🛠 Better error when repair fails and docs for abi3audit on Windows (#2058)
- 🛠 Better error when
manylinux-interpreters ensure
fails (#2066) - 🛠 Update Pyodide to 0.26.4, and adapt to the unbundled pyodide-build (now 0.29) (#2090)
- 🛠 Now cibuildwheel uses dependency-groups for development dependencies (#2064, #2085)
- 📚 Docs updates and tidy ups (#2061, #2067, #2072)
v2.21.3
v2.21.2
- ✨ Adds support for building 32-bit armv7l wheels on musllinux. On a Linux system with emulation set up, set CIBW_ARCHS to
armv7l
to try it out if you're interested! (#2017) - 🐛 Fix Linux Podman builds on some systems (#2016)
- ✨ Adds official support for running on Python 3.13 (#2026)
- 🛠 Update CPython 3.13 to 3.13.0rc3 (#2029)
Note: the default manylinux image is scheduled to change from manylinux2014
to manylinux_2_28
in a cibuildwheel release on or after 6th May 2025 - you can set the value now to avoid getting upgraded if you want. (#1992)
Version 2.21.1
- 🐛 Fix a bug in the Linux build, where files copied to the container would have invalid ownership permissions (#2007)
- 🐛 Fix a bug on Windows where cibuildwheel would call upon
uv
to install dependencies for versions of CPython that it does not support (#2005) - 🐛 Fix a bug where
uv 0.4.10
would not use the right Python when testing on Linux. (#2008) - 🛠 Bump our documentation pins, fixes an issue with a missing package (#2011)
Version 2.21.0
⚠️ Update CPython 3.12 to 3.12.6, which changes the macOS minimum deployment target on CPython 3.12 from macOS 10.9 to macOS 10.13 (#1998)- 🛠 Changes the behaviour when inheriting
config-settings
in TOML overrides - rather than extending each key, which is rarely useful, individual keys will override previously set values. (#1803) - 🛠 Update CPython 3.13 to 3.13.0rc2 (#1998)
- ✨ Adds support for multiarch OCI images (#1961)
- 🐛 Fixes some bugs building Linux wheels on macOS. (#1961)
⚠️ Changes the minimum version of Docker/Podman to Docker API version 1.43, Podman API version 3. The only mainstream runner this should affect is Travis Graviton2 runners - if so you can upgrade your version of Docker. (#1961)
Version 2.20.0
- 🌟 CPython 3.13 wheels are now built by default - without the
CIBW_PRERELEASE_PYTHONS
flag. It's time to build and upload these wheels to PyPI! This release includes CPython 3.13.0rc1, which is guaranteed to be ABI compatible with the final release. Free-threading is still behind a flag/config option. (#1950) - ✨ Provide a
CIBW_ALLOW_EMPTY
environment variable as an alternative to the command line flag. (#1937) - 🐛 Don't use uv on PyPy3.8 on Windows, it stopped working starting in 0.2.25. Note that PyPy 3.8 is EoL. (#1868)
- 🛠 Set the
VSCMD_ARG_TGT_ARCH
variable based on target arch. (#1876) - 🛠 Undo cleaner output on pytest 8-8.2 now that 8.3 is out. (#1943)
- 📚 Update examples to use Python 3.12 on host (cibuildwheel will require Python 3.11+ on the host machine starting in October 2024) (#1919)
Version 2.19.2
- 🐛 Update manylinux2014 pins to versions that support past-EoL CentOS 7 mirrors. (#1917)
- 🐛 Support
--no-isolation
withbuild[uv]
build-frontend. (#1889) - 🛠 Provide attestations for releases at https://github.com/pypa/cibuildwheel/attestations. (#1916)
- 🛠 Provide CPython 3.13.0b3. (#1913)
- 🛠 Remove some workarounds now that pip 24.1 is available. (#1891, #1892)
- 📚 Remove nosetest from our docs. (#1821)
- 📚 Document the macOS ARM workaround for 3.8 on GHA. (#1871)
- 📚 GitLab CI + macOS is now a supported platform with an example. (#1911)