rustfmt icon indicating copy to clipboard operation
rustfmt copied to clipboard

cargo fmt with specified manifest-path does not work in workspaces with bin and lib packages

Open narasamdya opened this issue 10 months ago • 1 comments

Describe the bug

When a workspace has bin and lib packages, specifying a manifest path in the invocation of cargo fmt makes cargo fmt fail to find targets.

$ cargo fmt --check --manifest-path Cargo.toml
Failed to find targets
This utility formats all bin and lib files of the current crate using rustfmt.
...

To Reproduce

  1. mkdir workspace_dir && cd workspace_dir
  2. printf '[workspace]\nmembers = ["inner_bin", "inner_lib"]' >> Cargo.toml
  3. cargo new inner_bin
  4. cargo new inner_lib --lib
  5. cargo fmt --check --manifest-path Cargo.toml

Expected behavior

cargo fmt should check formatting in all packages in the workspace.

Meta

$ cargo fmt --version
rustfmt 1.8.0

rustfmt version: 1.8.0 From where did you install rustfmt?: msrustup How do you run rustfmt: cargo fmt --check --manifest-path Cargo.toml

narasamdya avatar Mar 21 '25 22:03 narasamdya

May be related to this issue 4432

narasamdya avatar Mar 21 '25 22:03 narasamdya