fix(release): keep client/src-tauri/Cargo.lock in sync on version bumps#6574
Conversation
client/src-tauri is its own cargo workspace with its own Cargo.lock, so the existing pre-release-replacement that bumps its Cargo.toml left the lock pinning the previous version. The Tauri CI job builds with `cargo check --locked`, which then refuses to update the lock and fails; because tauri-check is a `needs:` of the required "Rust (fmt, clippy, test, coverage-gate)" aggregator, that reds main and every merge-group ref built on the release commit. v0.35.2 shipped exactly that way and deadlocked the merge queue (fix landed in #6568). Verified with `cargo release 0.36.0 --workspace` in dry-run: the new replacement rewrites only the phase-tauri package's version line. The newline is kept inside a capture group rather than in the replacement string: the regex crate expands only ${1}-style references in a replacement, so a literal \n there would be inserted verbatim and splice the two lines together.
|
Warning Review limit reached
Next review available in: 13 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
…ps (phase-rs#6574) client/src-tauri is its own cargo workspace with its own Cargo.lock, so the existing pre-release-replacement that bumps its Cargo.toml left the lock pinning the previous version. The Tauri CI job builds with `cargo check --locked`, which then refuses to update the lock and fails; because tauri-check is a `needs:` of the required "Rust (fmt, clippy, test, coverage-gate)" aggregator, that reds main and every merge-group ref built on the release commit. v0.35.2 shipped exactly that way and deadlocked the merge queue (fix landed in phase-rs#6568). Verified with `cargo release 0.36.0 --workspace` in dry-run: the new replacement rewrites only the phase-tauri package's version line. The newline is kept inside a capture group rather than in the replacement string: the regex crate expands only ${1}-style references in a replacement, so a literal \n there would be inserted verbatim and splice the two lines together. Co-authored-by: matthewevans <matthewevans@users.noreply.github.com>
client/src-tauri is its own cargo workspace with its own Cargo.lock, so
the existing pre-release-replacement that bumps its Cargo.toml left the
lock pinning the previous version. The Tauri CI job builds with
cargo check --locked, which then refuses to update the lock and fails;because tauri-check is a
needs:of the required "Rust (fmt, clippy,test, coverage-gate)" aggregator, that reds main and every merge-group
ref built on the release commit. v0.35.2 shipped exactly that way and
deadlocked the merge queue (fix landed in #6568).
Verified with
cargo release 0.36.0 --workspacein dry-run: the newreplacement rewrites only the phase-tauri package's version line.
The newline is kept inside a capture group rather than in the
replacement string: the regex crate expands only ${1}-style references
in a replacement, so a literal \n there would be inserted verbatim and
splice the two lines together.