From 8c5c31737c9434b8dc92916207388ae904ba7373 Mon Sep 17 00:00:00 2001 From: "riseproject-dev[bot]" <330740410+riseproject-dev[bot]@users.noreply.github.com> Date: Sat, 3 Oct 2026 07:44:29 +0000 Subject: [PATCH 1/3] cysignals: Add version 1.13.1 Signed-off-by: riseproject-dev[bot] <330740410+riseproject-dev[bot]@users.noreply.github.com> --- docs/packages/cysignals.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/packages/cysignals.yaml b/docs/packages/cysignals.yaml index 7b68808fabb..652e1b5efe1 100644 --- a/docs/packages/cysignals.yaml +++ b/docs/packages/cysignals.yaml @@ -52,3 +52,4 @@ versions: - filename: cysignals-1.13.0-cp314-cp314t-musllinux_1_2_riscv64.whl sha256: df3ca8fcebce8b05b59a61d65fdcaf5fe3afcdb6967f672aab586ca80aee62c2 requires-python: '>=3.13' +- version: 1.13.1 From 8e0dc84b51979c5571392be86b514b5a8cc81ba3 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 9 Oct 2026 16:31:41 +0000 Subject: [PATCH 2/3] cysignals: carry forward riscv64 patches to 1.13.1 Nightly version bump omitted the patches/cysignals/ directory for 1.13.1, so the build's unconditional `git apply .../*.patch` step failed with "No such file or directory" before any build/test ran. Copied forward the same patch set from 1.13.0 (unchanged since then). --- ...ethreading-from-the-cibuildwheel-ena.patch | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch diff --git a/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch b/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch new file mode 100644 index 00000000000..1725f30ac3b --- /dev/null +++ b/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch @@ -0,0 +1,38 @@ +From: Ludovic Henry +Subject: [PATCH] Drop cpython-freethreading from the cibuildwheel enable + groups + +cibuildwheel 3.0 removed the cpython-freethreading enable group - +free-threaded builds are selected by the build identifier itself now, +not an opt-in group - and its config parser rejects the value outright, +before any container starts and for every interpreter in the matrix: + + Failed to parse enable group. Unknown enable group: + cpython-freethreading. Valid group names are: cpython-prerelease, + graalpy, pypy, pypy-eol, pyodide-eol, pyodide-prerelease + +Upstream's own dev dependency group pins cibuildwheel>=2.23.3, where +the group is still valid and is what enables its cp313t wheels, so +dropping it upstream would lose those wheels there. Setting +CIBW_ENABLE="" in the workflow env does not help: cibuildwheel merges +the env var's groups into pyproject.toml's list rather than replacing +it, so an empty override leaves cpython-freethreading in place. + +Upstream-Status: Inappropriate [needed only for cibuildwheel 3.0+, which python-wheels pins repo-wide; upstream pins cibuildwheel>=2.23.3] +--- + pyproject.toml | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/pyproject.toml b/pyproject.toml +index 1111111..2222222 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -52,6 +52,5 @@ dev = [ + ] + + [tool.cibuildwheel] +-enable = ["cpython-freethreading"] + skip = ["*-win32", "cp313t-*"] + test-groups = ["dev"] +-- +2.43.0 From 90bb0ce56821c7d58d7afada49954244bdf3540e Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Sat, 10 Oct 2026 07:49:42 +0000 Subject: [PATCH 3/3] cysignals: drop the 1.13.1 patch, upstream removed the enable group The patch carried forward from 1.13.0 no longer applies to 1.13.1 ("patch failed: pyproject.toml:52"): upstream's 1.13.1 already drops `enable = ["cpython-freethreading"]` from [tool.cibuildwheel] (sagemath/cysignals@fbda665 "Remove enable group") and also narrows `skip` to ["*-win32"] (sagemath/cysignals@f737422 "Remove unneeded skip option"). That was the patch's entire change, so 1.13.1 needs no patch. Remove patches/cysignals/1.13.1 and guard the patch step with hashFiles() (same as build-fastparquet.yml) so a version without a patches/ directory skips it instead of failing git apply. 1.13.0 keeps its patch. Checked with cibuildwheel 4.2.0 against the unpatched 1.13.1 tree: the config parses and each of the six cp313/cp314/cp314t x manylinux/musllinux riscv64 identifiers is selected. --- .github/workflows/build-cysignals.yml | 4 ++ ...ethreading-from-the-cibuildwheel-ena.patch | 38 ------------------- 2 files changed, 4 insertions(+), 38 deletions(-) delete mode 100644 patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch diff --git a/.github/workflows/build-cysignals.yml b/.github/workflows/build-cysignals.yml index b4277d9aede..6aed99a33be 100644 --- a/.github/workflows/build-cysignals.yml +++ b/.github/workflows/build-cysignals.yml @@ -77,7 +77,11 @@ jobs: path: python-wheels persist-credentials: false + # 1.13.0 needs its pyproject.toml's cpython-freethreading enable group + # dropped (cibuildwheel 3.0+ rejects it); upstream removed it in 1.13.1, + # so later versions may have no patches/ directory at all. - name: Patch cysignals source + if: hashFiles(format('python-wheels/patches/cysignals/{0}/*.patch', env.CYSIGNALS_VERSION)) != '' run: git apply python-wheels/patches/cysignals/${{ env.CYSIGNALS_VERSION }}/00*.patch - name: Build wheels diff --git a/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch b/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch deleted file mode 100644 index 1725f30ac3b..00000000000 --- a/patches/cysignals/1.13.1/0001-Drop-cpython-freethreading-from-the-cibuildwheel-ena.patch +++ /dev/null @@ -1,38 +0,0 @@ -From: Ludovic Henry -Subject: [PATCH] Drop cpython-freethreading from the cibuildwheel enable - groups - -cibuildwheel 3.0 removed the cpython-freethreading enable group - -free-threaded builds are selected by the build identifier itself now, -not an opt-in group - and its config parser rejects the value outright, -before any container starts and for every interpreter in the matrix: - - Failed to parse enable group. Unknown enable group: - cpython-freethreading. Valid group names are: cpython-prerelease, - graalpy, pypy, pypy-eol, pyodide-eol, pyodide-prerelease - -Upstream's own dev dependency group pins cibuildwheel>=2.23.3, where -the group is still valid and is what enables its cp313t wheels, so -dropping it upstream would lose those wheels there. Setting -CIBW_ENABLE="" in the workflow env does not help: cibuildwheel merges -the env var's groups into pyproject.toml's list rather than replacing -it, so an empty override leaves cpython-freethreading in place. - -Upstream-Status: Inappropriate [needed only for cibuildwheel 3.0+, which python-wheels pins repo-wide; upstream pins cibuildwheel>=2.23.3] ---- - pyproject.toml | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/pyproject.toml b/pyproject.toml -index 1111111..2222222 100644 ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -52,6 +52,5 @@ dev = [ - ] - - [tool.cibuildwheel] --enable = ["cpython-freethreading"] - skip = ["*-win32", "cp313t-*"] - test-groups = ["dev"] --- -2.43.0