Skip to content

Make the live RotorHazard transport a default feature#349

Merged
ryan-johnson2 merged 1 commit into
develfrom
live-by-default
Jul 3, 2026
Merged

Make the live RotorHazard transport a default feature#349
ryan-johnson2 merged 1 commit into
develfrom
live-by-default

Conversation

@ryan-johnson2

Copy link
Copy Markdown
Contributor

From the user's question while testing ("why is live gated? I feel like it should be in the default build") — investigation confirmed it's worse than a dev footgun: the desktop release crate depends on gridfpv-app without naming live, so the shipped artifact had no RotorHazard adapter at all (a v1 release blocker — the product's whole job is talking to real timers).

  • default = ["live"] on gridfpv-app: plain builds, dev deploys, and the desktop artifact all carry the real transport now.
  • The gate stays for what it was good at: --no-default-features still yields the slim OpenSSL-free Mock/sim build, and the Docker-bound live test classes are unchanged.
  • Two latent issues in live-gated code that default CI had never compiled are fixed (doc-indent lint; rh_live's exhaustive Event match missing the new RoundFieldDrawn).
  • CI note: the first uncached run pays the openssl-vendored compile once per cache cycle.

cargo xtask ci green (now compiling the live code by default — permanent lint coverage for the transport), contract 90/90.

🤖 Generated with Claude Code

A default-off product transport was a footgun that fired twice in one day:
a plain-cargo-build dev deploy shipped a Director that could never leave
"Configured" (lost test session), and — worse — the desktop release crate
(src-tauri) depends on gridfpv-app without naming `live`, so the SHIPPED
artifact had no RotorHazard adapter at all.

`live` is now in gridfpv-app's default features: every plain build, the
desktop artifact, and dev deploys all carry the real transport. The
openssl-vendored TLS compile is a cache-warm one-time cost. The slim
Mock/sim-only OpenSSL-free build remains available via
--no-default-features. Fixed two latent lints/matches in the live-gated
code that default CI had never compiled (a doc-indent lint in the RH
transport; rh_live's Event match missing RoundFieldDrawn).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@ryan-johnson2 ryan-johnson2 merged commit 3ee4e51 into devel Jul 3, 2026
3 checks passed
@ryan-johnson2 ryan-johnson2 deleted the live-by-default branch July 3, 2026 14:56
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.

1 participant