This reduces the boilerplate, and the chance that we forget to enable lints in some targets. The only thing we need to remember is to add the [lints] workspace = true to any new crates in the future.
Making this switch exposed a few places where lints weren't enabled and issues had been missed, which have been fixed now.
Since this feature requires Rust 1.74, the MSRV has also been bumped (however, libcnb 0.16.0 already requires Rust 1.74, so in practice this is a no-op).
As of the Cargo included in Rust 1.74, lints can now be configured in
Cargo.toml
across whole crates/workspaces: https://blog.rust-lang.org/2023/11/16/Rust-1.74.0.html https://doc.rust-lang.org/stable/cargo/reference/manifest.html#the-lints-section https://doc.rust-lang.org/stable/cargo/reference/workspaces.html#the-lints-tableThis reduces the boilerplate, and the chance that we forget to enable lints in some targets. The only thing we need to remember is to add the
[lints] workspace = true
to any new crates in the future.Making this switch exposed a few places where lints weren't enabled and issues had been missed, which have been fixed now.
Since this feature requires Rust 1.74, the MSRV has also been bumped (however, libcnb 0.16.0 already requires Rust 1.74, so in practice this is a no-op).
GUS-W-14523836.