ende outdated
Checking for outdated dependencies
The outdated subcommand checks for new versions of the JSR dependencies listed
in ende.json files, and displays
dependencies that could be updated. Workspaces are fully supported.
For example, take a project with an ende.json file:
{
"imports": {
"@ende/fmt": "jsr:@ende/fmt@^2026.10.14",
"@ende/path": "jsr:@ende/[email protected]"
}
}ende outdated
┌────────────────┬────────────┬────────────┬────────────┐
│ Package │ Current │ Update │ Latest │
├────────────────┼────────────┼────────────┼────────────┤
│ jsr:@ende/path │ 2026.10.14 │ 2026.10.14 │ 2026.10.15 │
└────────────────┴────────────┴────────────┴────────────┘
The Update column lists the newest version the import's range allows, while
the Latest column lists the latest version. @ende/path is pinned to an exact
version, so it can't be updated without changing its range.
If you would prefer to only show packages that have new compatible versions you
can pass the --compatible flag.
Updating dependencies
The outdated subcommand can also update dependencies with the --update flag.
By default, it will only update dependencies within their ranges:
ende outdated --update
Updated 1 dependency:
- jsr:@ende/fmt ^2026.10.14 -> ^2026.10.15
To update to the latest versions regardless of the ranges, pass the --latest
flag:
ende outdated --update --latest
Updated 2 dependencies:
- jsr:@ende/fmt ^2026.10.14 -> ^2026.10.15
- jsr:@ende/path 2026.10.14 -> 2026.10.15
ende update does the same as
ende outdated --update.
Selecting packages
The outdated subcommand also supports selecting which packages to operate on.
This works with or without the --update flag.
ende outdated --update --latest @ende/path
Multiple selectors can be passed, and wildcards (*) or exclusions (!) are
also supported. For instance, to update all packages in the @ende scope,
except for @ende/fmt:
ende outdated --update --latest "@ende/*" "!@ende/fmt"
Note that if you use wildcards, you will probably need to surround the argument in quotes to prevent the shell from trying to expand them.
Updating to specific versions
You can also select a specific version to update to by appending it after @.
ende outdated --update @ende/[email protected]
Workspaces
In a workspace setting, by default outdated will only operate on the current
workspace member.
For instance, given a workspace:
{
"workspace": ["./member-a", "./member-b"]
}Running
ende outdated
from the ./member-a directory will only check for outdated dependencies listed
in ./member-a/ende.json.
To include all workspace members, pass the --recursive flag (the -r
shorthand is also accepted).
ende outdated --recursive
ende outdated --update --latest -r
Command line usage:
outdatedFind outdated dependencies
Options
--cert
Load certificate authority from PEM encoded file.
--compatible
Only consider versions that satisfy semver requirements.
--config, -c
Configure different aspects of ende including TypeScript, linting, and code formatting.
Typically the configuration file will be called ende.json or ende.jsonc and
automatically detected; in that case this flag is not necessary.
--env-file
Load environment variables from local file Only the first environment variable with a given key is used. Existing process environment variables are not overwritten, so if variables with the same names already exist in the environment, their values will be preserved. Where multiple declarations for the same environment variable exist in your .env file, the first one encountered is applied. This is determined by the order of the files you pass as arguments.
--frozen-lockfile
Error out if lockfile is out of date.
--import-map
Load import map file from local file or remote URL.
--interactive, -i
Interactively select which dependencies to update.
--latest
Consider the latest version, regardless of semver constraints.
--lock
Check the specified lock file. (If value is not provided, defaults to "./ende.lock").
--lockfile-only
Install only updating the lockfile.
--min-dep-age
(Unstable) The age in minutes, ISO-8601 duration or RFC3339 absolute timestamp (e.g. '120' for two hours, 'P2D' for two days, '2025-09-16' for cutoff date, '2025-09-16T12:00:00+00:00' for cutoff time, '0' to disable).
--no-check
Skip type-checking. If the value of "remote" is supplied, diagnostic errors from remote modules will be ignored.
--no-config
Disable automatic loading of the configuration file.
--no-lock
Disable auto discovery of the lock file.
--no-remote
Do not resolve remote modules.
--recursive, -r
Include all workspace members.
--reload, -r
Reload source code cache (recompile TypeScript). With no value, reloads everything. Pass a comma-separated list of specifiers to reload only those modules; jsr:@ende/http/file-server,jsr:@ende/assert/equals reloads specific modules.
--unsafely-ignore-certificate-errors
DANGER: Disables verification of TLS certificates.
--update, -u
Update dependency versions.
--vendor
Toggles local vendor folder usage for remote modules.