Conversation
luhenry
added a commit
that referenced
this pull request
Sep 21, 2026
…nt + BoringSSL, x86 pre-flight green
Contributor
|
luhenry
added a commit
that referenced
this pull request
Sep 21, 2026
… gate, CI re-running (PR #2184)
Builds the Python SDK's C extension on top of the vendored couchbase-cxx-client C++ core, statically linking the vendored BoringSSL the way upstream's own wheels do. The sdist job populates the CPM cache from the upstream checkout so the riscv build container needs no network access for the C++ dependencies. Two patches: one backports taocpp/json's riscv64 entry in the vendored double-conversion architecture list, whose #error fallthrough otherwise stops the build; the other stops -Wcast-align being fatal, since GCC only emits it on strict-alignment targets and the C++ core casts byte buffers to protocol headers.
luhenry
added a commit
that referenced
this pull request
Sep 21, 2026
…64-only patches, publish dry-run clean
luhenry
marked this pull request as ready for review
September 21, 2026 22:07
luhenry
added a commit
that referenced
this pull request
Sep 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
couchbase4.6.3Compiles the SDK's CPython extension on top of the vendored
couchbase-cxx-clientC++ core and the dependencies its CPM cache carries: BoringSSL, asio, snappy, spdlog, taocpp/json, llhttp, GSL and hdr_histogram. Upstream publishes no riscv64 wheel.Mirrors upstream's
BUILDING.md; upstream cuts its released wheels on Jenkins, so there is no public workflow to copy.Differs from upstream
CMAKE_POLICY_VERSION_MINIMUM=3.5- the vendored GSL declares acmake_minimum_requiredbelow CMake 4's floor.cp314tleg upstream does not build.Testing
.so, the C++ core reports version 1.3.2 with BoringSSL as its TLS backend, and a bootstrap against an unroutable address comes back as aCouchbaseException.License: Wheel statically links BoringSSL (ISC/OpenSSL), asio (BSL-1.0), snappy (BSD-3-Clause), and spdlog, taocpp/json, llhttp, GSL and hdr_histogram (MIT/BSD), exactly as upstream's own wheels do.
Patches
0001-Detect-riscv64-as-a-correct-double-operations-target.patch-Upstream-Status: Backporttaocpp/json 91a480f. Without it the vendored double-conversion's architecture list falls through to#error Target architecture was not detected as supported by Double-Conversion. riscv64-only.0002-Do-not-make-cast-align-fatal-on-strict-alignment-tar.patch-Upstream-Status: To upstream. GCC emits-Wcast-alignonly on strict-alignment targets, so the core's byte-buffer-to-protocol-header casts are fatal here and silent on x86_64 and aarch64. riscv64-only.Built on cp312, cp313, cp314 and cp314t; 4 wheels, smoke test green on each.