Skip to content

fix: pin rust-FuSa to v0.3.10 in CI instead of floating on default branch - #11

Merged
SoundMatt merged 1 commit into
mainfrom
ci/pin-rust-fusa-v0.3.10
Jul 28, 2026
Merged

fix: pin rust-FuSa to v0.3.10 in CI instead of floating on default branch#11
SoundMatt merged 1 commit into
mainfrom
ci/pin-rust-fusa-v0.3.10

Conversation

@SoundMatt

Copy link
Copy Markdown
Owner

Summary

  • The safety job's cargo install --git https://github.com/SoundMatt/rust-FuSa rsfusa --locked step had no --tag, so CI floated on whatever rust-FuSa's default branch happened to be at run time.
  • Pin to --tag v0.3.10, the current released version of rust-FuSa.

Closes #10

Test plan

  • Push and watch CI to a real terminal state (build-test, safety, relay-conform jobs)
  • Specifically verify the safety job (rsfusa install + safety-lifecycle steps) passes with the pinned version

…anch

The safety job's rsfusa install used `cargo install --git ... rsfusa`
with no --tag, so CI silently floated on whatever rust-FuSa's default
branch happened to be at run time. Pin to the current released
version so safety-evidence generation is reproducible and doesn't
change out from under us on unrelated pushes.

Closes #10

Signed-off-by: Matt Jones <47545907+SoundMatt@users.noreply.github.com>
@SoundMatt
SoundMatt merged commit 23fc6de into main Jul 28, 2026
7 checks passed
@SoundMatt
SoundMatt deleted the ci/pin-rust-fusa-v0.3.10 branch July 28, 2026 21:31
SoundMatt added a commit that referenced this pull request Jul 30, 2026
The conformance-gate job installed the reference relay CLI via
`go install github.com/SoundMatt/RELAY/cmd/relay@v1.11.0`, which was
already four minor versions stale (v1.12–v1.14 shipped since) and, as
of RELAY's v2.0 MAJOR bump, is no longer installable at all: v2.0
changed the module path to `github.com/SoundMatt/RELAY/v2` per Go's
semantic import versioning rules (SoundMatt/RELAY#70), so the old
import path can't resolve v2.x releases at all.

Bump the pin to `github.com/SoundMatt/RELAY/v2/cmd/relay@v2.0.4`.

Reviewed the intervening spec changes (CHANGELOG v1.12–v2.0) for any
newly-applicable conformance requirements:
- v1.12: added "c" as a valid CLI language value — not applicable,
  rust-LIN already reports "rust".
- v1.13: fixed `relay interop`/`relay conform --strict` CLI bugs, and
  documented HealthProvider/MetricsProvider/Drainer for the C++/Rust
  bindings — these are optional, capability-declared interfaces
  (spec §9); rust-LIN already implements HealthProvider/MetricsProvider
  on VirtualBus.
- v1.14: expanded the §13.7.2 module-name registry with RCP-specific
  module names (avtp, acf, lifecycle, regmap, discovery, request,
  fragment) and standardized DDS RTPS internal naming — neither
  applies to a LIN implementation.
- v2.0: replaced RCP's canonical types with the real TC18 protocol —
  RCP-specific, does not touch LIN.

Built the reference `relay` v2.0.4 CLI locally the same way CI now
will and ran it against a release build of rust-lin:
- `relay conform --strict ./target/release/rust-lin` → PASS
- `relay interop --strict --protocol LIN ./target/release/rust-lin`
  → PASS (3/3 golden vectors EQUIVALENT)

No new conformance gap, so no source changes and no crate version
bump — consistent with the precedent set by the rust-FuSa CI-pin-only
fix in #11, which also didn't bump the crate version.

Full local verification also run and green: cargo build --release,
cargo test (46 unit/integration + 2 doctests), cargo clippy -D
warnings, cargo fmt --check, and the ungated rust-FuSa v0.3.10 gates
(rsfusa qualify: 16/16, rsfusa release).

Signed-off-by: Matt <47545907+SoundMatt@users.noreply.github.com>
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.

Pin rust-FuSa to v0.3.10 instead of floating on unpinned (default branch)

1 participant