Why
A developer upgrading a dependency will leave now-unnecessary skip entries in place rather than removing them, causing deny.toml to drift from reality and gradually lose its signal value.
Current state
deny.toml contains several skip entries under a vague comment ("transitive conflicts across rusqlite, ratatui, reqwest"). No entry records which specific crate pair forces the version split, when the entry was added, or whether it could be removed after a future upgrade.
Ideal state
- Each
skip entry in deny.toml carries an inline comment of the form: # <dep-a> requires X.Y, <dep-b> requires X.Z — revisit when <dep-a> upgrades
- A developer upgrading
rusqlite, ratatui, or reqwest can immediately determine whether the corresponding skip entry can be removed.
Out of scope
Resolving the underlying version conflicts.
Starting points
deny.toml — the skip block to annotate
QA plan
- Open
deny.toml — expect each skip entry to have an inline comment naming the two crates whose transitive dependency requirements force the version split.
- Run
cargo deny check — expect it to pass with no new errors.
Done when
Every skip entry in deny.toml has an inline comment identifying the specific dependency pair that necessitates the skip.
Why
A developer upgrading a dependency will leave now-unnecessary skip entries in place rather than removing them, causing
deny.tomlto drift from reality and gradually lose its signal value.Current state
deny.tomlcontains severalskipentries under a vague comment ("transitive conflicts across rusqlite, ratatui, reqwest"). No entry records which specific crate pair forces the version split, when the entry was added, or whether it could be removed after a future upgrade.Ideal state
skipentry indeny.tomlcarries an inline comment of the form:# <dep-a> requires X.Y, <dep-b> requires X.Z — revisit when <dep-a> upgradesrusqlite,ratatui, orreqwestcan immediately determine whether the corresponding skip entry can be removed.Out of scope
Resolving the underlying version conflicts.
Starting points
deny.toml— theskipblock to annotateQA plan
deny.toml— expect eachskipentry to have an inline comment naming the two crates whose transitive dependency requirements force the version split.cargo deny check— expect it to pass with no new errors.Done when
Every
skipentry indeny.tomlhas an inline comment identifying the specific dependency pair that necessitates the skip.