Synopsis
The lb4 update
command runs inside a LoopBack 4 project and checks
dependencies against the current version of @loopback/cli
. By default, it
checks for exact match. Use --semver
option to check compatibility using
semver semantics.
lb4 update [options]
The key benefit of lb4 update
over npm update
is that lb4 update
honors
the collection of compatible LoopBack packages (and their dependencies) that are
released with the current lb4 command from @loopback/cli
.
If the command is run without a LoopBack 4 project, it prints the version of the
current CLI and versions of LoopBack packages that are released with the
@loopback/cli
. This is the same as lb4 -v
.
Options
--semver
: (Optional) Use semver semantics to check version compatibility
for project dependencies of LoopBack modules. Without this option, lb4 update
performs exact version match between the project dependency and the one from
running CLI template, for example, "@loopback/core": "^1.2.1"
is considered
different from "@loopback/core":"^1.2.2"
. The --semver
flag relaxes the
check to allow "@loopback/core": "^1.2.1"
to be compatible with
"@loopback/core": "^1.2.2"
(a new patch version), but not
"@loopback/core": "^2.0.0"
(a new major version).
Output
Assuming you have a project my-app
scaffolded with version 1.0.1
of
@loopback/cli
and you install a newer version (1.24.0
) of @loopback/cli
,
running lb4 update
against my-app
will produce the following output:
The project was originally generated by @loopback/cli@1.0.1.
The following dependencies are incompatible with @loopback/cli@1.24.0:
- @types/node: ^10.14.6 (cli ^10.17.3)
- @loopback/boot: ^1.2.7 (cli ^1.5.10)
- @loopback/build: ^1.5.4 (cli ^2.0.15)
- @loopback/core: ^1.7.0 (cli ^1.10.6)
- @loopback/repository: ^1.5.5 (cli ^1.15.3)
- @loopback/rest: ^1.11.2 (cli ^1.22.0)
- @loopback/testlab: ^1.2.9 (cli ^1.9.3)
- @loopback/service-proxy: ^1.1.10 (cli ^1.3.10)
? How do you want to proceed? Upgrade project dependencies
- Dependency @loopback/boot: ^1.2.7 => ^1.5.10
- Dependency @loopback/core: ^1.7.0 => ^1.10.6
- Dependency @loopback/repository: ^1.5.5 => ^1.15.3
- Dependency @loopback/rest: ^1.11.2 => ^1.22.0
- Dependency @loopback/service-proxy: ^1.1.10 => ^1.3.10
- DevDependency @loopback/build: ^1.5.4 => ^2.0.15
- DevDependency @loopback/testlab: ^1.2.9 => ^1.9.3
- DevDependency @types/node: ^10.14.6 => ^10.17.3
Upgrading dependencies may break the current project.
conflict package.json
? Overwrite package.json? overwrite
force package.json