Releases: hpehl/depup
Releases · hpehl/depup
0.2.1
Added
- Track
packageManagerversion frompackage.json(e.g.,"pnpm@9.15.0") as aToolVersiondependency across all subcommandscheck: reports current vs latest version from the npm registryupdate: rewrites thepackageManagerfield inpackage.jsonto the latest version- Strips Corepack
+hashsuffixes (e.g.,pnpm@9.15.0+sha512.abc...) - Works with existing filters:
--tools,--npm,--include/--exclude,--outdated
Changed
- Right-align version numbers in the output column when a property name is present
- Sort tool versions last in output for both Maven and npm ecosystems
Fixed
- Skip
.pnpm-store/and other non-project directories during npm discovery to avoid duplicate entries
0.2.0
Added
updatesubcommand for updating outdated dependencies- Maven: format-preserving POM updates for both managed properties (
<properties>) and inline versions (<version>x.y.z</version>) — preserves comments, whitespace, and indentation - npm: delegates to native package manager update commands (
npm update,pnpm update,yarn upgrade,bun update) --dry-runflag to preview updates without making changes (JSON status:would_update)- Structured JSON output with
ecosystem,kind,managed,artifact,source,old_version,new_versionfields - Summary line, elapsed time, progress bar, and exit code 1 on errors (mirrors
checkoutput)
- Maven: format-preserving POM updates for both managed properties (
--include/--excludeglob filters forcheck,update, andaudit(e.g.,--include 'org.junit:*',--exclude '*:guava',--include 'react*')auditsubcommand for checking dependencies against known vulnerabilities via OSV.dev- Queries both Maven and npm ecosystems using the OSV batch API
- Fetches full vulnerability details including CVE aliases, severity (CVSS-based), summaries, and advisory URLs
--severityfilter to show only vulnerabilities at or above a threshold (critical, high, medium, low)- Supports all check filters:
--maven/--npm,--dependencies/--plugins/--dev-deps,--managed/--unmanaged,--include/--exclude - Structured JSON output with vulnerability details
- Grouped table output with severity-colored labels, summary line, and timing
- Exit code 1 when vulnerabilities are found
- Tool versions (Node.js, package managers) are skipped
Changed
- Rename crate to
depup-clifor crates.io publishing (cargo install depup-cliinstalls thedepupbinary) - Audit
--severityfilter now drops dependencies whose vulnerabilities were all below the threshold instead of showing them as clean
0.1.0
Added
checksubcommand with auto-detection of ecosystems (Maven + npm)completionssubcommand to generate and install shell completions (bash, zsh, fish, elvish, powershell)- Maven ecosystem: multi-module project discovery,
${version.*}property resolution, plain version number checking, custom repository support (<repositories>and<pluginRepositories>) - Maven ecosystem: Node.js and package manager version properties (
version.node,version.npm,version.pnpm,version.yarn) - npm ecosystem: auto-detect package manager by lock file or
packageManagerfield inpackage.json - npm ecosystem: support for npm, pnpm, yarn (classic), and bun
- npm ecosystem: workspace-aware discovery (skips workspace members)
- Table and JSON output formats with results grouped by ecosystem and kind
--outdatedflag to show only outdated dependencies--stable/--releases-onlyflag to exclude pre-release versions (alpha, beta, RC, milestone)- Progress bars during version checks (hidden in JSON mode)
- Structured error types with machine-parseable error codes and JSON error envelope
- Exit code 1 when outdated dependencies are found