You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP →
Socket
Socket
Sign inDemoInstall

cipm

Package Overview
Dependencies
Maintainers
3
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.8.0 to 0.9.0

lib/config/lifecycle-opts.js

18

bin/cli.js

@@ -5,2 +5,3 @@ #!/usr/bin/env node

const config = require('../lib/config/npm-config.js')
const yargs = require('yargs')

@@ -16,9 +17,14 @@ const Installer = require('../index.js')

function cliMain () {
return new Installer(parseArgs()).run().then(details => {
console.error(`added ${details.pkgCount} packages in ${
parseArgs()
return config.fromNpm(process.argv)
.then(c => new Installer({
config: c,
log: require('npmlog')
}).run())
.then(
details => console.error(`added ${details.pkgCount} packages in ${
details.runTime / 1000
}s`)
}, err => {
console.error(`Error!\n${err.message}\n${err.stack}`)
})
}s`),
err => console.error(`cipm failed:\n${err.message}\n${err.stack}`)
)
}

@@ -25,0 +31,0 @@

@@ -5,2 +5,17 @@ # Change Log

<a name="0.9.0"></a>
# [0.9.0](https://github.com/zkat/cipm/compare/v0.8.0...v0.9.0) (2018-01-07)
### Bug Fixes
* **package:** add pacote to bundleDependencies ([#36](https://github.com/zkat/cipm/issues/36)) ([a69742e](https://github.com/zkat/cipm/commit/a69742e))
### Features
* **config:** allow injection of npm configs ([#35](https://github.com/zkat/cipm/issues/35)) ([1f5694b](https://github.com/zkat/cipm/commit/1f5694b))
<a name="0.8.0"></a>

@@ -7,0 +22,0 @@ # [0.8.0](https://github.com/zkat/cipm/compare/v0.7.2...v0.8.0) (2017-11-28)

@@ -6,10 +6,8 @@ 'use strict'

const binLink = require('bin-links')
const config = require('./lib/config.js')
const extract = require('./lib/extract.js')
const fs = require('graceful-fs')
const getPrefix = require('./lib/get-prefix.js')
const getPrefix = require('find-npm-prefix')
const lifecycle = require('npm-lifecycle')
const lockVerify = require('lock-verify')
const logi = require('npm-logical-tree')
const npmlog = require('npmlog')
const path = require('path')

@@ -20,2 +18,3 @@ const readPkgJson = BB.promisify(require('read-package-json'))

const readFileAsync = BB.promisify(fs.readFile)
const statAsync = BB.promisify(fs.stat)

@@ -25,2 +24,3 @@ class Installer {

this.opts = opts
this.config = opts.config

@@ -33,3 +33,3 @@ // Stats

// Misc
this.log = npmlog
this.log = this.opts.log || require('npmlog')
this.pkg = null

@@ -41,2 +41,3 @@ this.tree = null

run () {
const prefix = this.config.get('prefix')
return this.prepare()

@@ -46,12 +47,8 @@ .then(() => this.extractTree(this.tree))

.then(() => this.garbageCollect(this.tree))
.then(() => this.runScript('prepublish', this.pkg, this.prefix))
.then(() => this.runScript('prepare', this.pkg, this.prefix))
.then(() => {
extract.stopWorkers()
this.runTime = Date.now() - this.startTime
return this
}, e => {
extract.stopWorkers()
throw e
})
.then(() => this.runScript('prepublish', this.pkg, prefix))
.then(() => this.runScript('prepare', this.pkg, prefix))
.then(() => this.teardown())
.then(() => { this.runTime = Date.now() - this.startTime })
.catch(err => { this.teardown(); throw err })
.then(() => this)
}

@@ -63,4 +60,8 @@

return (
this.opts.prefix
? BB.resolve(this.opts.prefix)
this.config.get('prefix') && this.config.get('global')
? BB.resolve(this.config.get('prefix'))
// There's some Specialâ„¢ logic around the `--prefix` config when it
// comes from a config file or env vs when it comes from the CLI
: process.argv.some(arg => arg.match(/--prefix/i))
? this.config.get('prefix')
: getPrefix(process.cwd())

@@ -80,8 +81,9 @@ )

})
.then(() => config(this.prefix, process.argv, this.pkg))
.then(conf => {
this.config = conf
.then(() => statAsync(
path.join(this.config.get('prefix'), 'node_modules')
).catch(err => { if (err.code !== 'ENOENT') { throw err } }))
.then(stat => {
return BB.join(
this.checkLock(),
rimraf(path.join(this.prefix, 'node_modules'))
stat && rimraf(path.join(this.config.get('prefix'), 'node_modules'))
)

@@ -94,5 +96,9 @@ }).then(() => {

teardown () {
return extract.stopWorkers()
}
checkLock () {
const pkg = this.pkg
const prefix = this.prefix
const prefix = this.config.get('prefix')
if (!pkg._shrinkwrap || !pkg._shrinkwrap.lockfileVersion) {

@@ -120,7 +126,8 @@ return BB.reject(

return tree.forEachAsync((dep, next) => {
if (dep.dev && this.config.config.production) { return }
const depPath = dep.path(this.prefix)
if (dep.dev && this.config.get('production')) { return }
const depPath = dep.path(this.config.get('prefix'))
// Process children first, then extract this child
return BB.join(
!dep.isRoot && extract.child(dep.name, dep, depPath, this.config),
!dep.isRoot &&
extract.child(dep.name, dep, depPath, this.config, this.opts),
next()

@@ -133,4 +140,4 @@ ).then(() => { !dep.isRoot && this.pkgCount++ })

return tree.forEachAsync((dep, next) => {
if (dep.dev && this.config.config.production) { return }
const depPath = dep.path(this.prefix)
if (dep.dev && this.config.get('production')) { return }
const depPath = dep.path(this.config.get('prefix'))
return readPkgJson(path.join(depPath, 'package.json'))

@@ -142,16 +149,14 @@ .then(pkg => {

.then(() => !dep.isRoot && binLink(pkg, depPath, false, {
force: this.config.config.force,
ignoreScripts: this.config.lifecycleOpts.ignoreScripts,
force: this.config.get('force'),
ignoreScripts: this.config.get('ignore-scripts'),
log: this.log,
name: pkg.name,
pkgId: pkg.name + '@' + pkg.version,
prefix: this.prefix,
prefixes: [this.prefix],
umask: this.config.config.umask
prefix: this.config.get('prefix'),
prefixes: [this.config.get('prefix')],
umask: this.config.get('umask')
}), e => {})
.then(() => this.runScript('install', pkg, depPath))
.then(() => this.runScript('postinstall', pkg, depPath))
.then(() => {
return this
})
.then(() => this)
.catch(e => {

@@ -173,3 +178,3 @@ if (dep.optional) {

tree,
this.prefix,
this.config.get('prefix'),
mark(tree, this.failedDeps)

@@ -184,6 +189,9 @@ )

runScript (stage, pkg, pkgPath) {
if (!this.config.lifecycleOpts.ignoreScripts && pkg.scripts && pkg.scripts[stage]) {
if (
!this.config.get('ignore-scripts') && pkg.scripts && pkg.scripts[stage]
) {
// TODO(mikesherov): remove pkg._id when npm-lifecycle no longer relies on it
pkg._id = pkg.name + '@' + pkg.version
return lifecycle(pkg, stage, pkgPath, this.config.lifecycleOpts)
const opts = this.config.toLifecycle()
return lifecycle(pkg, stage, pkgPath, opts)
}

@@ -194,2 +202,3 @@ return BB.resolve()

module.exports = Installer
module.exports.CipmConfig = require('./lib/config/npm-config.js').CipmConfig

@@ -196,0 +205,0 @@ function mark (tree, failed) {

@@ -6,3 +6,2 @@ 'use strict'

const npa = require('npm-package-arg')
const pacoteOpts = require('./pacote-opts.js')
const workerFarm = require('worker-farm')

@@ -25,9 +24,12 @@

child (name, child, childPath, opts) {
child (name, child, childPath, config, opts) {
if (child.bundled) return BB.resolve()
const spec = npa.resolve(name, child.resolved || child.version)
const childOpts = pacoteOpts(opts, {
integrity: child.integrity
})
const spec = npa.resolve(name, child.version)
const childOpts = config.toPacote(Object.assign({
integrity: child.integrity,
resolved: child.resolved
}, {
dirPacker: opts.dirPacker
}))
const args = [spec, childPath, childOpts]

@@ -38,3 +40,8 @@ return BB.fromNode((cb) => {

const spec = typeof args[0] === 'string' ? npa(args[0]) : args[0]
childOpts.loglevel = opts.log.level
if (spec.registry || spec.type === 'remote') {
// We can't serialize these options
childOpts.config = null
childOpts.log = null
childOpts.dirPacker = null
// workers will run things in parallel!

@@ -41,0 +48,0 @@ launcher = this._workers

{
"_from": "abbrev@1",
"_args": [
[
"abbrev@1.1.1",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "abbrev@1.1.1",
"_id": "abbrev@1.1.1",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "abbrev@1",
"raw": "abbrev@1.1.1",
"name": "abbrev",
"escapedName": "abbrev",
"rawSpec": "1",
"rawSpec": "1.1.1",
"saveSpec": null,
"fetchSpec": "1"
"fetchSpec": "1.1.1"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"_shasum": "f8f2c887ad10bf67f634f005b6987fed3179aac8",
"_spec": "abbrev@1",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/nopt",
"_spec": "1.1.1",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -34,4 +39,2 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"deprecated": false,
"description": "Like ruby's abbrev module, but in js",

@@ -38,0 +41,0 @@ "devDependencies": {

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "asn1@0.2.3",

@@ -11,0 +10,0 @@ "_id": "asn1@0.2.3",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@0.2.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@0.2.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "asynckit@0.4.0",

@@ -11,0 +10,0 @@ "_id": "asynckit@0.4.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "aws-sign2@0.6.0",

@@ -11,0 +10,0 @@ "_id": "aws-sign2@0.6.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "aws4@1.6.0",

@@ -11,0 +10,0 @@ "_id": "aws4@1.6.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "bcrypt-pbkdf@1.0.1",

@@ -11,0 +10,0 @@ "_id": "bcrypt-pbkdf@1.0.1",

{
"_args": [
[
"bin-links@1.1.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "bin-links@1.1.0",

@@ -19,8 +25,6 @@ "_id": "bin-links@1.1.0",

"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/bin-links/-/bin-links-1.1.0.tgz",
"_shasum": "e0a92cb57f01c4dc1088bca2bae6be110b9f64f9",
"_spec": "bin-links@1.1.0",
"_spec": "1.1.0",
"_where": "/Users/zkat/Documents/code/cipm",

@@ -33,3 +37,2 @@ "author": {

},
"bundleDependencies": false,
"dependencies": {

@@ -43,3 +46,2 @@ "bluebird": "^3.5.0",

},
"deprecated": false,
"description": "JavaScript package binary linker",

@@ -46,0 +48,0 @@ "devDependencies": {

{
"_from": "block-stream@*",
"_args": [
[
"block-stream@0.0.9",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "block-stream@0.0.9",
"_id": "block-stream@0.0.9",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "block-stream@*",
"raw": "block-stream@0.0.9",
"name": "block-stream",
"escapedName": "block-stream",
"rawSpec": "*",
"rawSpec": "0.0.9",
"saveSpec": null,
"fetchSpec": "*"
"fetchSpec": "0.0.9"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"_shasum": "13ebfe778a03205cfe03751481ebb4b3300c126a",
"_spec": "block-stream@*",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/node-gyp/node_modules/tar",
"_spec": "0.0.9",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -35,7 +40,5 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"dependencies": {
"inherits": "~2.0.0"
},
"deprecated": false,
"description": "a stream of blocks",

@@ -42,0 +45,0 @@ "devDependencies": {

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "boom@2.10.1",

@@ -11,0 +10,0 @@ "_id": "boom@2.10.1",

{
"_from": "byline@^5.0.0",
"_args": [
[
"byline@5.0.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "byline@5.0.0",
"_id": "byline@5.0.0",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "byline@^5.0.0",
"raw": "byline@5.0.0",
"name": "byline",
"escapedName": "byline",
"rawSpec": "^5.0.0",
"rawSpec": "5.0.0",
"saveSpec": null,
"fetchSpec": "^5.0.0"
"fetchSpec": "5.0.0"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz",
"_shasum": "741c5216468eadc457b03410118ad77de8c1ddb1",
"_spec": "byline@^5.0.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/npm-lifecycle",
"_spec": "5.0.0",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -33,4 +38,2 @@ "name": "John Hewson"

},
"bundleDependencies": false,
"deprecated": false,
"description": "simple line-by-line stream reader",

@@ -37,0 +40,0 @@ "devDependencies": {

@@ -28,4 +28,4 @@ {

"/standard-version/yargs",
"/yargs",
"/yargs-parser"
"/yargs-parser",
"/yargs/yargs-parser"
],

@@ -32,0 +32,0 @@ "_resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "caseless@0.11.0",

@@ -11,0 +10,0 @@ "_id": "caseless@0.11.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "combined-stream@1.0.5",

@@ -11,0 +10,0 @@ "_id": "combined-stream@1.0.5",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "commander@2.11.0",

@@ -11,0 +10,0 @@ "_id": "commander@2.11.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "cryptiles@2.0.5",

@@ -11,0 +10,0 @@ "_id": "cryptiles@2.0.5",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@1.0.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "dashdash@1.14.1",

@@ -11,0 +10,0 @@ "_id": "dashdash@1.14.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "delayed-stream@1.0.0",

@@ -11,0 +10,0 @@ "_id": "delayed-stream@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "ecc-jsbn@0.1.1",

@@ -11,0 +10,0 @@ "_id": "ecc-jsbn@0.1.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "extend@3.0.1",

@@ -11,0 +10,0 @@ "_id": "extend@3.0.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "extsprintf@1.3.0",

@@ -11,0 +10,0 @@ "_id": "extsprintf@1.3.0",

@@ -26,3 +26,4 @@ {

"/pkg-conf",
"/read-pkg-up"
"/read-pkg-up",
"/yargs"
],

@@ -29,0 +30,0 @@ "_resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "forever-agent@0.6.1",

@@ -11,0 +10,0 @@ "_id": "forever-agent@0.6.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "form-data@2.1.4",

@@ -11,0 +10,0 @@ "_id": "form-data@2.1.4",

{
"_from": "fstream@^1.0.0",
"_args": [
[
"fstream@1.0.11",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "fstream@1.0.11",
"_id": "fstream@1.0.11",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "fstream@^1.0.0",
"raw": "fstream@1.0.11",
"name": "fstream",
"escapedName": "fstream",
"rawSpec": "^1.0.0",
"rawSpec": "1.0.11",
"saveSpec": null,
"fetchSpec": "^1.0.0"
"fetchSpec": "1.0.11"
},

@@ -24,5 +30,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
"_shasum": "5c1fb1f117477114f0632a0eb4b71b3cb0fd3171",
"_spec": "fstream@^1.0.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/node-gyp",
"_spec": "1.0.11",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -36,3 +41,2 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"dependencies": {

@@ -44,3 +48,2 @@ "graceful-fs": "^4.1.2",

},
"deprecated": false,
"description": "Advanced file system stream things",

@@ -47,0 +50,0 @@ "devDependencies": {

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "generate-function@2.0.0",

@@ -11,0 +10,0 @@ "_id": "generate-function@2.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "generate-object-property@1.2.0",

@@ -11,0 +10,0 @@ "_id": "generate-object-property@1.2.0",

{
"_from": "gentle-fs@^2.0.0",
"_args": [
[
"gentle-fs@2.0.1",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "gentle-fs@2.0.1",
"_id": "gentle-fs@2.0.1",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "gentle-fs@^2.0.0",
"raw": "gentle-fs@2.0.1",
"name": "gentle-fs",
"escapedName": "gentle-fs",
"rawSpec": "^2.0.0",
"rawSpec": "2.0.1",
"saveSpec": null,
"fetchSpec": "^2.0.0"
"fetchSpec": "2.0.1"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/gentle-fs/-/gentle-fs-2.0.1.tgz",
"_shasum": "585cfd612bfc5cd52471fdb42537f016a5ce3687",
"_spec": "gentle-fs@^2.0.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/bin-links",
"_spec": "2.0.1",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -33,3 +38,2 @@ "name": "Mike Sherov"

},
"bundleDependencies": false,
"dependencies": {

@@ -45,3 +49,2 @@ "aproba": "^1.1.2",

},
"deprecated": false,
"description": "Gentle Filesystem operations",

@@ -48,0 +51,0 @@ "devDependencies": {

@@ -25,3 +25,4 @@ {

"_requiredBy": [
"/execa"
"/execa",
"/pacote"
],

@@ -28,0 +29,0 @@ "_resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@1.0.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "getpass@0.1.7",

@@ -11,0 +10,0 @@ "_id": "getpass@0.1.7",

@@ -29,2 +29,3 @@ {

"/globby",
"/node-gyp",
"/pacote",

@@ -31,0 +32,0 @@ "/read-package-json",

@@ -35,2 +35,3 @@ {

"/fs-write-stream-atomic",
"/fstream",
"/gentle-fs",

@@ -40,2 +41,3 @@ "/load-json-file",

"/meow/path-type",
"/node-gyp",
"/npm-lifecycle",

@@ -42,0 +44,0 @@ "/read-cmd-shim",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "har-validator@2.0.6",

@@ -11,0 +10,0 @@ "_id": "har-validator@2.0.6",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "hawk@3.1.3",

@@ -11,0 +10,0 @@ "_id": "hawk@3.1.3",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "hoek@2.16.3",

@@ -11,0 +10,0 @@ "_id": "hoek@2.16.3",

@@ -26,4 +26,4 @@ {

"/get-pkg-repo",
"/lock-verify/npm-package-arg",
"/normalize-package-data",
"/npm-package-arg",
"/pacote/normalize-package-data",

@@ -30,0 +30,0 @@ "/weallcontribute"

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "http-signature@1.1.1",

@@ -11,0 +10,0 @@ "_id": "http-signature@1.1.1",

@@ -25,2 +25,3 @@ {

"_requiredBy": [
"/block-stream",
"/concat-stream",

@@ -30,3 +31,5 @@ "/duplexify",

"/from2",
"/fstream",
"/glob",
"/node-gyp/tar",
"/parallel-transform",

@@ -33,0 +36,0 @@ "/pumpify",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "is-my-json-valid@2.16.1",

@@ -11,0 +10,0 @@ "_id": "is-my-json-valid@2.16.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "is-property@1.0.2",

@@ -11,0 +10,0 @@ "_id": "is-property@1.0.2",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "is-typedarray@1.0.0",

@@ -11,0 +10,0 @@ "_id": "is-typedarray@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "isstream@0.1.2",

@@ -11,0 +10,0 @@ "_id": "isstream@0.1.2",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "jsbn@0.1.1",

@@ -11,0 +10,0 @@ "_id": "jsbn@0.1.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "json-schema@0.2.3",

@@ -11,0 +10,0 @@ "_id": "json-schema@0.2.3",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "json-stringify-safe@5.0.1",

@@ -11,0 +10,0 @@ "_id": "json-stringify-safe@5.0.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "jsonpointer@4.0.1",

@@ -11,0 +10,0 @@ "_id": "jsonpointer@4.0.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@1.0.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "jsprim@1.4.1",

@@ -11,0 +10,0 @@ "_id": "jsprim@1.4.1",

{
"_from": "npm-package-arg@^5.1.2",
"_args": [
[
"npm-package-arg@5.1.2",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "npm-package-arg@5.1.2",
"_id": "npm-package-arg@5.1.2",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "npm-package-arg@^5.1.2",
"raw": "npm-package-arg@5.1.2",
"name": "npm-package-arg",
"escapedName": "npm-package-arg",
"rawSpec": "^5.1.2",
"rawSpec": "5.1.2",
"saveSpec": null,
"fetchSpec": "^5.1.2"
"fetchSpec": "5.1.2"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-5.1.2.tgz",
"_shasum": "fb18d17bb61e60900d6312619919bd753755ab37",
"_spec": "npm-package-arg@^5.1.2",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/lock-verify",
"_spec": "5.1.2",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -35,3 +40,2 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"dependencies": {

@@ -43,3 +47,2 @@ "hosted-git-info": "^2.4.2",

},
"deprecated": false,
"description": "Parse the things that can be arguments to `npm install`",

@@ -46,0 +49,0 @@ "devDependencies": {

@@ -25,3 +25,4 @@ {

"_requiredBy": [
"/lock-verify"
"/lock-verify",
"/lock-verify/npm-package-arg"
],

@@ -28,0 +29,0 @@ "_resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz",

@@ -13,3 +13,7 @@ {

"_location": "/lock-verify",
"_phantomChildren": {},
"_phantomChildren": {
"hosted-git-info": "2.4.2",
"osenv": "0.1.4",
"validate-npm-package-name": "3.0.0"
},
"_requested": {

@@ -16,0 +20,0 @@ "type": "version",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "mime-db@1.29.0",

@@ -11,0 +10,0 @@ "_id": "mime-db@1.29.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "mime-types@2.1.16",

@@ -11,0 +10,0 @@ "_id": "mime-types@2.1.16",

@@ -29,2 +29,3 @@ {

"/ignore-walk",
"/node-gyp",
"/pacote"

@@ -31,0 +32,0 @@ ],

@@ -30,4 +30,6 @@ {

"/eslint",
"/fstream",
"/gentle-fs",
"/move-concurrently",
"/node-gyp",
"/tacks",

@@ -34,0 +36,0 @@ "/tar",

{
"_from": "tar@^2.0.0",
"_args": [
[
"tar@2.2.1",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "tar@2.2.1",
"_id": "tar@2.2.1",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "tar@^2.0.0",
"raw": "tar@2.2.1",
"name": "tar",
"escapedName": "tar",
"rawSpec": "^2.0.0",
"rawSpec": "2.2.1",
"saveSpec": null,
"fetchSpec": "^2.0.0"
"fetchSpec": "2.2.1"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
"_shasum": "8e4d2a256c0e2185c6b18ad694aec968b83cb1d1",
"_spec": "tar@^2.0.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/node-gyp",
"_spec": "2.2.1",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -35,3 +40,2 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"dependencies": {

@@ -42,3 +46,2 @@ "block-stream": "*",

},
"deprecated": false,
"description": "tar for node",

@@ -45,0 +48,0 @@ "devDependencies": {

{
"_from": "node-gyp@^3.6.2",
"_args": [
[
"node-gyp@3.6.2",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "node-gyp@3.6.2",
"_id": "node-gyp@3.6.2",

@@ -13,10 +19,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "node-gyp@^3.6.2",
"raw": "node-gyp@3.6.2",
"name": "node-gyp",
"escapedName": "node-gyp",
"rawSpec": "^3.6.2",
"rawSpec": "3.6.2",
"saveSpec": null,
"fetchSpec": "^3.6.2"
"fetchSpec": "3.6.2"
},

@@ -27,5 +33,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
"_shasum": "9bfbe54562286284838e750eac05295853fa1c60",
"_spec": "node-gyp@^3.6.2",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/npm-lifecycle",
"_spec": "3.6.2",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -42,3 +47,2 @@ "name": "Nathan Rajlich",

},
"bundleDependencies": false,
"dependencies": {

@@ -59,3 +63,2 @@ "fstream": "^1.0.0",

},
"deprecated": false,
"description": "Node.js native addon build tool",

@@ -62,0 +65,0 @@ "devDependencies": {

{
"_from": "nopt@2 || 3",
"_args": [
[
"nopt@3.0.6",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "nopt@3.0.6",
"_id": "nopt@3.0.6",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "nopt@2 || 3",
"raw": "nopt@3.0.6",
"name": "nopt",
"escapedName": "nopt",
"rawSpec": "2 || 3",
"rawSpec": "3.0.6",
"saveSpec": null,
"fetchSpec": "2 || 3"
"fetchSpec": "3.0.6"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
"_shasum": "c6465dbf08abcd4db359317f79ac68a646b28ff9",
"_spec": "nopt@2 || 3",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/node-gyp",
"_spec": "3.0.6",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -38,7 +43,5 @@ "name": "Isaac Z. Schlueter",

},
"bundleDependencies": false,
"dependencies": {
"abbrev": "1"
},
"deprecated": false,
"description": "Option parsing for Node, supporting types, shorthands, etc. Used by npm.",

@@ -45,0 +48,0 @@ "devDependencies": {

{
"_from": "resolve-from@^4.0.0",
"_args": [
[
"resolve-from@4.0.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "resolve-from@4.0.0",
"_id": "resolve-from@4.0.0",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "resolve-from@^4.0.0",
"raw": "resolve-from@4.0.0",
"name": "resolve-from",
"escapedName": "resolve-from",
"rawSpec": "^4.0.0",
"rawSpec": "4.0.0",
"saveSpec": null,
"fetchSpec": "^4.0.0"
"fetchSpec": "4.0.0"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
"_shasum": "4abcd852ad32dd7baabfe9b40e00a36db5f392e6",
"_spec": "resolve-from@^4.0.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/npm-lifecycle",
"_spec": "4.0.0",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -35,4 +40,2 @@ "name": "Sindre Sorhus",

},
"bundleDependencies": false,
"deprecated": false,
"description": "Resolve the path of a module like `require.resolve()` but from a given path",

@@ -39,0 +42,0 @@ "devDependencies": {

{
"_from": "npm-lifecycle@latest",
"_args": [
[
"npm-lifecycle@2.0.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "npm-lifecycle@2.0.0",
"_id": "npm-lifecycle@2.0.0",

@@ -11,18 +17,16 @@ "_inBundle": false,

"_requested": {
"type": "tag",
"type": "version",
"registry": true,
"raw": "npm-lifecycle@latest",
"raw": "npm-lifecycle@2.0.0",
"name": "npm-lifecycle",
"escapedName": "npm-lifecycle",
"rawSpec": "latest",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "latest"
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-2.0.0.tgz",
"_shasum": "d66fba59e7098dbb5862df66c0d81ed75108f1c6",
"_spec": "npm-lifecycle@latest",
"_spec": "2.0.0",
"_where": "/Users/zkat/Documents/code/cipm",

@@ -35,3 +39,2 @@ "author": {

},
"bundleDependencies": false,
"dependencies": {

@@ -47,3 +50,2 @@ "byline": "^5.0.0",

},
"deprecated": false,
"description": "JavaScript package lifecycle hook runner",

@@ -50,0 +52,0 @@ "devDependencies": {

{
"_args": [
[
"npm-logical-tree@1.2.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "npm-logical-tree@1.2.0",

@@ -19,8 +25,6 @@ "_id": "npm-logical-tree@1.2.0",

"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/npm-logical-tree/-/npm-logical-tree-1.2.0.tgz",
"_shasum": "cd1926e80e593c56978fe446d67154752be8a1aa",
"_spec": "npm-logical-tree@1.2.0",
"_spec": "1.2.0",
"_where": "/Users/zkat/Documents/code/cipm",

@@ -34,3 +38,2 @@ "author": {

},
"bundleDependencies": false,
"config": {

@@ -50,3 +53,2 @@ "nyc": {

],
"deprecated": false,
"description": "Calculate 'logical' trees from a package.json + package-lock",

@@ -53,0 +55,0 @@ "devDependencies": {

{
"_from": "hosted-git-info@^2.5.0",
"_args": [
[
"hosted-git-info@2.5.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "hosted-git-info@2.5.0",
"_id": "hosted-git-info@2.5.0",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "hosted-git-info@^2.5.0",
"raw": "hosted-git-info@2.5.0",
"name": "hosted-git-info",
"escapedName": "hosted-git-info",
"rawSpec": "^2.5.0",
"rawSpec": "2.5.0",
"saveSpec": null,
"fetchSpec": "^2.5.0"
"fetchSpec": "2.5.0"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz",
"_shasum": "6d60e34b3abbc8313062c3b798ef8d901a07af3c",
"_spec": "hosted-git-info@^2.5.0",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/npm-package-arg",
"_spec": "2.5.0",
"_where": "/Users/zkat/Documents/code/cipm",
"author": {

@@ -35,4 +40,2 @@ "name": "Rebecca Turner",

},
"bundleDependencies": false,
"deprecated": false,
"description": "Provides metadata and conversions from repository urls for Github, Bitbucket and Gitlab",

@@ -39,0 +42,0 @@ "devDependencies": {

{
"_from": "semver@^5.4.1",
"_args": [
[
"semver@5.4.1",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "semver@5.4.1",
"_id": "semver@5.4.1",

@@ -9,10 +15,10 @@ "_inBundle": false,

"_requested": {
"type": "range",
"type": "version",
"registry": true,
"raw": "semver@^5.4.1",
"raw": "semver@5.4.1",
"name": "semver",
"escapedName": "semver",
"rawSpec": "^5.4.1",
"rawSpec": "5.4.1",
"saveSpec": null,
"fetchSpec": "^5.4.1"
"fetchSpec": "5.4.1"
},

@@ -23,5 +29,4 @@ "_requiredBy": [

"_resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz",
"_shasum": "e059c09d8571f0540823733433505d3a2f00b18e",
"_spec": "semver@^5.4.1",
"_where": "/Users/zkat/Documents/code/cipm/node_modules/npm-package-arg",
"_spec": "5.4.1",
"_where": "/Users/zkat/Documents/code/cipm",
"bin": {

@@ -33,4 +38,2 @@ "semver": "./bin/semver"

},
"bundleDependencies": false,
"deprecated": false,
"description": "The semantic version parser used by npm.",

@@ -37,0 +40,0 @@ "devDependencies": {

{
"_args": [
[
"npm-package-arg@6.0.0",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "npm-package-arg@6.0.0",

@@ -19,8 +25,8 @@ "_id": "npm-package-arg@6.0.0",

"_requiredBy": [
"#USER",
"/"
"/",
"/npm-pick-manifest",
"/pacote"
],
"_resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.0.0.tgz",
"_shasum": "8cce04b49d3f9faec3f56b0fe5f4391aeb9d2fac",
"_spec": "npm-package-arg@6.0.0",
"_spec": "6.0.0",
"_where": "/Users/zkat/Documents/code/cipm",

@@ -35,3 +41,2 @@ "author": {

},
"bundleDependencies": false,
"dependencies": {

@@ -43,3 +48,2 @@ "hosted-git-info": "^2.5.0",

},
"deprecated": false,
"description": "Parse the things that can be arguments to `npm install`",

@@ -46,0 +50,0 @@ "devDependencies": {

@@ -25,3 +25,4 @@ {

"_requiredBy": [
"/"
"/",
"/node-gyp"
],

@@ -28,0 +29,0 @@ "_resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "oauth-sign@0.8.2",

@@ -11,0 +10,0 @@ "_id": "oauth-sign@0.8.2",

@@ -25,2 +25,4 @@ {

"_requiredBy": [
"/lock-verify/npm-package-arg",
"/node-gyp",
"/npm-package-arg",

@@ -27,0 +29,0 @@ "/pacote"

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "pinkie-promise@2.0.1",

@@ -11,0 +10,0 @@ "_id": "pinkie-promise@2.0.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "pinkie@2.0.4",

@@ -11,0 +10,0 @@ "_id": "pinkie@2.0.4",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "punycode@1.4.1",

@@ -11,0 +10,0 @@ "_id": "punycode@1.4.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "qs@6.3.2",

@@ -11,0 +10,0 @@ "_id": "qs@6.3.2",

@@ -26,4 +26,3 @@ {

"/@iarna/cli/yargs",
"/standard-version/yargs",
"/yargs"
"/standard-version/yargs"
],

@@ -30,0 +29,0 @@ "_resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "request@2.79.0",

@@ -27,3 +26,4 @@ "_id": "request@2.79.0",

"_requiredBy": [
"/coveralls"
"/coveralls",
"/node-gyp"
],

@@ -30,0 +30,0 @@ "_resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",

@@ -30,3 +30,5 @@ {

"/fs-vacuum",
"/fstream",
"/move-concurrently",
"/node-gyp",
"/tacks"

@@ -33,0 +35,0 @@ ],

@@ -28,5 +28,4 @@ {

"/git-semver-tags",
"/node-gyp",
"/normalize-package-data",
"/npm-package-arg",
"/npm-pick-manifest",
"/package-json",

@@ -33,0 +32,0 @@ "/semver-diff",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "sntp@1.0.9",

@@ -11,0 +10,0 @@ "_id": "sntp@1.0.9",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@1.0.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "sshpk@1.13.1",

@@ -11,0 +10,0 @@ "_id": "sshpk@1.13.1",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "stringstream@0.0.5",

@@ -11,0 +10,0 @@ "_id": "stringstream@0.0.5",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "tough-cookie@2.3.2",

@@ -11,0 +10,0 @@ "_id": "tough-cookie@2.3.2",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "tunnel-agent@0.4.3",

@@ -11,0 +10,0 @@ "_id": "tunnel-agent@0.4.3",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "tweetnacl@0.14.5",

@@ -11,0 +10,0 @@ "_id": "tweetnacl@0.14.5",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "uuid@3.1.0",

@@ -11,0 +10,0 @@ "_id": "uuid@3.1.0",

@@ -25,2 +25,3 @@ {

"_requiredBy": [
"/lock-verify/npm-package-arg",
"/npm-package-arg"

@@ -27,0 +28,0 @@ ],

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "assert-plus@1.0.0",

@@ -11,0 +10,0 @@ "_id": "assert-plus@1.0.0",

@@ -8,3 +8,2 @@ {

],
"_development": true,
"_from": "verror@1.10.0",

@@ -11,0 +10,0 @@ "_id": "verror@1.10.0",

@@ -27,2 +27,3 @@ {

"/execa/cross-spawn",
"/node-gyp",
"/term-size/cross-spawn"

@@ -29,0 +30,0 @@ ],

{
"_args": [
[
"worker-farm@1.5.2",
"/Users/zkat/Documents/code/cipm"
]
],
"_from": "worker-farm@1.5.2",

@@ -19,8 +25,6 @@ "_id": "worker-farm@1.5.2",

"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.5.2.tgz",
"_shasum": "32b312e5dc3d5d45d79ef44acc2587491cd729ae",
"_spec": "worker-farm@1.5.2",
"_spec": "1.5.2",
"_where": "/Users/zkat/Documents/code/cipm",

@@ -33,3 +37,2 @@ "authors": [

},
"bundleDependencies": false,
"dependencies": {

@@ -39,3 +42,2 @@ "errno": "^0.1.4",