kbknapp / cargo-outdated

A cargo subcommand for displaying when Rust dependencies are out of date
MIT License
1.17k stars 87 forks source link

Ignores outdated crates pulled by other targets #370

Open ydirson opened 8 months ago

ydirson commented 8 months ago

When a target-specific dependency is used, and it pulls an outdated crate, cargo outdated misses it.

eg the following currently pulls syn 1.x:

[target.'cfg(freebsd)'.dependencies]
sysctl = "0.5.0"

When it gets pulled in addition to an uptodate one, we can see it with cargo tree -d --target=all (but when not a dup they are harder to spot):

...
syn v1.0.109
└── enum-as-inner v0.5.1 (proc-macro)
    └── sysctl v0.5.4 (*)

syn v2.0.38
├── async-stream-impl v0.3.5 (proc-macro)
│   └── async-stream v0.3.5
...