npm-up v2.7.0
npm-up
Check the latest versions of dependencies on npm gracefully, and do whatever you want.
Installation
npm i npm-up -g
Features
- Much faseter than npm.
- Do not depend on a local npm, much smaller.
- Check the latest versions of dependencies either locally or gloablly, and update
package.json
.- dependencies
- devDependencies
- optionalDependencies
- Install latest modules.
- Reasonable warnings for inconsistency.
- Use a mirror registy to speed up, especially for Chinese users.
- Cache to speed up repeated operations.
- Designed for OCD.
Usage
Run
npm-up [options]
in a project directory with apackage.json
file. For example:npm-up -iw
. If no options are configured, it will only check the latest version and do nothing but display.Run
npm-up -g
to check globally npm packages.Run
npm-up -A
to check all projects in sub directories.
commands:
clean clean cache
dump dump cache
Options:
-V, --version output the version number
-g, --global Check global packages
-A, --All Check all projects in sub directories, depth is 1
-w, --writeBack Write updated version back to package.json
-i, --install Install the latest version of the packages
-l, --lock Use specific versions in package.json, with no ranges. (except *)
--lock-all Lock, even for * version
-a, --all Shortcut for -wil
-m, --mirror <mirror host or name> Use a mirror registry host
--no-cache Disable version cache
--no-warning Disable warning
-d, --dep Check dependencies only
-D, --dev Check devDependencies only
-O, --optional Check optionalDependencies only
-c, --cwd <cwd> Set current working directory
-L, --logLevel <level> Set loglevel for npm, default is error
-t, --tag <tag> Dist-tag used as the version to be updated
-e, --exclude <list> Excluded packages list, split by comma or space
-o, --only <list> Included packages list, split by comma or space
-p --exclude-locked Exclude all locked packages
-h, --help output usage information
Use a mirror registry
First of all, You can use something like
npm config set registry http://registry.npm.taobao.org
to set a npm registry globally to speed up npm's requests, such as version searching and package downloading, especially for Chinese users.
However, it may cause some trouble (you can't publish unless using -reg
every time, because a mirror is usually read-only).
In npm-up
- You can use a built-in host with name:
npm-up -m taobao # also suport cnpmjs, npm (official)
- or give a specific hostname
npm-up -m http://registry.npm.taobao.org
npm-up -m registry.npm.taobao.org # http:// is optional
For Chinese users, use
-m taobao
to fly up!
Version Patterns
Fully support semantic versions and tags. Eg:
*
^1.5.4
~2.3.0
>= 4.4.5
0.9.7
0.5.0-alpha1
'' //regard as *
latest // dist-tag
Notice that a ranges version may be overridden by Caret Ranges(^) when written back, and will be updated only when the latest version is greater than all the versions possible in the range.
>= 1.0.0 <= 1.5.4 // Version Range
1.2 - 2.3.4 // Hyphen Ranges
1.x // X-Ranges
- OCD design However, the semantic meaning of the ranges may somehow be ignored, because I just want the latest version.
- If the version declared in the
package.json
is not recognizable, the corresponding package will be excluded. - More info about version: semver
Rules
Take 3 versions about one package into consideration:
- Version declared in
package.json
. - Version of the package installed.
- The latest version of the package.
- Version declared in
If a package is not installed, only
package.json
will be updated, and the package itself won't be installed.If the version declared is
*
, it will not be overwritten, even when the flag--lock
is set. If you really want to change it, use--lock-all
flag.The prefix, such as
^ ~ > <
, of the version will be preserved when written back, unless flag--lock
is set.If an installed package's version is different from the version declared, there comes a warning.
Installed version is preferred.
Roadmap
- Use a config file to provide some persist options, like npmrc, we can have a real npmuprc.
License
MIT@Jingchen Zhao
4 years ago
7 years ago
7 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago