feat(pm): add outdated command - #3229
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a new outdated command to check for outdated direct dependencies by comparing local versions from the lockfile with those available on the registry. The feedback focuses on improving the resilience of the command by gracefully handling missing .utoo.toml files, failed manifest fetches, and version resolution errors instead of failing the entire command. Additionally, a logic issue was identified where packages already at the latest version might be incorrectly reported as outdated.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| if dependency.current.as_deref() == Some(wanted.as_str()) && wanted == latest { | ||
| continue; | ||
| } |
There was a problem hiding this comment.
If the current version of a package is already equal to the latest version available on the registry, it is fully up-to-date and should be skipped. The current check only skips when current == wanted == latest, which incorrectly reports packages as outdated if they are at the latest version but have a different wanted version (e.g., due to an override or manual lockfile modification).
| if dependency.current.as_deref() == Some(wanted.as_str()) && wanted == latest { | |
| continue; | |
| } | |
| if dependency.current.as_deref() == Some(latest.as_str()) { | |
| continue; | |
| } |
7517858 to
d61f98b
Compare
Summary
ut outdated [patterns...]with theut outaliasCurrent, range-compatibleWanted, registryLatest, location, and dependentBehavior
WantedValidation
cargo test -p utoo-pm(331 passed, 3 ignored)cargo clippy --all-targets -- -D warnings --no-depscargo fmt --checkgit diff --checkCloses #3228