From bb4a2d031d039f93dfe3ce79e3c0d3c0db009d93 Mon Sep 17 00:00:00 2001 From: "riseproject-dev[bot]" <330740410+riseproject-dev[bot]@users.noreply.github.com> Date: Fri, 23 Oct 2026 07:55:53 +0000 Subject: [PATCH 1/3] protovalidate: Add version 2.1.0 Signed-off-by: riseproject-dev[bot] <330740410+riseproject-dev[bot]@users.noreply.github.com> --- docs/packages/protovalidate.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/packages/protovalidate.yaml b/docs/packages/protovalidate.yaml index d075312423bc..59ca1e68562a 100644 --- a/docs/packages/protovalidate.yaml +++ b/docs/packages/protovalidate.yaml @@ -12,3 +12,4 @@ versions: - filename: protovalidate-2.0.0-cp314-cp314t-manylinux_2_39_riscv64.whl sha256: d5c4afdd55781255485e6aacfee3bfecbaa10d73948e9075933eb7b59fb41cf6 requires-python: '>=3.10' +- version: 2.1.0 From 713cf2895395936a6d3ca271b80c330fdb9dd1a5 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 23 Oct 2026 16:56:12 +0800 Subject: [PATCH 2/3] protovalidate: rebase the license-files patch onto 2.1.0 --- ...-licence-files-in-project-license-fi.patch | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 patches/protovalidate/2.1.0/0001-list-vendored-c-licence-files-in-project-license-fi.patch diff --git a/patches/protovalidate/2.1.0/0001-list-vendored-c-licence-files-in-project-license-fi.patch b/patches/protovalidate/2.1.0/0001-list-vendored-c-licence-files-in-project-license-fi.patch new file mode 100644 index 000000000000..1a89efe7a111 --- /dev/null +++ b/patches/protovalidate/2.1.0/0001-list-vendored-c-licence-files-in-project-license-fi.patch @@ -0,0 +1,49 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Ludovic Henry +Date: Thu, 27 Aug 2026 00:00:00 +0000 +Subject: [PATCH] pyproject: list vendored C++ licence files in + [project].license-files + +protovalidate._protovalidate statically links six vendored C++ projects +(abseil-cpp, antlr4, cel-cpp, protobuf + its bundled utf8_range, re2, +protovalidate-cc) compiled from crates/protovalidate-rs/build.rs, but +[project].license-files only names the package's own root LICENSE. +maturin has no default glob for a PEP 639 project (gotcha 105/146 in +this repo's porting skill), so every published wheel - on every +platform, not just riscv64 - ships none of the six licence texts the +compiled binary actually requires. All six are permissive (Apache-2.0 +x3, BSD-3-Clause x3 for protobuf/antlr4/re2, plus utf8_range's MIT), +so this only adds licence-files entries; no GPL text is involved. + +Upstream-Status: To upstream [not submitted: this session's policy is to not open issues/PRs on third-party repos] + +Signed-off-by: Ludovic Henry +--- + pyproject.toml | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/pyproject.toml b/pyproject.toml +index ea18dff..044ad49 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -5,7 +5,16 @@ description = "Protocol Buffer Validation for Python" + readme = "README.md" + requires-python = ">=3.11" + license = "Apache-2.0" +-license-files = ["LICENSE"] ++license-files = [ ++ "LICENSE", ++ "crates/protovalidate-rs/third_party/abseil-cpp/LICENSE", ++ "crates/protovalidate-rs/third_party/antlr4/LICENSE.txt", ++ "crates/protovalidate-rs/third_party/cel-cpp/LICENSE", ++ "crates/protovalidate-rs/third_party/protobuf/LICENSE", ++ "crates/protovalidate-rs/third_party/protobuf/third_party/utf8_range/LICENSE", ++ "crates/protovalidate-rs/third_party/protovalidate-cc/LICENSE", ++ "crates/protovalidate-rs/third_party/re2/LICENSE", ++] + keywords = ["protobuf", "protocol buffer", "validate"] + classifiers = [ + "Operating System :: OS Independent", +-- +2.51.0 + From f946f3eca839dae4f81eb48b4f089e409cd1521b Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Sun, 25 Oct 2026 18:57:54 +0100 Subject: [PATCH 3/3] protovalidate: Don't turn protobuf's GIL-enabled RuntimeWarning into a cp314t collection error --- .github/workflows/build-protovalidate.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build-protovalidate.yml b/.github/workflows/build-protovalidate.yml index d860f31d3737..cf8256957f42 100644 --- a/.github/workflows/build-protovalidate.yml +++ b/.github/workflows/build-protovalidate.yml @@ -111,9 +111,15 @@ jobs: # protobuf (Google's package, used for legacy conformance coverage) # has no riscv64 wheel on public PyPI yet. CIBW_TEST_ENVIRONMENT: PIP_EXTRA_INDEX_URL=https://pypi.riseproject.dev/simple/ + # On cp314t protobuf's upb extension (google._upb._message) has not + # declared free-threading support, so importing it re-enables the GIL + # and warns; pyproject.toml's filterwarnings = error would turn that + # into a collection error. The warning only means the GIL is on, which + # is the safe state, so it is ignored while every test still runs. CIBW_TEST_COMMAND: >- python -c "import protovalidate._protovalidate as m; assert m.__file__.endswith('.so'), m.__file__" && python -m pytest test -v + -W "ignore:The global interpreter lock (GIL) has been enabled:RuntimeWarning" - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: