You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We currently have a cargo-machete-based check in xtask fmt that ensures that crates don't include dependencies that they don't use at all. While this check is fast, it isn't perfect.
Running a command like RUSTFLAGS=-Dunused-crate-dependencies cargo hack --workspace --feature-powerset check indicates a lot of cases where we are building dependencies that aren't actually being used for a particular configuration. For example: something used only by tests that is in dependencies instead of dev-dependencies, or something used only on one platform (windows vs linux) that is included globally, or something only needed when a feature is enabled that is always included, etc. None of these can be caught by our current cargo-machete-based approach. Cleaning all these up would be very tedious but would likely get us a little bit of compile time improvement.
The text was updated successfully, but these errors were encountered:
We currently have a cargo-machete-based check in
xtask fmt
that ensures that crates don't include dependencies that they don't use at all. While this check is fast, it isn't perfect.Running a command like
RUSTFLAGS=-Dunused-crate-dependencies cargo hack --workspace --feature-powerset check
indicates a lot of cases where we are building dependencies that aren't actually being used for a particular configuration. For example: something used only by tests that is in dependencies instead of dev-dependencies, or something used only on one platform (windows vs linux) that is included globally, or something only needed when a feature is enabled that is always included, etc. None of these can be caught by our current cargo-machete-based approach. Cleaning all these up would be very tedious but would likely get us a little bit of compile time improvement.The text was updated successfully, but these errors were encountered: