Reputation: 1149
Would someone please explain the difference between ng update
in Angular 6 and npm update
?
Upvotes: 36
Views: 14206
Reputation: 19411
ng update
does more than npm update
ng update
will update your dependencies (same as npm update
), but in addition to that, it can also run update-schematics: library authors may include such schematics to automatically update your code (i.e. your typescript) files during the update process: i.e. they can fix breaking changes directly in your code.
From ng-update: Library Developers:
Libraries are responsible for defining their own update schematics. The ng update tool will update the package.json, and if it detects the "ng-update" key in package.json of the library, will run the update schematic on it (with version information metadata).
If a library does not define the "ng-update" key in their package.json, they are considered not supporting the update workflow and ng update is basically equivalent to npm install.
When ng update
has finished:
package.json
file will include the updated versionsnode_modules
folderUpvotes: 3
Reputation: 8898
ng update: Updates the current application to latest versions.
Just like Web and the entire web ecosystem, Angular is continuously improving. Angular balances continuous improvement with a strong focus on stability and making updates easy. Keeping your Angular app up-to-date enables you to take advantage of leading-edge new features, as well as optimizations and bug fixes.
This document contains information and resources to help you keep your Angular apps and libraries up-to-date.
npm update: This command will update all the packages listed to the latest version (specified by the tag config), respecting semver.
It will also install missing packages. As with all commands that install packages, the --dev flag will cause devDependencies to be processed as well.
If the -g flag is specified, this command will update globally installed packages.
If no package name is specified, all packages in the specified location (global or local) will be updated.
As of [email protected], the npm update will only inspect top-level packages. Prior versions of npm would also recursively inspect all dependencies. To get the old behavior, use npm --depth 9999 update.
As of [email protected], the npm update will change package.json to save the new version as the minimum required dependency. To get the old behavior, use npm update --no-save.
sources:
https://github.com/angular/angular-cli/wiki/update
https://docs.npmjs.com/cli/update
Upvotes: 15