From 5252a67021b7bdbb0d4cb93e9d19626547f4f2ad Mon Sep 17 00:00:00 2001 From: "riseproject-dev[bot]" <330740410+riseproject-dev[bot]@users.noreply.github.com> Date: Thu, 29 Oct 2026 08:56:21 +0000 Subject: [PATCH 1/3] bermuda: Add version 0.1.8 Signed-off-by: riseproject-dev[bot] <330740410+riseproject-dev[bot]@users.noreply.github.com> --- docs/packages/bermuda.yaml | 1 + ...d-cpython-freethreading-enable-group.patch | 31 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch diff --git a/docs/packages/bermuda.yaml b/docs/packages/bermuda.yaml index 3eb58652ea2f..3843ea5c4b06 100644 --- a/docs/packages/bermuda.yaml +++ b/docs/packages/bermuda.yaml @@ -18,3 +18,4 @@ versions: - filename: bermuda-0.1.7-cp314-cp314t-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl sha256: fb641063c4f4529dd03cafb3a4c259514cb6960ed4e0314ad9355e1c1da5a07a requires-python: '>=3.9' +- version: 0.1.8 diff --git a/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch b/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch new file mode 100644 index 000000000000..a2b838448489 --- /dev/null +++ b/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch @@ -0,0 +1,31 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Ludovic Henry +Date: Thu, 14 Oct 2026 12:00:00 +0000 +Subject: [PATCH] pyproject: drop the removed cpython-freethreading enable + group + +cibuildwheel 4.2.0 (the version this repo pins for riscv64 builds) no +longer recognises "cpython-freethreading" as an enable group -- it +errors "Failed to parse enable group" before any build starts, on +every interpreter, since the whole [tool.cibuildwheel] table is parsed +up front and `--only ` does not narrow around it. Free-threaded +builds (cp314t) no longer need an opt-in on this cibuildwheel version. + +Upstream-Status: Backport [https://github.com/napari/bermuda/commit/a73b76c35aabc693cd7996dfe66d8ead7dbb759f] +--- + pyproject.toml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pyproject.toml b/pyproject.toml +index 7f24c3b..7a8f083 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -163,7 +163,7 @@ combine-as-imports = true + [tool.cibuildwheel] + test-command = "pytest {project}/tests" + test-groups = ["test"] +-enable = ["pypy", "cpython-freethreading"] ++enable = ["pypy"] + build = "*64" + + [tool.cibuildwheel.linux] From a9e2848608d06854538374443fde2171d743edb2 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 30 Oct 2026 02:54:39 +0100 Subject: [PATCH 2/3] bermuda: skip the patch step for versions without a patches directory Only some versions need patching, so a missing patches/bermuda/ directory must not fail the build (the unmatched glob made `git apply` error out). Preparing for 0.1.8, which includes the upstream fix 0.1.7 carried as a patch. --- .github/workflows/build-bermuda.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-bermuda.yml b/.github/workflows/build-bermuda.yml index 13f84ac3ed11..d640dac36667 100644 --- a/.github/workflows/build-bermuda.yml +++ b/.github/workflows/build-bermuda.yml @@ -73,8 +73,14 @@ jobs: path: python-wheels persist-credentials: false + # Only some versions need patching (0.1.8 includes the upstream fix 0.1.7 carried), + # so a missing directory is not an error. - name: Patch bermuda source - run: git apply python-wheels/patches/bermuda/${{ env.BERMUDA_VERSION }}/*.patch + run: | + patches="$PWD/python-wheels/patches/bermuda/$BERMUDA_VERSION" + if [ -d "$patches" ]; then + git apply "$patches"/*.patch + fi - name: Build wheels uses: pypa/cibuildwheel@1828c10ab37f080699c7b81cea34097c684a7074 # v4.2.0 From e3e24af13b9f078dd6e5cf9eb2224933d14b062f Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 30 Oct 2026 02:54:46 +0100 Subject: [PATCH 3/3] bermuda 0.1.8: drop the cpython-freethreading enable-group patch, 0.1.8 has the fix 0.1.8's pyproject.toml already reads `enable = ["pypy"]` (the upstream commit the 0.1.7 patch backported), so the copied patch no longer applies ("patch failed: pyproject.toml:163") and has nothing left to change. --- ...d-cpython-freethreading-enable-group.patch | 31 ------------------- 1 file changed, 31 deletions(-) delete mode 100644 patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch diff --git a/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch b/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch deleted file mode 100644 index a2b838448489..000000000000 --- a/patches/bermuda/0.1.8/0001-pyproject-drop-the-removed-cpython-freethreading-enable-group.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Ludovic Henry -Date: Thu, 14 Oct 2026 12:00:00 +0000 -Subject: [PATCH] pyproject: drop the removed cpython-freethreading enable - group - -cibuildwheel 4.2.0 (the version this repo pins for riscv64 builds) no -longer recognises "cpython-freethreading" as an enable group -- it -errors "Failed to parse enable group" before any build starts, on -every interpreter, since the whole [tool.cibuildwheel] table is parsed -up front and `--only ` does not narrow around it. Free-threaded -builds (cp314t) no longer need an opt-in on this cibuildwheel version. - -Upstream-Status: Backport [https://github.com/napari/bermuda/commit/a73b76c35aabc693cd7996dfe66d8ead7dbb759f] ---- - pyproject.toml | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pyproject.toml b/pyproject.toml -index 7f24c3b..7a8f083 100644 ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -163,7 +163,7 @@ combine-as-imports = true - [tool.cibuildwheel] - test-command = "pytest {project}/tests" - test-groups = ["test"] --enable = ["pypy", "cpython-freethreading"] -+enable = ["pypy"] - build = "*64" - - [tool.cibuildwheel.linux]