It's worse for workspaces. A and B can be independent crates sharing a workspace. A can have feature F enabled for crate D. B may depend on D without enabling F, but if the workspace is built as a whole, B can still use F. If B is compiled separately from a clean build with cargo build --package B
, compilation fails.
5 Likes