Skip to content

v1.2.1 — bump RELAY dependency to v2.0.4 (module-path uplift)

Latest

Choose a tag to compare

@SoundMatt SoundMatt released this 30 Jul 22:31
· 3 commits to main since this release
307691e

Highlights

go-SOMEIP's RELAY dependency was pinned to github.com/SoundMatt/RELAY v1.11.1 — three-plus spec releases behind (v1.12, v1.13, v1.14, and the breaking v2.0). This release bumps to the real, current github.com/SoundMatt/RELAY/v2 v2.0.4 (RELAY v2.0's own patch line moved the module path to /v2 per Go's semantic import versioning rules — RELAY#70). (#77)

Closes #57 (RELAY pinned three-plus releases behind, spanning a known conformance-gate false-pass bug and a breaking v2.0.0).

What changed

  • go.mod/go.sum: require github.com/SoundMatt/RELAY/v2 v2.0.4.
  • All 6 source files importing RELAY updated from "github.com/SoundMatt/RELAY" to "github.com/SoundMatt/RELAY/v2".
  • SpecVersion bumped 1.11 → 2.0, closing the tracked spec-version-drift gap (go-SOMEIP-03) — go-SOMEIP was misreporting conformance to a spec three-plus releases stale.
  • CI's relay CLI pin moved to github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4.
  • README.md/CLAUDE.md/.fusa-reqs.json stale "RELAY spec v1.11" references reconciled to v2.0.
  • CLI binVersion 1.2.0 → 1.2.1.

Conformance review

Read RELAY's CHANGELOG for v1.12 → v2.0: v1.12 ("c" CLI language) and v1.14 (RCP/DDS module-name registry) are not applicable to SOME/IP; v2.0's breaking RCP canonical-type replacement is RCP-specific and doesn't touch SOME/IP. v1.13's SOME/IP-relevant fix (FromMessage wrapping ErrMalformedMessage on malformed IDs) was already present in go-SOMEIP. v1.13 also fixed a real upstream bug where RELAY's embedded golden error vectors were unreachable, so relay interop had never previously exercised reject-path behavior for any implementation — now fixed upstream.

Built the RELAY v2.0.4 CLI from source and ran both conformance gates for real against the go-someip binary:

  • relay conform --strict → PASS (all three §12 schemas)
  • relay interop --strict --protocol SOMEIP → PASS on both vectors, including the previously-unreachable someip-wrong-protocol-version reject-path vector (now actually exercised for the first time) — go-someip correctly rejects it via the existing ErrWrongProtocolVersion sentinel.

No conformance gaps found; no behavioral code changes were required.

Verification

go build ./..., go vet ./..., go test ./..., go test -tags integration ./..., golangci-lint run ./... (0 issues) all green. CI: 14/14 checks passed before merge.