From c5a3f7b9b60fcd33b621f3b18c909d6ebe6ef080 Mon Sep 17 00:00:00 2001 From: "riseproject-dev[bot]" <330740410+riseproject-dev[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2026 08:15:56 +0000 Subject: [PATCH 1/3] databricks-zerobus-ingest-sdk: Add version 1.10.0 Signed-off-by: riseproject-dev[bot] <330740410+riseproject-dev[bot]@users.noreply.github.com> --- docs/packages/databricks-zerobus-ingest-sdk.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/packages/databricks-zerobus-ingest-sdk.yaml b/docs/packages/databricks-zerobus-ingest-sdk.yaml index d360d806d52..4e3e7e5d848 100644 --- a/docs/packages/databricks-zerobus-ingest-sdk.yaml +++ b/docs/packages/databricks-zerobus-ingest-sdk.yaml @@ -26,3 +26,4 @@ versions: - filename: databricks_zerobus_ingest_sdk-1.9.0-cp39-abi3-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl sha256: 1c751fde320db55604ec44dc9aa6ea8a55850b95e21439f41e8ad7e6ce84014f requires-python: '>=3.9, <3.15' +- version: 1.10.0 From f8aa76b91e0586cd011df70d6d4553a1c57705b5 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 9 Oct 2026 16:32:32 +0000 Subject: [PATCH 2/3] databricks-zerobus-ingest-sdk: carry forward riscv64 patches to 1.10.0 Nightly version bump omitted the patches/databricks-zerobus-ingest-sdk/ directory for 1.10.0, 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.9.0 (unchanged since then). --- ...-prost-build-s-own-protoc-lookup-on-.patch | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 patches/databricks-zerobus-ingest-sdk/1.10.0/0001-sdk-fall-back-to-prost-build-s-own-protoc-lookup-on-.patch diff --git a/patches/databricks-zerobus-ingest-sdk/1.10.0/0001-sdk-fall-back-to-prost-build-s-own-protoc-lookup-on-.patch b/patches/databricks-zerobus-ingest-sdk/1.10.0/0001-sdk-fall-back-to-prost-build-s-own-protoc-lookup-on-.patch new file mode 100644 index 00000000000..3cec621fcba --- /dev/null +++ b/patches/databricks-zerobus-ingest-sdk/1.10.0/0001-sdk-fall-back-to-prost-build-s-own-protoc-lookup-on-.patch @@ -0,0 +1,39 @@ +From 87f2462219287d68f873d7b3d12b5cd2bce0e47a Mon Sep 17 00:00:00 2001 +From: Ludovic Henry +Date: Mon, 28 Sep 2026 12:50:24 +0000 +Subject: [PATCH] sdk: fall back to prost-build's own protoc lookup on riscv64 + +Upstream-Status: Inappropriate [protoc-bin-vendored ships no riscv64 binary; prost-build already honours $PROTOC and falls back to protoc on PATH, so only overriding PROTOC when the vendored lookup succeeds is the whole fix] + +protoc_bin_vendored::protoc_bin_path() returns Err on any platform outside +its small enum of prebuilt targets (x86, x86_64, aarch64, ppc64le, s390x, +macOS, Windows), and build.rs unwrap()ed it, panicking before prost-build +ever got a chance to look for a protoc on PATH or via $PROTOC. Only +setting PROTOC when the vendored lookup succeeds restores that fallback, +documented in prost-build's "Sourcing protoc" section. + +Signed-off-by: Ludovic Henry +--- + rust/sdk/build.rs | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/rust/sdk/build.rs b/rust/sdk/build.rs +index 3e080ec..c75eaa9 100644 +--- a/rust/sdk/build.rs ++++ b/rust/sdk/build.rs +@@ -5,7 +5,11 @@ use std::env; + mod zeroparser_proto_build; + + fn main() { +- env::set_var("PROTOC", protoc_bin_vendored::protoc_bin_path().unwrap()); ++ // protoc-bin-vendored ships no riscv64 binary; falling through leaves ++ // prost_build's own PROTOC-env/PATH lookup in charge. ++ if let Ok(protoc) = protoc_bin_vendored::protoc_bin_path() { ++ env::set_var("PROTOC", protoc); ++ } + tonic_prost_build::compile_protos("zerobus_service.proto") + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); + +-- +2.43.0 + From 8debc4d81101bad730079c3e3a7ba9c32fadd968 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Sat, 10 Oct 2026 07:45:48 +0000 Subject: [PATCH 3/3] databricks-zerobus-ingest-sdk: pin test-time pyarrow to 25.0.1 pyarrow 26.0.0 has no riscv64 wheel on pypi.riseproject.dev, so the abi3 test step fell back to its sdist, which fails CMake configure without Arrow C++ installed. 25.0.1 is the latest pyarrow with riscv64 wheels on the registry (cp312/cp313/cp314) and is within upstream's own pyarrow<26 constraint. --- .github/workflows/build-databricks-zerobus-ingest-sdk.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-databricks-zerobus-ingest-sdk.yml b/.github/workflows/build-databricks-zerobus-ingest-sdk.yml index 26524673f95..bc83f8f18de 100644 --- a/.github/workflows/build-databricks-zerobus-ingest-sdk.yml +++ b/.github/workflows/build-databricks-zerobus-ingest-sdk.yml @@ -99,7 +99,8 @@ jobs: CIBW_ENVIRONMENT_LINUX: >- PATH="$PATH:$HOME/.cargo/bin" PIP_EXTRA_INDEX_URL=https://pypi.riseproject.dev/simple/ - CIBW_TEST_REQUIRES: pytest pytest-asyncio>=0.21,<1.0 pyarrow + # Latest pyarrow with riscv64 wheels on pypi.riseproject.dev; newer ones are sdist-only and need Arrow C++. + CIBW_TEST_REQUIRES: pytest pytest-asyncio>=0.21,<1.0 pyarrow==25.0.1 CIBW_TEST_SOURCES: python/tests CIBW_TEST_COMMAND: >- python -c "import zerobus._zerobus_core as m; assert m.__file__.endswith('.so'), m.__file__" &&