Skip to content

Releases: pypa/cibuildwheel

v2.11.0

13 Oct 08:55
Compare
Choose a tag to compare
  • 🌟 Adds support for cross-compiling Windows ARM64 wheels. To use this feature, add ARM64 to the CIBW_ARCHS option on a Windows Intel runner. (#1144)
  • ✨ Adds support for building Linux aarch64 wheels on Circle CI. (#1307)
  • ✨ Adds support for building Windows wheels on Gitlab CI. (#1295)
  • ✨ Adds support for building Linux aarch64 wheels under emulation on Gitlab CI. (#1295)
  • ✨ Adds the ability to test cp38-macosx_arm64 wheels on a native arm64 runner. To do this, you'll need to preinstall the (experimental) universal2 version of CPython 3.8 on your arm64 runner before invoking cibuildwheel. Note: it is not recommended to build x86_64 wheels with this setup, your wheels will have limited compatibility wrt macOS versions. (#1283)
  • 🛠 Improved error messages when using custom Docker images and Python cannot be found at the correct path. (#1298)
  • 📚 Sample configs for Azure Pipelines and Travis CI updated (#1296)
  • 📚 Other docs improvements - including more information about using Homebrew for build dependencies (#1290)

v2.10.2

25 Sep 08:48
Compare
Choose a tag to compare
  • 🐛 Fix a bug that caused win32 identifiers to fail when used with --only. (#1282)
  • 🐛 Fix computation of auto/auto64/auto32 archs when targeting a different platform to the one that you're running cibuildwheel on. (#1266)
  • 📚 Fix an mistake in the 'how it works' diagram. (#1274)

v2.10.1

18 Sep 11:57
Compare
Choose a tag to compare
  • 🐛 Fix a bug that stopped environment variables specified in TOML from being expanded. (#1273)

v2.10.0

13 Sep 09:27
Compare
Choose a tag to compare
  • 🌟 Adds support for building wheels on Cirrus CI. This is exciting for us, as it's the first public CI platform that natively supports macOS Apple Silicon (aka. M1, arm64) runners. As such, it's the first platform that you can natively build and test macOS arm64 wheels. It also has native Linux ARM (aarch64) runners, for fast, native builds there. (#1191)
  • 🌟 Adds support for running cibuildwheel on Apple Silicon machines. For a while, we've supported cross-compilation of Apple Silicon wheels on x86_64, but now that we have Cirrus CI we can run our test suite and officially support running cibuildwheel on arm64. (#1191)
  • ✨ Adds the --only command line option, to specify a single build to run. Previously, it could be cumbersome to set all the build selection options to target a specific build - for example, you might have to run something like CIBW_BUILD=cp39-manylinux_x86_64 cibuildwheel --platform linux --archs x86_64. The new --only option overrides all the build selection options to simplify running a single build, which now looks like cibuildwheel --only cp39-manylinux_x86_64. (#1098)
  • ✨ Adds the CIBW_CONFIG_SETTINGS option, so you can pass arguments to your package's build backend (#1244)
  • 🛠 Updates the CPython 3.11 version to the latest release candidate - v3.11.0rc2. (#1265)
  • 🐛 Fix a bug that can cause a RecursionError on Windows when building from an sdist. (#1253)
  • 🛠 Add support for the s390x architecture on manylinux_2_28 (#1255)

v2.9.0

11 Aug 18:44
Compare
Choose a tag to compare
  • 🌟 CPython 3.11 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.11.0rc1, which is guaranteed to be ABI compatible with the final release. (#1226)
  • ⚠️ Removed support for running cibuildwheel in Python 3.6. Python 3.6 is EOL. However, cibuildwheel continues to build CPython 3.6 wheels for the moment. (#1175)
  • ✨ Improved error messages when misspelling TOML options, suggesting close matches (#1205)
  • 🛠 When running on Apple Silicon (so far, an unsupported mode of operation), cibuildwheel no longer builds universal2 wheels by default - just arm64. See #1204 for discussion. We hope to release official support for native builds on Apple Silicon soon! (#1217)

v2.8.1

18 Jul 20:42
Compare
Choose a tag to compare
  • 🐛 Fix a bug when building CPython 3.8 wheels on an Apple Silicon machine where testing would always fail. cibuildwheel will no longer attempt to test the arm64 part of CPython 3.8 wheels because we use the x86_64 installer of CPython 3.8 due to its macOS system version backward-compatibility. See #1169 for more details. (#1171)
  • 🛠 Update the prerelease CPython 3.11 to 3.11.0b4. (#1180)
  • 🛠 The GitHub Action will ensure a compatible version of Python is installed on the runner (#1114)
  • 📚 A few docs improvements

v2.8.0

05 Jul 17:35
Compare
Choose a tag to compare
  • ✨ You can now run cibuildwheel on Podman, as an alternate container engine to Docker (which remains the default). This is useful in environments where a Docker daemon isn't available, for example, it can be run inside a Docker container, or without root access. To use Podman, set the CIBW_CONTAINER_ENGINE option. (#966)

  • ✨ Adds support for building py3-none-{platform} wheels. This works the same as ABI3 - wheels won't be rebuilt, but tests will still be run across all selected versions of Python.

    These wheels contain native extension code, but don't use the Python APIs. Typically, they're bridged to Python using a FFI module like ctypes or cffi. Because they don't use Python ABI, the wheels are more compatible - they work across many Python versions.

    Check out this example ctypes project to see an example of how it works. (#1151)

  • 🛠 cibuildwheel will now error if multiple builds in a single run produce the same wheel filename, as this indicates a misconfiguration. (#1152)

  • 📚 A few docs improvements and updates to keep things up-to-date.

2.7.0

17 Jun 18:34
Compare
Choose a tag to compare
  • 🌟 Added support for the new manylinux_2_28 images. These new images are based on AlmaLinux, the community-driven successor to CentOS, unlike manylinux_2_24, which was based on Debian. To build on these images, set your CIBW_MANYLINUX_*_IMAGE option to manylinux_2_28. (#1026)
  • 🐛 Fix a bug where tests were not being run on CPython 3.11 (when CIBW_PRERELEASE_PYTHONS was set) (#1138)
  • ✨ You can now build Linux wheels on Windows, as long as you have Docker installed and set to 'Linux containers' (#1117)
  • 🐛 Fix a bug on macOS that caused cibuildwheel to crash trying to overwrite a previously-built wheel of the same name (#1129)

2.6.1

07 Jun 08:15
Compare
Choose a tag to compare
  • 🛠 Update the prerelease CPython 3.11 to 3.11.0b3

2.6.0

25 May 17:45
Compare
Choose a tag to compare
  • 🌟 Added the ability to test building wheels on CPython 3.11! Because CPython 3.11 is in beta, these wheels should not be distributed, because they might not be compatible with the final release, but it's available to build for testing purposes. Use the flag --prerelease-pythons or CIBW_PRERELEASE_PYTHONS to test. This version of cibuildwheel includes CPython 3.11.0b1. (#1109)
  • 📚 Added an interactive diagram showing how cibuildwheel works to the docs (#1100)