Repository navigation
Merge main (v3.1.1) back into develop - #419
Conversation
LLVM 21's ld64.lld rejects TBD stubs that list arm64e.x1, so native macOS links fail with a cascade of missing libc++/libSystem symbols. Keep the override on the LLVM toolchain so wasm still uses wasm-ld. Co-authored-by: Cursor <cursoragent@cursor.com>
Patch apple_support 1.24.2 so wrapped_clang/libtool use macOS 11.0 and drop a dead nodiscard hasher call that shows up on every ASAN build. Co-authored-by: Cursor <cursoragent@cursor.com>
The upstream LLVM Linux-X64 archive's ld.lld is dynamically linked against libxml2.so.2. libxml2 2.14 moved to libxml2.so.16 and Ubuntu 26.04 (the next ubuntu-latest) ships no .so.2, so every link step fails with "error while loading shared libraries: libxml2.so.2". Use the host's /usr/bin/ld via the toolchain-scoped extra_link_flags, as already done on macOS, and disable supports_start_end_lib on Linux since GNU ld rejects --start-lib/--end-lib. The msan toolchain keeps ld.lld; its job stays on Ubuntu 22.04. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GNU ld resolves static archives in command-line order. toolchains_llvm puts -l:libunwind.a among the early link flags, ahead of libc++abi.a, so the switch from ld.lld left _Unwind_* undefined. Append the runtime archives in dependency order via extra_link_libs; a repeated static archive only supplies still-undefined symbols. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Release v3.1.1: fix macOS 27 SDK / Xcode 27 build break
# Conflicts: # docs/BUILD_SYSTEM.md # library/src/api/dll.h # python/BUILD.bazel
There was a problem hiding this comment.
🟡 Changes recommended
The Java FFM artifact remains versioned 3.1.0 and would embed a native library reporting 3.1.1.
1 open finding
What changed in this PR
Merges v3.1.1 release metadata from main into develop.
Changes:
- Bumps the Bazel module version to 3.1.1.
- Updates the legacy C API version macro.
| File | Description |
|---|---|
MODULE.bazel |
Sets the module version to 3.1.1. |
library/src/api/dds_constants.hpp |
Updates DDS_VERSION to 30101. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Review on PR #419 caught that bumping MODULE.bazel to 3.1.1 left jni/BUILD.bazel's DDS_FFM_VERSION at 3.1.0, so dds_ffm_dist would publish as org.dds:dds-ffm:3.1.0 while embedding a 3.1.1-reporting native library; the smoke test only compares major.minor so it couldn't catch the drift. A full scan for other 3.1.0 references turned up the same staleness in docs/jni_interface.md's Maven coordinate examples, specs/jni-ffm-binding.md's "currently 3.1.0" note, and README.md's "Current baseline" line. Left the docs/release_notes/release_v3_1_0.md and specs/dds-public-api.md references alone — those correctly describe the historical 3.1.0 release, not the current version. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Addressed in 658b470 — bumped `DDS_FFM_VERSION` in `jni/BUILD.bazel` to 3.1.1 as requested. Also did a careful repo-wide scan for other `3.1.0` references now stale after this merge, and fixed three more:
Left alone (correctly historical, not current-version claims): `docs/release_notes/release_v3_1_0.md`, the "3.1.0 release notes" links in `README.md`, and `specs/dds-public-api.md`'s "shipped in v3.1.0" note. 28/28 `//jni/... //python/...` tests pass (including both FFM smoke tests), 103/103 full suite. 🤖 Generated with Claude Code |

Summary
main(now atv3.1.1, PR Release v3.1.1: fix macOS 27 SDK / Xcode 27 build break #417) back intodevelopso the macOS 27 / Xcode 27 fix's exact history is reconciled across both branches instead of existing as two different diffs.docs/BUILD_SYSTEM.md— kept develop's "Linux host requirements and distro CI" section (main has nothing there).python/BUILD.bazel— kept develop'sci_linux_distros_testtarget (main has nothing there).library/src/api/dll.h— kept develop's post-header-reorg content (PR Split public API headers into constants + data types #355 movedDDS_VERSIONout of this file); carried the version bump forward intolibrary/src/api/dds_constants.hpp(DDS_VERSION30100 → 30101) instead, since that's where it now lives on develop.Test plan
bazelisk test //...— 103/103 pass🤖 Generated with Claude Code