Skip to content

Commit 54327ab

Browse files
committed
Bump version: v4.0.0rc1
1 parent efebd1c commit 54327ab

13 files changed

Lines changed: 79 additions & 29 deletions

README.md

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ jobs:
9898
- uses: actions/setup-python@v6
9999

100100
- name: Install cibuildwheel
101-
run: python -m pip install cibuildwheel==3.4.1
101+
run: python -m pip install cibuildwheel==4.0.0rc1
102102

103103
- name: Build wheels
104104
run: python -m cibuildwheel --output-dir wheelhouse
@@ -238,6 +238,35 @@ Changelog
238238

239239
<!-- [[[cog from readme_changelog import mini_changelog; print(mini_changelog()) ]]] -->
240240

241+
### v4.0.0rc1
242+
243+
_14 May 2026_
244+
245+
- 🌟 Adds wheel auditing with `abi3audit` as a default after the repair step, with new [`audit-requires`](https://cibuildwheel.pypa.io/en/stable/options/#audit-requires) and [`audit-command`](https://cibuildwheel.pypa.io/en/stable/options/#audit-command) options (#2805)
246+
- 🌟 Adds `pyemscripten` platform tag support (PEP 783), updates Pyodide to 314.0.0a1, and adds a `pyodide-eol` [`enable`](https://cibuildwheel.pypa.io/en/stable/options/#enable) flag for building end-of-life Pyodide versions (#2812, #2848)
247+
- 🌟 Sets up `delvewheel` as the default [`repair-wheel-command`](https://cibuildwheel.pypa.io/en/stable/options/#repair-wheel-command) for Windows, so extension module DLLs are now bundled automatically. Skip by setting it to empty if not needed. (#2831)
248+
- ✨ Adds CPython 3.15 support, under the [`enable` option](https://cibuildwheel.pypa.io/en/stable/options/#enable) `cpython-prerelease`. This version of cibuildwheel uses 3.15.0b1. (#2833, #2850)
249+
250+
_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.14 will be available in cibuildwheel without the flag._ (#2390)
251+
- ✨ Adds `{project}` and `{package}` placeholders to [`config-settings`](https://cibuildwheel.pypa.io/en/stable/options/#config-settings) (#2827)
252+
- ⚠️ Drops support for Python 3.8 (#2686)
253+
- ⚠️ Removes the experimental CPython 3.13 free-threading builds and the `cpython-freethreading` [`enable`](https://cibuildwheel.pypa.io/en/stable/options/#enable) option. CPython 3.14+ free-threading support remains available without the enable flag. (#2684)
254+
- ⚠️ Drops support for Cirrus CI, which is shutting down June 1, 2026 (#2817)
255+
- 🐛 Fixes `UV_PYTHON` not being set for [`before-build`](https://cibuildwheel.pypa.io/en/stable/options/#before-build) on Linux when using `uv` as the [`build-frontend`](https://cibuildwheel.pypa.io/en/stable/options/#build-frontend) (#2830)
256+
- 🛠 Updates Android to Python 3.13.13 and 3.14.4 (#2821)
257+
- 🛠 Applies Pyodide-specific patches to the Emscripten toolchain installation (#2800)
258+
- 🛠 Updates dependencies and container pins (#2845, #2837, #2821, #2818, #2810, #2838, #2813)
259+
- 🛠 Uses `python -V -V` for Windows build diagnostics (#2832)
260+
- 📚 Documents platform-specific [`before-build`](https://cibuildwheel.pypa.io/en/stable/options/#before-build) configuration (#2834)
261+
- 📚 Updates the "How it works" diagram with details of Android, iOS, and Pyodide builds (#2816)
262+
- 📚 Adds Pyodide icon and regenerates working examples data for Android, iOS, and Pyodide (#2815, #2811)
263+
- 📚 Links back to source in docs (#2806)
264+
- 💼 Adds PEP 723 metadata for `bin/` scripts and drops the `bin` dependency group (#2819)
265+
- 💼 Updates CI action pins and dev dependencies (#2851, #2843, #2826, #2823, #2820, #2807)
266+
- 🧪 Fixes Android tests using the `uv` frontend (#2809)
267+
- 🧪 Fixes the update-dependencies workflow to use `uv` to run `nox` (#2808)
268+
269+
241270
### v3.4.1
242271

243272
_2 April 2026_
@@ -280,15 +309,7 @@ _12 November 2025_
280309
- 🛠 Improve the handling of `test-command` on Android, enabling more options to be passed (#2590)
281310
- 📚 Docs improvements (#2618)
282311

283-
### v3.2.1
284-
285-
_12 October 2025_
286-
287-
- 🛠 Update to CPython 3.14.0 final (#2614)
288-
- 🐛 Fix the default MACOSX_DEPLOYMENT_TARGET on Python 3.14 (#2613)
289-
- 📚 Docs improvements (#2617)
290-
291-
<!-- [[[end]]] (sum: h5X+wOmWfI) -->
312+
<!-- [[[end]]] (sum: ZD0EjcyC0B) -->
292313

293314
---
294315

cibuildwheel/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "3.4.1"
1+
__version__ = "4.0.0rc1"

docs/changelog.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,35 @@ title: Changelog
44

55
# Changelog
66

7+
### v4.0.0rc1
8+
9+
_14 May 2026_
10+
11+
- 🌟 Adds wheel auditing with `abi3audit` as a default after the repair step, with new [`audit-requires`](https://cibuildwheel.pypa.io/en/stable/options/#audit-requires) and [`audit-command`](https://cibuildwheel.pypa.io/en/stable/options/#audit-command) options (#2805)
12+
- 🌟 Adds `pyemscripten` platform tag support (PEP 783), updates Pyodide to 314.0.0a1, and adds a `pyodide-eol` [`enable`](https://cibuildwheel.pypa.io/en/stable/options/#enable) flag for building end-of-life Pyodide versions (#2812, #2848)
13+
- 🌟 Sets up `delvewheel` as the default [`repair-wheel-command`](https://cibuildwheel.pypa.io/en/stable/options/#repair-wheel-command) for Windows, so extension module DLLs are now bundled automatically. Skip by setting it to empty if not needed. (#2831)
14+
- ✨ Adds CPython 3.15 support, under the [`enable` option](https://cibuildwheel.pypa.io/en/stable/options/#enable) `cpython-prerelease`. This version of cibuildwheel uses 3.15.0b1. (#2833, #2850)
15+
16+
_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.14 will be available in cibuildwheel without the flag._ (#2390)
17+
- ✨ Adds `{project}` and `{package}` placeholders to [`config-settings`](https://cibuildwheel.pypa.io/en/stable/options/#config-settings) (#2827)
18+
- ⚠️ Drops support for Python 3.8 (#2686)
19+
- ⚠️ Removes the experimental CPython 3.13 free-threading builds and the `cpython-freethreading` [`enable`](https://cibuildwheel.pypa.io/en/stable/options/#enable) option. CPython 3.14+ free-threading support remains available without the enable flag. (#2684)
20+
- ⚠️ Drops support for Cirrus CI, which is shutting down June 1, 2026 (#2817)
21+
- 🐛 Fixes `UV_PYTHON` not being set for [`before-build`](https://cibuildwheel.pypa.io/en/stable/options/#before-build) on Linux when using `uv` as the [`build-frontend`](https://cibuildwheel.pypa.io/en/stable/options/#build-frontend) (#2830)
22+
- 🛠 Updates Android to Python 3.13.13 and 3.14.4 (#2821)
23+
- 🛠 Applies Pyodide-specific patches to the Emscripten toolchain installation (#2800)
24+
- 🛠 Updates dependencies and container pins (#2845, #2837, #2821, #2818, #2810, #2838, #2813)
25+
- 🛠 Uses `python -V -V` for Windows build diagnostics (#2832)
26+
- 📚 Documents platform-specific [`before-build`](https://cibuildwheel.pypa.io/en/stable/options/#before-build) configuration (#2834)
27+
- 📚 Updates the "How it works" diagram with details of Android, iOS, and Pyodide builds (#2816)
28+
- 📚 Adds Pyodide icon and regenerates working examples data for Android, iOS, and Pyodide (#2815, #2811)
29+
- 📚 Links back to source in docs (#2806)
30+
- 💼 Adds PEP 723 metadata for `bin/` scripts and drops the `bin` dependency group (#2819)
31+
- 💼 Updates CI action pins and dev dependencies (#2851, #2843, #2826, #2823, #2820, #2807)
32+
- 🧪 Fixes Android tests using the `uv` frontend (#2809)
33+
- 🧪 Fixes the update-dependencies workflow to use `uv` to run `nox` (#2808)
34+
35+
736
### v3.4.1
837

938
_2 April 2026_

docs/faq.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ There are two suggested methods for keeping cibuildwheel up to date that instead
125125
If you use GitHub Actions for builds, you can use cibuildwheel as an action:
126126

127127
```yaml
128-
uses: pypa/cibuildwheel@v3.4.1
128+
uses: pypa/cibuildwheel@v4.0.0rc1
129129
```
130130

131131
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.
@@ -150,7 +150,7 @@ The second option, and the only one that supports other CI systems, is using a `
150150

151151
```bash
152152
# requirements-cibw.txt
153-
cibuildwheel==3.4.1
153+
cibuildwheel==4.0.0rc1
154154
```
155155

156156
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:
@@ -315,7 +315,7 @@ Solutions to this vary, but the simplest is to use pipx:
315315
# most runners have pipx preinstalled, but in case you don't
316316
python3 -m pip install pipx
317317
318-
pipx run cibuildwheel==3.4.1 --output-dir wheelhouse
318+
pipx run cibuildwheel==4.0.0rc1 --output-dir wheelhouse
319319
pipx run twine upload wheelhouse/*.whl
320320
```
321321

examples/azure-pipelines-minimal.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
- bash: |
77
set -o errexit
88
python3 -m pip install --upgrade pip
9-
pip3 install cibuildwheel==3.4.1
9+
pip3 install cibuildwheel==4.0.0rc1
1010
displayName: Install dependencies
1111
- bash: cibuildwheel --output-dir wheelhouse .
1212
displayName: Build wheels
@@ -20,7 +20,7 @@ jobs:
2020
- bash: |
2121
set -o errexit
2222
python3 -m pip install --upgrade pip
23-
python3 -m pip install cibuildwheel==3.4.1
23+
python3 -m pip install cibuildwheel==4.0.0rc1
2424
displayName: Install dependencies
2525
- bash: cibuildwheel --output-dir wheelhouse .
2626
displayName: Build wheels
@@ -34,7 +34,7 @@ jobs:
3434
- bash: |
3535
set -o errexit
3636
python -m pip install --upgrade pip
37-
pip install cibuildwheel==3.4.1
37+
pip install cibuildwheel==4.0.0rc1
3838
displayName: Install dependencies
3939
- bash: cibuildwheel --output-dir wheelhouse .
4040
displayName: Build wheels

examples/circleci-minimal.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
- run:
1212
name: Build the Linux wheels.
1313
command: |
14-
python3 -m pip install --user cibuildwheel==3.4.1
14+
python3 -m pip install --user cibuildwheel==4.0.0rc1
1515
cibuildwheel --output-dir wheelhouse
1616
- store_artifacts:
1717
path: wheelhouse/
@@ -28,7 +28,7 @@ jobs:
2828
- run:
2929
name: Build the Linux aarch64 wheels.
3030
command: |
31-
python3 -m pip install --user cibuildwheel==3.4.1
31+
python3 -m pip install --user cibuildwheel==4.0.0rc1
3232
python3 -m cibuildwheel --output-dir wheelhouse
3333
- store_artifacts:
3434
path: wheelhouse/
@@ -44,7 +44,7 @@ jobs:
4444
name: Build the OS X wheels.
4545
command: |
4646
sudo softwareupdate --install-rosetta --agree-to-license # for x86_64/universal2 tests
47-
pip3 install cibuildwheel==3.4.1
47+
pip3 install cibuildwheel==4.0.0rc1
4848
cibuildwheel --output-dir wheelhouse
4949
- store_artifacts:
5050
path: wheelhouse/

examples/github-deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
persist-credentials: false
5454

5555
- name: Build wheels
56-
uses: pypa/cibuildwheel@v3.4.1
56+
uses: pypa/cibuildwheel@v4.0.0rc1
5757
env:
5858
CIBW_PLATFORM: ${{ matrix.platform || 'auto' }}
5959
CIBW_ARCHS: ${{ matrix.archs || 'auto' }}

examples/github-minimal.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
persist-credentials: false
1818

1919
- name: Build wheels
20-
uses: pypa/cibuildwheel@v3.4.1
20+
uses: pypa/cibuildwheel@v4.0.0rc1
2121
# env:
2222
# CIBW_SOME_OPTION: value
2323
# ...

examples/github-pipx.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
persist-credentials: false
1818

1919
- name: Build wheels
20-
run: pipx run cibuildwheel==3.4.1
20+
run: pipx run cibuildwheel==4.0.0rc1
2121

2222
- uses: actions/upload-artifact@v4
2323
with:

examples/github-with-qemu.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
platforms: all
2424

2525
- name: Build wheels
26-
uses: pypa/cibuildwheel@v3.4.1
26+
uses: pypa/cibuildwheel@v4.0.0rc1
2727
env:
2828
# configure cibuildwheel on Linux to build native archs ('auto'),
2929
# and to split the remaining architectures between the x86_64 and

0 commit comments

Comments
 (0)