From 63fd63b352a9a8bdcc24791c9dbee952ee9a8abc Mon Sep 17 00:00:00 2001 From: Joe Rickerby Date: Wed, 12 Nov 2025 19:27:31 +0000 Subject: [PATCH] Bump version: v3.3.0 --- README.md | 32 +++++++++++++------------- cibuildwheel/__init__.py | 2 +- docs/changelog.md | 14 +++++++++++ docs/faq.md | 6 ++--- examples/azure-pipelines-minimal.yml | 6 ++--- examples/circleci-minimal.yml | 6 ++--- examples/cirrus-ci-intel-mac.yml | 2 +- examples/cirrus-ci-minimal.yml | 2 +- examples/github-deploy.yml | 2 +- examples/github-minimal.yml | 2 +- examples/github-pipx.yml | 2 +- examples/github-with-qemu.yml | 2 +- examples/gitlab-minimal.yml | 6 ++--- examples/gitlab-with-qemu.yml | 2 +- examples/travis-ci-deploy.yml | 2 +- examples/travis-ci-minimal.yml | 2 +- examples/travis-ci-test-and-deploy.yml | 4 ++-- pyproject.toml | 2 +- 18 files changed, 55 insertions(+), 41 deletions(-) diff --git a/README.md b/README.md index f3847b88..1c020cc0 100644 --- a/README.md +++ b/README.md @@ -99,7 +99,7 @@ jobs: - uses: actions/setup-python@v5 - name: Install cibuildwheel - run: python -m pip install cibuildwheel==3.2.1 + run: python -m pip install cibuildwheel==3.3.0 - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse @@ -230,6 +230,20 @@ Changelog +### v3.3.0 + +_12 November 2025_ + +- ๐Ÿ› Fix an incompatibility with Docker v29 (#2660) +- โœจ Adds `test-runtime` option, to customise how tests on simulated/emulated environments are run (#2636) +- โœจ Adds support for new `manylinux_2_35` images on 32-bit ARM `armv7l`, offering better C++20 compatibility (#2656) +- โœจ `build[uv]` is now supported on Android (#2587) +- โœจ You can now install extras (such as `uv`) with a simple option on the GitHub Action (#2630) +- โœจ `{project}` and `{package}` placeholders are now supported in `repair-wheel-command` (#2589) +- ๐Ÿ›  The versions set with `dependency-versions` no longer constrain packages specified by your `build-system.requires`. Previously, on platforms other than Linux, the constraints in this option would remain in the environment during the build. This has been tidied up make behaviour more consistent between platforms, and to prevent version conflicts. (#2583) +- ๐Ÿ›  Improve the handling of `test-command` on Android, enabling more options to be passed (#2590) +- ๐Ÿ“š Docs improvements (#2618) + ### v3.2.1 _12 October 2025_ @@ -276,21 +290,7 @@ _1 August 2025_ - ๐Ÿงช Use pytest-rerunfailures to improve some of our iOS/Android tests (#2527, #2539) - ๐Ÿงช Remove some GraalPy Windows workarounds in our tests (#2501) - -### v3.1.2 - -_29 July 2025_ - -- โš ๏ธ Add an error if `CIBW_FREE_THREADING_SUPPORT` is set; you are likely missing 3.13t wheels, please use the `enable`/`CIBW_ENABLE` (#2520) -- ๐Ÿ›  `riscv64` now enabled if you target that architecture, it's now supported on PyPI (#2509) -- ๐Ÿ›  Add warning when using `cpython-experimental-riscv64` (no longer needed) (#2526, #2528) -- ๐Ÿ›  iOS versions bumped, fixing issues with 3.14 (now RC 1) (#2530) -- ๐Ÿ› Fix bug in Android running wheel from our GitHub Action (#2517) -- ๐Ÿ› Fix warning when using `test-skip` of `"*-macosx_universal2:arm64"` (#2522) -- ๐Ÿ› Fix incorrect number of wheels reported in logs, again (#2517) -- ๐Ÿ“š We welcome our Android platform maintainer (#2516) - - + --- diff --git a/cibuildwheel/__init__.py b/cibuildwheel/__init__.py index 1da6a555..88c513ea 100644 --- a/cibuildwheel/__init__.py +++ b/cibuildwheel/__init__.py @@ -1 +1 @@ -__version__ = "3.2.1" +__version__ = "3.3.0" diff --git a/docs/changelog.md b/docs/changelog.md index 1b51b776..b5ae8542 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -4,6 +4,20 @@ title: Changelog # Changelog +### v3.3.0 + +_12 November 2025_ + +- ๐Ÿ› Fix an incompatibility with Docker v29 (#2660) +- โœจ Adds `test-runtime` option, to customise how tests on simulated/emulated environments are run (#2636) +- โœจ Adds support for new `manylinux_2_35` images on 32-bit ARM `armv7l`, offering better C++20 compatibility (#2656) +- โœจ `build[uv]` is now supported on Android (#2587) +- โœจ You can now install extras (such as `uv`) with a simple option on the GitHub Action (#2630) +- โœจ `{project}` and `{package}` placeholders are now supported in `repair-wheel-command` (#2589) +- ๐Ÿ›  The versions set with `dependency-versions` no longer constrain packages specified by your `build-system.requires`. Previously, on platforms other than Linux, the constraints in this option would remain in the environment during the build. This has been tidied up make behaviour more consistent between platforms, and to prevent version conflicts. (#2583) +- ๐Ÿ›  Improve the handling of `test-command` on Android, enabling more options to be passed (#2590) +- ๐Ÿ“š Docs improvements (#2618) + ### v3.2.1 _12 October 2025_ diff --git a/docs/faq.md b/docs/faq.md index d748a85e..4fa74704 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -110,7 +110,7 @@ There are two suggested methods for keeping cibuildwheel up to date that instead If you use GitHub Actions for builds, you can use cibuildwheel as an action: ```yaml -uses: pypa/cibuildwheel@v3.2.1 +uses: pypa/cibuildwheel@v3.3.0 ``` This is a composite step that just runs cibuildwheel using pipx. You can set command-line options as `with:` parameters, and use `env:` as normal. @@ -132,7 +132,7 @@ The second option, and the only one that supports other CI systems, is using a ` ```bash # requirements-cibw.txt -cibuildwheel==3.2.1 +cibuildwheel==3.3.0 ``` Then your install step would have `python -m pip install -r requirements-cibw.txt` in it. Your `.github/dependabot.yml` file could look like this: @@ -297,7 +297,7 @@ Solutions to this vary, but the simplest is to use pipx: # most runners have pipx preinstalled, but in case you don't python3 -m pip install pipx -pipx run cibuildwheel==3.2.1 --output-dir wheelhouse +pipx run cibuildwheel==3.3.0 --output-dir wheelhouse pipx run twine upload wheelhouse/*.whl ``` diff --git a/examples/azure-pipelines-minimal.yml b/examples/azure-pipelines-minimal.yml index 30072101..b6dac213 100644 --- a/examples/azure-pipelines-minimal.yml +++ b/examples/azure-pipelines-minimal.yml @@ -6,7 +6,7 @@ jobs: - bash: | set -o errexit python3 -m pip install --upgrade pip - pip3 install cibuildwheel==3.2.1 + pip3 install cibuildwheel==3.3.0 displayName: Install dependencies - bash: cibuildwheel --output-dir wheelhouse . displayName: Build wheels @@ -20,7 +20,7 @@ jobs: - bash: | set -o errexit python3 -m pip install --upgrade pip - python3 -m pip install cibuildwheel==3.2.1 + python3 -m pip install cibuildwheel==3.3.0 displayName: Install dependencies - bash: cibuildwheel --output-dir wheelhouse . displayName: Build wheels @@ -34,7 +34,7 @@ jobs: - bash: | set -o errexit python -m pip install --upgrade pip - pip install cibuildwheel==3.2.1 + pip install cibuildwheel==3.3.0 displayName: Install dependencies - bash: cibuildwheel --output-dir wheelhouse . displayName: Build wheels diff --git a/examples/circleci-minimal.yml b/examples/circleci-minimal.yml index ce04376c..fe004107 100644 --- a/examples/circleci-minimal.yml +++ b/examples/circleci-minimal.yml @@ -11,7 +11,7 @@ jobs: - run: name: Build the Linux wheels. command: | - python3 -m pip install --user cibuildwheel==3.2.1 + python3 -m pip install --user cibuildwheel==3.3.0 cibuildwheel --output-dir wheelhouse - store_artifacts: path: wheelhouse/ @@ -28,7 +28,7 @@ jobs: - run: name: Build the Linux aarch64 wheels. command: | - python3 -m pip install --user cibuildwheel==3.2.1 + python3 -m pip install --user cibuildwheel==3.3.0 python3 -m cibuildwheel --output-dir wheelhouse - store_artifacts: path: wheelhouse/ @@ -44,7 +44,7 @@ jobs: name: Build the OS X wheels. command: | sudo softwareupdate --install-rosetta --agree-to-license # for python<=3.8 or x86_64/universal2 tests - pip3 install cibuildwheel==3.2.1 + pip3 install cibuildwheel==3.3.0 cibuildwheel --output-dir wheelhouse - store_artifacts: path: wheelhouse/ diff --git a/examples/cirrus-ci-intel-mac.yml b/examples/cirrus-ci-intel-mac.yml index a2d95bf9..1656f4fc 100644 --- a/examples/cirrus-ci-intel-mac.yml +++ b/examples/cirrus-ci-intel-mac.yml @@ -1,6 +1,6 @@ build_and_store_wheels: &BUILD_AND_STORE_WHEELS install_cibuildwheel_script: - - python -m pip install cibuildwheel==3.2.1 + - python -m pip install cibuildwheel==3.3.0 run_cibuildwheel_script: - cibuildwheel wheels_artifacts: diff --git a/examples/cirrus-ci-minimal.yml b/examples/cirrus-ci-minimal.yml index 4d2ec768..dfab203b 100644 --- a/examples/cirrus-ci-minimal.yml +++ b/examples/cirrus-ci-minimal.yml @@ -1,6 +1,6 @@ build_and_store_wheels: &BUILD_AND_STORE_WHEELS install_cibuildwheel_script: - - python -m pip install cibuildwheel==3.2.1 + - python -m pip install cibuildwheel==3.3.0 run_cibuildwheel_script: - cibuildwheel wheels_artifacts: diff --git a/examples/github-deploy.yml b/examples/github-deploy.yml index 604a89f8..1fe62e78 100644 --- a/examples/github-deploy.yml +++ b/examples/github-deploy.yml @@ -51,7 +51,7 @@ jobs: - uses: actions/checkout@v5 - name: Build wheels - uses: pypa/cibuildwheel@v3.2.1 + uses: pypa/cibuildwheel@v3.3.0 env: CIBW_PLATFORM: ${{ matrix.platform || 'auto' }} CIBW_ARCHS: ${{ matrix.archs || 'auto' }} diff --git a/examples/github-minimal.yml b/examples/github-minimal.yml index da1fbaee..4f2a563c 100644 --- a/examples/github-minimal.yml +++ b/examples/github-minimal.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v5 - name: Build wheels - uses: pypa/cibuildwheel@v3.2.1 + uses: pypa/cibuildwheel@v3.3.0 # env: # CIBW_SOME_OPTION: value # ... diff --git a/examples/github-pipx.yml b/examples/github-pipx.yml index 9ed632a0..cc5696d4 100644 --- a/examples/github-pipx.yml +++ b/examples/github-pipx.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v5 - name: Build wheels - run: pipx run cibuildwheel==3.2.1 + run: pipx run cibuildwheel==3.3.0 - uses: actions/upload-artifact@v4 with: diff --git a/examples/github-with-qemu.yml b/examples/github-with-qemu.yml index 7288916e..d1066588 100644 --- a/examples/github-with-qemu.yml +++ b/examples/github-with-qemu.yml @@ -21,7 +21,7 @@ jobs: platforms: all - name: Build wheels - uses: pypa/cibuildwheel@v3.2.1 + uses: pypa/cibuildwheel@v3.3.0 env: # configure cibuildwheel on Linux to build native archs ('auto'), # and to split the remaining architectures between the x86_64 and diff --git a/examples/gitlab-minimal.yml b/examples/gitlab-minimal.yml index 7024ce82..37901264 100644 --- a/examples/gitlab-minimal.yml +++ b/examples/gitlab-minimal.yml @@ -12,7 +12,7 @@ linux: DOCKER_TLS_CERTDIR: "" script: - curl -sSL https://get.docker.com/ | sh - - python -m pip install cibuildwheel==3.2.1 + - python -m pip install cibuildwheel==3.3.0 - cibuildwheel --output-dir wheelhouse artifacts: paths: @@ -23,7 +23,7 @@ windows: before_script: - choco install python -y --allow-downgrade --version 3.12.4 - choco install git.install -y - - py -m pip install cibuildwheel==3.2.1 + - py -m pip install cibuildwheel==3.3.0 script: - py -m cibuildwheel --output-dir wheelhouse --platform windows artifacts: @@ -35,7 +35,7 @@ windows: macos: image: macos-14-xcode-15 before_script: - - python3 -m pip install cibuildwheel==3.2.1 + - python3 -m pip install cibuildwheel==3.3.0 script: - python3 -m cibuildwheel --output-dir wheelhouse artifacts: diff --git a/examples/gitlab-with-qemu.yml b/examples/gitlab-with-qemu.yml index 345ed489..b593f4f1 100644 --- a/examples/gitlab-with-qemu.yml +++ b/examples/gitlab-with-qemu.yml @@ -14,7 +14,7 @@ linux: - curl -sSL https://get.docker.com/ | sh # Warning: This is extremely slow, be careful with how many wheels you build - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - python -m pip install cibuildwheel==3.2.1 + - python -m pip install cibuildwheel==3.3.0 # Assuming your CI runner's default architecture is x86_64... - cibuildwheel --output-dir wheelhouse --platform linux --archs aarch64 artifacts: diff --git a/examples/travis-ci-deploy.yml b/examples/travis-ci-deploy.yml index 24a18037..9240e2c9 100644 --- a/examples/travis-ci-deploy.yml +++ b/examples/travis-ci-deploy.yml @@ -20,7 +20,7 @@ jobs: - ln -s /c/Python312/python.exe /c/Python312/python3.exe install: - - python3 -m pip install cibuildwheel==3.2.1 + - python3 -m pip install cibuildwheel==3.3.0 script: # build the wheels, put them into './dist' diff --git a/examples/travis-ci-minimal.yml b/examples/travis-ci-minimal.yml index 9c32c08d..108f8d11 100644 --- a/examples/travis-ci-minimal.yml +++ b/examples/travis-ci-minimal.yml @@ -26,7 +26,7 @@ jobs: - ln -s /c/Python312/python.exe /c/Python312/python3.exe install: - - python3 -m pip install cibuildwheel==3.2.1 + - python3 -m pip install cibuildwheel==3.3.0 script: # build the wheels, put them into './wheelhouse' diff --git a/examples/travis-ci-test-and-deploy.yml b/examples/travis-ci-test-and-deploy.yml index 4cf4603d..e46cf9bf 100644 --- a/examples/travis-ci-test-and-deploy.yml +++ b/examples/travis-ci-test-and-deploy.yml @@ -52,7 +52,7 @@ jobs: - stage: deploy name: Build and deploy Linux wheels services: docker - install: python3 -m pip install cibuildwheel==3.2.1 twine + install: python3 -m pip install cibuildwheel==3.3.0 twine script: python3 -m cibuildwheel --output-dir wheelhouse after_success: python3 -m twine upload --skip-existing wheelhouse/*.whl # Deploy on windows @@ -60,7 +60,7 @@ jobs: name: Build and deploy Windows wheels os: windows language: shell - install: python3 -m pip install cibuildwheel==3.2.1 twine + install: python3 -m pip install cibuildwheel==3.3.0 twine script: python3 -m cibuildwheel --output-dir wheelhouse after_success: python3 -m twine upload --skip-existing wheelhouse/*.whl diff --git a/pyproject.toml b/pyproject.toml index 859d8e45..6e834558 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "cibuildwheel" -version = "3.2.1" +version = "3.3.0" description = "Build Python wheels on CI with minimal configuration." readme = "README.md" license = "BSD-2-Clause"