Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/th507/npm-shrinkwrap-install
Automatic synchronise shrinkwrap file with package install/update/uninstall.
https://github.com/th507/npm-shrinkwrap-install
Last synced: 2 months ago
JSON representation
Automatic synchronise shrinkwrap file with package install/update/uninstall.
- Host: GitHub
- URL: https://github.com/th507/npm-shrinkwrap-install
- Owner: th507
- License: mit
- Created: 2015-08-18T02:51:32.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-08-18T05:15:45.000Z (over 9 years ago)
- Last Synced: 2024-10-07T22:37:09.395Z (3 months ago)
- Language: JavaScript
- Homepage:
- Size: 129 KB
- Stars: 14
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-github-star - npm-shrinkwrap-install
README
# npm-shrinkwrap-install
Automatic synchronise shrinkwrap file with package install/update/uninstall.
# Install
```bash
$ npm install npm-shrinkwrap-install -g
```This is a CLI-only package (for now).
Require Node.js >= 0.11, or iojs >= 1.0
# Usage
## Install/Update a package```bash
$ npm-install babel@latest --save
```You could manually alter the version in package.json and run `npm-install` as well.
**Notice:**
Before updating shrinkwrap, the script will try to verify node_modules content with your package.json. Which means:
- Any package not included in `dependencies` will be pruned. So it is mandatory to use `--save` when installing new packages.
- Any package with non-strict version description (^, ~, 0.2.x, \*, latest) in package.json will be updated. If you which to opt out this automatical update check, just use a strict version like 0.2.3.## Uninstall a package
```bash
$ npm-uninstall babel --save
```Shrinkwrap file will be automatically in sync with your dependencies in package.json.
**Notice:**
If `--save` is omitted, the script will generate an error since node_modules content does not agree with your package.json.
## Create shrinkwrap file manually
```bash
$ npm-shrinkwrap
```# Commands and Aliases
## Install
`npm-install`
`npm-i`Accepts all arguments for `npm install`
## Uninstall
`npm-uninstall`
`npm-un`
`npm-remove`
`npm-rm`
`npm-r`Accepts all arguments for `npm uninstall`
## Shrinkwrap
`npm-shrinkwrap`Accepts all arguments for Uber's [npm-shrinkwrap](http://github.com/uber/npm-shrinkwrap)
# Credit
This script is largely based on Uber's [npm-shrinkwrap](http://github.com/uber/npm-shrinkwrap). At the time of the writing, their tool does not support [scoped package](https://docs.npmjs.com/misc/scope). A [pull-request](https://github.com/uber/npm-shrinkwrap/pull/80) is created to rectify this issue and yet to be accepted.
As a temporary measure, I've forked their project and applied my patch to support scoped package: [@th507/npm-shrinkwrap](https://www.npmjs.com/package/@th507/npm-shrinkwrap). `npm-shrinkwrap-install` is currently dependent upon @th507/npm-shrinkwrap.
# License
Copyright (c) 2015 Jingwei "John" Liu
Licensed under the MIT license.