Skip to content

fix: avoid incorrectly unchanged cargo workspace crates#2749

Open
jolars wants to merge 1 commit into
googleapis:mainfrom
jolars:fix-cargo-workspace
Open

fix: avoid incorrectly unchanged cargo workspace crates#2749
jolars wants to merge 1 commit into
googleapis:mainfrom
jolars:fix-cargo-workspace

Conversation

@jolars
Copy link
Copy Markdown
Contributor

@jolars jolars commented Apr 13, 2026

  • Make sure to open an issue as a bug/issue before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)

Fixes #2748

Summary

This PR fixes a manifest-mode bug where a root Rust release candidate (path:
".") could retain workspace member Cargo.toml updates generated by the Rust
strategy, causing member versions to be rewritten to the root version and
diverging from per-path manifest decisions.

What changed

  • Updated CargoWorkspace plugin to drop pre-existing root-candidate updates
    targeting workspace member manifests, while keeping the root Cargo.toml
    update.
  • Kept normal workspace/plugin-driven version propagation and Cargo.lock
    handling intact.

Tests

Added regression test:

  • test/plugins/cargo-workspace.ts
  • removes root rust strategy member updates outside workspace decisions

This test verifies root candidates no longer include unintended member
Cargo.toml bumps.

@jolars jolars requested review from a team as code owners April 13, 2026 14:11
@product-auto-label product-auto-label Bot added the size: m Pull request size is medium. label Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size: m Pull request size is medium.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: root cargo workspace releaser rewrites member crate versions, overriding per-path releases

2 participants