Files
pnpm/pnpm/docs/cli/outdated.md
Zoltan Kochan 436fbedfcb feat(cli): support runtime, package manager, Cargo, and Python dependencies in outdated and update (#17449)
* feat(cli): show and update runtime and package manager versions in outdated and update

Include runtime (node, deno, bun) and package manager (pnpm, npm, yarn, bun)
declarations from devEngines, engines.runtime, and packageManager in pnpm
outdated and pnpm update (including --interactive and --latest).

Wire NodeResolver, DenoResolver, BunResolver, and YarnResolver into the shared
DefaultResolver chain built by create_configured_registry_resolver so both
outdated and update resolve runtime: and github:yarnpkg/berry-dist specifiers
alongside registry packages.

* fix(cli): address review feedback on engine outdated and update

* fix(cli): refine engine lockfile sync, group deduplication, and outdated lockfile check

* fix(cli): preserve engine outdated candidates with distinct specifiers

* feat(cli): support Cargo and Python dependencies in outdated and update

* fix(cli): preserve ecosystem selectors across recursive update and scope lockfile checks

* fix(cli): require Cargo workspace membership when resolving ancestor workspace root

* fix(cli): use segment-aware Cargo glob matching for workspace membership

* perf(cli): avoid exponential backtracking on repeated ** Cargo workspace globs

* fix(cli): reduce outdated future stack size for Windows clippy

* fix(cli): preserve sibling Cargo workspace dependencies during targeted update

* fix(cli): bound workspace member manifest paths and support subtable dependency edits

* fix(cli): snapshot Cargo manifests directly from staged edit paths

* fix(cli): support dotted Cargo keys and refine ecosystem outdated/update handling

* fix(cli): deduplicate Cargo update edits by physical manifest target

* fix(cli): use inclusive >= for rewritten Cargo > bounds and validate standalone outdated projects

* fix(cli): discover implicit path-dependency Cargo workspace members

* fix(cli): apply recursive filters and unified grouping to standalone ecosystem projects

* fix(cli): populate Cargo dependency graph edges for standalone recursive filters

* fix(cli): resolve aliased Cargo workspace dependencies in standalone graph

* fix(cli): support single-quoted Cargo subtables and inherited implicit member paths
2026-10-29 11:52:37 +01:00

2.3 KiB

id, title
id title
outdated pnpm outdated

Checks for outdated packages, runtimes (node, deno, bun declared in devEngines.runtime, engines.runtime, or through the runtime: / tool: protocol), package managers (pnpm, npm, yarn, bun declared in devEngines.packageManager or packageManager), Cargo crates (Cargo.toml when cargo.enabled is true), and Python packages (pyproject.toml when python.enabled is true). The check can be limited to a subset of the declared dependencies, runtimes, or package managers by providing arguments, including crate:<name> for Cargo crates and pypi:<name> for Python packages. Patterns support * wildcards, and a leading ! excludes matching names.

pnpm outdated exits with code 1 when any dependency is outdated.

Examples:

pnpm outdated
pnpm outdated "*gulp-*" @babel/core

Options

--recursive, -r

Check for outdated dependencies in every package found in subdirectories, or in every workspace package when executed inside a workspace.

--filter <package_selector>

Read more about filtering.

--global, -g

List outdated global packages.

--long

Print details.

--format <format>

  • Default: table
  • Type: table, list, json

Prints the outdated dependencies in the given format.

--json

Shorthand for --format json.

--no-table

Shorthand for --format list.

--compatible

Prints only versions that satisfy specifications in package.json.

--dev, -D

Checks only devDependencies.

--prod, -P, --production

Checks only dependencies and optionalDependencies.

--no-optional

Doesn't check optionalDependencies.

--optional

Checks optionalDependencies.

--sort-by

Specifies the order in which the output results are sorted. Currently only the value name is accepted. By default, results are sorted by the size of the version change, then by name.

--include-github-actions

Also check the GitHub Actions referenced by the repository's workflow files for updates. You can enable this by default by setting update.githubActions to true in pnpm-workspace.yaml. See Updating GitHub Actions.