Skip to content

Commit 9b17111

Browse files
authored
fix: install relay CLI from /v2 module path, pin to v2.0.4 (#50)
CI's `go install github.com/SoundMatt/RELAY/cmd/relay@latest` used the bare (pre-v2) module path. Since RELAY v2.0.0, Go's semantic import versioning rules require the /v2 suffix for that path to resolve at all — the bare path has been silently resolving to the last v1.x tag (v1.14.0) this whole time, three spec releases behind (v1.12, v1.13, v1.14, v2.0 all shipped since), and would keep resolving there forever now that v2.x tags live under the new path (RELAY#70). Changed to `go install github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4`, an explicit pin rather than @latest, matching this repo's existing "pin, don't float" convention for external tool checkouts (e.g. cpp-FuSa is pinned to v0.15.0 in the same workflow, #16). Verified conformance against the real RELAY v2.0.4 CLI (built the same way CI now will) before pushing: - `relay conform --strict ./build/cli/cpp-lin-cli` — PASS - `relay interop --strict --protocol LIN ./build/cli/cpp-lin-cli` — PASS, including both LIN error vectors (lin-id-overflow, lin-diagnostic-wrong-checksum). Those reject-path vectors were never actually exercised by any implementation's CI before now — RELAY v1.13 fixed a `go:embed` glob bug that had made spec/vectors/errors/* unreachable via the Vector API, so `relay interop`'s error-path comparison silently only ever ran the happy path. cpp-LIN's validate_frame() already rejects both cases correctly, so no gap. Read RELAY spec/CHANGELOG.md v1.12/v1.13/v1.14/v2.0 in full: v1.12 (add "c" as a valid CLI language) and v1.14 (RCP/DDS module-name registry) don't touch LIN or C++. v1.13's §18.2 HealthProvider/MetricsProvider/ Drainer C++ binding shapes are optional-interface documentation, not a new mandatory requirement — no code change needed. v2.0's RCP canonical-type replacement is RCP-specific, as expected, and doesn't touch LIN. No library code or test vectors changed, and no new conformance gap was found, so no version bump — consistent with this repo's precedent for pure CI-pin fixes (#16, which also didn't bump the version). Full local suite also re-run and green: 171/171 ctest, ASan+UBSan (171/171). clang-tidy/gcc-12 aren't available on this machine and weren't run locally; CI runs them natively on Ubuntu with the pinned versions this workflow already specifies. Signed-off-by: Matt <47545907+SoundMatt@users.noreply.github.com>
1 parent 65d3618 commit 9b17111

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ jobs:
148148
go-version: 'stable'
149149

150150
- name: Install relay tool
151-
run: go install github.com/SoundMatt/RELAY/cmd/relay@latest
151+
run: go install github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4
152152

153153
- name: RELAY conformance gate
154154
run: relay conform --strict ./build/cli/cpp-lin-cli

0 commit comments

Comments
 (0)