From 6c25d96ebd771c9ee26f898d0a8a3ce7e43f5084 Mon Sep 17 00:00:00 2001 From: Matt <47545907+SoundMatt@users.noreply.github.com> Date: Thu, 30 Jul 2026 15:26:59 -0700 Subject: [PATCH] chore: bump RELAY dependency v1.11.0 -> v2/v2.0.4 (v0.12.1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit github.com/SoundMatt/RELAY v2.0.4 fixed a module-path bug (RELAY#70): v2.0+ tags require a /v2 path suffix per Go's semantic import versioning rules, or they're uninstallable via normal go get/go install. go-CAN's go.mod was still pinned to v1.11.0, three spec versions (v1.12, v1.13, v1.14) plus the v2.0 MAJOR behind. - go.mod/go.sum: require github.com/SoundMatt/RELAY/v2 v2.0.4 - Updated all 8 source-file imports from `relay "github.com/SoundMatt/RELAY"` to `relay "github.com/SoundMatt/RELAY/v2"` (adapt.go, adapt_test.go, can.go, can_vectors_test.go, cmd/cantool/main.go, cmd/cantool/main_test.go, socketcan/bus_linux.go, virtual/bus.go) - .github/workflows/ci.yml: relay-conform job now installs github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4 (was pinned to a stale v1.10.0) - Reviewed RELAY spec CHANGELOG v1.12 (CLI language enum), v1.13 (relay-tool bug fixes), v1.14 (§13.7.2 module-name registry expansion), and v2.0 (RCP canonical-type replacement) for conformance impact on go-CAN: none apply. v1.12's new "c" language value doesn't affect go-CAN ("go"); v1.13's fixes are internal to the relay CLI tool itself; v1.14's registry additions are RCP/DDS-specific and go-CAN's existing module names (virtual, dbc, isotp, j1939, obdii, uds, recorder, safety, socketcan, mock) already match every applicable §13.7.2 entry; v2.0's breaking change is RCP-only. - Verified live, not just inferred: built the RELAY v2.0.4 CLI from source and ran `relay conform --strict`, `relay interop --strict --protocol CAN`, and `relay compare` against a freshly built go-CAN CLI binary. All PASS/EQUIVALENT/COMPATIBLE, no gaps found. - go build/vet/test/test -race and gofusa check/trace (100% requirement + function-annotation coverage) all clean. - cmd/cantool/main.go: toolVersion was stuck at "0.11.0" despite the already-tagged v0.12.0 release (pre-existing drift, unrelated to this bump); corrected to "0.12.1" while touching this file anyway. - ROADMAP.md: added the v0.12.1 patch-release row, following the v0.10.1 precedent for a dependency-only patch bump. Signed-off-by: Matt Signed-off-by: Matt <47545907+SoundMatt@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- ROADMAP.md | 1 + adapt.go | 2 +- adapt_test.go | 2 +- can.go | 2 +- can_vectors_test.go | 2 +- cmd/cantool/main.go | 4 ++-- cmd/cantool/main_test.go | 2 +- go.mod | 2 +- go.sum | 4 ++-- socketcan/bus_linux.go | 2 +- virtual/bus.go | 2 +- 12 files changed, 15 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac2534a..576bf72 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -279,7 +279,7 @@ jobs: # ── RELAY conformance gate ──────────────────────────────────────────────── # Validates the go-can CLI version/capabilities/status output against the # authoritative RELAY §12 JSON Schemas. Pinned to the spec version go-CAN - # targets (v1.6.x) so a spec bump is an explicit upgrade, not a surprise. + # targets (v2.0.x) so a spec bump is an explicit upgrade, not a surprise. relay-conform: name: RELAY conform runs-on: ubuntu-latest @@ -290,7 +290,7 @@ jobs: go-version: "1.25" - name: Install relay CLI - run: go install github.com/SoundMatt/RELAY/cmd/relay@v1.10.0 + run: go install github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4 - name: Build go-can CLI run: go build -o /tmp/go-can ./cmd/cantool diff --git a/ROADMAP.md b/ROADMAP.md index 806db4f..dbfd9e9 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -48,6 +48,7 @@ protocol, with zero required dependencies in the core library. | v0.10.0 | RELAY spec v1.10 — §13.7 cross-language library architecture + §20 continuous conformance | shipped | | v0.10.1 | Patch: per-subscription Seq counters, capabilities accuracy, RELAY spec v1.11, README fix | shipped | | v0.11.0 | Interop testing infrastructure — two-process self-interop + can-utils third-party interop over real `vcan0` (Milestone 14) | shipped | +| v0.12.1 | Patch: RELAY dependency bump v1.11.0 → `github.com/SoundMatt/RELAY/v2` v2.0.4 (module-path change per RELAY #70; spec v1.12–v1.14 + v2.0 reviewed for conformance impact, none applicable to CAN — verified live against the built `relay` v2.0.4 CLI) | shipped | | v1.0.0 | API stability, full SocketCAN feature set, documentation complete | planned | | v1.1.0 | **Bridge — MQTT** (`bridge/mqtt/`) — publish/subscribe CAN frames over MQTT topics | planned | | v1.2.0 | **Bridge — SOME/IP** (`bridge/someip/`) — translate CAN frames to/from SOME/IP service events | planned | diff --git a/adapt.go b/adapt.go index acd4019..8358370 100644 --- a/adapt.go +++ b/adapt.go @@ -12,7 +12,7 @@ import ( "strconv" "time" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" ) // ToMessage converts a CAN Frame to a relay.Message for cross-protocol routing. diff --git a/adapt_test.go b/adapt_test.go index fec75e8..1db3c53 100644 --- a/adapt_test.go +++ b/adapt_test.go @@ -11,7 +11,7 @@ import ( "testing" "time" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" "github.com/SoundMatt/go-CAN/virtual" ) diff --git a/can.go b/can.go index 963cc5e..aa03ba1 100644 --- a/can.go +++ b/can.go @@ -25,7 +25,7 @@ package can import ( "context" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" ) //fusa:req REQ-CAN-001 diff --git a/can_vectors_test.go b/can_vectors_test.go index 0cd9648..19e675d 100644 --- a/can_vectors_test.go +++ b/can_vectors_test.go @@ -11,7 +11,7 @@ import ( "path/filepath" "testing" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" ) diff --git a/cmd/cantool/main.go b/cmd/cantool/main.go index d39314e..f31390f 100644 --- a/cmd/cantool/main.go +++ b/cmd/cantool/main.go @@ -33,13 +33,13 @@ import ( "syscall" "time" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" "github.com/SoundMatt/go-CAN/recorder" "github.com/SoundMatt/go-CAN/virtual" ) -const toolVersion = "0.11.0" +const toolVersion = "0.12.1" func main() { if len(os.Args) < 2 { diff --git a/cmd/cantool/main_test.go b/cmd/cantool/main_test.go index ce3f01e..92bae96 100644 --- a/cmd/cantool/main_test.go +++ b/cmd/cantool/main_test.go @@ -16,7 +16,7 @@ import ( "testing" "time" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" "github.com/SoundMatt/go-CAN/virtual" ) diff --git a/go.mod b/go.mod index ba8f58d..6845c99 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,6 @@ module github.com/SoundMatt/go-CAN go 1.25.0 require ( - github.com/SoundMatt/RELAY v1.11.0 + github.com/SoundMatt/RELAY/v2 v2.0.4 golang.org/x/sys v0.46.0 ) diff --git a/go.sum b/go.sum index 2ca2865..3dd6d3b 100644 --- a/go.sum +++ b/go.sum @@ -1,4 +1,4 @@ -github.com/SoundMatt/RELAY v1.11.0 h1:ZqGQpU/ak5FNW4AOHjtVA6vPGjJhXCwFzAICHlHjNFE= -github.com/SoundMatt/RELAY v1.11.0/go.mod h1:8HXkxErdk4pHaM1de9eopm2S8o1aE7tKYkCBBsHxxcg= +github.com/SoundMatt/RELAY/v2 v2.0.4 h1:e64zaug7jFfFCgTq6PDdUWwyiwxUF0ypg4u360PDs3M= +github.com/SoundMatt/RELAY/v2 v2.0.4/go.mod h1:v/KbXSnTFSl4M44p0xLYyIH2eZ9rZ16CJCCbAropi24= golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw= golang.org/x/sys v0.46.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= diff --git a/socketcan/bus_linux.go b/socketcan/bus_linux.go index 460509b..c9132c5 100644 --- a/socketcan/bus_linux.go +++ b/socketcan/bus_linux.go @@ -27,7 +27,7 @@ import ( "net" "sync" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" "golang.org/x/sys/unix" ) diff --git a/virtual/bus.go b/virtual/bus.go index 0937610..7614dfb 100644 --- a/virtual/bus.go +++ b/virtual/bus.go @@ -24,7 +24,7 @@ import ( "sync/atomic" "time" - relay "github.com/SoundMatt/RELAY" + relay "github.com/SoundMatt/RELAY/v2" can "github.com/SoundMatt/go-CAN" )