Problem
Three dependencies are declared in Cargo.toml but are never used anywhere in the crate:
qrcode = "0.14.1" — Cargo.toml:19
strum = "0.28.0" — Cargo.toml:24
strum_macros = "0.28.0" — Cargo.toml:25
A full-tree search finds no references to any of them:
$ grep -rn "qrcode\|QrCode\|strum\|EnumIter\|EnumString" src/ build.rs templates/
(no matches)
They appear only as their own [[package]] entries in Cargo.lock (i.e. pulled in solely as direct dependencies, not transitively required by anything else in the tree).
Why it matters
Unused dependencies add compile time and enlarge the supply-chain surface without providing any value. qrcode in particular pulls in its own subtree. Removing them keeps the dependency set honest.
Fix
Delete the three lines from Cargo.toml and regenerate the lockfile:
- Remove
qrcode, strum, and strum_macros from [dependencies].
- Run
cargo build so Cargo.lock is updated (the three [[package]] entries, and any now-orphaned transitive entries, should disappear).
- Confirm the CI quality gate still passes locally:
cargo fmt --all -- --check, cargo clippy --all-targets -- -D warnings, cargo test --all-targets.
If it turns out any of the three is genuinely required (e.g. a planned QR-code feature), leave that one in place and note it, but the current tree shows no usage.
Problem
Three dependencies are declared in
Cargo.tomlbut are never used anywhere in the crate:qrcode = "0.14.1"—Cargo.toml:19strum = "0.28.0"—Cargo.toml:24strum_macros = "0.28.0"—Cargo.toml:25A full-tree search finds no references to any of them:
They appear only as their own
[[package]]entries inCargo.lock(i.e. pulled in solely as direct dependencies, not transitively required by anything else in the tree).Why it matters
Unused dependencies add compile time and enlarge the supply-chain surface without providing any value.
qrcodein particular pulls in its own subtree. Removing them keeps the dependency set honest.Fix
Delete the three lines from
Cargo.tomland regenerate the lockfile:qrcode,strum, andstrum_macrosfrom[dependencies].cargo buildsoCargo.lockis updated (the three[[package]]entries, and any now-orphaned transitive entries, should disappear).cargo fmt --all -- --check,cargo clippy --all-targets -- -D warnings,cargo test --all-targets.If it turns out any of the three is genuinely required (e.g. a planned QR-code feature), leave that one in place and note it, but the current tree shows no usage.