You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug] CI breaks when flutter_rust_bridge publishes a new version #100
The yourssh_rdp and yourssh_vnc Dart tests fail as soon as a new flutter_rust_bridge release lands on pub.dev, with no change on our side:
Bad state: yourssh_rdp's codegen version (2.12.0) should be the same as
runtime version (2.13.0). See https://cjycode.com/flutter_rust_bridge
package:yourssh_rdp/src/generated/frb_generated.dart 28:20 RustLib.init
Steps to Reproduce
Run cd packages/yourssh_rdp && flutter test with no pubspec.lock present
(which is how CI runs it — package lockfiles are not committed).
pub resolves the newest flutter_rust_bridge, currently 2.13.0.
RustLib.init aborts in setUpAll.
Expected Behavior
The bridge runtime matches the generated code, so the tests run.
Actual Behavior
rust/Cargo.toml pins the crate exactly (flutter_rust_bridge = "=2.12.0") and lib/src/generated/ was produced by codegen 2.12.0, but the Dart side allowed a
range (^2.12.0). flutter_rust_bridge requires all three to be the same
version, so any minor release breaks the build.
Environment
OS: ubuntu-latest (GitHub Actions) and locally after a fresh resolve
App version: 0.1.40
Installed via: built from source
Additional Context
Surfaced on #86 the first time CI ran on a PR into develop (#97 added that
trigger). The failure predates that PR — it is time-based, not caused by the
branch. Fix is to pin the Dart dependency exactly, matching Cargo.toml; bumping
the bridge then means regenerating lib/src/generated/ and moving all three
together, which is the intended workflow.
Fixed in 875aca4 (merged to develop via #86). The Dart dependency is pinned to flutter_rust_bridge: 2.12.0 in both packages/yourssh_rdp and packages/yourssh_vnc, matching the =2.12.0 already pinned in rust/Cargo.toml and the codegen that produced lib/src/generated/. All three now move together, so a new bridge release on pub.dev can no longer break a fresh resolve.
Upgrading the bridge from here means regenerating lib/src/generated/ and bumping Cargo.toml in the same change.
Activity
fix(frb): pin the Dart bridge runtime to the codegen version
thangnm93 commentedon Aug 23, 2026
Fixed in
875aca4(merged todevelopvia #86). The Dart dependency is pinned toflutter_rust_bridge: 2.12.0in bothpackages/yourssh_rdpandpackages/yourssh_vnc, matching the=2.12.0already pinned inrust/Cargo.tomland the codegen that producedlib/src/generated/. All three now move together, so a new bridge release on pub.dev can no longer break a fresh resolve.Upgrading the bridge from here means regenerating
lib/src/generated/and bumping Cargo.toml in the same change.