-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Open
Labels
E-hardS-unactionableIssue requires feedback, design decisions or is blocked on other workIssue requires feedback, design decisions or is blocked on other work
Description
I have a workspace which contains a large number of crates.
Say I need to do the following, in that order:
- Update lib L
- Fix crate A to new interface of lib L
- Fix crate B to new interface of lib L
(A and B do not depend on each other)
When I try to completely update crate A, I can't see warnings and in general I get errors from project B, which I haven't fixed yet. This is due to rust-analyzer watching the whole workspace, even though I have only opened the root of A, and the Cargo.toml at the root of my folder is that of A.
I would expect that the current behaviour only happens when I open my workspace folder, and that when I open a single project it doesn't try to build the whole workspace, allowing me to completely fix a crate before moving to the next.
This would also have other benefits:
- Performance: my workspace being very large, I rarely work on all projects at once so I would gain time and space by not building all of it
- Feature flags testing: a global
cargo checkdoes not behave the same way as individual checks: when running a workspace check, all feature flags required in any crate of the workspace are enabled for every crate of the workspace, while when running a crate check, only the flags required for that specific crate are enabled.
brhx, SolaWing, Elrendio, teh-cmc, gyk and 6 more
Metadata
Metadata
Assignees
Labels
E-hardS-unactionableIssue requires feedback, design decisions or is blocked on other workIssue requires feedback, design decisions or is blocked on other work