Skip to main content
Version: 3.x

mops outdated

Print available dependency updates within the caret bound (does not cross major versions, or pre-1.0 minor versions).

mops outdated

Check only a specific dependency

mops outdated [pkg]

Nothing is written — mops.toml and the lockfile are left untouched. Use mops update to apply the updates it reports.

$ mops outdated
Available updates:
core 1.0.0 -> 1.2.0
mydep 1111111 -> 06d7c77 (github: org/repo#master)

Reported dependencies

mops outdated reports exactly what mops update would change:

  • registry packages — the highest version within the bound (see --major / --patch)
  • GitHub packages — the branch head, when it differs from the commit pinned in mops.toml. Old and new commits are shown abbreviated; a dependency that pins a branch without a commit is shown as unpinned. Each GitHub dependency costs one call to the unauthenticated GitHub API, which is rate-limited to 60 requests per hour per IP.

Hard-pinned registry packages (e.g. "core@1.2.3" = "1.2.3") and local path dependencies are never reported — mops update does not move them either.

Exit codes

Suitable as a CI gate: a stale dependency is distinguishable from a failed lookup.

CodeMeaning
0Everything is up to date
1Updates are available
2The check could not be completed — no mops.toml, unknown [pkg], or a registry / GitHub lookup that failed

Code 2 wins over 1: if any lookup fails, the report is incomplete, so it is never reported as 0 or as a plain "outdated".

Options

--major

Also report updates that cross the caret bound. Mirrors mops update --major.

mops outdated --major

--patch

Restrict reported updates to patch versions only. Mirrors mops update --patch.

mops outdated --patch

Mutually exclusive with --major.