Skip to content

Merge main (v3.1.1) back into develop - #419

Merged
zzcgumn merged 8 commits into
developfrom
merge/main-into-develop
Oct 9, 2026
Merged

zzcgumn merged 8 commits into
developfrom
merge/main-into-develop

Conversation

@zzcgumn

@zzcgumn zzcgumn commented Oct 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Merges main (now at v3.1.1, PR Release v3.1.1: fix macOS 27 SDK / Xcode 27 build break #417) back into develop so the macOS 27 / Xcode 27 fix's exact history is reconciled across both branches instead of existing as two different diffs.
  • Three conflicts, all from independent develop-only work landing in the same spots as the cherry-picked fix:
    • docs/BUILD_SYSTEM.md — kept develop's "Linux host requirements and distro CI" section (main has nothing there).
    • python/BUILD.bazel — kept develop's ci_linux_distros_test target (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 moved DDS_VERSION out of this file); carried the version bump forward into library/src/api/dds_constants.hpp (DDS_VERSION 30100 → 30101) instead, since that's where it now lives on develop.

Test plan

  • bazelisk test //... — 103/103 pass

🤖 Generated with Claude Code

tameware and others added 7 commits October 8, 2026 23:22
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
@zzcgumn
zzcgumn requested a review from tameware October 9, 2026 16:44
@zzcgumn zzcgumn self-assigned this Oct 9, 2026
@tameware
tameware requested a balanced review from Copilot October 9, 2026 17:54

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 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.

Comment thread MODULE.bazel
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>
@zzcgumn

zzcgumn commented Oct 9, 2026

Copy link
Copy Markdown
Collaborator Author

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:

  • `docs/jni_interface.md` — Maven coordinate/Gradle/Maven-XML examples (`org.dds:dds-ffm:3.1.0` → `3.1.1`, and the `~/.m2` install path).
  • `specs/jni-ffm-binding.md` — "currently `3.1.0`" note for `DDS_FFM_VERSION`.
  • `README.md` — "Current baseline for this branch (`MODULE.bazel` version `3.1.0`)".

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

Version values and documentation are consistently synchronized with v3.1.1.

1 open finding

🧠 Review effort: Balanced

@zzcgumn
zzcgumn merged commit 4c7172b into develop Oct 9, 2026
15 checks passed
@zzcgumn
zzcgumn deleted the merge/main-into-develop branch October 9, 2026 23:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants