Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKat Marchán <kzm@sykosomatic.org>2015-12-02 02:06:08 +0300
committerJames M Snell <jasnell@gmail.com>2015-12-23 19:38:33 +0300
commit810f76e44062888a15a4bfc44f6bdddc43a29d7b (patch)
tree38fba1cfaa3b720c2787d9b33e0d302b42b9856a
parent88e8d93e148003468075e242b9d3664187b4741d (diff)
deps: upgrade to npm 2.14.12
PR-URL: https://github.com/nodejs/node/pull/4110 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
-rw-r--r--deps/npm/.travis.yml4
-rw-r--r--deps/npm/AUTHORS4
-rw-r--r--deps/npm/CHANGELOG.md165
-rw-r--r--deps/npm/LICENSE34
-rw-r--r--deps/npm/doc/cli/npm-start.md8
-rw-r--r--deps/npm/doc/files/npm-folders.md2
-rw-r--r--deps/npm/doc/misc/npm-scripts.md2
-rw-r--r--deps/npm/html/doc/README.html4
-rw-r--r--deps/npm/html/doc/api/npm-bin.html2
-rw-r--r--deps/npm/html/doc/api/npm-bugs.html2
-rw-r--r--deps/npm/html/doc/api/npm-cache.html2
-rw-r--r--deps/npm/html/doc/api/npm-commands.html2
-rw-r--r--deps/npm/html/doc/api/npm-config.html2
-rw-r--r--deps/npm/html/doc/api/npm-deprecate.html2
-rw-r--r--deps/npm/html/doc/api/npm-docs.html2
-rw-r--r--deps/npm/html/doc/api/npm-edit.html2
-rw-r--r--deps/npm/html/doc/api/npm-explore.html2
-rw-r--r--deps/npm/html/doc/api/npm-help-search.html2
-rw-r--r--deps/npm/html/doc/api/npm-init.html2
-rw-r--r--deps/npm/html/doc/api/npm-install.html2
-rw-r--r--deps/npm/html/doc/api/npm-link.html2
-rw-r--r--deps/npm/html/doc/api/npm-load.html2
-rw-r--r--deps/npm/html/doc/api/npm-ls.html2
-rw-r--r--deps/npm/html/doc/api/npm-outdated.html2
-rw-r--r--deps/npm/html/doc/api/npm-owner.html2
-rw-r--r--deps/npm/html/doc/api/npm-pack.html2
-rw-r--r--deps/npm/html/doc/api/npm-ping.html2
-rw-r--r--deps/npm/html/doc/api/npm-prefix.html2
-rw-r--r--deps/npm/html/doc/api/npm-prune.html2
-rw-r--r--deps/npm/html/doc/api/npm-publish.html2
-rw-r--r--deps/npm/html/doc/api/npm-rebuild.html2
-rw-r--r--deps/npm/html/doc/api/npm-repo.html2
-rw-r--r--deps/npm/html/doc/api/npm-restart.html2
-rw-r--r--deps/npm/html/doc/api/npm-root.html2
-rw-r--r--deps/npm/html/doc/api/npm-run-script.html2
-rw-r--r--deps/npm/html/doc/api/npm-search.html2
-rw-r--r--deps/npm/html/doc/api/npm-shrinkwrap.html2
-rw-r--r--deps/npm/html/doc/api/npm-start.html2
-rw-r--r--deps/npm/html/doc/api/npm-stop.html2
-rw-r--r--deps/npm/html/doc/api/npm-submodule.html45
-rw-r--r--deps/npm/html/doc/api/npm-tag.html2
-rw-r--r--deps/npm/html/doc/api/npm-test.html2
-rw-r--r--deps/npm/html/doc/api/npm-uninstall.html2
-rw-r--r--deps/npm/html/doc/api/npm-unpublish.html2
-rw-r--r--deps/npm/html/doc/api/npm-update.html2
-rw-r--r--deps/npm/html/doc/api/npm-version.html2
-rw-r--r--deps/npm/html/doc/api/npm-view.html2
-rw-r--r--deps/npm/html/doc/api/npm-whoami.html2
-rw-r--r--deps/npm/html/doc/api/npm.html4
-rw-r--r--deps/npm/html/doc/cli/npm-access.html2
-rw-r--r--deps/npm/html/doc/cli/npm-adduser.html2
-rw-r--r--deps/npm/html/doc/cli/npm-bin.html2
-rw-r--r--deps/npm/html/doc/cli/npm-bugs.html2
-rw-r--r--deps/npm/html/doc/cli/npm-build.html2
-rw-r--r--deps/npm/html/doc/cli/npm-bundle.html2
-rw-r--r--deps/npm/html/doc/cli/npm-cache.html2
-rw-r--r--deps/npm/html/doc/cli/npm-completion.html2
-rw-r--r--deps/npm/html/doc/cli/npm-config.html2
-rw-r--r--deps/npm/html/doc/cli/npm-dedupe.html2
-rw-r--r--deps/npm/html/doc/cli/npm-deprecate.html2
-rw-r--r--deps/npm/html/doc/cli/npm-dist-tag.html2
-rw-r--r--deps/npm/html/doc/cli/npm-docs.html2
-rw-r--r--deps/npm/html/doc/cli/npm-edit.html2
-rw-r--r--deps/npm/html/doc/cli/npm-explore.html2
-rw-r--r--deps/npm/html/doc/cli/npm-help-search.html2
-rw-r--r--deps/npm/html/doc/cli/npm-help.html2
-rw-r--r--deps/npm/html/doc/cli/npm-init.html2
-rw-r--r--deps/npm/html/doc/cli/npm-install-test.html45
-rw-r--r--deps/npm/html/doc/cli/npm-install.html2
-rw-r--r--deps/npm/html/doc/cli/npm-link.html2
-rw-r--r--deps/npm/html/doc/cli/npm-logout.html2
-rw-r--r--deps/npm/html/doc/cli/npm-ls.html4
-rw-r--r--deps/npm/html/doc/cli/npm-outdated.html2
-rw-r--r--deps/npm/html/doc/cli/npm-owner.html2
-rw-r--r--deps/npm/html/doc/cli/npm-pack.html2
-rw-r--r--deps/npm/html/doc/cli/npm-ping.html2
-rw-r--r--deps/npm/html/doc/cli/npm-prefix.html2
-rw-r--r--deps/npm/html/doc/cli/npm-prune.html2
-rw-r--r--deps/npm/html/doc/cli/npm-publish.html2
-rw-r--r--deps/npm/html/doc/cli/npm-rebuild.html2
-rw-r--r--deps/npm/html/doc/cli/npm-repo.html2
-rw-r--r--deps/npm/html/doc/cli/npm-restart.html2
-rw-r--r--deps/npm/html/doc/cli/npm-rm.html2
-rw-r--r--deps/npm/html/doc/cli/npm-root.html2
-rw-r--r--deps/npm/html/doc/cli/npm-run-script.html2
-rw-r--r--deps/npm/html/doc/cli/npm-search.html2
-rw-r--r--deps/npm/html/doc/cli/npm-shrinkwrap.html2
-rw-r--r--deps/npm/html/doc/cli/npm-star.html2
-rw-r--r--deps/npm/html/doc/cli/npm-stars.html2
-rw-r--r--deps/npm/html/doc/cli/npm-start.html9
-rw-r--r--deps/npm/html/doc/cli/npm-stop.html2
-rw-r--r--deps/npm/html/doc/cli/npm-submodule.html45
-rw-r--r--deps/npm/html/doc/cli/npm-tag.html2
-rw-r--r--deps/npm/html/doc/cli/npm-team.html2
-rw-r--r--deps/npm/html/doc/cli/npm-test.html2
-rw-r--r--deps/npm/html/doc/cli/npm-uninstall.html2
-rw-r--r--deps/npm/html/doc/cli/npm-unpublish.html2
-rw-r--r--deps/npm/html/doc/cli/npm-update.html2
-rw-r--r--deps/npm/html/doc/cli/npm-version.html2
-rw-r--r--deps/npm/html/doc/cli/npm-view.html2
-rw-r--r--deps/npm/html/doc/cli/npm-whoami.html2
-rw-r--r--deps/npm/html/doc/cli/npm.html10
-rw-r--r--deps/npm/html/doc/files/npm-folders.html4
-rw-r--r--deps/npm/html/doc/files/npm-global.html4
-rw-r--r--deps/npm/html/doc/files/npm-json.html2
-rw-r--r--deps/npm/html/doc/files/npmrc.html2
-rw-r--r--deps/npm/html/doc/files/package.json.html2
-rw-r--r--deps/npm/html/doc/index.html2
-rw-r--r--deps/npm/html/doc/misc/npm-coding-style.html2
-rw-r--r--deps/npm/html/doc/misc/npm-config.html2
-rw-r--r--deps/npm/html/doc/misc/npm-developers.html2
-rw-r--r--deps/npm/html/doc/misc/npm-disputes.html8
-rw-r--r--deps/npm/html/doc/misc/npm-faq.html4
-rw-r--r--deps/npm/html/doc/misc/npm-index.html2
-rw-r--r--deps/npm/html/doc/misc/npm-orgs.html2
-rw-r--r--deps/npm/html/doc/misc/npm-registry.html2
-rw-r--r--deps/npm/html/doc/misc/npm-scope.html2
-rw-r--r--deps/npm/html/doc/misc/npm-scripts.html4
-rw-r--r--deps/npm/html/doc/misc/removing-npm.html2
-rw-r--r--deps/npm/html/doc/misc/semver.html2
-rw-r--r--deps/npm/lib/access.js37
-rw-r--r--deps/npm/man/man1/npm-install-test.132
-rw-r--r--deps/npm/man/man1/npm-ls.12
-rw-r--r--deps/npm/man/man1/npm-start.18
-rw-r--r--deps/npm/man/man1/npm-submodule.141
-rw-r--r--deps/npm/man/man1/npm.12
-rw-r--r--deps/npm/man/man3/npm-submodule.341
-rw-r--r--deps/npm/man/man3/npm.32
-rw-r--r--deps/npm/man/man5/npm-folders.52
-rw-r--r--deps/npm/man/man5/npm-global.52
-rw-r--r--deps/npm/man/man7/npm-scripts.72
-rw-r--r--deps/npm/node_modules/ansi-regex/index.js (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/index.js)0
-rw-r--r--deps/npm/node_modules/ansi-regex/license (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/license)0
-rw-r--r--deps/npm/node_modules/ansi-regex/package.json (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/package.json)2
-rw-r--r--deps/npm/node_modules/ansi-regex/readme.md (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/readme.md)0
-rw-r--r--deps/npm/node_modules/fstream-npm/.travis.yml4
-rw-r--r--deps/npm/node_modules/fstream-npm/fstream-npm.js21
-rw-r--r--deps/npm/node_modules/fstream-npm/node_modules/fstream-ignore/package.json27
-rw-r--r--deps/npm/node_modules/fstream-npm/package.json16
-rw-r--r--deps/npm/node_modules/fstream-npm/test/ignores.js75
-rw-r--r--deps/npm/node_modules/graceful-fs/package.json91
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore5
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md1
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml1
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/LICENSE.md (renamed from deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/license)24
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json18
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js32
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt1075
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt182
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js9
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js10
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh24
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js15
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js16
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js10
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js13
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js7
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js50
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/glob/package.json3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE15
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/README.md195
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/example.js39
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js247
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/README.md183
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/index.js130
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore1
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md16
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile8
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md94
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js121
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json48
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js94
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/package.json51
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js56
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js87
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js65
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/.npmignore32
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/LICENSE13
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/README.md166
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/example.pngbin0 -> 19689 bytes
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore32
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE13
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md39
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js17
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json53
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js26
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE.txt)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js55
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE.txt)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md)4
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js)9
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json)34
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md)4
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js)12
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md)4
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js)12
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json)32
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json98
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE.txt)2
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js50
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json88
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json98
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE.txt)2
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js50
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json88
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json98
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/package.json60
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/progress-bar.js226
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/test/progress-bar.js176
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json57
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/test/basic.js228
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/test/progress.js114
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/.jshintrc4
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/package.json3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/path-array/package.json3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/tar/package.json3
-rw-r--r--deps/npm/node_modules/node-gyp/package.json3
-rw-r--r--deps/npm/node_modules/nopt/lib/nopt.js3
-rw-r--r--deps/npm/node_modules/nopt/package.json16
-rw-r--r--deps/npm/node_modules/nopt/test/basic.js22
-rw-r--r--deps/npm/node_modules/normalize-package-data/README.md2
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/fixer.js7
-rw-r--r--deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/node_modules/builtin-modules/package.json3
-rw-r--r--deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/package.json5
-rw-r--r--deps/npm/node_modules/normalize-package-data/package.json55
-rw-r--r--deps/npm/node_modules/normalize-package-data/test/normalize.js7
-rw-r--r--deps/npm/node_modules/normalize-package-data/test/scoped.js8
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/LICENSE15
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/README.md195
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/example.js39
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/log.js247
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore3
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/README.md183
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/index.js130
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore1
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md16
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile8
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md94
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js121
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json48
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js94
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/package.json51
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js56
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js87
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js65
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/.npmignore32
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/LICENSE13
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/README.md166
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/example.pngbin0 -> 19689 bytes
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore32
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE13
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md39
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js17
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json53
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js26
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json56
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json (renamed from deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json)34
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js55
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json98
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js50
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json98
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt22
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md20
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js50
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json98
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/package.json60
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/progress-bar.js226
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/test/progress-bar.js176
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/package.json58
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/basic.js228
-rw-r--r--deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/progress.js114
-rw-r--r--deps/npm/node_modules/npm-install-checks/package.json34
-rw-r--r--deps/npm/node_modules/npm-package-arg/README.md4
-rw-r--r--deps/npm/node_modules/npm-package-arg/npa.js5
-rw-r--r--deps/npm/node_modules/npm-package-arg/package.json37
-rw-r--r--deps/npm/node_modules/npm-package-arg/test/basic.js12
-rw-r--r--deps/npm/node_modules/npm-registry-client/lib/access.js10
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/.travis.yml37
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/doc/stream.markdown173
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js48
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js15
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/History.md5
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/browser.js7
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json17
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/package.json21
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/package.json22
-rw-r--r--deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/readme.md8
-rw-r--r--deps/npm/node_modules/npm-registry-client/package.json16
-rw-r--r--deps/npm/node_modules/npm-registry-client/test/access.js74
-rw-r--r--deps/npm/node_modules/npm-registry-client/test/fixtures/@npm/npm-registry-client/cache.json1
-rw-r--r--deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/cache.json1
-rw-r--r--deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/package.tgzbin58692 -> 0 bytes
-rw-r--r--deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/cache.json1
-rw-r--r--deps/npm/node_modules/npmlog/.travis.yml14
-rw-r--r--deps/npm/node_modules/npmlog/log.js3
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/README.md11
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js1
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md4
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js18
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json88
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json16
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json88
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json88
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js37
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md20
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js55
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json97
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json91
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/package.json22
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js21
-rw-r--r--deps/npm/node_modules/npmlog/node_modules/gauge/test/progress-bar.js32
-rw-r--r--deps/npm/node_modules/npmlog/package.json43
-rw-r--r--deps/npm/node_modules/npmlog/test/basic.js9
-rw-r--r--deps/npm/node_modules/read-package-json/README.md9
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.editorconfig19
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.npmignore5
-rwxr-xr-xdeps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/benchmark.js40
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/package.json9
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/Grammar.md219
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/JSON5.md50
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.json19
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.yaml2
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/portable-json5-tests.yaml916
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_analyze.js53
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_document.js214
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_errors.js56
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_parse.js171
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_portable.js60
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_stringify.js89
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_tokenize.js99
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_updates.js22
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/author.yaml31
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/deep-object.yaml36
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/delete.yaml36
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-array.yaml32
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-object.yaml32
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/npm-array-bin.yaml29
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/pkg-json5.yaml36
-rw-r--r--deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/package.json5
-rw-r--r--deps/npm/node_modules/read-package-json/package.json20
-rw-r--r--deps/npm/node_modules/read-package-json/test/readmes.js1
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js4
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json77
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md31
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/index.js6
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/license21
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/index.js4
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/license21
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json77
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/readme.md31
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/package.json76
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/readme.md33
-rw-r--r--deps/npm/node_modules/request/node_modules/qs/README.md331
-rw-r--r--deps/npm/node_modules/spdx-license-ids/LICENSE (renamed from deps/npm/node_modules/spdx/node_modules/spdx-license-ids/LICENSE)0
-rwxr-xr-xdeps/npm/node_modules/spdx-license-ids/README.md (renamed from deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/README.md)0
-rw-r--r--deps/npm/node_modules/spdx-license-ids/package.json (renamed from deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/package.json)22
-rw-r--r--deps/npm/node_modules/spdx-license-ids/spdx-license-ids.json (renamed from deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/spdx-license-ids.json)5
-rwxr-xr-xdeps/npm/node_modules/spdx/node_modules/spdx-license-ids/README.md55
-rw-r--r--deps/npm/node_modules/spdx/node_modules/spdx-license-ids/package.json78
-rw-r--r--deps/npm/node_modules/spdx/node_modules/spdx-license-ids/spdx-license-ids.json296
-rw-r--r--deps/npm/node_modules/strip-ansi/index.js (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js)0
-rw-r--r--deps/npm/node_modules/strip-ansi/license (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/license)0
-rw-r--r--deps/npm/node_modules/strip-ansi/package.json (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json)2
-rw-r--r--deps/npm/node_modules/strip-ansi/readme.md (renamed from deps/npm/node_modules/columnify/node_modules/strip-ansi/readme.md)0
-rw-r--r--deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/LICENSE24
-rw-r--r--deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/LICENSE24
-rwxr-xr-xdeps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/README.md55
-rw-r--r--deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/package.json77
-rw-r--r--deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/spdx-license-ids.json303
-rw-r--r--deps/npm/package.json23
-rw-r--r--deps/npm/test/fixtures/config/userconfig-with-gc2
-rw-r--r--deps/npm/test/tap/access.js110
447 files changed, 11366 insertions, 5950 deletions
diff --git a/deps/npm/.travis.yml b/deps/npm/.travis.yml
index 8bea904862c..59fddd7f296 100644
--- a/deps/npm/.travis.yml
+++ b/deps/npm/.travis.yml
@@ -1,7 +1,7 @@
language: node_js
node_js:
- - "4.1"
- - "4.0"
+ - "5"
+ - "4"
- iojs
- "0.12"
- "0.10"
diff --git a/deps/npm/AUTHORS b/deps/npm/AUTHORS
index 704b7110f4d..4e42025c6f1 100644
--- a/deps/npm/AUTHORS
+++ b/deps/npm/AUTHORS
@@ -313,3 +313,7 @@ Jon Hall <jon_hall@outlook.com>
James Hartig <james@levenlabs.com>
snopeks <stephaniesnopek@gmail.com>
Jason Kurian <JaKXz@users.noreply.github.com>
+Juan Caicedo <retiredcanadianpoet@gmail.com>
+Ashley Williams <ashley@bocoup.com>
+Andrew Marcinkevičius <andrew.web@ifdattic.com>
+Jorrit Schippers <jorrit@ncode.nl>
diff --git a/deps/npm/CHANGELOG.md b/deps/npm/CHANGELOG.md
index 54c6e317589..d6d36172b49 100644
--- a/deps/npm/CHANGELOG.md
+++ b/deps/npm/CHANGELOG.md
@@ -1,3 +1,168 @@
+### v2.14.12 (2015-11-19):
+
+#### TEEN ORCS AT THE GATES
+
+This week heralds the general release of the primary npm registry's [new
+support for private packages for
+organizations](http://blog.npmjs.org/post/133542170540/private-packages-for-organizations).
+For many potential users, it's the missing piece needed to make it easy for you
+to move your organization's private work onto npm. And now it's here! The
+functionality to support it has been in place in the CLI for a while now,
+thanks to [@zkat](https://github.com/zkat)'s hard work.
+
+During our final testing before the release, our ace support team member
+[@snopeks](https://github.com/snopeks) noticed that there had been some drift
+between the CLI team's implementation and what npm was actually preparing to
+ship. In the interests of everyone having a smooth experience with this
+_extremely useful_ new feature, we quickly made a few changes to square up the
+CLI and the web site experiences.
+
+* [`0e8b15e`](https://github.com/npm/npm/commit/0e8b15e9fbc89e31bd00e573b648846beddfb835)
+ [#9327](https://github.com/npm/npm/issues/9327) `npm access` no longer has
+ problems when run in a directory that doesn't contain a `package.json`.
+ ([@othiym23](https://github.com/othiym23))
+* [`c4e939c`](https://github.com/npm/npm/commit/c4e939c1d493601d25dcb88e6ffcca73076fd3fd)
+ [npm/npm-registry-client#126](https://github.com/npm/npm-registry-client/issues/126)
+ `npm-registry-client@7.0.8`: Allow the CLI to grant, revoke, and list
+ permissions on unscoped (public) packages on the primary registry.
+ ([@othiym23](https://github.com/othiym23))
+
+#### A BRIEF NOTE ON NPM'S BACKWARDS COMPATIBILITY
+
+We don't often have much to say about the changes we make to our internal
+testing and tooling, but I'm going to take this opportunity to reiterate that
+npm tries hard to maintain compatibility with a wide variety of Node versions.
+As this change shows, we want to ensure that npm works the same across:
+
+* Node.js 0.8
+* Node.js 0.10
+* Node.js 0.12
+* the latest io.js release
+* Node.js 4 LTS
+* Node.js 5
+
+Contributors who send us pull requests often notice that it's very rare that
+our tests pass across all of those versions (ironically, almost entirely due to
+the packages we use for testing instead of any issues within npm itself). We're
+currently beginning an effort, lasting the rest of 2015, to clean up our test
+suite, and not only get it passing on all of the above versions of Node.js, but
+working solidly on Windows as well. This is a compounding form of technical
+debt that we're finally paying down, and our hope is that cleaning up the tests
+will produce a more robust CLI that's a lot easier to write patches for.
+
+* [`d743620`](https://github.com/npm/npm/commit/d743620a0005213a65d25de771661b4d48a09717)
+ [#10233](https://github.com/npm/npm/issues/10233) Update Node.js versions
+ that Travis uses to test npm. ([@iarna](https://github.com/iarna))
+
+#### TYPOS IN THE LICENSE, OH MY
+
+* [`58ac241`](https://github.com/npm/npm/commit/58ac241f556b2c202a8ee33321965e2540361ca7)
+ [#10478](https://github.com/npm/npm/issues/10478) Correct two typos in npm's
+ LICENSE. ([@jorrit](https://github.com/jorrit))
+
+### v2.14.11 (2015-11-12):
+
+#### ASK FOR NOTHING, GET LATEST
+
+When you run `npm install foo`, you probably expect that you'll get the
+`latest` version of `foo`, whatever that is. And good news! That's what this
+change makes it do.
+
+We _think_ this is what everyone wants, but if this causes problems for you, we
+want to know! If it proves problematic for people we will consider reverting it
+(preferrably before this becomes `npm@latest`).
+
+Previously, when you ran `npm install foo` we would act as if you typed `npm
+install foo@*`. Now, like any range-type specifier, in addition to matching the
+range, it would also have to be `<=` the value of the `latest` dist-tag.
+Further, it would exclude prerelease versions from the list of versions
+considered for a match.
+
+This worked as expected most of the time, unless your `latest` was a prerelease
+version, in which case that version wouldn't be used, to everyone's surprise.
+
+* [`6f0a646`](https://github.com/npm/npm/commit/6f0a646cd865b24fe3ff25365bf5421780e63e01)
+ [#10189](https://github.com/npm/npm/issues/10189) `npm-package-arg@4.1.0`:
+ Change the default version from `*` to `latest`.
+ ([@zkat](https://github.com/zkat))
+
+#### LICENSE CLARIFICATION
+
+* [`54a9046`](https://github.com/npm/npm/commit/54a90461f068ea89baa5d70248cdf1581897936d)
+ [#10326](https://github.com/npm/npm/issues/10326) Clarify what-all is covered
+ by npm's license and point to the registry's terms of use.
+ ([@kemitchell](https://github.com/kemitchell))
+
+#### CLOSER TO GREEN TRAVIS
+
+* [`28efd3d`](https://github.com/npm/npm/commit/28efd3d7dfb2fa3755076ae706ea4d38c6ee6900)
+ [#10232](https://github.com/npm/npm/issues/10232) `nock@1.9.0`: Downgrade
+ nock to a version that doesn't depend on streams2 in core so that more of our
+ tests can pass in 0.8. ([@iarna](https://github.com/iarna))
+
+#### A BUG FIX
+
+* [`eacac8f`](https://github.com/npm/npm/commit/eacac8f05014d15217c3d8264d0b00a72eafe2d2)
+ [#9965](https://github.com/npm/npm/issues/9965) Fix a corrupt `package.json`
+ file introduced by a merge conflict in
+ [`022691a`](https://github.com/npm/npm/commit/022691a).
+ ([@waynebloss](https://github.com/waynebloss))
+
+#### A DEPENDENCY UPGRADE
+
+* [`ea7d8e0`](https://github.com/npm/npm/commit/ea7d8e00a67a3d5877ed72c9728909c848468a9b)
+ [npm/nopt#51](https://github.com/npm/nopt/pull/51) `nopt@3.0.6`: Allow
+ types checked to be validated by passed-in name in addition to the JS name of
+ the type / class. ([@wbecker](https://github.com/wbecker))
+
+### v2.14.10 (2015-11-05):
+
+There's nothing in here that that isn't in the `npm@3.4.0` release notes, but
+all of the commit shasums have been adjusted to be correct. Enjoy!
+
+#### BUG FIXES VIA DEPENDENCY UPDATES
+
+* [`204c558`](https://github.com/npm/npm/commit/204c558c06637a753c0b41d0cf19f564a1ac3715)
+ [#8640](https://github.com/npm/npm/issues/8640)
+ [npm/normalize-package-data#69](https://github.com/npm/normalize-package-data/pull/69)
+ `normalize-package-data@2.3.5`: Fix a bug where if you didn't specify the
+ name of a scoped module's binary, it would install it such that it was
+ impossible to call it. ([@iarna](https://github.com/iarna))
+* [`bbdf4ee`](https://github.com/npm/npm/commit/bbdf4ee0a3cd12be6a2ace255b67d573a72f1f8f)
+ [npm/fstream-npm#14](https://github.com/npm/fstream-npm/pull/14)
+ `fstream-npm@1.0.7`: Only filter `config.gypi` when it's in the build
+ directory. ([@mscdex](https://github.com/mscdex))
+* [`d82ff81`](https://github.com/npm/npm/commit/d82ff81403e906931fac701775723626dcb443b3)
+ [npm/fstream-npm#15](https://github.com/npm/fstream-npm/pull/15)
+ `fstream-npm@1.0.6`: Stop including directories that happened to have names
+ matching whitelisted npm files in npm module tarballs. The most common cause
+ was that if you had a README directory then everything in it would be
+ included if wanted it or not. ([@taion](https://github.com/taion))
+
+#### DOCUMENTATION FIXES
+
+* [`16361d1`](https://github.com/npm/npm/commit/16361d122f2ff6d1a4729c66153b7c24c698fd19)
+ [#10036](https://github.com/npm/npm/pull/10036) Fix typo / over-abbreviation.
+ ([@ifdattic](https://github.com/ifdattic))
+* [`d1343dd`](https://github.com/npm/npm/commit/d1343dda42f113dc322f95687f5a8c7d71a97c35)
+ [#10176](https://github.com/npm/npm/pull/10176) Fix broken link, scopes =>
+ scope. ([@ashleygwilliams](https://github.com/ashleygwilliams))
+* [`110663d`](https://github.com/npm/npm/commit/110663d000a3908a4853393d9abae481700cf4dc)
+ [#9460](https://github.com/npm/npm/issue/9460) Specifying the default command
+ run by "npm start" and the fact that you can pass it arguments.
+ ([@JuanCaicedo](https://github.com/JuanCaicedo))
+
+#### DEPENDENCY UPDATES FOR THEIR OWN SAKE
+
+* [`7476d2d`](https://github.com/npm/npm/commit/7476d2d31552a41671c425aa7fcc2844e0381008)
+ [npm/npmlog#19](https://github.com/npm/npmlog/pull/19)
+ `npmlog@2.0.0`: Make it possible to emit log messages with `error` as the
+ prefix.
+ ([@bengl](https://github.com/bengl))
+* [`6ca7888`](https://github.com/npm/npm/commit/6ca7888862cfe8bf802dc7c66632c102acd94cf5)
+ `read-package-json@2.0.2`: Minor cleanups.
+ ([@KenanY](https://github.com/KenanY))
+
### v2.14.9 (2015-10-29):
There's still life in `npm@2`, but for now, enjoy these dependency upgrades!
diff --git a/deps/npm/LICENSE b/deps/npm/LICENSE
index b6e3548d19c..71ef60d027b 100644
--- a/deps/npm/LICENSE
+++ b/deps/npm/LICENSE
@@ -1,11 +1,29 @@
+The npm application
Copyright (c) npm, Inc. and Contributors
-All rights reserved.
+Licensed on the terms of The Artistic License 2.0
-npm is released under the Artistic License 2.0, subject to additional terms
-that are listed below.
+Node package dependencies of the npm application
+Copyright (c) their respective copyright owners
+Licensed on their respective license terms
-The text of the npm License follows and the text of the additional terms
-follows the Artistic License 2.0 terms:
+The npm public registry at https://registry.npmjs.com
+and the npm website at https://www.npmjs.com
+Operated by npm, Inc.
+Use governed by terms published on https://www.npmjs.com
+
+"Node.js"
+Trademark Joyent, Inc., https://joyent.com
+Neither npm nor npm, Inc. are affiliated with Joyent, Inc.
+
+The Node.js application
+Project of Node Foundation, https://nodejs.org
+
+The npm Logo
+Copyright (c) Mathias Pettersson and Brian Hammond
+
+"Gubblebum Blocky" typeface
+Copyright (c) Tjarda Koster, https://jelloween.deviantart.com
+Used with permission
--------
@@ -251,11 +269,11 @@ details.
Any data published to The npm Registry (including user account information) may
be removed or modified at the sole discretion of the npm server administrators.
-"npm Logo" created by Mathias Pettersson and Brian Hammond,
-used with permission.
+"npm Logo" contributed by Mathias Pettersson and Brian Hammond,
+use is subject to https://www.npmjs.com/policies/trademark
"Gubblebum Blocky" font
-Copyright (c) by Tjarda Koster, http://jelloween.deviantart.com
+Copyright (c) by Tjarda Koster, https://jelloween.deviantart.com
included for use in the npm website and documentation,
used with permission.
diff --git a/deps/npm/doc/cli/npm-start.md b/deps/npm/doc/cli/npm-start.md
index 759de221f38..94c468c296d 100644
--- a/deps/npm/doc/cli/npm-start.md
+++ b/deps/npm/doc/cli/npm-start.md
@@ -7,7 +7,13 @@ npm-start(1) -- Start a package
## DESCRIPTION
-This runs a package's "start" script, if one was provided.
+This runs an arbitrary command specified in the package's `"start"` property of
+its `"scripts"` object. If no `"start"` property is specified on the
+`"scripts"` object, it will run `node server.js`.
+
+As of [`npm@2.0.0`](http://blog.npmjs.org/post/98131109725/npm-2-0-0), you can
+use custom arguments when executing scripts. Refer to npm-run-script(1) for
+more details.
## SEE ALSO
diff --git a/deps/npm/doc/files/npm-folders.md b/deps/npm/doc/files/npm-folders.md
index 1fb21b1a310..18b7ea50dd2 100644
--- a/deps/npm/doc/files/npm-folders.md
+++ b/deps/npm/doc/files/npm-folders.md
@@ -45,7 +45,7 @@ Global installs on Windows go to `{prefix}/node_modules` (that is, no
Scoped packages are installed the same way, except they are grouped together
in a sub-folder of the relevant `node_modules` folder with the name of that
scope prefix by the @ symbol, e.g. `npm install @myorg/package` would place
-the package in `{prefix}/node_modules/@myorg/package`. See `scopes(7)` for
+the package in `{prefix}/node_modules/@myorg/package`. See `scope(7)` for
more details.
If you wish to `require()` a package, then install it locally.
diff --git a/deps/npm/doc/misc/npm-scripts.md b/deps/npm/doc/misc/npm-scripts.md
index 12c7f23167d..763f8f021b9 100644
--- a/deps/npm/doc/misc/npm-scripts.md
+++ b/deps/npm/doc/misc/npm-scripts.md
@@ -210,7 +210,7 @@ above.
by simply describing your package appropriately. In general, this
will lead to a more robust and consistent state.
* Inspect the env to determine where to put things. For instance, if
- the `npm_config_binroot` environ is set to `/home/user/bin`, then
+ the `npm_config_binroot` environment variable is set to `/home/user/bin`, then
don't try to install executables into `/usr/local/bin`. The user
probably set it up that way for a reason.
* Don't prefix your script commands with "sudo". If root permissions
diff --git a/deps/npm/html/doc/README.html b/deps/npm/html/doc/README.html
index b4249d78ce3..b7bc458a162 100644
--- a/deps/npm/html/doc/README.html
+++ b/deps/npm/html/doc/README.html
@@ -140,7 +140,7 @@ specific purpose, or lack of malice in any given npm package.</p>
<p>If you have a complaint about a package in the public npm registry,
and cannot <a href="https://docs.npmjs.com/misc/disputes">resolve it with the package
owner</a>, please email
-<a href="&#109;&#x61;&#105;&#x6c;&#x74;&#111;&#58;&#x73;&#x75;&#x70;&#112;&#x6f;&#114;&#x74;&#x40;&#110;&#112;&#109;&#106;&#x73;&#x2e;&#x63;&#x6f;&#x6d;">&#x73;&#x75;&#x70;&#112;&#x6f;&#114;&#x74;&#x40;&#110;&#112;&#109;&#106;&#x73;&#x2e;&#x63;&#x6f;&#x6d;</a> and explain the situation.</p>
+<a href="&#x6d;&#97;&#105;&#x6c;&#116;&#x6f;&#58;&#115;&#117;&#x70;&#112;&#111;&#x72;&#116;&#x40;&#110;&#x70;&#x6d;&#x6a;&#115;&#46;&#99;&#111;&#x6d;">&#115;&#117;&#x70;&#112;&#111;&#x72;&#116;&#x40;&#110;&#x70;&#x6d;&#x6a;&#115;&#46;&#99;&#111;&#x6d;</a> and explain the situation.</p>
<p>Any data published to The npm Registry (including user account
information) may be removed or modified at the sole discretion of the
npm server administrators.</p>
@@ -183,5 +183,5 @@ will no doubt tell you to put the output in a gist or email.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@2.14.9</p>
+<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-bin.html b/deps/npm/html/doc/api/npm-bin.html
index 2e27c4c0e81..2251e332307 100644
--- a/deps/npm/html/doc/api/npm-bin.html
+++ b/deps/npm/html/doc/api/npm-bin.html
@@ -28,5 +28,5 @@ to the <code>npm.bin</code> property.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-bin &mdash; npm@2.14.9</p>
+<p id="footer">npm-bin &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-bugs.html b/deps/npm/html/doc/api/npm-bugs.html
index 87c2a2255f1..79bdefef1d5 100644
--- a/deps/npm/html/doc/api/npm-bugs.html
+++ b/deps/npm/html/doc/api/npm-bugs.html
@@ -33,5 +33,5 @@ friendly for programmatic use.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-bugs &mdash; npm@2.14.9</p>
+<p id="footer">npm-bugs &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-cache.html b/deps/npm/html/doc/api/npm-cache.html
index cdc9ff184b5..1f8e2c7f67a 100644
--- a/deps/npm/html/doc/api/npm-cache.html
+++ b/deps/npm/html/doc/api/npm-cache.html
@@ -42,5 +42,5 @@ incrementation.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-cache &mdash; npm@2.14.9</p>
+<p id="footer">npm-cache &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-commands.html b/deps/npm/html/doc/api/npm-commands.html
index 3ecd9431632..0e15a2da83e 100644
--- a/deps/npm/html/doc/api/npm-commands.html
+++ b/deps/npm/html/doc/api/npm-commands.html
@@ -36,5 +36,5 @@ usage, or <code>man 3 npm-&lt;command&gt;</code> for programmatic usage.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-commands &mdash; npm@2.14.9</p>
+<p id="footer">npm-commands &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-config.html b/deps/npm/html/doc/api/npm-config.html
index 83569216d96..cacdff19ef4 100644
--- a/deps/npm/html/doc/api/npm-config.html
+++ b/deps/npm/html/doc/api/npm-config.html
@@ -57,5 +57,5 @@ functions instead.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-config &mdash; npm@2.14.9</p>
+<p id="footer">npm-config &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-deprecate.html b/deps/npm/html/doc/api/npm-deprecate.html
index 924a874b44f..38ff7fab1b3 100644
--- a/deps/npm/html/doc/api/npm-deprecate.html
+++ b/deps/npm/html/doc/api/npm-deprecate.html
@@ -47,5 +47,5 @@ a deprecation warning to all who attempt to install it.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-deprecate &mdash; npm@2.14.9</p>
+<p id="footer">npm-deprecate &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-docs.html b/deps/npm/html/doc/api/npm-docs.html
index dc48ff80f25..63f1784ac08 100644
--- a/deps/npm/html/doc/api/npm-docs.html
+++ b/deps/npm/html/doc/api/npm-docs.html
@@ -33,5 +33,5 @@ friendly for programmatic use.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-docs &mdash; npm@2.14.9</p>
+<p id="footer">npm-docs &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-edit.html b/deps/npm/html/doc/api/npm-edit.html
index b58777bae8c..74ff535894e 100644
--- a/deps/npm/html/doc/api/npm-edit.html
+++ b/deps/npm/html/doc/api/npm-edit.html
@@ -36,5 +36,5 @@ and how this is used.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-edit &mdash; npm@2.14.9</p>
+<p id="footer">npm-edit &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-explore.html b/deps/npm/html/doc/api/npm-explore.html
index fd22d462db8..5c9fc309602 100644
--- a/deps/npm/html/doc/api/npm-explore.html
+++ b/deps/npm/html/doc/api/npm-explore.html
@@ -31,5 +31,5 @@ sure to use <code>npm rebuild &lt;pkg&gt;</code> if you make any changes.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-explore &mdash; npm@2.14.9</p>
+<p id="footer">npm-explore &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-help-search.html b/deps/npm/html/doc/api/npm-help-search.html
index 04ffd3efd15..d3cf6aa1a08 100644
--- a/deps/npm/html/doc/api/npm-help-search.html
+++ b/deps/npm/html/doc/api/npm-help-search.html
@@ -44,5 +44,5 @@ Name of the file that matched</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-help-search &mdash; npm@2.14.9</p>
+<p id="footer">npm-help-search &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-init.html b/deps/npm/html/doc/api/npm-init.html
index f48ca0bfc00..8bc92729a37 100644
--- a/deps/npm/html/doc/api/npm-init.html
+++ b/deps/npm/html/doc/api/npm-init.html
@@ -39,5 +39,5 @@ then go ahead and use this programmatically.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-init &mdash; npm@2.14.9</p>
+<p id="footer">npm-init &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-install.html b/deps/npm/html/doc/api/npm-install.html
index cf25335abd2..8506d23965d 100644
--- a/deps/npm/html/doc/api/npm-install.html
+++ b/deps/npm/html/doc/api/npm-install.html
@@ -32,5 +32,5 @@ installed or when an error has been encountered.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-install &mdash; npm@2.14.9</p>
+<p id="footer">npm-install &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-link.html b/deps/npm/html/doc/api/npm-link.html
index f64b3f2f9bd..b4b5a3c7a49 100644
--- a/deps/npm/html/doc/api/npm-link.html
+++ b/deps/npm/html/doc/api/npm-link.html
@@ -42,5 +42,5 @@ the package in the current working directory</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-link &mdash; npm@2.14.9</p>
+<p id="footer">npm-link &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-load.html b/deps/npm/html/doc/api/npm-load.html
index 7c7cdff97b1..e11f698b508 100644
--- a/deps/npm/html/doc/api/npm-load.html
+++ b/deps/npm/html/doc/api/npm-load.html
@@ -37,5 +37,5 @@ config object.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-load &mdash; npm@2.14.9</p>
+<p id="footer">npm-load &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-ls.html b/deps/npm/html/doc/api/npm-ls.html
index 6ac33428ed7..e0738be3c9c 100644
--- a/deps/npm/html/doc/api/npm-ls.html
+++ b/deps/npm/html/doc/api/npm-ls.html
@@ -63,5 +63,5 @@ dependency will only be output once.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-ls &mdash; npm@2.14.9</p>
+<p id="footer">npm-ls &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-outdated.html b/deps/npm/html/doc/api/npm-outdated.html
index 93bdecac20f..3b85b356717 100644
--- a/deps/npm/html/doc/api/npm-outdated.html
+++ b/deps/npm/html/doc/api/npm-outdated.html
@@ -28,5 +28,5 @@ currently outdated.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-outdated &mdash; npm@2.14.9</p>
+<p id="footer">npm-outdated &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-owner.html b/deps/npm/html/doc/api/npm-owner.html
index 31aa147b39b..1ce12a944bd 100644
--- a/deps/npm/html/doc/api/npm-owner.html
+++ b/deps/npm/html/doc/api/npm-owner.html
@@ -47,5 +47,5 @@ that is not implemented at this time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-owner &mdash; npm@2.14.9</p>
+<p id="footer">npm-owner &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-pack.html b/deps/npm/html/doc/api/npm-pack.html
index 25fad25908f..94b5eba42e7 100644
--- a/deps/npm/html/doc/api/npm-pack.html
+++ b/deps/npm/html/doc/api/npm-pack.html
@@ -33,5 +33,5 @@ overwritten the second time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-pack &mdash; npm@2.14.9</p>
+<p id="footer">npm-pack &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-ping.html b/deps/npm/html/doc/api/npm-ping.html
index 5e6ece448a9..f9cad138533 100644
--- a/deps/npm/html/doc/api/npm-ping.html
+++ b/deps/npm/html/doc/api/npm-ping.html
@@ -29,4 +29,4 @@ to npm registries.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-ping &mdash; npm@2.14.9</p>
+<p id="footer">npm-ping &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-prefix.html b/deps/npm/html/doc/api/npm-prefix.html
index dff2476fe2c..9b6ba5c6cfe 100644
--- a/deps/npm/html/doc/api/npm-prefix.html
+++ b/deps/npm/html/doc/api/npm-prefix.html
@@ -29,5 +29,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-prefix &mdash; npm@2.14.9</p>
+<p id="footer">npm-prefix &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-prune.html b/deps/npm/html/doc/api/npm-prune.html
index 26952fb9963..fe90521e52f 100644
--- a/deps/npm/html/doc/api/npm-prune.html
+++ b/deps/npm/html/doc/api/npm-prune.html
@@ -30,5 +30,5 @@ package&#39;s dependencies list.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-prune &mdash; npm@2.14.9</p>
+<p id="footer">npm-prune &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-publish.html b/deps/npm/html/doc/api/npm-publish.html
index 1d3c4ed41a2..f843a7999a6 100644
--- a/deps/npm/html/doc/api/npm-publish.html
+++ b/deps/npm/html/doc/api/npm-publish.html
@@ -46,5 +46,5 @@ the registry. Overwrites when the &quot;force&quot; environment variable is set
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-publish &mdash; npm@2.14.9</p>
+<p id="footer">npm-publish &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-rebuild.html b/deps/npm/html/doc/api/npm-rebuild.html
index 206f905ac00..cfac6be503d 100644
--- a/deps/npm/html/doc/api/npm-rebuild.html
+++ b/deps/npm/html/doc/api/npm-rebuild.html
@@ -30,5 +30,5 @@ the new binary. If no &#39;packages&#39; parameter is specify, every package wil
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-rebuild &mdash; npm@2.14.9</p>
+<p id="footer">npm-rebuild &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-repo.html b/deps/npm/html/doc/api/npm-repo.html
index f27172b15b0..50b682745a9 100644
--- a/deps/npm/html/doc/api/npm-repo.html
+++ b/deps/npm/html/doc/api/npm-repo.html
@@ -33,5 +33,5 @@ friendly for programmatic use.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-repo &mdash; npm@2.14.9</p>
+<p id="footer">npm-repo &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-restart.html b/deps/npm/html/doc/api/npm-restart.html
index f4bd2b3580b..00bdb943c10 100644
--- a/deps/npm/html/doc/api/npm-restart.html
+++ b/deps/npm/html/doc/api/npm-restart.html
@@ -52,5 +52,5 @@ behavior will be accompanied by an increase in major version number</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-restart &mdash; npm@2.14.9</p>
+<p id="footer">npm-restart &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-root.html b/deps/npm/html/doc/api/npm-root.html
index e4ef5f6886d..4744a662dcb 100644
--- a/deps/npm/html/doc/api/npm-root.html
+++ b/deps/npm/html/doc/api/npm-root.html
@@ -29,5 +29,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-root &mdash; npm@2.14.9</p>
+<p id="footer">npm-root &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-run-script.html b/deps/npm/html/doc/api/npm-run-script.html
index defea6f7ef9..20b1a4321ae 100644
--- a/deps/npm/html/doc/api/npm-run-script.html
+++ b/deps/npm/html/doc/api/npm-run-script.html
@@ -41,5 +41,5 @@ assumed to be the command to run. All other elements are ignored.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-run-script &mdash; npm@2.14.9</p>
+<p id="footer">npm-run-script &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-search.html b/deps/npm/html/doc/api/npm-search.html
index 0a66ae6a57a..9c7449cc0fe 100644
--- a/deps/npm/html/doc/api/npm-search.html
+++ b/deps/npm/html/doc/api/npm-search.html
@@ -53,5 +53,5 @@ like).</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-search &mdash; npm@2.14.9</p>
+<p id="footer">npm-search &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-shrinkwrap.html b/deps/npm/html/doc/api/npm-shrinkwrap.html
index 8babd614b3c..138bdcf0a01 100644
--- a/deps/npm/html/doc/api/npm-shrinkwrap.html
+++ b/deps/npm/html/doc/api/npm-shrinkwrap.html
@@ -33,5 +33,5 @@ been saved.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-shrinkwrap &mdash; npm@2.14.9</p>
+<p id="footer">npm-shrinkwrap &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-start.html b/deps/npm/html/doc/api/npm-start.html
index f1cb9cd3d37..d5c29a430e3 100644
--- a/deps/npm/html/doc/api/npm-start.html
+++ b/deps/npm/html/doc/api/npm-start.html
@@ -28,5 +28,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-start &mdash; npm@2.14.9</p>
+<p id="footer">npm-start &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-stop.html b/deps/npm/html/doc/api/npm-stop.html
index dc36c9a47af..b61a5d68b9c 100644
--- a/deps/npm/html/doc/api/npm-stop.html
+++ b/deps/npm/html/doc/api/npm-stop.html
@@ -28,5 +28,5 @@ in the <code>packages</code> parameter.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-stop &mdash; npm@2.14.9</p>
+<p id="footer">npm-stop &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-submodule.html b/deps/npm/html/doc/api/npm-submodule.html
deleted file mode 100644
index 157d6d398a4..00000000000
--- a/deps/npm/html/doc/api/npm-submodule.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html>
-<html>
- <title>npm-submodule</title>
- <meta http-equiv="content-type" value="text/html;utf-8">
- <link rel="stylesheet" type="text/css" href="../../static/style.css">
- <link rel="canonical" href="https://www.npmjs.org/doc/api/npm-submodule.html">
- <script async=true src="../../static/toc.js"></script>
-
- <body>
- <div id="wrapper">
-
-<h1><a href="../api/npm-submodule.html">npm-submodule</a></h1> <p>Add a package as a git submodule</p>
-<h2 id="synopsis">SYNOPSIS</h2>
-<pre><code>npm.commands.submodule(packages, callback)
-</code></pre><h2 id="description">DESCRIPTION</h2>
-<p>For each package specified, npm will check if it has a git repository url
-in its package.json description then add it as a git submodule at
-<code>node_modules/&lt;pkg name&gt;</code>.</p>
-<p>This is a convenience only. From then on, it&#39;s up to you to manage
-updates by using the appropriate git commands. npm will stubbornly
-refuse to update, modify, or remove anything with a <code>.git</code> subfolder
-in it.</p>
-<p>This command also does not install missing dependencies, if the package
-does not include them in its git repository. If <code>npm ls</code> reports that
-things are missing, you can either install, link, or submodule them yourself,
-or you can do <code>npm explore &lt;pkgname&gt; -- npm install</code> to install the
-dependencies into the submodule folder.</p>
-<h2 id="see-also">SEE ALSO</h2>
-<ul>
-<li>npm help json</li>
-<li>git help submodule</li>
-</ul>
-
-</div>
-
-<table border=0 cellspacing=0 cellpadding=0 id=npmlogo>
-<tr><td style="width:180px;height:10px;background:rgb(237,127,127)" colspan=18>&nbsp;</td></tr>
-<tr><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td colspan=6 style="width:60px;height:10px;background:#fff">&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td></tr>
-<tr><td colspan=2 style="width:20px;height:30px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=4 colspan=2>&nbsp;</td><td style="width:10px;height:20px;background:rgb(237,127,127)" rowspan=2>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=3 colspan=2>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff" rowspan=2>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff">&nbsp;</td></tr>
-<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
-<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
-</table>
-<p id="footer">npm-submodule &mdash; npm@1.4.29</p>
diff --git a/deps/npm/html/doc/api/npm-tag.html b/deps/npm/html/doc/api/npm-tag.html
index b6abe2cd19a..8143ed91af3 100644
--- a/deps/npm/html/doc/api/npm-tag.html
+++ b/deps/npm/html/doc/api/npm-tag.html
@@ -36,5 +36,5 @@ used. For more information about how to set this config, check
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-tag &mdash; npm@2.14.9</p>
+<p id="footer">npm-tag &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-test.html b/deps/npm/html/doc/api/npm-test.html
index f427b29e343..5f4ddcdba8c 100644
--- a/deps/npm/html/doc/api/npm-test.html
+++ b/deps/npm/html/doc/api/npm-test.html
@@ -30,5 +30,5 @@ in the <code>packages</code> parameter.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-test &mdash; npm@2.14.9</p>
+<p id="footer">npm-test &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-uninstall.html b/deps/npm/html/doc/api/npm-uninstall.html
index 6f8e48fa27a..bb54e950fe0 100644
--- a/deps/npm/html/doc/api/npm-uninstall.html
+++ b/deps/npm/html/doc/api/npm-uninstall.html
@@ -30,5 +30,5 @@ uninstalled or when an error has been encountered.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-uninstall &mdash; npm@2.14.9</p>
+<p id="footer">npm-uninstall &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-unpublish.html b/deps/npm/html/doc/api/npm-unpublish.html
index c5fc0d80099..a048f5f7d58 100644
--- a/deps/npm/html/doc/api/npm-unpublish.html
+++ b/deps/npm/html/doc/api/npm-unpublish.html
@@ -33,5 +33,5 @@ the root package entry is removed from the registry entirely.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-unpublish &mdash; npm@2.14.9</p>
+<p id="footer">npm-unpublish &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-update.html b/deps/npm/html/doc/api/npm-update.html
index 076bbf4fe87..c24d3f5a2f8 100644
--- a/deps/npm/html/doc/api/npm-update.html
+++ b/deps/npm/html/doc/api/npm-update.html
@@ -33,5 +33,5 @@ parameter will be called when done or when an error occurs.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-update &mdash; npm@2.14.9</p>
+<p id="footer">npm-update &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-version.html b/deps/npm/html/doc/api/npm-version.html
index cc28b07d207..ce514810ca6 100644
--- a/deps/npm/html/doc/api/npm-version.html
+++ b/deps/npm/html/doc/api/npm-version.html
@@ -32,5 +32,5 @@ not have exactly one element. The only element should be a version number.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-version &mdash; npm@2.14.9</p>
+<p id="footer">npm-version &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-view.html b/deps/npm/html/doc/api/npm-view.html
index c8312fb3b73..86c105503b3 100644
--- a/deps/npm/html/doc/api/npm-view.html
+++ b/deps/npm/html/doc/api/npm-view.html
@@ -81,5 +81,5 @@ the field name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-view &mdash; npm@2.14.9</p>
+<p id="footer">npm-view &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm-whoami.html b/deps/npm/html/doc/api/npm-whoami.html
index 6682b3d57b0..2ec8bdf9c8a 100644
--- a/deps/npm/html/doc/api/npm-whoami.html
+++ b/deps/npm/html/doc/api/npm-whoami.html
@@ -29,5 +29,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-whoami &mdash; npm@2.14.9</p>
+<p id="footer">npm-whoami &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/api/npm.html b/deps/npm/html/doc/api/npm.html
index b2c9d1f9950..a8633acb509 100644
--- a/deps/npm/html/doc/api/npm.html
+++ b/deps/npm/html/doc/api/npm.html
@@ -23,7 +23,7 @@ npm.load([configObject, ]function (er, npm) {
npm.commands.install([&quot;package&quot;], cb)
})
</code></pre><h2 id="version">VERSION</h2>
-<p>2.14.9</p>
+<p>2.14.12</p>
<h2 id="description">DESCRIPTION</h2>
<p>This is the API documentation for npm.
To find documentation of the command line
@@ -109,5 +109,5 @@ method names. Use the <code>npm.deref</code> method to find the real name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm &mdash; npm@2.14.9</p>
+<p id="footer">npm &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-access.html b/deps/npm/html/doc/cli/npm-access.html
index d7903546107..28025376045 100644
--- a/deps/npm/html/doc/cli/npm-access.html
+++ b/deps/npm/html/doc/cli/npm-access.html
@@ -84,5 +84,5 @@ with an HTTP 402 status code (logically enough), unless you use
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-access &mdash; npm@2.14.9</p>
+<p id="footer">npm-access &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-adduser.html b/deps/npm/html/doc/cli/npm-adduser.html
index 92ecfc07e71..25835251538 100644
--- a/deps/npm/html/doc/cli/npm-adduser.html
+++ b/deps/npm/html/doc/cli/npm-adduser.html
@@ -68,5 +68,5 @@ precedence over any global configuration.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-adduser &mdash; npm@2.14.9</p>
+<p id="footer">npm-adduser &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-bin.html b/deps/npm/html/doc/cli/npm-bin.html
index a9886ba3f8c..e1c7d8ba9bc 100644
--- a/deps/npm/html/doc/cli/npm-bin.html
+++ b/deps/npm/html/doc/cli/npm-bin.html
@@ -35,5 +35,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-bin &mdash; npm@2.14.9</p>
+<p id="footer">npm-bin &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-bugs.html b/deps/npm/html/doc/cli/npm-bugs.html
index 2ea48478fc3..b8805a79c8a 100644
--- a/deps/npm/html/doc/cli/npm-bugs.html
+++ b/deps/npm/html/doc/cli/npm-bugs.html
@@ -54,5 +54,5 @@ a <code>package.json</code> in the current folder and use the <code>name</code>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-bugs &mdash; npm@2.14.9</p>
+<p id="footer">npm-bugs &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-build.html b/deps/npm/html/doc/cli/npm-build.html
index 361ebf00e65..6863ec6d51b 100644
--- a/deps/npm/html/doc/cli/npm-build.html
+++ b/deps/npm/html/doc/cli/npm-build.html
@@ -40,5 +40,5 @@ directly, run:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-build &mdash; npm@2.14.9</p>
+<p id="footer">npm-build &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-bundle.html b/deps/npm/html/doc/cli/npm-bundle.html
index 981f64613a3..85d0471dc38 100644
--- a/deps/npm/html/doc/cli/npm-bundle.html
+++ b/deps/npm/html/doc/cli/npm-bundle.html
@@ -31,5 +31,5 @@ install packages into the local space.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-bundle &mdash; npm@2.14.9</p>
+<p id="footer">npm-bundle &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-cache.html b/deps/npm/html/doc/cli/npm-cache.html
index de89f3e2060..e53b8fa6d3b 100644
--- a/deps/npm/html/doc/cli/npm-cache.html
+++ b/deps/npm/html/doc/cli/npm-cache.html
@@ -81,5 +81,5 @@ they do not make an HTTP request to the registry.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-cache &mdash; npm@2.14.9</p>
+<p id="footer">npm-cache &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-completion.html b/deps/npm/html/doc/cli/npm-completion.html
index bbb3653049b..7571cdee40c 100644
--- a/deps/npm/html/doc/cli/npm-completion.html
+++ b/deps/npm/html/doc/cli/npm-completion.html
@@ -42,5 +42,5 @@ completions based on the arguments.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-completion &mdash; npm@2.14.9</p>
+<p id="footer">npm-completion &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-config.html b/deps/npm/html/doc/cli/npm-config.html
index eef6bbf3652..c446bc918c0 100644
--- a/deps/npm/html/doc/cli/npm-config.html
+++ b/deps/npm/html/doc/cli/npm-config.html
@@ -66,5 +66,5 @@ global config.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-config &mdash; npm@2.14.9</p>
+<p id="footer">npm-config &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-dedupe.html b/deps/npm/html/doc/cli/npm-dedupe.html
index 6ae2a78591f..4e1fa0ba78d 100644
--- a/deps/npm/html/doc/cli/npm-dedupe.html
+++ b/deps/npm/html/doc/cli/npm-dedupe.html
@@ -63,5 +63,5 @@ versions.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-dedupe &mdash; npm@2.14.9</p>
+<p id="footer">npm-dedupe &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-deprecate.html b/deps/npm/html/doc/cli/npm-deprecate.html
index 0ea284c4ada..485325a2420 100644
--- a/deps/npm/html/doc/cli/npm-deprecate.html
+++ b/deps/npm/html/doc/cli/npm-deprecate.html
@@ -38,5 +38,5 @@ something like this:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-deprecate &mdash; npm@2.14.9</p>
+<p id="footer">npm-deprecate &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-dist-tag.html b/deps/npm/html/doc/cli/npm-dist-tag.html
index afab72adfe9..ffc2c42f368 100644
--- a/deps/npm/html/doc/cli/npm-dist-tag.html
+++ b/deps/npm/html/doc/cli/npm-dist-tag.html
@@ -77,5 +77,5 @@ begin with a number or the letter <code>v</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-dist-tag &mdash; npm@2.14.9</p>
+<p id="footer">npm-dist-tag &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-docs.html b/deps/npm/html/doc/cli/npm-docs.html
index 0cfb6804de8..8a05aee7209 100644
--- a/deps/npm/html/doc/cli/npm-docs.html
+++ b/deps/npm/html/doc/cli/npm-docs.html
@@ -56,5 +56,5 @@ the current folder and use the <code>name</code> property.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-docs &mdash; npm@2.14.9</p>
+<p id="footer">npm-docs &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-edit.html b/deps/npm/html/doc/cli/npm-edit.html
index dfcceda4f03..24229d6a9f2 100644
--- a/deps/npm/html/doc/cli/npm-edit.html
+++ b/deps/npm/html/doc/cli/npm-edit.html
@@ -49,5 +49,5 @@ or <code>&quot;notepad&quot;</code> on Windows.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-edit &mdash; npm@2.14.9</p>
+<p id="footer">npm-edit &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-explore.html b/deps/npm/html/doc/cli/npm-explore.html
index ee906dd2c99..4ad95c717c1 100644
--- a/deps/npm/html/doc/cli/npm-explore.html
+++ b/deps/npm/html/doc/cli/npm-explore.html
@@ -49,5 +49,5 @@ Windows</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-explore &mdash; npm@2.14.9</p>
+<p id="footer">npm-explore &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-help-search.html b/deps/npm/html/doc/cli/npm-help-search.html
index 9b653cf0360..45d70daf964 100644
--- a/deps/npm/html/doc/cli/npm-help-search.html
+++ b/deps/npm/html/doc/cli/npm-help-search.html
@@ -46,5 +46,5 @@ where the terms were found in the documentation.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-help-search &mdash; npm@2.14.9</p>
+<p id="footer">npm-help-search &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-help.html b/deps/npm/html/doc/cli/npm-help.html
index 2bc9c151a21..038efd1b74c 100644
--- a/deps/npm/html/doc/cli/npm-help.html
+++ b/deps/npm/html/doc/cli/npm-help.html
@@ -52,5 +52,5 @@ matches are equivalent to specifying a topic name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-help &mdash; npm@2.14.9</p>
+<p id="footer">npm-help &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-init.html b/deps/npm/html/doc/cli/npm-init.html
index f750889d811..5ad23aac046 100644
--- a/deps/npm/html/doc/cli/npm-init.html
+++ b/deps/npm/html/doc/cli/npm-init.html
@@ -48,5 +48,5 @@ defaults and not prompt you for any options.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-init &mdash; npm@2.14.9</p>
+<p id="footer">npm-init &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-install-test.html b/deps/npm/html/doc/cli/npm-install-test.html
deleted file mode 100644
index 77fa62baa01..00000000000
--- a/deps/npm/html/doc/cli/npm-install-test.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html>
-<html>
- <title>npm-install-test</title>
- <meta http-equiv="content-type" value="text/html;utf-8">
- <link rel="stylesheet" type="text/css" href="../../static/style.css">
- <link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-install-test.html">
- <script async=true src="../../static/toc.js"></script>
-
- <body>
- <div id="wrapper">
-
-<h1>npm <a href="../cli/install-test.html">install-test</a></h1> <p>Install package(s) and run tests</p>
-<h2 id="synopsis">SYNOPSIS</h2>
-<pre><code>npm install-test (with no args, in package dir)
-npm install-test [&lt;@scope&gt;/]&lt;name&gt;
-npm install-test [&lt;@scope&gt;/]&lt;name&gt;@&lt;tag&gt;
-npm install-test [&lt;@scope&gt;/]&lt;name&gt;@&lt;version&gt;
-npm install-test [&lt;@scope&gt;/]&lt;name&gt;@&lt;version range&gt;
-npm install-test &lt;tarball file&gt;
-npm install-test &lt;tarball url&gt;
-npm install-test &lt;folder&gt;
-
-alias: npm it
-common options: [--save|--save-dev|--save-optional] [--save-exact] [--dry-run]
-</code></pre><h2 id="description">DESCRIPTION</h2>
-<p>This command runs an <code>npm install</code> followed immediately by an <code>npm test</code>. It
-takes exactly the same arguments as <code>npm install</code>.</p>
-<h2 id="see-also">SEE ALSO</h2>
-<ul>
-<li><a href="../cli/npm-install.html">npm-install(1)</a></li>
-<li><a href="../cli/npm-test.html">npm-test(1)</a></li>
-</ul>
-
-</div>
-
-<table border=0 cellspacing=0 cellpadding=0 id=npmlogo>
-<tr><td style="width:180px;height:10px;background:rgb(237,127,127)" colspan=18>&nbsp;</td></tr>
-<tr><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td colspan=6 style="width:60px;height:10px;background:#fff">&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td></tr>
-<tr><td colspan=2 style="width:20px;height:30px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=4 colspan=2>&nbsp;</td><td style="width:10px;height:20px;background:rgb(237,127,127)" rowspan=2>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=3 colspan=2>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff" rowspan=2>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff">&nbsp;</td></tr>
-<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
-<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
-</table>
-<p id="footer">npm-install-test &mdash; npm@3.4.0</p>
diff --git a/deps/npm/html/doc/cli/npm-install.html b/deps/npm/html/doc/cli/npm-install.html
index c78787b01bc..df176ecb98b 100644
--- a/deps/npm/html/doc/cli/npm-install.html
+++ b/deps/npm/html/doc/cli/npm-install.html
@@ -277,5 +277,5 @@ affects a real use-case, it will be investigated.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-install &mdash; npm@2.14.9</p>
+<p id="footer">npm-install &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-link.html b/deps/npm/html/doc/cli/npm-link.html
index 60215e72547..304301e874c 100644
--- a/deps/npm/html/doc/cli/npm-link.html
+++ b/deps/npm/html/doc/cli/npm-link.html
@@ -72,5 +72,5 @@ include that scope, e.g.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-link &mdash; npm@2.14.9</p>
+<p id="footer">npm-link &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-logout.html b/deps/npm/html/doc/cli/npm-logout.html
index 84687415205..b2f671578de 100644
--- a/deps/npm/html/doc/cli/npm-logout.html
+++ b/deps/npm/html/doc/cli/npm-logout.html
@@ -55,5 +55,5 @@ that registry at the same time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-logout &mdash; npm@2.14.9</p>
+<p id="footer">npm-logout &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-ls.html b/deps/npm/html/doc/cli/npm-ls.html
index 35686c49916..2dd021accff 100644
--- a/deps/npm/html/doc/cli/npm-ls.html
+++ b/deps/npm/html/doc/cli/npm-ls.html
@@ -22,7 +22,7 @@ installed, as well as their dependencies, in a tree-structure.</p>
limit the results to only the paths to the packages named. Note that
nested packages will <em>also</em> show the paths to the specified packages.
For example, running <code>npm ls promzard</code> in npm&#39;s source tree will show:</p>
-<pre><code>npm@2.14.9 /path/to/npm
+<pre><code>npm@2.14.12 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
</code></pre><p>It will print out extraneous, missing, and invalid packages.</p>
@@ -97,5 +97,5 @@ project.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-ls &mdash; npm@2.14.9</p>
+<p id="footer">npm-ls &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-outdated.html b/deps/npm/html/doc/cli/npm-outdated.html
index 4b5508e88ba..c36135b39ee 100644
--- a/deps/npm/html/doc/cli/npm-outdated.html
+++ b/deps/npm/html/doc/cli/npm-outdated.html
@@ -67,5 +67,5 @@ project.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-outdated &mdash; npm@2.14.9</p>
+<p id="footer">npm-outdated &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-owner.html b/deps/npm/html/doc/cli/npm-owner.html
index ac3233fc17f..9b9d9773aa8 100644
--- a/deps/npm/html/doc/cli/npm-owner.html
+++ b/deps/npm/html/doc/cli/npm-owner.html
@@ -49,5 +49,5 @@ that is not implemented at this time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-owner &mdash; npm@2.14.9</p>
+<p id="footer">npm-owner &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-pack.html b/deps/npm/html/doc/cli/npm-pack.html
index 8ea2bbddade..f450c2310c3 100644
--- a/deps/npm/html/doc/cli/npm-pack.html
+++ b/deps/npm/html/doc/cli/npm-pack.html
@@ -41,5 +41,5 @@ overwritten the second time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-pack &mdash; npm@2.14.9</p>
+<p id="footer">npm-pack &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-ping.html b/deps/npm/html/doc/cli/npm-ping.html
index 72ff39432e4..408b06920fe 100644
--- a/deps/npm/html/doc/cli/npm-ping.html
+++ b/deps/npm/html/doc/cli/npm-ping.html
@@ -32,4 +32,4 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-ping &mdash; npm@2.14.9</p>
+<p id="footer">npm-ping &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-prefix.html b/deps/npm/html/doc/cli/npm-prefix.html
index d1a1632771c..8aa451991ca 100644
--- a/deps/npm/html/doc/cli/npm-prefix.html
+++ b/deps/npm/html/doc/cli/npm-prefix.html
@@ -38,5 +38,5 @@ to contain a package.json file unless <code>-g</code> is also specified.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-prefix &mdash; npm@2.14.9</p>
+<p id="footer">npm-prefix &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-prune.html b/deps/npm/html/doc/cli/npm-prune.html
index fe1f821526b..0da09b93a42 100644
--- a/deps/npm/html/doc/cli/npm-prune.html
+++ b/deps/npm/html/doc/cli/npm-prune.html
@@ -41,5 +41,5 @@ negate <code>NODE_ENV</code> being set to <code>production</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-prune &mdash; npm@2.14.9</p>
+<p id="footer">npm-prune &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-publish.html b/deps/npm/html/doc/cli/npm-publish.html
index 41037dab5e6..d0635202be7 100644
--- a/deps/npm/html/doc/cli/npm-publish.html
+++ b/deps/npm/html/doc/cli/npm-publish.html
@@ -66,5 +66,5 @@ it is removed with <a href="../cli/npm-unpublish.html">npm-unpublish(1)</a>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-publish &mdash; npm@2.14.9</p>
+<p id="footer">npm-publish &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-rebuild.html b/deps/npm/html/doc/cli/npm-rebuild.html
index 91f90bd2906..b720319e46c 100644
--- a/deps/npm/html/doc/cli/npm-rebuild.html
+++ b/deps/npm/html/doc/cli/npm-rebuild.html
@@ -38,5 +38,5 @@ the new binary.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-rebuild &mdash; npm@2.14.9</p>
+<p id="footer">npm-rebuild &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-repo.html b/deps/npm/html/doc/cli/npm-repo.html
index 2b142768e3e..beaa6e1b515 100644
--- a/deps/npm/html/doc/cli/npm-repo.html
+++ b/deps/npm/html/doc/cli/npm-repo.html
@@ -42,5 +42,5 @@ a <code>package.json</code> in the current folder and use the <code>name</code>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-repo &mdash; npm@2.14.9</p>
+<p id="footer">npm-repo &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-restart.html b/deps/npm/html/doc/cli/npm-restart.html
index a02f8500389..89fab946c22 100644
--- a/deps/npm/html/doc/cli/npm-restart.html
+++ b/deps/npm/html/doc/cli/npm-restart.html
@@ -53,5 +53,5 @@ behavior will be accompanied by an increase in major version number</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-restart &mdash; npm@2.14.9</p>
+<p id="footer">npm-restart &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-rm.html b/deps/npm/html/doc/cli/npm-rm.html
index 02caf3b5590..98d48e66763 100644
--- a/deps/npm/html/doc/cli/npm-rm.html
+++ b/deps/npm/html/doc/cli/npm-rm.html
@@ -39,5 +39,5 @@ on its behalf.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-rm &mdash; npm@2.14.9</p>
+<p id="footer">npm-rm &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-root.html b/deps/npm/html/doc/cli/npm-root.html
index 371e0ba4649..e229c7e21be 100644
--- a/deps/npm/html/doc/cli/npm-root.html
+++ b/deps/npm/html/doc/cli/npm-root.html
@@ -35,5 +35,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-root &mdash; npm@2.14.9</p>
+<p id="footer">npm-root &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-run-script.html b/deps/npm/html/doc/cli/npm-run-script.html
index 44ff6f256c3..35c2b1738c2 100644
--- a/deps/npm/html/doc/cli/npm-run-script.html
+++ b/deps/npm/html/doc/cli/npm-run-script.html
@@ -57,5 +57,5 @@ you should write:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-run-script &mdash; npm@2.14.9</p>
+<p id="footer">npm-run-script &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-search.html b/deps/npm/html/doc/cli/npm-search.html
index 6b3aea23a99..49e007b501c 100644
--- a/deps/npm/html/doc/cli/npm-search.html
+++ b/deps/npm/html/doc/cli/npm-search.html
@@ -49,5 +49,5 @@ fall on multiple lines.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-search &mdash; npm@2.14.9</p>
+<p id="footer">npm-search &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-shrinkwrap.html b/deps/npm/html/doc/cli/npm-shrinkwrap.html
index 67307c817d6..739c2bd3bc1 100644
--- a/deps/npm/html/doc/cli/npm-shrinkwrap.html
+++ b/deps/npm/html/doc/cli/npm-shrinkwrap.html
@@ -164,5 +164,5 @@ contents rather than versions.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-shrinkwrap &mdash; npm@2.14.9</p>
+<p id="footer">npm-shrinkwrap &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-star.html b/deps/npm/html/doc/cli/npm-star.html
index e684a203e61..93e7ac3e2ea 100644
--- a/deps/npm/html/doc/cli/npm-star.html
+++ b/deps/npm/html/doc/cli/npm-star.html
@@ -36,5 +36,5 @@ a vaguely positive way to show that you care.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-star &mdash; npm@2.14.9</p>
+<p id="footer">npm-star &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-stars.html b/deps/npm/html/doc/cli/npm-stars.html
index f52932a25d2..abc89af1a1c 100644
--- a/deps/npm/html/doc/cli/npm-stars.html
+++ b/deps/npm/html/doc/cli/npm-stars.html
@@ -37,5 +37,5 @@ you will most certainly enjoy this command.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-stars &mdash; npm@2.14.9</p>
+<p id="footer">npm-stars &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-start.html b/deps/npm/html/doc/cli/npm-start.html
index 1449c5f1d5d..24ae34878e9 100644
--- a/deps/npm/html/doc/cli/npm-start.html
+++ b/deps/npm/html/doc/cli/npm-start.html
@@ -13,7 +13,12 @@
<h2 id="synopsis">SYNOPSIS</h2>
<pre><code>npm start [-- &lt;args&gt;]
</code></pre><h2 id="description">DESCRIPTION</h2>
-<p>This runs a package&#39;s &quot;start&quot; script, if one was provided.</p>
+<p>This runs an arbitrary command specified in the package&#39;s <code>&quot;start&quot;</code> property of
+its <code>&quot;scripts&quot;</code> object. If no <code>&quot;start&quot;</code> property is specified on the
+<code>&quot;scripts&quot;</code> object, it will run <code>node server.js</code>.</p>
+<p>As of <a href="http://blog.npmjs.org/post/98131109725/npm-2-0-0"><code>npm@2.0.0</code></a>, you can
+use custom arguments when executing scripts. Refer to <a href="../cli/npm-run-script.html">npm-run-script(1)</a> for
+more details.</p>
<h2 id="see-also">SEE ALSO</h2>
<ul>
<li><a href="../cli/npm-run-script.html">npm-run-script(1)</a></li>
@@ -34,5 +39,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-start &mdash; npm@2.14.9</p>
+<p id="footer">npm-start &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-stop.html b/deps/npm/html/doc/cli/npm-stop.html
index 44d9b294fff..072b2056e62 100644
--- a/deps/npm/html/doc/cli/npm-stop.html
+++ b/deps/npm/html/doc/cli/npm-stop.html
@@ -34,5 +34,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-stop &mdash; npm@2.14.9</p>
+<p id="footer">npm-stop &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-submodule.html b/deps/npm/html/doc/cli/npm-submodule.html
deleted file mode 100644
index ec7f6e0b1fc..00000000000
--- a/deps/npm/html/doc/cli/npm-submodule.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html>
-<html>
- <title>npm-submodule</title>
- <meta http-equiv="content-type" value="text/html;utf-8">
- <link rel="stylesheet" type="text/css" href="../../static/style.css">
- <link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-submodule.html">
- <script async=true src="../../static/toc.js"></script>
-
- <body>
- <div id="wrapper">
-
-<h1><a href="../cli/npm-submodule.html">npm-submodule</a></h1> <p>Add a package as a git submodule</p>
-<h2 id="synopsis">SYNOPSIS</h2>
-<pre><code>npm submodule &lt;pkg&gt;
-</code></pre><h2 id="description">DESCRIPTION</h2>
-<p>If the specified package has a git repository url in its package.json
-description, then this command will add it as a git submodule at
-<code>node_modules/&lt;pkg name&gt;</code>.</p>
-<p>This is a convenience only. From then on, it&#39;s up to you to manage
-updates by using the appropriate git commands. npm will stubbornly
-refuse to update, modify, or remove anything with a <code>.git</code> subfolder
-in it.</p>
-<p>This command also does not install missing dependencies, if the package
-does not include them in its git repository. If <code>npm ls</code> reports that
-things are missing, you can either install, link, or submodule them yourself,
-or you can do <code>npm explore &lt;pkgname&gt; -- npm install</code> to install the
-dependencies into the submodule folder.</p>
-<h2 id="see-also">SEE ALSO</h2>
-<ul>
-<li><a href="../files/package.json.html">package.json(5)</a></li>
-<li>git help submodule</li>
-</ul>
-
-</div>
-
-<table border=0 cellspacing=0 cellpadding=0 id=npmlogo>
-<tr><td style="width:180px;height:10px;background:rgb(237,127,127)" colspan=18>&nbsp;</td></tr>
-<tr><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td><td style="width:40px;height:10px;background:#fff" colspan=4>&nbsp;</td><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td><td colspan=6 style="width:60px;height:10px;background:#fff">&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4>&nbsp;</td></tr>
-<tr><td colspan=2 style="width:20px;height:30px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=4 colspan=2>&nbsp;</td><td style="width:10px;height:20px;background:rgb(237,127,127)" rowspan=2>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:20px;height:10px;background:#fff" rowspan=3 colspan=2>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:#fff" rowspan=3>&nbsp;</td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff" rowspan=2>&nbsp;</td></tr>
-<tr><td style="width:10px;height:10px;background:#fff">&nbsp;</td></tr>
-<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
-<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
-</table>
-<p id="footer">npm-submodule &mdash; npm@1.4.29</p>
diff --git a/deps/npm/html/doc/cli/npm-tag.html b/deps/npm/html/doc/cli/npm-tag.html
index db8bbf3b2eb..2c6704ccae8 100644
--- a/deps/npm/html/doc/cli/npm-tag.html
+++ b/deps/npm/html/doc/cli/npm-tag.html
@@ -62,5 +62,5 @@ that do not begin with a number or the letter <code>v</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-tag &mdash; npm@2.14.9</p>
+<p id="footer">npm-tag &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-team.html b/deps/npm/html/doc/cli/npm-team.html
index cde1d76c513..67bf648e9aa 100644
--- a/deps/npm/html/doc/cli/npm-team.html
+++ b/deps/npm/html/doc/cli/npm-team.html
@@ -67,4 +67,4 @@ use the <code>npm access</code> command to grant or revoke the appropriate permi
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-team &mdash; npm@2.14.9</p>
+<p id="footer">npm-team &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-test.html b/deps/npm/html/doc/cli/npm-test.html
index 251c6b9da69..0c63efe9596 100644
--- a/deps/npm/html/doc/cli/npm-test.html
+++ b/deps/npm/html/doc/cli/npm-test.html
@@ -37,5 +37,5 @@ true.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-test &mdash; npm@2.14.9</p>
+<p id="footer">npm-test &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-uninstall.html b/deps/npm/html/doc/cli/npm-uninstall.html
index 594f74e18bb..39df356102d 100644
--- a/deps/npm/html/doc/cli/npm-uninstall.html
+++ b/deps/npm/html/doc/cli/npm-uninstall.html
@@ -57,5 +57,5 @@ npm uninstall dtrace-provider --save-optional
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-uninstall &mdash; npm@2.14.9</p>
+<p id="footer">npm-uninstall &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-unpublish.html b/deps/npm/html/doc/cli/npm-unpublish.html
index 27f91481b3a..12ca4b98a72 100644
--- a/deps/npm/html/doc/cli/npm-unpublish.html
+++ b/deps/npm/html/doc/cli/npm-unpublish.html
@@ -47,5 +47,5 @@ package again, a new version number must be used.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-unpublish &mdash; npm@2.14.9</p>
+<p id="footer">npm-unpublish &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-update.html b/deps/npm/html/doc/cli/npm-update.html
index fa2880507c1..f70b9b8281f 100644
--- a/deps/npm/html/doc/cli/npm-update.html
+++ b/deps/npm/html/doc/cli/npm-update.html
@@ -119,5 +119,5 @@ be <em>downgraded</em>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-update &mdash; npm@2.14.9</p>
+<p id="footer">npm-update &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-version.html b/deps/npm/html/doc/cli/npm-version.html
index dfcc1a6ec20..d0ccbf73c1e 100644
--- a/deps/npm/html/doc/cli/npm-version.html
+++ b/deps/npm/html/doc/cli/npm-version.html
@@ -95,5 +95,5 @@ and tag up to the server, and deletes the <code>build/temp</code> directory.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-version &mdash; npm@2.14.9</p>
+<p id="footer">npm-version &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-view.html b/deps/npm/html/doc/cli/npm-view.html
index d6d14628dc5..cbb64e7dfd8 100644
--- a/deps/npm/html/doc/cli/npm-view.html
+++ b/deps/npm/html/doc/cli/npm-view.html
@@ -82,5 +82,5 @@ the field name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-view &mdash; npm@2.14.9</p>
+<p id="footer">npm-view &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm-whoami.html b/deps/npm/html/doc/cli/npm-whoami.html
index 0d1361b4970..b6514d871db 100644
--- a/deps/npm/html/doc/cli/npm-whoami.html
+++ b/deps/npm/html/doc/cli/npm-whoami.html
@@ -33,5 +33,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-whoami &mdash; npm@2.14.9</p>
+<p id="footer">npm-whoami &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/cli/npm.html b/deps/npm/html/doc/cli/npm.html
index dfdc8270a7b..9844e540eeb 100644
--- a/deps/npm/html/doc/cli/npm.html
+++ b/deps/npm/html/doc/cli/npm.html
@@ -13,7 +13,7 @@
<h2 id="synopsis">SYNOPSIS</h2>
<pre><code>npm &lt;command&gt; [args]
</code></pre><h2 id="version">VERSION</h2>
-<p>2.14.9</p>
+<p>2.14.12</p>
<h2 id="description">DESCRIPTION</h2>
<p>npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
@@ -110,7 +110,7 @@ easily by doing <code>npm view npm contributors</code>.</p>
the issues list or ask on the mailing list.</p>
<ul>
<li><a href="http://github.com/npm/npm/issues">http://github.com/npm/npm/issues</a></li>
-<li><a href="&#x6d;&#x61;&#105;&#108;&#x74;&#x6f;&#x3a;&#x6e;&#x70;&#x6d;&#45;&#64;&#103;&#111;&#111;&#x67;&#x6c;&#x65;&#x67;&#x72;&#x6f;&#x75;&#112;&#x73;&#46;&#x63;&#111;&#109;">&#x6e;&#x70;&#x6d;&#45;&#64;&#103;&#111;&#111;&#x67;&#x6c;&#x65;&#x67;&#x72;&#x6f;&#x75;&#112;&#x73;&#46;&#x63;&#111;&#109;</a></li>
+<li><a href="&#109;&#97;&#105;&#x6c;&#116;&#111;&#x3a;&#110;&#112;&#109;&#x2d;&#x40;&#x67;&#x6f;&#x6f;&#x67;&#108;&#x65;&#103;&#x72;&#x6f;&#x75;&#112;&#x73;&#46;&#99;&#111;&#109;">&#110;&#112;&#109;&#x2d;&#x40;&#x67;&#x6f;&#x6f;&#x67;&#108;&#x65;&#103;&#x72;&#x6f;&#x75;&#112;&#x73;&#46;&#99;&#111;&#109;</a></li>
</ul>
<h2 id="bugs">BUGS</h2>
<p>When you find issues, please report them:</p>
@@ -118,7 +118,7 @@ the issues list or ask on the mailing list.</p>
<li>web:
<a href="http://github.com/npm/npm/issues">http://github.com/npm/npm/issues</a></li>
<li>email:
-<a href="&#x6d;&#x61;&#x69;&#108;&#116;&#111;&#x3a;&#110;&#112;&#x6d;&#x2d;&#64;&#x67;&#x6f;&#x6f;&#x67;&#108;&#x65;&#103;&#x72;&#x6f;&#x75;&#112;&#115;&#x2e;&#99;&#x6f;&#109;">&#110;&#112;&#x6d;&#x2d;&#64;&#x67;&#x6f;&#x6f;&#x67;&#108;&#x65;&#103;&#x72;&#x6f;&#x75;&#112;&#115;&#x2e;&#99;&#x6f;&#109;</a></li>
+<a href="&#109;&#97;&#x69;&#108;&#116;&#x6f;&#x3a;&#110;&#x70;&#109;&#x2d;&#x40;&#103;&#111;&#111;&#103;&#108;&#x65;&#x67;&#x72;&#x6f;&#117;&#x70;&#x73;&#x2e;&#x63;&#x6f;&#x6d;">&#110;&#x70;&#109;&#x2d;&#x40;&#103;&#111;&#111;&#103;&#108;&#x65;&#x67;&#x72;&#x6f;&#117;&#x70;&#x73;&#x2e;&#x63;&#x6f;&#x6d;</a></li>
</ul>
<p>Be sure to include <em>all</em> of the output from the npm command that didn&#39;t work
as expected. The <code>npm-debug.log</code> file is also helpful to provide.</p>
@@ -128,7 +128,7 @@ will no doubt tell you to put the output in a gist or email.</p>
<p><a href="http://blog.izs.me/">Isaac Z. Schlueter</a> ::
<a href="https://github.com/isaacs/">isaacs</a> ::
<a href="http://twitter.com/izs">@izs</a> ::
-<a href="&#x6d;&#x61;&#105;&#108;&#x74;&#111;&#58;&#x69;&#64;&#105;&#122;&#115;&#x2e;&#x6d;&#101;">&#x69;&#64;&#105;&#122;&#115;&#x2e;&#x6d;&#101;</a></p>
+<a href="&#x6d;&#x61;&#x69;&#108;&#x74;&#111;&#x3a;&#x69;&#x40;&#105;&#x7a;&#115;&#x2e;&#x6d;&#101;">&#x69;&#x40;&#105;&#x7a;&#115;&#x2e;&#x6d;&#101;</a></p>
<h2 id="see-also">SEE ALSO</h2>
<ul>
<li><a href="../cli/npm-help.html">npm-help(1)</a></li>
@@ -154,5 +154,5 @@ will no doubt tell you to put the output in a gist or email.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm &mdash; npm@2.14.9</p>
+<p id="footer">npm &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/files/npm-folders.html b/deps/npm/html/doc/files/npm-folders.html
index 2fbe542ca27..8cb1493bbb4 100644
--- a/deps/npm/html/doc/files/npm-folders.html
+++ b/deps/npm/html/doc/files/npm-folders.html
@@ -44,7 +44,7 @@ Global installs on Windows go to <code>{prefix}/node_modules</code> (that is, no
<p>Scoped packages are installed the same way, except they are grouped together
in a sub-folder of the relevant <code>node_modules</code> folder with the name of that
scope prefix by the @ symbol, e.g. <code>npm install @myorg/package</code> would place
-the package in <code>{prefix}/node_modules/@myorg/package</code>. See <code><a href="../misc/scopes.html">scopes(7)</a></code> for
+the package in <code>{prefix}/node_modules/@myorg/package</code>. See <code><a href="../misc/scope.html">scope(7)</a></code> for
more details.</p>
<p>If you wish to <code>require()</code> a package, then install it locally.</p>
<h3 id="executables">Executables</h3>
@@ -184,5 +184,5 @@ cannot be found elsewhere. See <code><a href="../files/package.json.html">packa
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-folders &mdash; npm@2.14.9</p>
+<p id="footer">npm-folders &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/files/npm-global.html b/deps/npm/html/doc/files/npm-global.html
index 2fbe542ca27..8cb1493bbb4 100644
--- a/deps/npm/html/doc/files/npm-global.html
+++ b/deps/npm/html/doc/files/npm-global.html
@@ -44,7 +44,7 @@ Global installs on Windows go to <code>{prefix}/node_modules</code> (that is, no
<p>Scoped packages are installed the same way, except they are grouped together
in a sub-folder of the relevant <code>node_modules</code> folder with the name of that
scope prefix by the @ symbol, e.g. <code>npm install @myorg/package</code> would place
-the package in <code>{prefix}/node_modules/@myorg/package</code>. See <code><a href="../misc/scopes.html">scopes(7)</a></code> for
+the package in <code>{prefix}/node_modules/@myorg/package</code>. See <code><a href="../misc/scope.html">scope(7)</a></code> for
more details.</p>
<p>If you wish to <code>require()</code> a package, then install it locally.</p>
<h3 id="executables">Executables</h3>
@@ -184,5 +184,5 @@ cannot be found elsewhere. See <code><a href="../files/package.json.html">packa
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-folders &mdash; npm@2.14.9</p>
+<p id="footer">npm-folders &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/files/npm-json.html b/deps/npm/html/doc/files/npm-json.html
index 2984bf46fbc..1f50c9fcf48 100644
--- a/deps/npm/html/doc/files/npm-json.html
+++ b/deps/npm/html/doc/files/npm-json.html
@@ -565,5 +565,5 @@ ignored.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">package.json &mdash; npm@2.14.9</p>
+<p id="footer">package.json &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/files/npmrc.html b/deps/npm/html/doc/files/npmrc.html
index adac20f09ce..cff1064d1d1 100644
--- a/deps/npm/html/doc/files/npmrc.html
+++ b/deps/npm/html/doc/files/npmrc.html
@@ -83,5 +83,5 @@ manner.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npmrc &mdash; npm@2.14.9</p>
+<p id="footer">npmrc &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/files/package.json.html b/deps/npm/html/doc/files/package.json.html
index 2984bf46fbc..1f50c9fcf48 100644
--- a/deps/npm/html/doc/files/package.json.html
+++ b/deps/npm/html/doc/files/package.json.html
@@ -565,5 +565,5 @@ ignored.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">package.json &mdash; npm@2.14.9</p>
+<p id="footer">package.json &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/index.html b/deps/npm/html/doc/index.html
index 90f9619d2b7..2a194912db3 100644
--- a/deps/npm/html/doc/index.html
+++ b/deps/npm/html/doc/index.html
@@ -244,5 +244,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-index &mdash; npm@2.14.9</p>
+<p id="footer">npm-index &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-coding-style.html b/deps/npm/html/doc/misc/npm-coding-style.html
index 4efacc59661..cabbf6fd470 100644
--- a/deps/npm/html/doc/misc/npm-coding-style.html
+++ b/deps/npm/html/doc/misc/npm-coding-style.html
@@ -147,5 +147,5 @@ set to anything.&quot;</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-coding-style &mdash; npm@2.14.9</p>
+<p id="footer">npm-coding-style &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-config.html b/deps/npm/html/doc/misc/npm-config.html
index ad729803388..480f2d40860 100644
--- a/deps/npm/html/doc/misc/npm-config.html
+++ b/deps/npm/html/doc/misc/npm-config.html
@@ -799,5 +799,5 @@ exit successfully.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-config &mdash; npm@2.14.9</p>
+<p id="footer">npm-config &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-developers.html b/deps/npm/html/doc/misc/npm-developers.html
index cad3cf7f833..add93733e0b 100644
--- a/deps/npm/html/doc/misc/npm-developers.html
+++ b/deps/npm/html/doc/misc/npm-developers.html
@@ -195,5 +195,5 @@ from a fresh checkout.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-developers &mdash; npm@2.14.9</p>
+<p id="footer">npm-developers &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-disputes.html b/deps/npm/html/doc/misc/npm-disputes.html
index 42b37a4e574..51c2cd56b4b 100644
--- a/deps/npm/html/doc/misc/npm-disputes.html
+++ b/deps/npm/html/doc/misc/npm-disputes.html
@@ -13,7 +13,7 @@
<h2 id="synopsis">SYNOPSIS</h2>
<ol>
<li>Get the author email with <code>npm owner ls &lt;pkgname&gt;</code></li>
-<li>Email the author, CC <a href="&#x6d;&#x61;&#x69;&#x6c;&#116;&#x6f;&#58;&#115;&#117;&#x70;&#112;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#106;&#115;&#46;&#x63;&#x6f;&#x6d;">&#115;&#117;&#x70;&#112;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#106;&#115;&#46;&#x63;&#x6f;&#x6d;</a></li>
+<li>Email the author, CC <a href="&#x6d;&#x61;&#105;&#108;&#x74;&#111;&#x3a;&#x73;&#117;&#x70;&#x70;&#x6f;&#114;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#x73;&#46;&#x63;&#x6f;&#x6d;">&#x73;&#117;&#x70;&#x70;&#x6f;&#114;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#x73;&#46;&#x63;&#x6f;&#x6d;</a></li>
<li>After a few weeks, if there&#39;s no resolution, we&#39;ll sort it out.</li>
</ol>
<p>Don&#39;t squat on package names. Publish code or move out of the way.</p>
@@ -51,12 +51,12 @@ Joe&#39;s appropriate course of action in each case is the same.</p>
owner (Bob).</li>
<li>Joe emails Bob, explaining the situation <strong>as respectfully as
possible</strong>, and what he would like to do with the module name. He
-adds the npm support staff <a href="&#x6d;&#97;&#x69;&#x6c;&#116;&#x6f;&#x3a;&#x73;&#117;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#106;&#x73;&#x2e;&#99;&#111;&#x6d;">&#x73;&#117;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#106;&#x73;&#x2e;&#99;&#111;&#x6d;</a> to the CC list of
+adds the npm support staff <a href="&#x6d;&#x61;&#x69;&#108;&#116;&#x6f;&#x3a;&#x73;&#117;&#x70;&#x70;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#115;&#46;&#x63;&#x6f;&#x6d;">&#x73;&#117;&#x70;&#x70;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#115;&#46;&#x63;&#x6f;&#x6d;</a> to the CC list of
the email. Mention in the email that Bob can run <code>npm owner add
joe foo</code> to add Joe as an owner of the <code>foo</code> package.</li>
<li>After a reasonable amount of time, if Bob has not responded, or if
Bob and Joe can&#39;t come to any sort of resolution, email support
-<a href="&#x6d;&#x61;&#105;&#108;&#116;&#111;&#x3a;&#115;&#117;&#112;&#x70;&#111;&#x72;&#116;&#x40;&#x6e;&#112;&#109;&#x6a;&#115;&#x2e;&#99;&#111;&#109;">&#115;&#117;&#112;&#x70;&#111;&#x72;&#116;&#x40;&#x6e;&#112;&#109;&#x6a;&#115;&#x2e;&#99;&#111;&#109;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is
+<a href="&#109;&#x61;&#x69;&#x6c;&#116;&#111;&#x3a;&#x73;&#x75;&#x70;&#x70;&#x6f;&#114;&#116;&#64;&#x6e;&#112;&#109;&#x6a;&#x73;&#x2e;&#x63;&#111;&#109;">&#x73;&#x75;&#x70;&#x70;&#x6f;&#114;&#116;&#64;&#x6e;&#112;&#109;&#x6a;&#x73;&#x2e;&#x63;&#111;&#109;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is
usually at least 4 weeks, but extra time is allowed around common
holidays.)</li>
</ol>
@@ -112,5 +112,5 @@ things into it.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-disputes &mdash; npm@2.14.9</p>
+<p id="footer">npm-disputes &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-faq.html b/deps/npm/html/doc/misc/npm-faq.html
index d54ede24899..4dd82dd8fc0 100644
--- a/deps/npm/html/doc/misc/npm-faq.html
+++ b/deps/npm/html/doc/misc/npm-faq.html
@@ -237,7 +237,7 @@ that has a package.json in its root, or a git url.
<p>To check if the registry is down, open up
<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a> in a web browser. This will also tell
you if you are just unable to access the internet for some reason.</p>
-<p>If the registry IS down, let us know by emailing <a href="&#x6d;&#97;&#x69;&#108;&#x74;&#x6f;&#x3a;&#115;&#x75;&#112;&#112;&#111;&#114;&#116;&#x40;&#x6e;&#x70;&#x6d;&#106;&#115;&#46;&#99;&#111;&#x6d;">&#115;&#x75;&#112;&#112;&#111;&#114;&#116;&#x40;&#x6e;&#x70;&#x6d;&#106;&#115;&#46;&#99;&#111;&#x6d;</a>
+<p>If the registry IS down, let us know by emailing <a href="&#x6d;&#97;&#x69;&#108;&#x74;&#111;&#x3a;&#115;&#x75;&#x70;&#x70;&#x6f;&#x72;&#116;&#x40;&#x6e;&#x70;&#109;&#106;&#115;&#x2e;&#99;&#x6f;&#109;">&#115;&#x75;&#x70;&#x70;&#x6f;&#x72;&#116;&#x40;&#x6e;&#x70;&#109;&#106;&#115;&#x2e;&#99;&#x6f;&#109;</a>
or posting an issue at <a href="https://github.com/npm/npm/issues">https://github.com/npm/npm/issues</a>. If it&#39;s
down for the world (and not just on your local network) then we&#39;re
probably already being pinged about it.</p>
@@ -308,5 +308,5 @@ good folks at <a href="http://www.npmjs.com">npm, Inc.</a></p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-faq &mdash; npm@2.14.9</p>
+<p id="footer">npm-faq &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-index.html b/deps/npm/html/doc/misc/npm-index.html
index cd47fe0133e..4f07f2e93f5 100644
--- a/deps/npm/html/doc/misc/npm-index.html
+++ b/deps/npm/html/doc/misc/npm-index.html
@@ -244,5 +244,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-index &mdash; npm@2.14.9</p>
+<p id="footer">npm-index &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-orgs.html b/deps/npm/html/doc/misc/npm-orgs.html
index 7cc6c026045..a45b6e1b872 100644
--- a/deps/npm/html/doc/misc/npm-orgs.html
+++ b/deps/npm/html/doc/misc/npm-orgs.html
@@ -86,4 +86,4 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-orgs &mdash; npm@2.14.9</p>
+<p id="footer">npm-orgs &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-registry.html b/deps/npm/html/doc/misc/npm-registry.html
index 3981b6badd6..378b7ada06b 100644
--- a/deps/npm/html/doc/misc/npm-registry.html
+++ b/deps/npm/html/doc/misc/npm-registry.html
@@ -70,5 +70,5 @@ effectively implement the entire CouchDB API anyway.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-registry &mdash; npm@2.14.9</p>
+<p id="footer">npm-registry &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-scope.html b/deps/npm/html/doc/misc/npm-scope.html
index 7ae69ec4ba7..80239fa57a9 100644
--- a/deps/npm/html/doc/misc/npm-scope.html
+++ b/deps/npm/html/doc/misc/npm-scope.html
@@ -91,5 +91,5 @@ that registry instead.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-scope &mdash; npm@2.14.9</p>
+<p id="footer">npm-scope &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/npm-scripts.html b/deps/npm/html/doc/misc/npm-scripts.html
index 0dd237bc506..f97eac727cc 100644
--- a/deps/npm/html/doc/misc/npm-scripts.html
+++ b/deps/npm/html/doc/misc/npm-scripts.html
@@ -176,7 +176,7 @@ print a warning and exit successfully.</li>
by simply describing your package appropriately. In general, this
will lead to a more robust and consistent state.</li>
<li>Inspect the env to determine where to put things. For instance, if
-the <code>npm_config_binroot</code> environ is set to <code>/home/user/bin</code>, then
+the <code>npm_config_binroot</code> environment variable is set to <code>/home/user/bin</code>, then
don&#39;t try to install executables into <code>/usr/local/bin</code>. The user
probably set it up that way for a reason.</li>
<li>Don&#39;t prefix your script commands with &quot;sudo&quot;. If root permissions
@@ -207,5 +207,5 @@ scripts is for compilation which must be done on the target architecture.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-scripts &mdash; npm@2.14.9</p>
+<p id="footer">npm-scripts &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/removing-npm.html b/deps/npm/html/doc/misc/removing-npm.html
index 991fdeaa826..4bd86ef8e95 100644
--- a/deps/npm/html/doc/misc/removing-npm.html
+++ b/deps/npm/html/doc/misc/removing-npm.html
@@ -57,5 +57,5 @@ modules. To track those down, you can do the following:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">removing-npm &mdash; npm@2.14.9</p>
+<p id="footer">removing-npm &mdash; npm@2.14.12</p>
diff --git a/deps/npm/html/doc/misc/semver.html b/deps/npm/html/doc/misc/semver.html
index c8e113d62e7..0be3fff6aa3 100644
--- a/deps/npm/html/doc/misc/semver.html
+++ b/deps/npm/html/doc/misc/semver.html
@@ -282,5 +282,5 @@ range, use the <code>satisfies(version, range)</code> function.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">semver &mdash; npm@2.14.9</p>
+<p id="footer">semver &mdash; npm@2.14.12</p>
diff --git a/deps/npm/lib/access.js b/deps/npm/lib/access.js
index 790a760cb72..158ce50544f 100644
--- a/deps/npm/lib/access.js
+++ b/deps/npm/lib/access.js
@@ -35,6 +35,7 @@ access.completion = function (opts, cb) {
} else {
return cb(null, [])
}
+ break
case 'public':
case 'restricted':
case 'ls-packages':
@@ -72,7 +73,9 @@ function access (args, cb) {
}
function parseParams (cmd, args, cb) {
- var params = {}
+ // mapToRegistry will complain if package is undefined,
+ // but it's not needed for ls-packages
+ var params = { 'package': '' }
if (cmd === 'grant') {
params.permissions = args.shift()
}
@@ -81,22 +84,25 @@ function parseParams (cmd, args, cb) {
params.scope = entity[0]
params.team = entity[1]
}
- getPackage(args.shift(), function (err, pkg) {
- if (err) { return cb(err) }
- params.package = pkg
- if (!params.scope && cmd === 'ls-packages') {
+ if (cmd === 'ls-packages') {
+ if (!params.scope) {
whoami([], true, function (err, scope) {
params.scope = scope
cb(err, params)
})
} else {
- if (cmd === 'ls-collaborators') {
- params.user = args.shift()
- }
cb(null, params)
}
- })
+ } else {
+ getPackage(args.shift(), function (err, pkg) {
+ if (err) return cb(err)
+ params.package = pkg
+
+ if (cmd === 'ls-collaborators') params.user = args.shift()
+ cb(null, params)
+ })
+ }
}
function getPackage (name, cb) {
@@ -105,6 +111,17 @@ function getPackage (name, cb) {
} else {
readPackageJson(
resolve(npm.prefix, 'package.json'),
- function (err, data) { cb(err, data.name) })
+ function (err, data) {
+ if (err) {
+ if (err.code === 'ENOENT') {
+ cb(new Error('no package name passed to command and no package.json found'))
+ } else {
+ cb(err)
+ }
+ } else {
+ cb(null, data.name)
+ }
+ }
+ )
}
}
diff --git a/deps/npm/man/man1/npm-install-test.1 b/deps/npm/man/man1/npm-install-test.1
deleted file mode 100644
index e2edecfc03a..00000000000
--- a/deps/npm/man/man1/npm-install-test.1
+++ /dev/null
@@ -1,32 +0,0 @@
-.TH "NPM" "" "November 2015" "" ""
-.SH "NAME"
-\fBnpm\fR
-.SH SYNOPSIS
-.P
-.RS 2
-.nf
-npm install\-test (with no args, in package dir)
-npm install\-test [<@scope>/]<name>
-npm install\-test [<@scope>/]<name>@<tag>
-npm install\-test [<@scope>/]<name>@<version>
-npm install\-test [<@scope>/]<name>@<version range>
-npm install\-test <tarball file>
-npm install\-test <tarball url>
-npm install\-test <folder>
-
-alias: npm it
-common options: [\-\-save|\-\-save\-dev|\-\-save\-optional] [\-\-save\-exact] [\-\-dry\-run]
-.fi
-.RE
-.SH DESCRIPTION
-.P
-This command runs an \fBnpm install\fP followed immediately by an \fBnpm test\fP\|\. It
-takes exactly the same arguments as \fBnpm install\fP\|\.
-.SH SEE ALSO
-.RS 0
-.IP \(bu 2
-npm help install
-.IP \(bu 2
-npm help test
-
-.RE
diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1
index bba1a27a2df..bfddf130560 100644
--- a/deps/npm/man/man1/npm-ls.1
+++ b/deps/npm/man/man1/npm-ls.1
@@ -23,7 +23,7 @@ For example, running \fBnpm ls promzard\fP in npm's source tree will show:
.P
.RS 2
.nf
-npm@2.14.9 /path/to/npm
+npm@2.14.12 /path/to/npm
└─┬ init\-package\-json@0\.0\.4
└── promzard@0\.1\.5
.fi
diff --git a/deps/npm/man/man1/npm-start.1 b/deps/npm/man/man1/npm-start.1
index 9f027a9ffb9..2d52ecb34d3 100644
--- a/deps/npm/man/man1/npm-start.1
+++ b/deps/npm/man/man1/npm-start.1
@@ -10,7 +10,13 @@ npm start [\-\- <args>]
.RE
.SH DESCRIPTION
.P
-This runs a package's "start" script, if one was provided\.
+This runs an arbitrary command specified in the package's \fB"start"\fP property of
+its \fB"scripts"\fP object\. If no \fB"start"\fP property is specified on the
+\fB"scripts"\fP object, it will run \fBnode server\.js\fP\|\.
+.P
+As of \fBnpm@2\.0\.0\fP \fIhttp://blog\.npmjs\.org/post/98131109725/npm\-2\-0\-0\fR, you can
+use custom arguments when executing scripts\. Refer to npm help run\-script for
+more details\.
.SH SEE ALSO
.RS 0
.IP \(bu 2
diff --git a/deps/npm/man/man1/npm-submodule.1 b/deps/npm/man/man1/npm-submodule.1
deleted file mode 100644
index 79d0688edda..00000000000
--- a/deps/npm/man/man1/npm-submodule.1
+++ /dev/null
@@ -1,41 +0,0 @@
-.\" Generated with Ronnjs 0.4.0
-.\" http://github.com/kapouer/ronnjs
-.
-.TH "NPM\-SUBMODULE" "1" "November 2015" "" ""
-.
-.SH "NAME"
-\fBnpm-submodule\fR \-\- Add a package as a git submodule
-.
-.SH "SYNOPSIS"
-.
-.nf
-npm submodule <pkg>
-.
-.fi
-.
-.SH "DESCRIPTION"
-If the specified package has a git repository url in its package\.json
-description, then this command will add it as a git submodule at \fBnode_modules/<pkg name>\fR\|\.
-.
-.P
-This is a convenience only\. From then on, it\'s up to you to manage
-updates by using the appropriate git commands\. npm will stubbornly
-refuse to update, modify, or remove anything with a \fB\|\.git\fR subfolder
-in it\.
-.
-.P
-This command also does not install missing dependencies, if the package
-does not include them in its git repository\. If \fBnpm ls\fR reports that
-things are missing, you can either install, link, or submodule them yourself,
-or you can do \fBnpm explore <pkgname> \-\- npm install\fR to install the
-dependencies into the submodule folder\.
-.
-.SH "SEE ALSO"
-.
-.IP "\(bu" 4
-npm help 5 package\.json
-.
-.IP "\(bu" 4
-git help submodule
-.
-.IP "" 0
diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1
index ec0a8998585..f3c3df9295b 100644
--- a/deps/npm/man/man1/npm.1
+++ b/deps/npm/man/man1/npm.1
@@ -10,7 +10,7 @@ npm <command> [args]
.RE
.SH VERSION
.P
-2.14.9
+2.14.12
.SH DESCRIPTION
.P
npm is the package manager for the Node JavaScript platform\. It puts
diff --git a/deps/npm/man/man3/npm-submodule.3 b/deps/npm/man/man3/npm-submodule.3
deleted file mode 100644
index 70a160e10da..00000000000
--- a/deps/npm/man/man3/npm-submodule.3
+++ /dev/null
@@ -1,41 +0,0 @@
-.\" Generated with Ronnjs 0.4.0
-.\" http://github.com/kapouer/ronnjs
-.
-.TH "NPM\-SUBMODULE" "3" "November 2015" "" ""
-.
-.SH "NAME"
-\fBnpm-submodule\fR \-\- Add a package as a git submodule
-.
-.SH "SYNOPSIS"
-.
-.nf
-npm\.commands\.submodule(packages, callback)
-.
-.fi
-.
-.SH "DESCRIPTION"
-For each package specified, npm will check if it has a git repository url
-in its package\.json description then add it as a git submodule at \fBnode_modules/<pkg name>\fR\|\.
-.
-.P
-This is a convenience only\. From then on, it\'s up to you to manage
-updates by using the appropriate git commands\. npm will stubbornly
-refuse to update, modify, or remove anything with a \fB\|\.git\fR subfolder
-in it\.
-.
-.P
-This command also does not install missing dependencies, if the package
-does not include them in its git repository\. If \fBnpm ls\fR reports that
-things are missing, you can either install, link, or submodule them yourself,
-or you can do \fBnpm explore <pkgname> \-\- npm install\fR to install the
-dependencies into the submodule folder\.
-.
-.SH "SEE ALSO"
-.
-.IP "\(bu" 4
-npm help json
-.
-.IP "\(bu" 4
-git help submodule
-.
-.IP "" 0
diff --git a/deps/npm/man/man3/npm.3 b/deps/npm/man/man3/npm.3
index c57152b13bb..6d1edd1c335 100644
--- a/deps/npm/man/man3/npm.3
+++ b/deps/npm/man/man3/npm.3
@@ -20,7 +20,7 @@ npm\.load([configObject, ]function (er, npm) {
.RE
.SH VERSION
.P
-2.14.9
+2.14.12
.SH DESCRIPTION
.P
This is the API documentation for npm\.
diff --git a/deps/npm/man/man5/npm-folders.5 b/deps/npm/man/man5/npm-folders.5
index e52857ec548..3568e77646c 100644
--- a/deps/npm/man/man5/npm-folders.5
+++ b/deps/npm/man/man5/npm-folders.5
@@ -49,7 +49,7 @@ Global installs on Windows go to \fB{prefix}/node_modules\fP (that is, no
Scoped packages are installed the same way, except they are grouped together
in a sub\-folder of the relevant \fBnode_modules\fP folder with the name of that
scope prefix by the @ symbol, e\.g\. \fBnpm install @myorg/package\fP would place
-the package in \fB{prefix}/node_modules/@myorg/package\fP\|\. See npm help 7 \fBscopes\fP for
+the package in \fB{prefix}/node_modules/@myorg/package\fP\|\. See npm help 7 \fBscope\fP for
more details\.
.P
If you wish to \fBrequire()\fP a package, then install it locally\.
diff --git a/deps/npm/man/man5/npm-global.5 b/deps/npm/man/man5/npm-global.5
index e52857ec548..3568e77646c 100644
--- a/deps/npm/man/man5/npm-global.5
+++ b/deps/npm/man/man5/npm-global.5
@@ -49,7 +49,7 @@ Global installs on Windows go to \fB{prefix}/node_modules\fP (that is, no
Scoped packages are installed the same way, except they are grouped together
in a sub\-folder of the relevant \fBnode_modules\fP folder with the name of that
scope prefix by the @ symbol, e\.g\. \fBnpm install @myorg/package\fP would place
-the package in \fB{prefix}/node_modules/@myorg/package\fP\|\. See npm help 7 \fBscopes\fP for
+the package in \fB{prefix}/node_modules/@myorg/package\fP\|\. See npm help 7 \fBscope\fP for
more details\.
.P
If you wish to \fBrequire()\fP a package, then install it locally\.
diff --git a/deps/npm/man/man7/npm-scripts.7 b/deps/npm/man/man7/npm-scripts.7
index d3a5ce9c512..c4a1c3b5d80 100644
--- a/deps/npm/man/man7/npm-scripts.7
+++ b/deps/npm/man/man7/npm-scripts.7
@@ -252,7 +252,7 @@ by simply describing your package appropriately\. In general, this
will lead to a more robust and consistent state\.
.IP \(bu 2
Inspect the env to determine where to put things\. For instance, if
-the \fBnpm_config_binroot\fP environ is set to \fB/home/user/bin\fP, then
+the \fBnpm_config_binroot\fP environment variable is set to \fB/home/user/bin\fP, then
don't try to install executables into \fB/usr/local/bin\fP\|\. The user
probably set it up that way for a reason\.
.IP \(bu 2
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/index.js b/deps/npm/node_modules/ansi-regex/index.js
index 4906755bc93..4906755bc93 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/index.js
+++ b/deps/npm/node_modules/ansi-regex/index.js
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/license b/deps/npm/node_modules/ansi-regex/license
index 654d0bfe943..654d0bfe943 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/license
+++ b/deps/npm/node_modules/ansi-regex/license
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/package.json b/deps/npm/node_modules/ansi-regex/package.json
index 7fc07677a04..88457331688 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/package.json
+++ b/deps/npm/node_modules/ansi-regex/package.json
@@ -69,7 +69,7 @@
"homepage": "https://github.com/sindresorhus/ansi-regex",
"_id": "ansi-regex@2.0.0",
"_shasum": "c5061b6e0ef8a81775e50f5d66151bf6bf371107",
- "_from": "ansi-regex@>=2.0.0 <3.0.0",
+ "_from": "ansi-regex@2.0.0",
"_npmVersion": "2.11.2",
"_nodeVersion": "0.12.5",
"_npmUser": {
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/readme.md b/deps/npm/node_modules/ansi-regex/readme.md
index 1a4894ec111..1a4894ec111 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/readme.md
+++ b/deps/npm/node_modules/ansi-regex/readme.md
diff --git a/deps/npm/node_modules/fstream-npm/.travis.yml b/deps/npm/node_modules/fstream-npm/.travis.yml
index c225dd42746..3637c003fcd 100644
--- a/deps/npm/node_modules/fstream-npm/.travis.yml
+++ b/deps/npm/node_modules/fstream-npm/.travis.yml
@@ -1,13 +1,15 @@
language: node_js
sudo: false
node_js:
+ - "5"
+ - "4"
- iojs
- "0.12"
- "0.10"
- "0.8"
before_install:
- "npm config set spin false"
- - "npm install -g npm/npm#2.x"
+ - "npm install -g npm"
script: "npm test"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
diff --git a/deps/npm/node_modules/fstream-npm/fstream-npm.js b/deps/npm/node_modules/fstream-npm/fstream-npm.js
index 5541c319719..8f8114fe89a 100644
--- a/deps/npm/node_modules/fstream-npm/fstream-npm.js
+++ b/deps/npm/node_modules/fstream-npm/fstream-npm.js
@@ -89,17 +89,19 @@ Packer.prototype.readBundledLinks = function () {
}
Packer.prototype.applyIgnores = function (entry, partial, entryObj) {
- // package.json files can never be ignored.
- if (entry === 'package.json') return true
+ if (!entryObj || entryObj.type !== 'Directory') {
+ // package.json files can never be ignored.
+ if (entry === 'package.json') return true
- // readme files should never be ignored.
- if (entry.match(/^readme(\.[^\.]*)$/i)) return true
+ // readme files should never be ignored.
+ if (entry.match(/^readme(\.[^\.]*)$/i)) return true
- // license files should never be ignored.
- if (entry.match(/^(license|licence)(\.[^\.]*)?$/i)) return true
+ // license files should never be ignored.
+ if (entry.match(/^(license|licence)(\.[^\.]*)?$/i)) return true
- // changelogs should never be ignored.
- if (entry.match(/^(changes|changelog|history)(\.[^\.]*)?$/i)) return true
+ // changelogs should never be ignored.
+ if (entry.match(/^(changes|changelog|history)(\.[^\.]*)?$/i)) return true
+ }
// special rules. see below.
if (entry === 'node_modules' && this.packageRoot) return true
@@ -116,7 +118,8 @@ Packer.prototype.applyIgnores = function (entry, partial, entryObj) {
entry === '.hg' ||
entry === '.lock-wscript' ||
entry.match(/^\.wafpickle-[0-9]+$/) ||
- entry === 'config.gypi' ||
+ (this.parent && this.parent.packageRoot && this.basename === 'build' &&
+ entry === 'config.gypi') ||
entry === 'npm-debug.log' ||
entry === '.npmrc' ||
entry.match(/^\..*\.swp$/) ||
diff --git a/deps/npm/node_modules/fstream-npm/node_modules/fstream-ignore/package.json b/deps/npm/node_modules/fstream-npm/node_modules/fstream-ignore/package.json
index fd97e9002ba..ad55dd41f1a 100644
--- a/deps/npm/node_modules/fstream-npm/node_modules/fstream-ignore/package.json
+++ b/deps/npm/node_modules/fstream-npm/node_modules/fstream-ignore/package.json
@@ -26,8 +26,6 @@
"tap": "^2.2.0"
},
"license": "ISC",
- "readme": "# fstream-ignore\n\nA fstream DirReader that filters out files that match globs in `.ignore`\nfiles throughout the tree, like how git ignores files based on a\n`.gitignore` file.\n\nHere's an example:\n\n```javascript\nvar Ignore = require(\"fstream-ignore\")\nIgnore({ path: __dirname\n , ignoreFiles: [\".ignore\", \".gitignore\"]\n })\n .on(\"child\", function (c) {\n console.error(c.path.substr(c.root.path.length + 1))\n })\n .pipe(tar.Pack())\n .pipe(fs.createWriteStream(\"foo.tar\"))\n```\n\nThis will tar up the files in __dirname into `foo.tar`, ignoring\nanything matched by the globs in any .iginore or .gitignore file.\n",
- "readmeFilename": "README.md",
"gitHead": "86c835eef61049496003f6b90c1e6c1236c92d6a",
"bugs": {
"url": "https://github.com/isaacs/fstream-ignore/issues"
@@ -35,5 +33,28 @@
"homepage": "https://github.com/isaacs/fstream-ignore#readme",
"_id": "fstream-ignore@1.0.3",
"_shasum": "4c74d91fa88b22b42f4f86a18a2820dd79d8fcdd",
- "_from": "fstream-ignore@>=1.0.0 <2.0.0"
+ "_from": "fstream-ignore@>=1.0.0 <2.0.0",
+ "_npmVersion": "2.14.8",
+ "_nodeVersion": "4.2.1",
+ "_npmUser": {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ },
+ "dist": {
+ "shasum": "4c74d91fa88b22b42f4f86a18a2820dd79d8fcdd",
+ "tarball": "http://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.3.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "isaacs",
+ "email": "isaacs@npmjs.com"
+ },
+ {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.3.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/fstream-npm/package.json b/deps/npm/node_modules/fstream-npm/package.json
index f3ab7b8faf1..7b5da94c044 100644
--- a/deps/npm/node_modules/fstream-npm/package.json
+++ b/deps/npm/node_modules/fstream-npm/package.json
@@ -6,10 +6,10 @@
},
"name": "fstream-npm",
"description": "fstream class for creating npm packages",
- "version": "1.0.5",
+ "version": "1.0.7",
"repository": {
"type": "git",
- "url": "git://github.com/isaacs/fstream-npm.git"
+ "url": "git+https://github.com/npm/fstream-npm.git"
},
"scripts": {
"test": "standard && tap test/*.js"
@@ -29,12 +29,12 @@
"license": "ISC",
"readme": "# fstream-npm\n\nThis is an fstream DirReader class that will read a directory and filter\nthings according to the semantics of what goes in an npm package.\n\nFor example:\n\n```javascript\n// This will print out all the files that would be included\n// by 'npm publish' or 'npm install' of this directory.\n\nvar FN = require(\"fstream-npm\")\nFN({ path: \"./\" })\n .on(\"child\", function (e) {\n console.error(e.path.substr(e.root.path.length + 1))\n })\n```\n\n",
"readmeFilename": "README.md",
- "gitHead": "f6ec06b9c45d7330213a5b446fff424b5a74e197",
+ "gitHead": "d57b6b24f91156067f73417dd8785c6312bfc75f",
"bugs": {
- "url": "https://github.com/isaacs/fstream-npm/issues"
+ "url": "https://github.com/npm/fstream-npm/issues"
},
- "homepage": "https://github.com/isaacs/fstream-npm#readme",
- "_id": "fstream-npm@1.0.5",
- "_shasum": "4c1d1cbc6da95c745f8d2c52077a1d2e7b337206",
- "_from": "fstream-npm@>=1.0.5 <1.1.0"
+ "homepage": "https://github.com/npm/fstream-npm#readme",
+ "_id": "fstream-npm@1.0.7",
+ "_shasum": "7ed0d1ac13d7686dd9e1bf6ceb8be273bf6d2f86",
+ "_from": "fstream-npm@>=1.0.7 <1.1.0"
}
diff --git a/deps/npm/node_modules/fstream-npm/test/ignores.js b/deps/npm/node_modules/fstream-npm/test/ignores.js
index fef5dcc222b..ac94251f72c 100644
--- a/deps/npm/node_modules/fstream-npm/test/ignores.js
+++ b/deps/npm/node_modules/fstream-npm/test/ignores.js
@@ -9,8 +9,6 @@ var Packer = require('..')
var pkg = join(__dirname, 'test-package')
-var gitDir = join(pkg, '.git')
-
var elfJS = function () {/*
module.exports = function () {
console.log("i'm a elf")
@@ -30,31 +28,49 @@ test('setup', function (t) {
var included = [
'package.json',
- 'elf.js'
+ 'elf.js',
+ join('deps', 'foo', 'config', 'config.gypi')
]
test('follows npm package ignoring rules', function (t) {
var subject = new Packer({ path: pkg, type: 'Directory', isDirectory: true })
+ var filenames = []
subject.on('entry', function (entry) {
t.equal(entry.type, 'File', 'only files in this package')
- var filename = entry.basename
- t.ok(
- included.indexOf(filename) > -1,
- filename + ' is included'
- )
+
+ // include relative path in filename
+ var filename = entry._path.slice(entry.root._path.length + 1)
+
+ filenames.push(filename)
})
// need to do this so fstream doesn't explode when files are removed from
// under it
- subject.on('end', function () { t.end() })
+ subject.on('end', function () {
+ // ensure we get *exactly* the results we expect by comparing in both
+ // directions
+ filenames.forEach(function (filename) {
+ t.ok(
+ included.indexOf(filename) > -1,
+ filename + ' is included'
+ )
+ })
+ included.forEach(function (filename) {
+ t.ok(
+ filenames.indexOf(filename) > -1,
+ filename + ' is not included'
+ )
+ })
+ t.end()
+ })
})
test('cleanup', function (t) {
- cleanup()
- t.end()
+ // rimraf.sync chokes here for some reason
+ rimraf(pkg, function () { t.end() })
})
function setup () {
- cleanup()
+ rimraf.sync(pkg)
mkdirp.sync(pkg)
fs.writeFileSync(
join(pkg, 'package.json'),
@@ -71,25 +87,46 @@ function setup () {
'packaged=false'
)
- var build = join(pkg, 'build')
- mkdirp.sync(build)
fs.writeFileSync(
- join(build, 'config.gypi'),
+ join(pkg, '.npmignore'),
+ '.npmignore\ndummy\npackage.json'
+ )
+
+ fs.writeFileSync(
+ join(pkg, 'dummy'),
+ 'foo'
+ )
+
+ var buildDir = join(pkg, 'build')
+ mkdirp.sync(buildDir)
+ fs.writeFileSync(
+ join(buildDir, 'config.gypi'),
"i_wont_be_included_by_fstream='with any luck'"
)
+ var depscfg = join(pkg, 'deps', 'foo', 'config')
+ mkdirp.sync(depscfg)
+ fs.writeFileSync(
+ join(depscfg, 'config.gypi'),
+ "i_will_be_included_by_fstream='with any luck'"
+ )
+
fs.writeFileSync(
- join(build, 'npm-debug.log'),
+ join(buildDir, 'npm-debug.log'),
'0 lol\n'
)
+ var gitDir = join(pkg, '.git')
mkdirp.sync(gitDir)
fs.writeFileSync(
join(gitDir, 'gitstub'),
"won't fool git, also won't be included by fstream"
)
-}
-function cleanup () {
- rimraf.sync(pkg)
+ var historyDir = join(pkg, 'node_modules/history')
+ mkdirp.sync(historyDir)
+ fs.writeFileSync(
+ join(historyDir, 'README.md'),
+ "please don't include me"
+ )
}
diff --git a/deps/npm/node_modules/graceful-fs/package.json b/deps/npm/node_modules/graceful-fs/package.json
index f9e1598a654..2a561b4c026 100644
--- a/deps/npm/node_modules/graceful-fs/package.json
+++ b/deps/npm/node_modules/graceful-fs/package.json
@@ -1,45 +1,10 @@
{
- "_args": [
- [
- "graceful-fs@latest",
- "/Users/isaacs/dev/npm/npm"
- ]
- ],
- "_from": "graceful-fs@latest",
- "_id": "graceful-fs@4.1.2",
- "_inCache": true,
- "_location": "/graceful-fs",
- "_nodeVersion": "2.2.1",
- "_npmUser": {
- "email": "isaacs@npmjs.com",
- "name": "isaacs"
- },
- "_npmVersion": "3.0.0",
- "_phantomChildren": {},
- "_requested": {
- "name": "graceful-fs",
- "raw": "graceful-fs@latest",
- "rawSpec": "latest",
- "scope": null,
- "spec": "latest",
- "type": "tag"
- },
- "_requiredBy": [
- "/"
- ],
- "_shasum": "fe2239b7574972e67e41f808823f9bfa4a991e37",
- "_shrinkwrap": null,
- "_spec": "graceful-fs@latest",
- "_where": "/Users/isaacs/dev/npm/npm",
- "bugs": {
- "url": "https://github.com/isaacs/node-graceful-fs/issues"
- },
- "dependencies": {},
+ "name": "graceful-fs",
"description": "A drop-in replacement for fs, making various improvements.",
- "version": "3.0.8",
+ "version": "4.1.2",
"repository": {
"type": "git",
- "url": "git://github.com/isaacs/node-graceful-fs.git"
+ "url": "git+https://github.com/isaacs/node-graceful-fs.git"
},
"main": "graceful-fs.js",
"engines": {
@@ -48,21 +13,9 @@
"directories": {
"test": "test"
},
- "dist": {
- "shasum": "fe2239b7574972e67e41f808823f9bfa4a991e37",
- "tarball": "http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.2.tgz"
- },
- "engines": {
- "node": ">=0.4.0"
+ "scripts": {
+ "test": "node test.js | tap -"
},
- "files": [
- "fs.js",
- "graceful-fs.js",
- "legacy-streams.js",
- "polyfills.js"
- ],
- "gitHead": "c286080071b6be9aa9ba108b0bb9b44ff122926d",
- "homepage": "https://github.com/isaacs/node-graceful-fs#readme",
"keywords": [
"fs",
"module",
@@ -85,23 +38,29 @@
"rimraf": "^2.2.8",
"tap": "^1.2.0"
},
- "gitHead": "45c57aa5e323c35a985a525de6f0c9a6ef59e1f8",
+ "files": [
+ "fs.js",
+ "graceful-fs.js",
+ "legacy-streams.js",
+ "polyfills.js"
+ ],
+ "gitHead": "c286080071b6be9aa9ba108b0bb9b44ff122926d",
"bugs": {
"url": "https://github.com/isaacs/node-graceful-fs/issues"
},
"homepage": "https://github.com/isaacs/node-graceful-fs#readme",
- "_id": "graceful-fs@3.0.8",
- "_shasum": "ce813e725fa82f7e6147d51c9a5ca68270551c22",
- "_from": "graceful-fs@>=3.0.8 <3.1.0",
- "_npmVersion": "2.10.1",
- "_nodeVersion": "2.0.1",
+ "_id": "graceful-fs@4.1.2",
+ "_shasum": "fe2239b7574972e67e41f808823f9bfa4a991e37",
+ "_from": "graceful-fs@>=4.1.2 <4.2.0",
+ "_npmVersion": "3.0.0",
+ "_nodeVersion": "2.2.1",
"_npmUser": {
"name": "isaacs",
"email": "isaacs@npmjs.com"
},
"dist": {
- "shasum": "ce813e725fa82f7e6147d51c9a5ca68270551c22",
- "tarball": "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.8.tgz"
+ "shasum": "fe2239b7574972e67e41f808823f9bfa4a991e37",
+ "tarball": "http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.2.tgz"
},
"maintainers": [
{
@@ -109,14 +68,6 @@
"email": "i@izs.me"
}
],
- "name": "graceful-fs",
- "optionalDependencies": {},
- "repository": {
- "type": "git",
- "url": "git+https://github.com/isaacs/node-graceful-fs.git"
- },
- "scripts": {
- "test": "node test.js | tap -"
- },
- "version": "4.1.2"
+ "_resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.2.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore
index 249bc20eb55..353546af236 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore
@@ -1,2 +1,3 @@
-node_modules
-*.sw*
+test
+.gitignore
+.travis.yml
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml
deleted file mode 100644
index 6e5919de39a..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-language: node_js
-node_js:
- - "0.10"
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md
index 62bc7bae3fe..179392978d3 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md
@@ -4,6 +4,7 @@
as known from sh/bash, in JavaScript.
[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion)
+[![downloads](https://img.shields.io/npm/dm/brace-expansion.svg)](https://www.npmjs.org/package/brace-expansion)
[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion)
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
index cc4dba29d95..6e5919de39a 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
@@ -1,4 +1,3 @@
language: node_js
node_js:
- - "0.8"
- "0.10"
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/license b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/LICENSE.md
index 654d0bfe943..2cdc8e4148c 100644
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/license
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/LICENSE.md
@@ -1,21 +1,21 @@
-The MIT License (MIT)
+(MIT)
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
+Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
index ede6efefa07..662faff69d0 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
@@ -1,7 +1,7 @@
{
"name": "balanced-match",
"description": "Match balanced character pairs, like \"{\" and \"}\"",
- "version": "0.2.0",
+ "version": "0.2.1",
"repository": {
"type": "git",
"url": "git://github.com/juliangruber/balanced-match.git"
@@ -44,30 +44,30 @@
"android-browser/4.2..latest"
]
},
- "gitHead": "ba40ed78e7114a4a67c51da768a100184dead39c",
+ "gitHead": "d743dd31d7376e0fcf99392a4be7227f2e99bf5d",
"bugs": {
"url": "https://github.com/juliangruber/balanced-match/issues"
},
- "_id": "balanced-match@0.2.0",
- "_shasum": "38f6730c03aab6d5edbb52bd934885e756d71674",
+ "_id": "balanced-match@0.2.1",
+ "_shasum": "7bc658b4bed61eee424ad74f75f5c3e2c4df3cc7",
"_from": "balanced-match@>=0.2.0 <0.3.0",
- "_npmVersion": "2.1.8",
- "_nodeVersion": "0.10.32",
+ "_npmVersion": "2.14.7",
+ "_nodeVersion": "4.2.1",
"_npmUser": {
"name": "juliangruber",
"email": "julian@juliangruber.com"
},
+ "dist": {
+ "shasum": "7bc658b4bed61eee424ad74f75f5c3e2c4df3cc7",
+ "tarball": "http://registry.npmjs.org/balanced-match/-/balanced-match-0.2.1.tgz"
+ },
"maintainers": [
{
"name": "juliangruber",
"email": "julian@juliangruber.com"
}
],
- "dist": {
- "shasum": "38f6730c03aab6d5edbb52bd934885e756d71674",
- "tarball": "http://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
- },
"directories": {},
- "_resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
+ "_resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json
index 5f1866c8b5a..4cb3e05d7ce 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json
@@ -1,7 +1,7 @@
{
"name": "brace-expansion",
"description": "Brace expansion as known from sh/bash",
- "version": "1.1.0",
+ "version": "1.1.1",
"repository": {
"type": "git",
"url": "git://github.com/juliangruber/brace-expansion.git"
@@ -42,15 +42,15 @@
"android-browser/4.2..latest"
]
},
- "gitHead": "b5fa3b1c74e5e2dba2d0efa19b28335641bc1164",
+ "gitHead": "f50da498166d76ea570cf3b30179f01f0f119612",
"bugs": {
"url": "https://github.com/juliangruber/brace-expansion/issues"
},
- "_id": "brace-expansion@1.1.0",
- "_shasum": "c9b7d03c03f37bc704be100e522b40db8f6cfcd9",
+ "_id": "brace-expansion@1.1.1",
+ "_shasum": "da5fb78aef4c44c9e4acf525064fb3208ebab045",
"_from": "brace-expansion@>=1.0.0 <2.0.0",
- "_npmVersion": "2.1.10",
- "_nodeVersion": "0.10.32",
+ "_npmVersion": "2.6.1",
+ "_nodeVersion": "0.10.36",
"_npmUser": {
"name": "juliangruber",
"email": "julian@juliangruber.com"
@@ -66,10 +66,10 @@
}
],
"dist": {
- "shasum": "c9b7d03c03f37bc704be100e522b40db8f6cfcd9",
- "tarball": "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
+ "shasum": "da5fb78aef4c44c9e4acf525064fb3208ebab045",
+ "tarball": "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
+ "_resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js
deleted file mode 100644
index 5fe2b8ad48c..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-var fs = require('fs');
-var resfile = __dirname + '/bash-results.txt';
-var cases = fs.readFileSync(resfile, 'utf8').split('><><><><');
-
-// throw away the EOF marker
-cases.pop()
-
-test('matches bash expansions', function(t) {
- cases.forEach(function(testcase) {
- var set = testcase.split('\n');
- var pattern = set.shift();
- var actual = expand(pattern);
-
- // If it expands to the empty string, then it's actually
- // just nothing, but Bash is a singly typed language, so
- // "nothing" is the same as "".
- if (set.length === 1 && set[0] === '') {
- set = []
- } else {
- // otherwise, strip off the [] that were added so that
- // "" expansions would be preserved properly.
- set = set.map(function (s) {
- return s.replace(/^\[|\]$/g, '')
- })
- }
-
- t.same(actual, set, pattern);
- });
- t.end();
-})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt
deleted file mode 100644
index 958148d26aa..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt
+++ /dev/null
@@ -1,1075 +0,0 @@
-A{b,{d,e},{f,g}}Z
-[AbZ]
-[AdZ]
-[AeZ]
-[AfZ]
-[AgZ]><><><><PRE-{a,b}{{a,b},a,b}-POST
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]><><><><\{a,b}{{a,b},a,b}
-[{a,b}a]
-[{a,b}b]
-[{a,b}a]
-[{a,b}b]><><><><{{a,b}
-[{a]
-[{b]><><><><{a,b}}
-[a}]
-[b}]><><><><{,}
-><><><><a{,}
-[a]
-[a]><><><><{,}b
-[b]
-[b]><><><><a{,}b
-[ab]
-[ab]><><><><a{b}c
-[a{b}c]><><><><a{1..5}b
-[a1b]
-[a2b]
-[a3b]
-[a4b]
-[a5b]><><><><a{01..5}b
-[a01b]
-[a02b]
-[a03b]
-[a04b]
-[a05b]><><><><a{-01..5}b
-[a-01b]
-[a000b]
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]><><><><a{-01..5..3}b
-[a-01b]
-[a002b]
-[a005b]><><><><a{001..9}b
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]
-[a006b]
-[a007b]
-[a008b]
-[a009b]><><><><a{b,c{d,e},{f,g}h}x{y,z
-[abx{y,z]
-[acdx{y,z]
-[acex{y,z]
-[afhx{y,z]
-[aghx{y,z]><><><><a{b,c{d,e},{f,g}h}x{y,z\}
-[abx{y,z}]
-[acdx{y,z}]
-[acex{y,z}]
-[afhx{y,z}]
-[aghx{y,z}]><><><><a{b,c{d,e},{f,g}h}x{y,z}
-[abxy]
-[abxz]
-[acdxy]
-[acdxz]
-[acexy]
-[acexz]
-[afhxy]
-[afhxz]
-[aghxy]
-[aghxz]><><><><a{b{c{d,e}f{x,y{{g}h
-[a{b{cdf{x,y{{g}h]
-[a{b{cef{x,y{{g}h]><><><><a{b{c{d,e}f{x,y{}g}h
-[a{b{cdfxh]
-[a{b{cdfy{}gh]
-[a{b{cefxh]
-[a{b{cefy{}gh]><><><><a{b{c{d,e}f{x,y}}g}h
-[a{b{cdfx}g}h]
-[a{b{cdfy}g}h]
-[a{b{cefx}g}h]
-[a{b{cefy}g}h]><><><><a{b{c{d,e}f}g}h
-[a{b{cdf}g}h]
-[a{b{cef}g}h]><><><><a{{x,y},z}b
-[axb]
-[ayb]
-[azb]><><><><f{x,y{g,z}}h
-[fxh]
-[fygh]
-[fyzh]><><><><f{x,y{{g,z}}h
-[f{x,y{g}h]
-[f{x,y{z}h]><><><><f{x,y{{g,z}}h}
-[fx]
-[fy{g}h]
-[fy{z}h]><><><><f{x,y{{g}h
-[f{x,y{{g}h]><><><><f{x,y{{g}}h
-[f{x,y{{g}}h]><><><><f{x,y{}g}h
-[fxh]
-[fy{}gh]><><><><z{a,b{,c}d
-[z{a,bd]
-[z{a,bcd]><><><><z{a,b},c}d
-[za,c}d]
-[zb,c}d]><><><><{-01..5}
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]><><><><{-05..100..5}
-[-05]
-[000]
-[005]
-[010]
-[015]
-[020]
-[025]
-[030]
-[035]
-[040]
-[045]
-[050]
-[055]
-[060]
-[065]
-[070]
-[075]
-[080]
-[085]
-[090]
-[095]
-[100]><><><><{-05..100}
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0..5..2}
-[0]
-[2]
-[4]><><><><{0001..05..2}
-[0001]
-[0003]
-[0005]><><><><{0001..-5..2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..-5..-2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..5..-2}
-[0001]
-[0003]
-[0005]><><><><{01..5}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05..3}
-[01]
-[04]><><><><{05..100}
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0a..0z}
-[{0a..0z}]><><><><{a,b\}c,d}
-[a]
-[b}c]
-[d]><><><><{a,b{c,d}
-[{a,bc]
-[{a,bd]><><><><{a,b}c,d}
-[ac,d}]
-[bc,d}]><><><><{a..F}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]><><><><{A..f}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{a..Z}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]><><><><{A..z}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{z..A}
-[z]
-[y]
-[x]
-[w]
-[v]
-[u]
-[t]
-[s]
-[r]
-[q]
-[p]
-[o]
-[n]
-[m]
-[l]
-[k]
-[j]
-[i]
-[h]
-[g]
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{Z..a}
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{a..F..2}
-[a]
-[_]
-[]]
-[[]
-[Y]
-[W]
-[U]
-[S]
-[Q]
-[O]
-[M]
-[K]
-[I]
-[G]><><><><{A..f..02}
-[A]
-[C]
-[E]
-[G]
-[I]
-[K]
-[M]
-[O]
-[Q]
-[S]
-[U]
-[W]
-[Y]
-[[]
-[]]
-[_]
-[a]
-[c]
-[e]><><><><{a..Z..5}
-[a]
-[]><><><><d{a..Z..5}b
-[dab]
-[db]><><><><{A..z..10}
-[A]
-[K]
-[U]
-[_]
-[i]
-[s]><><><><{z..A..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]
-[`]
-[^]
-[]
-[Z]
-[X]
-[V]
-[T]
-[R]
-[P]
-[N]
-[L]
-[J]
-[H]
-[F]
-[D]
-[B]><><><><{Z..a..20}
-[Z]><><><><{a{,b}
-[{a]
-[{ab]><><><><{a},b}
-[a}]
-[b]><><><><{x,y{,}g}
-[x]
-[yg]
-[yg]><><><><{x,y{}g}
-[x]
-[y{}g]><><><><{{a,b}
-[{a]
-[{b]><><><><{{a,b},c}
-[a]
-[b]
-[c]><><><><{{a,b}c}
-[{ac}]
-[{bc}]><><><><{{a,b},}
-[a]
-[b]><><><><X{{a,b},}X
-[XaX]
-[XbX]
-[XX]><><><><{{a,b},}c
-[ac]
-[bc]
-[c]><><><><{{a,b}.}
-[{a.}]
-[{b.}]><><><><{{a,b}}
-[{a}]
-[{b}]><><><><X{a..#}X
-[X{a..#}X]><><><><
-><><><><{-10..00}
-[-10]
-[-09]
-[-08]
-[-07]
-[-06]
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]><><><><{a,\\{a,b}c}
-[a]
-[\ac]
-[\bc]><><><><{a,\{a,b}c}
-[ac}]
-[{ac}]
-[bc}]><><><><a,\{b,c}
-[a,{b,c}]><><><><{-10.\.00}
-[{-10..00}]><><><><ff{c,b,a}
-[ffc]
-[ffb]
-[ffa]><><><><f{d,e,f}g
-[fdg]
-[feg]
-[ffg]><><><><{l,n,m}xyz
-[lxyz]
-[nxyz]
-[mxyz]><><><><{abc\,def}
-[{abc,def}]><><><><{abc}
-[{abc}]><><><><{x\,y,\{abc\},trie}
-[x,y]
-[{abc}]
-[trie]><><><><{}
-[{}]><><><><}
-[}]><><><><{
-[{]><><><><abcd{efgh
-[abcd{efgh]><><><><{1..10}
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]><><><><{0..10,braces}
-[0..10]
-[braces]><><><><{{0..10},braces}
-[0]
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]
-[braces]><><><><x{{0..10},braces}y
-[x0y]
-[x1y]
-[x2y]
-[x3y]
-[x4y]
-[x5y]
-[x6y]
-[x7y]
-[x8y]
-[x9y]
-[x10y]
-[xbracesy]><><><><{3..3}
-[3]><><><><x{3..3}y
-[x3y]><><><><{10..1}
-[10]
-[9]
-[8]
-[7]
-[6]
-[5]
-[4]
-[3]
-[2]
-[1]><><><><{10..1}y
-[10y]
-[9y]
-[8y]
-[7y]
-[6y]
-[5y]
-[4y]
-[3y]
-[2y]
-[1y]><><><><x{10..1}y
-[x10y]
-[x9y]
-[x8y]
-[x7y]
-[x6y]
-[x5y]
-[x4y]
-[x3y]
-[x2y]
-[x1y]><><><><{a..f}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{f..a}
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]><><><><{a..A}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{A..a}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{f..f}
-[f]><><><><{1..f}
-[{1..f}]><><><><{f..1}
-[{f..1}]><><><><{-1..-10}
-[-1]
-[-2]
-[-3]
-[-4]
-[-5]
-[-6]
-[-7]
-[-8]
-[-9]
-[-10]><><><><{-20..0}
-[-20]
-[-19]
-[-18]
-[-17]
-[-16]
-[-15]
-[-14]
-[-13]
-[-12]
-[-11]
-[-10]
-[-9]
-[-8]
-[-7]
-[-6]
-[-5]
-[-4]
-[-3]
-[-2]
-[-1]
-[0]><><><><a-{b{d,e}}-c
-[a-{bd}-c]
-[a-{be}-c]><><><><a-{bdef-{g,i}-c
-[a-{bdef-g-c]
-[a-{bdef-i-c]><><><><{klklkl}{1,2,3}
-[{klklkl}1]
-[{klklkl}2]
-[{klklkl}3]><><><><{1..10..2}
-[1]
-[3]
-[5]
-[7]
-[9]><><><><{-1..-10..2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{-1..-10..-2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{10..1..-2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{10..1..2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{1..20..2}
-[1]
-[3]
-[5]
-[7]
-[9]
-[11]
-[13]
-[15]
-[17]
-[19]><><><><{1..20..20}
-[1]><><><><{100..0..5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{100..0..-5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{a..z}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{a..z..2}
-[a]
-[c]
-[e]
-[g]
-[i]
-[k]
-[m]
-[o]
-[q]
-[s]
-[u]
-[w]
-[y]><><><><{z..a..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]><><><><{2147483645..2147483649}
-[2147483645]
-[2147483646]
-[2147483647]
-[2147483648]
-[2147483649]><><><><{10..0..2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{10..0..-2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{-50..-0..5}
-[-50]
-[-45]
-[-40]
-[-35]
-[-30]
-[-25]
-[-20]
-[-15]
-[-10]
-[-5]
-[0]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..ff}
-[{1..ff}]><><><><{1..10..ff}
-[{1..10..ff}]><><><><{1.20..2}
-[{1.20..2}]><><><><{1..20..f2}
-[{1..20..f2}]><><><><{1..20..2f}
-[{1..20..2f}]><><><><{1..2f..2}
-[{1..2f..2}]><><><><{1..ff..2}
-[{1..ff..2}]><><><><{1..ff}
-[{1..ff}]><><><><{1..f}
-[{1..f}]><><><><{1..0f}
-[{1..0f}]><><><><{1..10f}
-[{1..10f}]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..10.f}
-[{1..10.f}]><><><>< \ No newline at end of file
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt
deleted file mode 100644
index e5161c3da86..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt
+++ /dev/null
@@ -1,182 +0,0 @@
-# skip quotes for now
-# "{x,x}"
-# {"x,x"}
-# {x","x}
-# '{a,b}{{a,b},a,b}'
-A{b,{d,e},{f,g}}Z
-PRE-{a,b}{{a,b},a,b}-POST
-\\{a,b}{{a,b},a,b}
-{{a,b}
-{a,b}}
-{,}
-a{,}
-{,}b
-a{,}b
-a{b}c
-a{1..5}b
-a{01..5}b
-a{-01..5}b
-a{-01..5..3}b
-a{001..9}b
-a{b,c{d,e},{f,g}h}x{y,z
-a{b,c{d,e},{f,g}h}x{y,z\\}
-a{b,c{d,e},{f,g}h}x{y,z}
-a{b{c{d,e}f{x,y{{g}h
-a{b{c{d,e}f{x,y{}g}h
-a{b{c{d,e}f{x,y}}g}h
-a{b{c{d,e}f}g}h
-a{{x,y},z}b
-f{x,y{g,z}}h
-f{x,y{{g,z}}h
-f{x,y{{g,z}}h}
-f{x,y{{g}h
-f{x,y{{g}}h
-f{x,y{}g}h
-z{a,b{,c}d
-z{a,b},c}d
-{-01..5}
-{-05..100..5}
-{-05..100}
-{0..5..2}
-{0001..05..2}
-{0001..-5..2}
-{0001..-5..-2}
-{0001..5..-2}
-{01..5}
-{1..05}
-{1..05..3}
-{05..100}
-{0a..0z}
-{a,b\\}c,d}
-{a,b{c,d}
-{a,b}c,d}
-{a..F}
-{A..f}
-{a..Z}
-{A..z}
-{z..A}
-{Z..a}
-{a..F..2}
-{A..f..02}
-{a..Z..5}
-d{a..Z..5}b
-{A..z..10}
-{z..A..-2}
-{Z..a..20}
-{a{,b}
-{a},b}
-{x,y{,}g}
-{x,y{}g}
-{{a,b}
-{{a,b},c}
-{{a,b}c}
-{{a,b},}
-X{{a,b},}X
-{{a,b},}c
-{{a,b}.}
-{{a,b}}
-X{a..#}X
-# this next one is an empty string
-
-{-10..00}
-# Need to escape slashes in here for reasons i guess.
-{a,\\\\{a,b}c}
-{a,\\{a,b}c}
-a,\\{b,c}
-{-10.\\.00}
-#### bash tests/braces.tests
-# Note that some tests are edited out because some features of
-# bash are intentionally not supported in this brace expander.
-ff{c,b,a}
-f{d,e,f}g
-{l,n,m}xyz
-{abc\\,def}
-{abc}
-{x\\,y,\\{abc\\},trie}
-# not impementing back-ticks obviously
-# XXXX\\{`echo a b c | tr ' ' ','`\\}
-{}
-# We only ever have to worry about parsing a single argument,
-# not a command line, so spaces have a different meaning than bash.
-# { }
-}
-{
-abcd{efgh
-# spaces
-# foo {1,2} bar
-# not impementing back-ticks obviously
-# `zecho foo {1,2} bar`
-# $(zecho foo {1,2} bar)
-# ${var} is not a variable here, like it is in bash. omit.
-# foo{bar,${var}.}
-# foo{bar,${var}}
-# isaacs: skip quotes for now
-# "${var}"{x,y}
-# $var{x,y}
-# ${var}{x,y}
-# new sequence brace operators
-{1..10}
-# this doesn't work yet
-{0..10,braces}
-# but this does
-{{0..10},braces}
-x{{0..10},braces}y
-{3..3}
-x{3..3}y
-{10..1}
-{10..1}y
-x{10..1}y
-{a..f}
-{f..a}
-{a..A}
-{A..a}
-{f..f}
-# mixes are incorrectly-formed brace expansions
-{1..f}
-{f..1}
-# spaces
-# 0{1..9} {10..20}
-# do negative numbers work?
-{-1..-10}
-{-20..0}
-# weirdly-formed brace expansions -- fixed in post-bash-3.1
-a-{b{d,e}}-c
-a-{bdef-{g,i}-c
-# isaacs: skip quotes for now
-# {"klklkl"}{1,2,3}
-# isaacs: this is a valid test, though
-{klklkl}{1,2,3}
-# {"x,x"}
-{1..10..2}
-{-1..-10..2}
-{-1..-10..-2}
-{10..1..-2}
-{10..1..2}
-{1..20..2}
-{1..20..20}
-{100..0..5}
-{100..0..-5}
-{a..z}
-{a..z..2}
-{z..a..-2}
-# make sure brace expansion handles ints > 2**31 - 1 using intmax_t
-{2147483645..2147483649}
-# unwanted zero-padding -- fixed post-bash-4.0
-{10..0..2}
-{10..0..-2}
-{-50..-0..5}
-# bad
-{1..10.f}
-{1..ff}
-{1..10..ff}
-{1.20..2}
-{1..20..f2}
-{1..20..2f}
-{1..2f..2}
-{1..ff..2}
-{1..ff}
-{1..f}
-{1..0f}
-{1..10f}
-{1..10.f}
-{1..10.f}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js
deleted file mode 100644
index 3fcc185a7d6..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('ignores ${', function(t) {
- t.deepEqual(expand('${1..3}'), ['${1..3}']);
- t.deepEqual(expand('${a,b}${c,d}'), ['${a,b}${c,d}']);
- t.deepEqual(expand('x${a,b}x${c,d}x'), ['x${a,b}x${c,d}x']);
- t.end();
-});
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
deleted file mode 100644
index e429121eab8..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('empty option', function(t) {
- t.deepEqual(expand('-v{,,,,}'), [
- '-v', '-v', '-v', '-v', '-v'
- ]);
- t.end();
-});
-
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh
deleted file mode 100644
index e040e664d9f..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-# Bash 4.3 because of arbitrary need to pick a single standard.
-
-if [ "${BASH_VERSINFO[0]}" != "4" ] || [ "${BASH_VERSINFO[1]}" != "3" ]; then
- echo "this script requires bash 4.3" >&2
- exit 1
-fi
-
-CDPATH= cd "$(dirname "$0")"
-
-js='require("./")(process.argv[1]).join(" ")'
-
-cat cases.txt | \
- while read case; do
- if [ "${case:0:1}" = "#" ]; then
- continue;
- fi;
- b="$($BASH -c 'for c in '"$case"'; do echo ["$c"]; done')"
- echo "$case"
- echo -n "$b><><><><";
- done > bash-results.txt
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js
deleted file mode 100644
index 8d434c23d45..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('negative increment', function(t) {
- t.deepEqual(expand('{3..1}'), ['3', '2', '1']);
- t.deepEqual(expand('{10..8}'), ['10', '9', '8']);
- t.deepEqual(expand('{10..08}'), ['10', '09', '08']);
- t.deepEqual(expand('{c..a}'), ['c', 'b', 'a']);
-
- t.deepEqual(expand('{4..0..2}'), ['4', '2', '0']);
- t.deepEqual(expand('{4..0..-2}'), ['4', '2', '0']);
- t.deepEqual(expand('{e..a..2}'), ['e', 'c', 'a']);
-
- t.end();
-});
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
deleted file mode 100644
index 0862dc51f90..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
+++ /dev/null
@@ -1,16 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('nested', function(t) {
- t.deepEqual(expand('{a,b{1..3},c}'), [
- 'a', 'b1', 'b2', 'b3', 'c'
- ]);
- t.deepEqual(expand('{{A..Z},{a..z}}'),
- 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')
- );
- t.deepEqual(expand('ppp{,config,oe{,conf}}'), [
- 'ppp', 'pppconfig', 'pppoe', 'pppoeconf'
- ]);
- t.end();
-});
-
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js
deleted file mode 100644
index c00ad155fe6..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('order', function(t) {
- t.deepEqual(expand('a{d,c,b}e'), [
- 'ade', 'ace', 'abe'
- ]);
- t.end();
-});
-
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
deleted file mode 100644
index e4158775f1b..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('pad', function(t) {
- t.deepEqual(expand('{9..11}'), [
- '9', '10', '11'
- ]);
- t.deepEqual(expand('{09..11}'), [
- '09', '10', '11'
- ]);
- t.end();
-});
-
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js
deleted file mode 100644
index 3038fba7416..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('x and y of same type', function(t) {
- t.deepEqual(expand('{a..9}'), ['{a..9}']);
- t.end();
-});
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js b/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
deleted file mode 100644
index f73a9579ab3..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
+++ /dev/null
@@ -1,50 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('numeric sequences', function(t) {
- t.deepEqual(expand('a{1..2}b{2..3}c'), [
- 'a1b2c', 'a1b3c', 'a2b2c', 'a2b3c'
- ]);
- t.deepEqual(expand('{1..2}{2..3}'), [
- '12', '13', '22', '23'
- ]);
- t.end();
-});
-
-test('numeric sequences with step count', function(t) {
- t.deepEqual(expand('{0..8..2}'), [
- '0', '2', '4', '6', '8'
- ]);
- t.deepEqual(expand('{1..8..2}'), [
- '1', '3', '5', '7'
- ]);
- t.end();
-});
-
-test('numeric sequence with negative x / y', function(t) {
- t.deepEqual(expand('{3..-2}'), [
- '3', '2', '1', '0', '-1', '-2'
- ]);
- t.end();
-});
-
-test('alphabetic sequences', function(t) {
- t.deepEqual(expand('1{a..b}2{b..c}3'), [
- '1a2b3', '1a2c3', '1b2b3', '1b2c3'
- ]);
- t.deepEqual(expand('{a..b}{b..c}'), [
- 'ab', 'ac', 'bb', 'bc'
- ]);
- t.end();
-});
-
-test('alphabetic sequences with step count', function(t) {
- t.deepEqual(expand('{a..k..2}'), [
- 'a', 'c', 'e', 'g', 'i', 'k'
- ]);
- t.deepEqual(expand('{b..k..2}'), [
- 'b', 'd', 'f', 'h', 'j'
- ]);
- t.end();
-});
-
diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/package.json b/deps/npm/node_modules/node-gyp/node_modules/glob/package.json
index 434e4696f8f..ad70fb110ce 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/glob/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/glob/package.json
@@ -67,6 +67,5 @@
"tarball": "http://registry.npmjs.org/glob/-/glob-4.5.3.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE
new file mode 100644
index 00000000000..19129e315fe
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE
@@ -0,0 +1,15 @@
+The ISC License
+
+Copyright (c) Isaac Z. Schlueter and Contributors
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/README.md
new file mode 100644
index 00000000000..a57cf429d4a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/README.md
@@ -0,0 +1,195 @@
+# npmlog
+
+The logger util that npm uses.
+
+This logger is very basic. It does the logging for npm. It supports
+custom levels and colored output.
+
+By default, logs are written to stderr. If you want to send log messages
+to outputs other than streams, then you can change the `log.stream`
+member, or you can just listen to the events that it emits, and do
+whatever you want with them.
+
+# Basic Usage
+
+```
+var log = require('npmlog')
+
+// additional stuff ---------------------------+
+// message ----------+ |
+// prefix ----+ | |
+// level -+ | | |
+// v v v v
+ log.info('fyi', 'I have a kitty cat: %j', myKittyCat)
+```
+
+## log.level
+
+* {String}
+
+The level to display logs at. Any logs at or above this level will be
+displayed. The special level `silent` will prevent anything from being
+displayed ever.
+
+## log.record
+
+* {Array}
+
+An array of all the log messages that have been entered.
+
+## log.maxRecordSize
+
+* {Number}
+
+The maximum number of records to keep. If log.record gets bigger than
+10% over this value, then it is sliced down to 90% of this value.
+
+The reason for the 10% window is so that it doesn't have to resize a
+large array on every log entry.
+
+## log.prefixStyle
+
+* {Object}
+
+A style object that specifies how prefixes are styled. (See below)
+
+## log.headingStyle
+
+* {Object}
+
+A style object that specifies how the heading is styled. (See below)
+
+## log.heading
+
+* {String} Default: ""
+
+If set, a heading that is printed at the start of every line.
+
+## log.stream
+
+* {Stream} Default: `process.stderr`
+
+The stream where output is written.
+
+## log.enableColor()
+
+Force colors to be used on all messages, regardless of the output
+stream.
+
+## log.disableColor()
+
+Disable colors on all messages.
+
+## log.enableProgress()
+
+Enable the display of log activity spinner and progress bar
+
+## log.disableProgress()
+
+Disable the display of a progress bar
+
+## log.enableUnicode()
+
+Force the unicode theme to be used for the progress bar.
+
+## log.disableUnicode()
+
+Disable the use of unicode in the progress bar.
+
+## log.setGaugeTemplate(template)
+
+Overrides the default gauge template.
+
+## log.pause()
+
+Stop emitting messages to the stream, but do not drop them.
+
+## log.resume()
+
+Emit all buffered messages that were written while paused.
+
+## log.log(level, prefix, message, ...)
+
+* `level` {String} The level to emit the message at
+* `prefix` {String} A string prefix. Set to "" to skip.
+* `message...` Arguments to `util.format`
+
+Emit a log message at the specified level.
+
+## log\[level](prefix, message, ...)
+
+For example,
+
+* log.silly(prefix, message, ...)
+* log.verbose(prefix, message, ...)
+* log.info(prefix, message, ...)
+* log.http(prefix, message, ...)
+* log.warn(prefix, message, ...)
+* log.error(prefix, message, ...)
+
+Like `log.log(level, prefix, message, ...)`. In this way, each level is
+given a shorthand, so you can do `log.info(prefix, message)`.
+
+## log.addLevel(level, n, style, disp)
+
+* `level` {String} Level indicator
+* `n` {Number} The numeric level
+* `style` {Object} Object with fg, bg, inverse, etc.
+* `disp` {String} Optional replacement for `level` in the output.
+
+Sets up a new level with a shorthand function and so forth.
+
+Note that if the number is `Infinity`, then setting the level to that
+will cause all log messages to be suppressed. If the number is
+`-Infinity`, then the only way to show it is to enable all log messages.
+
+## log.newItem(name, todo, weight)
+
+* `name` {String} Optional; progress item name.
+* `todo` {Number} Optional; total amount of work to be done. Default 0.
+* `weight` {Number} Optional; the weight of this item relative to others. Default 1.
+
+This adds a new `are-we-there-yet` item tracker to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `Tracker` object.
+
+## log.newStream(name, todo, weight)
+
+This adds a new `are-we-there-yet` stream tracker to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `TrackerStream` object.
+
+## log.newGroup(name, weight)
+
+This adds a new `are-we-there-yet` tracker group to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `TrackerGroup` object.
+
+# Events
+
+Events are all emitted with the message object.
+
+* `log` Emitted for all messages
+* `log.<level>` Emitted for all messages with the `<level>` level.
+* `<prefix>` Messages with prefixes also emit their prefix as an event.
+
+# Style Objects
+
+Style objects can have the following fields:
+
+* `fg` {String} Color for the foreground text
+* `bg` {String} Color for the background
+* `bold`, `inverse`, `underline` {Boolean} Set the associated property
+* `bell` {Boolean} Make a noise (This is pretty annoying, probably.)
+
+# Message Objects
+
+Every log event is emitted with a message object, and the `log.record`
+list contains all of them that have been created. They have the
+following fields:
+
+* `id` {Number}
+* `level` {String}
+* `prefix` {String}
+* `message` {String} Result of `util.format()`
+* `messageRaw` {Array} Arguments to `util.format()`
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/example.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/example.js
new file mode 100644
index 00000000000..c009fb15777
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/example.js
@@ -0,0 +1,39 @@
+var log = require('./log.js')
+
+log.heading = 'npm'
+
+console.error('log.level=silly')
+log.level = 'silly'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+console.error('log.level=silent')
+log.level = 'silent'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+console.error('log.level=info')
+log.level = 'info'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('404', 'This is a longer\n'+
+ 'message, with some details\n'+
+ 'and maybe a stack.\n'+
+ new Error('a 404 error').stack)
+log.addLevel('noise', 10000, {beep: true})
+log.noise(false, 'LOUD NOISES')
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js
new file mode 100644
index 00000000000..8bf6422b6cf
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js
@@ -0,0 +1,247 @@
+'use strict'
+var Progress = require('are-we-there-yet')
+var Gauge = require('gauge')
+var EE = require('events').EventEmitter
+var log = exports = module.exports = new EE
+var util = require('util')
+
+var ansi = require('ansi')
+log.cursor = ansi(process.stderr)
+log.stream = process.stderr
+
+// by default, let ansi decide based on tty-ness.
+var colorEnabled = undefined
+log.enableColor = function () {
+ colorEnabled = true
+ this.cursor.enabled = true
+}
+log.disableColor = function () {
+ colorEnabled = false
+ this.cursor.enabled = false
+}
+
+// default level
+log.level = 'info'
+
+log.gauge = new Gauge(log.cursor)
+log.tracker = new Progress.TrackerGroup()
+
+// no progress bars unless asked
+log.progressEnabled = false
+
+var gaugeTheme = undefined
+
+log.enableUnicode = function () {
+ gaugeTheme = Gauge.unicode
+ log.gauge.setTheme(gaugeTheme)
+}
+
+log.disableUnicode = function () {
+ gaugeTheme = Gauge.ascii
+ log.gauge.setTheme(gaugeTheme)
+}
+
+var gaugeTemplate = undefined
+log.setGaugeTemplate = function (template) {
+ gaugeTemplate = template
+ log.gauge.setTemplate(gaugeTemplate)
+}
+
+log.enableProgress = function () {
+ if (this.progressEnabled) return
+ this.progressEnabled = true
+ if (this._pause) return
+ this.tracker.on('change', this.showProgress)
+ this.gauge.enable()
+ this.showProgress()
+}
+
+log.disableProgress = function () {
+ if (!this.progressEnabled) return
+ this.clearProgress()
+ this.progressEnabled = false
+ this.tracker.removeListener('change', this.showProgress)
+ this.gauge.disable()
+}
+
+var trackerConstructors = ['newGroup', 'newItem', 'newStream']
+
+var mixinLog = function (tracker) {
+ // mixin the public methods from log into the tracker
+ // (except: conflicts and one's we handle specially)
+ Object.keys(log).forEach(function (P) {
+ if (P[0] === '_') return
+ if (trackerConstructors.filter(function (C) { return C === P }).length) return
+ if (tracker[P]) return
+ if (typeof log[P] !== 'function') return
+ var func = log[P]
+ tracker[P] = function () {
+ return func.apply(log, arguments)
+ }
+ })
+ // if the new tracker is a group, make sure any subtrackers get
+ // mixed in too
+ if (tracker instanceof Progress.TrackerGroup) {
+ trackerConstructors.forEach(function (C) {
+ var func = tracker[C]
+ tracker[C] = function () { return mixinLog(func.apply(tracker, arguments)) }
+ })
+ }
+ return tracker
+}
+
+// Add tracker constructors to the top level log object
+trackerConstructors.forEach(function (C) {
+ log[C] = function () { return mixinLog(this.tracker[C].apply(this.tracker, arguments)) }
+})
+
+log.clearProgress = function () {
+ if (!this.progressEnabled) return
+ this.gauge.hide()
+}
+
+log.showProgress = function (name) {
+ if (!this.progressEnabled) return
+ this.gauge.show(name, this.tracker.completed())
+}.bind(log) // bind for use in tracker's on-change listener
+
+// temporarily stop emitting, but don't drop
+log.pause = function () {
+ this._paused = true
+}
+
+log.resume = function () {
+ if (!this._paused) return
+ this._paused = false
+
+ var b = this._buffer
+ this._buffer = []
+ b.forEach(function (m) {
+ this.emitLog(m)
+ }, this)
+ if (this.progressEnabled) this.enableProgress()
+}
+
+log._buffer = []
+
+var id = 0
+log.record = []
+log.maxRecordSize = 10000
+log.log = function (lvl, prefix, message) {
+ var l = this.levels[lvl]
+ if (l === undefined) {
+ return this.emit('error', new Error(util.format(
+ 'Undefined log level: %j', lvl)))
+ }
+
+ var a = new Array(arguments.length - 2)
+ var stack = null
+ for (var i = 2; i < arguments.length; i ++) {
+ var arg = a[i-2] = arguments[i]
+
+ // resolve stack traces to a plain string.
+ if (typeof arg === 'object' && arg &&
+ (arg instanceof Error) && arg.stack) {
+ arg.stack = stack = arg.stack + ''
+ }
+ }
+ if (stack) a.unshift(stack + '\n')
+ message = util.format.apply(util, a)
+
+ var m = { id: id++,
+ level: lvl,
+ prefix: String(prefix || ''),
+ message: message,
+ messageRaw: a }
+
+ this.emit('log', m)
+ this.emit('log.' + lvl, m)
+ if (m.prefix) this.emit(m.prefix, m)
+
+ this.record.push(m)
+ var mrs = this.maxRecordSize
+ var n = this.record.length - mrs
+ if (n > mrs / 10) {
+ var newSize = Math.floor(mrs * 0.9)
+ this.record = this.record.slice(-1 * newSize)
+ }
+
+ this.emitLog(m)
+}.bind(log)
+
+log.emitLog = function (m) {
+ if (this._paused) {
+ this._buffer.push(m)
+ return
+ }
+ if (this.progressEnabled) this.gauge.pulse(m.prefix)
+ var l = this.levels[m.level]
+ if (l === undefined) return
+ if (l < this.levels[this.level]) return
+ if (l > 0 && !isFinite(l)) return
+
+ var style = log.style[m.level]
+ var disp = log.disp[m.level] || m.level
+ this.clearProgress()
+ m.message.split(/\r?\n/).forEach(function (line) {
+ if (this.heading) {
+ this.write(this.heading, this.headingStyle)
+ this.write(' ')
+ }
+ this.write(disp, log.style[m.level])
+ var p = m.prefix || ''
+ if (p) this.write(' ')
+ this.write(p, this.prefixStyle)
+ this.write(' ' + line + '\n')
+ }, this)
+ this.showProgress()
+}
+
+log.write = function (msg, style) {
+ if (!this.cursor) return
+ if (this.stream !== this.cursor.stream) {
+ this.cursor = ansi(this.stream, { enabled: colorEnabled })
+ var options = {}
+ if (gaugeTheme != null) options.theme = gaugeTheme
+ if (gaugeTemplate != null) options.template = gaugeTemplate
+ this.gauge = new Gauge(options, this.cursor)
+ }
+
+ style = style || {}
+ if (style.fg) this.cursor.fg[style.fg]()
+ if (style.bg) this.cursor.bg[style.bg]()
+ if (style.bold) this.cursor.bold()
+ if (style.underline) this.cursor.underline()
+ if (style.inverse) this.cursor.inverse()
+ if (style.beep) this.cursor.beep()
+ this.cursor.write(msg).reset()
+}
+
+log.addLevel = function (lvl, n, style, disp) {
+ if (!disp) disp = lvl
+ this.levels[lvl] = n
+ this.style[lvl] = style
+ if (!this[lvl]) this[lvl] = function () {
+ var a = new Array(arguments.length + 1)
+ a[0] = lvl
+ for (var i = 0; i < arguments.length; i ++) {
+ a[i + 1] = arguments[i]
+ }
+ return this.log.apply(this, a)
+ }.bind(this)
+ this.disp[lvl] = disp
+}
+
+log.prefixStyle = { fg: 'magenta' }
+log.headingStyle = { fg: 'white', bg: 'black' }
+
+log.style = {}
+log.levels = {}
+log.disp = {}
+log.addLevel('silly', -Infinity, { inverse: true }, 'sill')
+log.addLevel('verbose', 1000, { fg: 'blue', bg: 'black' }, 'verb')
+log.addLevel('info', 2000, { fg: 'green' })
+log.addLevel('http', 3000, { fg: 'green', bg: 'black' })
+log.addLevel('warn', 4000, { fg: 'black', bg: 'yellow' }, 'WARN')
+log.addLevel('error', 5000, { fg: 'red', bg: 'black' }, 'ERR!')
+log.addLevel('silent', Infinity)
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore
new file mode 100644
index 00000000000..926ddf616c7
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore
@@ -0,0 +1,3 @@
+*~
+.#*
+node_modules
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/README.md
new file mode 100644
index 00000000000..3491c5956cc
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/README.md
@@ -0,0 +1,183 @@
+are-we-there-yet
+----------------
+
+Track complex hiearchies of asynchronous task completion statuses. This is
+intended to give you a way of recording and reporting the progress of the big
+recursive fan-out and gather type workflows that are so common in async.
+
+What you do with this completion data is up to you, but the most common use case is to
+feed it to one of the many progress bar modules.
+
+Most progress bar modules include a rudamentary version of this, but my
+needs were more complex.
+
+Usage
+=====
+
+```javascript
+var TrackerGroup = require("are-we-there-yet").TrackerGroup
+
+var top = new TrackerGroup("program")
+
+var single = top.newItem("one thing", 100)
+single.completeWork(20)
+
+console.log(top.completed()) // 0.2
+
+fs.stat("file", function(er, stat) {
+ if (er) throw er
+ var stream = top.newStream("file", stat.size)
+ console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete
+ // and 50% * 20% == 10%
+ fs.createReadStream("file").pipe(stream).on("data", function (chunk) {
+ // do stuff with chunk
+ })
+ top.on("change", function (name) {
+ // called each time a chunk is read from "file"
+ // top.completed() will start at 0.1 and fill up to 0.6 as the file is read
+ })
+})
+```
+
+Shared Methods
+==============
+
+All tracker objects described below have the following methods, they, along
+with the event comprise the interface for consumers of tracker objects.
+
+* var completed = tracker.completed()
+
+Returns the ratio of completed work to work to be done. Range of 0 to 1.
+
+* tracker.finish()
+
+Marks the tracker as completed. With a TrackerGroup this marks all of its
+components as completed.
+
+Marks all of the components of this tracker as finished, which in turn means
+that `tracker.completed()` for this will now be 1.
+
+This will result in one or more `change` events being emitted.
+
+Events
+======
+
+All tracker objects emit `change` events with an argument of the name of the
+thing changing.
+
+TrackerGroup
+============
+
+* var tracker = new TrackerGroup(**name**)
+
+ * **name** *(optional)* - The name of this tracker group, used in change
+ notifications if the component updating didn't have a name. Defaults to undefined.
+
+Creates a new empty tracker aggregation group. These are trackers whose
+completion status is determined by the completion status of other trackers.
+
+* tracker.addUnit(**otherTracker**, **weight**)
+
+ * **otherTracker** - Any of the other are-we-there-yet tracker objects
+ * **weight** *(optional)* - The weight to give the tracker, defaults to 1.
+
+Adds the **otherTracker** to this aggregation group. The weight determines
+how long you expect this tracker to take to complete in proportion to other
+units. So for instance, if you add one tracker with a weight of 1 and
+another with a weight of 2, you're saying the second will take twice as long
+to complete as the first. As such, the first will account for 33% of the
+completion of this tracker and the second will account for the other 67%.
+
+Returns **otherTracker**.
+
+* var subGroup = tracker.newGroup(**name**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subGroup = tracker.addUnit(new TrackerGroup(name), weight)
+```
+
+* var subItem = tracker.newItem(**name**, **todo**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subItem = tracker.addUnit(new Tracker(name, todo), weight)
+```
+
+* var subStream = tracker.newStream(**name**, **todo**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subStream = tracker.addUnit(new TrackerStream(name, todo), weight)
+```
+
+* console.log( tracker.debug() )
+
+Returns a tree showing the completion of this tracker group and all of its
+children, including recursively entering all of the children.
+
+Tracker
+=======
+
+* var tracker = new Tracker(**name**, **todo**)
+
+ * **name** *(optional)* The name of this counter to report in change
+ events. Defaults to undefined.
+ * **todo** *(optional)* The amount of work todo (a number). Defaults to 0.
+
+Ordinarily these are constructed as a part of a tracker group (via `newItem`) but they c
+
+* var completed = tracker.completed()
+
+Returns the ratio of completed work to work to be done. Range of 0 to 1. If
+total work to be done is 0 then it will return 0.
+
+* tracker.addWork(**todo**)
+
+ * **todo** A number to add to the amount of work to be done.
+
+Increases the amount of work to be done, thus decreasing the completion
+percentage. Triggers a `change` event.
+
+* tracker.completeWork(**completed**)
+
+ * **completed** A number to add to the work complete
+
+Increase the amount of work complete, thus increasing the completion percentage.
+Will never increase the work completed past the amount of work todo. That is,
+percentages > 100% are not allowed. Triggers a `change` event.
+
+* tracker.finish()
+
+Marks this tracker as finished, tracker.completed() will now be 1. Triggers
+a `change` event.
+
+TrackerStream
+=============
+
+* var tracker = new TrackerStream(**name**, **size**, **options**)
+
+ * **name** *(optional)* The name of this counter to report in change
+ events. Defaults to undefined.
+ * **size** *(optional)* The number of bytes being sent through this stream.
+ * **options** *(optional)* A hash of stream options
+
+The tracker stream object is a pass through stream that updates an internal
+tracker object each time a block passes through. It's intended to track
+downloads, file extraction and other related activities. You use it by piping
+your data source into it and then using it as your data source.
+
+If your data has a length attribute then that's used as the amount of work
+completed when the chunk is passed through. If it does not (eg, object
+streams) then each chunk counts as completing 1 unit of work, so your size
+should be the total number of objects being streamed.
+
+* tracker.addWork(**todo**)
+
+ * **todo** Increase the expected overall size by **todo** bytes.
+
+Increases the amount of work to be done, thus decreasing the completion
+percentage. Triggers a `change` event.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/index.js
new file mode 100644
index 00000000000..22f47ac8852
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/index.js
@@ -0,0 +1,130 @@
+"use strict"
+var stream = require("readable-stream");
+var EventEmitter = require("events").EventEmitter
+var util = require("util")
+var delegate = require("delegates")
+
+var TrackerGroup = exports.TrackerGroup = function (name) {
+ EventEmitter.call(this)
+ this.name = name
+ this.trackGroup = []
+ var self = this
+ this.totalWeight = 0
+ var noteChange = this.noteChange = function (name) {
+ self.emit("change", name || this.name)
+ }.bind(this)
+ this.trackGroup.forEach(function(unit) {
+ unit.on("change", noteChange)
+ })
+}
+util.inherits(TrackerGroup, EventEmitter)
+
+TrackerGroup.prototype.completed = function () {
+ if (this.trackGroup.length==0) return 0
+ var valPerWeight = 1 / this.totalWeight
+ var completed = 0
+ this.trackGroup.forEach(function(T) {
+ completed += valPerWeight * T.weight * T.completed()
+ })
+ return completed
+}
+
+TrackerGroup.prototype.addUnit = function (unit, weight, noChange) {
+ unit.weight = weight || 1
+ this.totalWeight += unit.weight
+ this.trackGroup.push(unit)
+ unit.on("change", this.noteChange)
+ if (! noChange) this.emit("change", this.name)
+ return unit
+}
+
+TrackerGroup.prototype.newGroup = function (name, weight) {
+ return this.addUnit(new TrackerGroup(name), weight)
+}
+
+TrackerGroup.prototype.newItem = function (name, todo, weight) {
+ return this.addUnit(new Tracker(name, todo), weight)
+}
+
+TrackerGroup.prototype.newStream = function (name, todo, weight) {
+ return this.addUnit(new TrackerStream(name, todo), weight)
+}
+
+TrackerGroup.prototype.finish = function () {
+ if (! this.trackGroup.length) { this.addUnit(new Tracker(), 1, true) }
+ var self = this
+ this.trackGroup.forEach(function(T) {
+ T.removeListener("change", self.noteChange)
+ T.finish()
+ })
+ this.emit("change", this.name)
+}
+
+var buffer = " "
+TrackerGroup.prototype.debug = function (depth) {
+ depth = depth || 0
+ var indent = depth ? buffer.substr(0,depth) : ""
+ var output = indent + (this.name||"top") + ": " + this.completed() + "\n"
+ this.trackGroup.forEach(function(T) {
+ if (T instanceof TrackerGroup) {
+ output += T.debug(depth + 1)
+ }
+ else {
+ output += indent + " " + T.name + ": " + T.completed() + "\n"
+ }
+ })
+ return output
+}
+
+var Tracker = exports.Tracker = function (name,todo) {
+ EventEmitter.call(this)
+ this.name = name
+ this.workDone = 0
+ this.workTodo = todo || 0
+}
+util.inherits(Tracker, EventEmitter)
+
+Tracker.prototype.completed = function () {
+ return this.workTodo==0 ? 0 : this.workDone / this.workTodo
+}
+
+Tracker.prototype.addWork = function (work) {
+ this.workTodo += work
+ this.emit("change", this.name)
+}
+
+Tracker.prototype.completeWork = function (work) {
+ this.workDone += work
+ if (this.workDone > this.workTodo) this.workDone = this.workTodo
+ this.emit("change", this.name)
+}
+
+Tracker.prototype.finish = function () {
+ this.workTodo = this.workDone = 1
+ this.emit("change", this.name)
+}
+
+
+var TrackerStream = exports.TrackerStream = function (name, size, options) {
+ stream.Transform.call(this, options)
+ this.tracker = new Tracker(name, size)
+ this.name = name
+ var self = this
+ this.tracker.on("change", function (name) { self.emit("change", name) })
+}
+util.inherits(TrackerStream, stream.Transform)
+
+TrackerStream.prototype._transform = function (data, encoding, cb) {
+ this.tracker.completeWork(data.length ? data.length : 1)
+ this.push(data)
+ cb()
+}
+
+TrackerStream.prototype._flush = function (cb) {
+ this.tracker.finish()
+ cb()
+}
+
+delegate(TrackerStream.prototype, "tracker")
+ .method("completed")
+ .method("addWork")
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore
new file mode 100644
index 00000000000..c2658d7d1b3
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore
@@ -0,0 +1 @@
+node_modules/
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md
new file mode 100644
index 00000000000..aee31a4c35b
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md
@@ -0,0 +1,16 @@
+
+0.1.0 / 2014-10-17
+==================
+
+ * adds `.fluent()` to api
+
+0.0.3 / 2014-01-13
+==================
+
+ * fix receiver for .method()
+
+0.0.2 / 2014-01-13
+==================
+
+ * Object.defineProperty() sucks
+ * Initial commit
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile
new file mode 100644
index 00000000000..a9dcfd50dbd
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile
@@ -0,0 +1,8 @@
+
+test:
+ @./node_modules/.bin/mocha \
+ --require should \
+ --reporter spec \
+ --bail
+
+.PHONY: test \ No newline at end of file
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md
new file mode 100644
index 00000000000..ab8cf4ace15
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md
@@ -0,0 +1,94 @@
+
+# delegates
+
+ Node method and accessor delegation utilty.
+
+## Installation
+
+```
+$ npm install delegates
+```
+
+## Example
+
+```js
+var delegate = require('delegates');
+
+...
+
+delegate(proto, 'request')
+ .method('acceptsLanguages')
+ .method('acceptsEncodings')
+ .method('acceptsCharsets')
+ .method('accepts')
+ .method('is')
+ .access('querystring')
+ .access('idempotent')
+ .access('socket')
+ .access('length')
+ .access('query')
+ .access('search')
+ .access('status')
+ .access('method')
+ .access('path')
+ .access('body')
+ .access('host')
+ .access('url')
+ .getter('subdomains')
+ .getter('protocol')
+ .getter('header')
+ .getter('stale')
+ .getter('fresh')
+ .getter('secure')
+ .getter('ips')
+ .getter('ip')
+```
+
+# API
+
+## Delegate(proto, prop)
+
+Creates a delegator instance used to configure using the `prop` on the given
+`proto` object. (which is usually a prototype)
+
+## Delegate#method(name)
+
+Allows the given method `name` to be accessed on the host.
+
+## Delegate#getter(name)
+
+Creates a "getter" for the property with the given `name` on the delegated
+object.
+
+## Delegate#setter(name)
+
+Creates a "setter" for the property with the given `name` on the delegated
+object.
+
+## Delegate#access(name)
+
+Creates an "accessor" (ie: both getter *and* setter) for the property with the
+given `name` on the delegated object.
+
+## Delegate#fluent(name)
+
+A unique type of "accessor" that works for a "fluent" API. When called as a
+getter, the method returns the expected value. However, if the method is called
+with a value, it will return itself so it can be chained. For example:
+
+```js
+delegate(proto, 'request')
+ .fluent('query')
+
+// getter
+var q = request.query();
+
+// setter (chainable)
+request
+ .query({ a: 1 })
+ .query({ b: 2 });
+```
+
+# License
+
+ MIT
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js
new file mode 100644
index 00000000000..17c222d5293
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js
@@ -0,0 +1,121 @@
+
+/**
+ * Expose `Delegator`.
+ */
+
+module.exports = Delegator;
+
+/**
+ * Initialize a delegator.
+ *
+ * @param {Object} proto
+ * @param {String} target
+ * @api public
+ */
+
+function Delegator(proto, target) {
+ if (!(this instanceof Delegator)) return new Delegator(proto, target);
+ this.proto = proto;
+ this.target = target;
+ this.methods = [];
+ this.getters = [];
+ this.setters = [];
+ this.fluents = [];
+}
+
+/**
+ * Delegate method `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.method = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.methods.push(name);
+
+ proto[name] = function(){
+ return this[target][name].apply(this[target], arguments);
+ };
+
+ return this;
+};
+
+/**
+ * Delegator accessor `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.access = function(name){
+ return this.getter(name).setter(name);
+};
+
+/**
+ * Delegator getter `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.getter = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.getters.push(name);
+
+ proto.__defineGetter__(name, function(){
+ return this[target][name];
+ });
+
+ return this;
+};
+
+/**
+ * Delegator setter `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.setter = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.setters.push(name);
+
+ proto.__defineSetter__(name, function(val){
+ return this[target][name] = val;
+ });
+
+ return this;
+};
+
+/**
+ * Delegator fluent accessor
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.fluent = function (name) {
+ var proto = this.proto;
+ var target = this.target;
+ this.fluents.push(name);
+
+ proto[name] = function(val){
+ if ('undefined' != typeof val) {
+ this[target][name] = val;
+ return this;
+ } else {
+ return this[target][name];
+ }
+ };
+
+ return this;
+};
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json
new file mode 100644
index 00000000000..ea3c1da0d49
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json
@@ -0,0 +1,48 @@
+{
+ "name": "delegates",
+ "version": "0.1.0",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/visionmedia/node-delegates.git"
+ },
+ "description": "delegate methods and accessors to another property",
+ "keywords": [
+ "delegate",
+ "delegation"
+ ],
+ "dependencies": {},
+ "devDependencies": {
+ "mocha": "*",
+ "should": "*"
+ },
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/visionmedia/node-delegates/issues"
+ },
+ "homepage": "https://github.com/visionmedia/node-delegates",
+ "_id": "delegates@0.1.0",
+ "_shasum": "b4b57be11a1653517a04b27f0949bdc327dfe390",
+ "_from": "delegates@>=0.1.0 <0.2.0",
+ "_npmVersion": "1.4.9",
+ "_npmUser": {
+ "name": "dominicbarnes",
+ "email": "dominic@dbarnes.info"
+ },
+ "maintainers": [
+ {
+ "name": "tjholowaychuk",
+ "email": "tj@vision-media.ca"
+ },
+ {
+ "name": "dominicbarnes",
+ "email": "dominic@dbarnes.info"
+ }
+ ],
+ "dist": {
+ "shasum": "b4b57be11a1653517a04b27f0949bdc327dfe390",
+ "tarball": "http://registry.npmjs.org/delegates/-/delegates-0.1.0.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/delegates/-/delegates-0.1.0.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js
new file mode 100644
index 00000000000..7b6e3d4df19
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js
@@ -0,0 +1,94 @@
+
+var assert = require('assert');
+var delegate = require('..');
+
+describe('.method(name)', function(){
+ it('should delegate methods', function(){
+ var obj = {};
+
+ obj.request = {
+ foo: function(bar){
+ assert(this == obj.request);
+ return bar;
+ }
+ };
+
+ delegate(obj, 'request').method('foo');
+
+ obj.foo('something').should.equal('something');
+ })
+})
+
+describe('.getter(name)', function(){
+ it('should delegate getters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return 'text/html';
+ }
+ }
+
+ delegate(obj, 'request').getter('type');
+
+ obj.type.should.equal('text/html');
+ })
+})
+
+describe('.setter(name)', function(){
+ it('should delegate setters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return this._type.toUpperCase();
+ },
+
+ set type(val) {
+ this._type = val;
+ }
+ }
+
+ delegate(obj, 'request').setter('type');
+
+ obj.type = 'hey';
+ obj.request.type.should.equal('HEY');
+ })
+})
+
+describe('.access(name)', function(){
+ it('should delegate getters and setters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return this._type.toUpperCase();
+ },
+
+ set type(val) {
+ this._type = val;
+ }
+ }
+
+ delegate(obj, 'request').access('type');
+
+ obj.type = 'hey';
+ obj.type.should.equal('HEY');
+ })
+})
+
+describe('.fluent(name)', function () {
+ it('should delegate in a fluent fashion', function () {
+ var obj = {
+ settings: {
+ env: 'development'
+ }
+ };
+
+ delegate(obj, 'settings').fluent('env');
+
+ obj.env().should.equal('development');
+ obj.env('production').should.equal(obj);
+ obj.settings.env.should.equal('production');
+ })
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/package.json
new file mode 100644
index 00000000000..75910066693
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/package.json
@@ -0,0 +1,51 @@
+{
+ "name": "are-we-there-yet",
+ "version": "1.0.4",
+ "description": "Keep track of the overall completion of many dispirate processes",
+ "main": "index.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/are-we-there-yet.git"
+ },
+ "author": {
+ "name": "Rebecca Turner",
+ "url": "http://re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/are-we-there-yet/issues"
+ },
+ "homepage": "https://github.com/iarna/are-we-there-yet",
+ "devDependencies": {
+ "tap": "^0.4.13"
+ },
+ "dependencies": {
+ "delegates": "^0.1.0",
+ "readable-stream": "^1.1.13"
+ },
+ "gitHead": "7ce414849b81ab83935a935275def01914821bde",
+ "_id": "are-we-there-yet@1.0.4",
+ "_shasum": "527fe389f7bcba90806106b99244eaa07e886f85",
+ "_from": "are-we-there-yet@>=1.0.0 <1.1.0",
+ "_npmVersion": "2.0.0",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "dist": {
+ "shasum": "527fe389f7bcba90806106b99244eaa07e886f85",
+ "tarball": "http://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.0.4.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.0.4.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js
new file mode 100644
index 00000000000..18c31c32cfd
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js
@@ -0,0 +1,56 @@
+"use strict"
+var test = require("tap").test
+var Tracker = require("../index.js").Tracker
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+test("Tracker", function (t) {
+ t.plan(10)
+
+ var name = "test"
+ var track = new Tracker(name)
+
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+
+ var todo = 100
+ track = new Tracker(name, todo)
+ t.is(track.completed(), 0, "Nothing done is 0 completion")
+
+ testEvent(track, "change", afterCompleteWork)
+ track.completeWork(100)
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "completeWork: on change event fired")
+ t.is(onChangeName, name, "completeWork: on change emits the correct name")
+ }
+ t.is(track.completed(), 1, "completeWork: 100% completed")
+
+ testEvent(track, "change", afterAddWork)
+ track.addWork(100)
+ function afterAddWork(er, onChangeName) {
+ t.is(er, null, "addWork: on change event fired")
+ t.is(onChangeName, name, "addWork: on change emits the correct name")
+ }
+ t.is(track.completed(), 0.5, "addWork: 50% completed")
+
+
+ track.completeWork(200)
+ t.is(track.completed(), 1, "completeWork: Over completion is still only 100% complete")
+
+ track = new Tracker(name, todo)
+ track.completeWork(50)
+ track.finish()
+ t.is(track.completed(), 1, "finish: Explicitly finishing moves to 100%")
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js
new file mode 100644
index 00000000000..f97e1034ff9
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js
@@ -0,0 +1,87 @@
+"use strict"
+var test = require("tap").test
+var Tracker = require("../index.js").Tracker
+var TrackerGroup = require("../index.js").TrackerGroup
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+test("TrackerGroup", function (t) {
+ var name = "test"
+
+ var track = new TrackerGroup(name)
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+ testEvent(track, "change", afterFinishEmpty)
+ track.finish()
+ var a, b
+ function afterFinishEmpty(er, onChangeName) {
+ t.is(er, null, "finishEmpty: on change event fired")
+ t.is(onChangeName, name, "finishEmpty: on change emits the correct name")
+ t.is(track.completed(), 1, "finishEmpty: Finishing an empty group actually finishes it")
+
+ track = new TrackerGroup(name)
+ a = track.newItem("a", 10, 1)
+ b = track.newItem("b", 10, 1)
+ t.is(track.completed(), 0, "Initially empty")
+ testEvent(track, "change", afterCompleteWork)
+ a.completeWork(5)
+ }
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "on change event fired")
+ t.is(onChangeName, "a", "on change emits the correct name")
+ t.is(track.completed(), 0.25, "Complete half of one is a quarter overall")
+ testEvent(track, "change", afterFinishAll)
+ track.finish()
+ }
+ function afterFinishAll(er, onChangeName) {
+ t.is(er, null, "finishAll: on change event fired")
+ t.is(onChangeName, name, "finishAll: on change emits the correct name")
+ t.is(track.completed(), 1, "Finishing everything ")
+
+ track = new TrackerGroup(name)
+ a = track.newItem("a", 10, 2)
+ b = track.newItem("b", 10, 1)
+ t.is(track.completed(), 0, "weighted: Initially empty")
+ testEvent(track, "change", afterWeightedCompleteWork)
+ a.completeWork(5)
+ }
+ function afterWeightedCompleteWork(er, onChangeName) {
+ t.is(er, null, "weighted: on change event fired")
+ t.is(onChangeName, "a", "weighted: on change emits the correct name")
+ t.is(Math.round(track.completed()*100), 33, "weighted: Complete half of double weighted")
+ testEvent(track, "change", afterWeightedFinishAll)
+ track.finish()
+ }
+ function afterWeightedFinishAll(er, onChangeName) {
+ t.is(er, null, "weightedFinishAll: on change event fired")
+ t.is(onChangeName, name, "weightedFinishAll: on change emits the correct name")
+ t.is(track.completed(), 1, "weightedFinishaAll: Finishing everything ")
+
+ track = new TrackerGroup(name)
+ a = track.newGroup("a", 10)
+ b = track.newGroup("b", 10)
+ var a1 = a.newItem("a.1",10)
+ a1.completeWork(5)
+ t.is(track.completed(), 0.25, "nested: Initially quarter done")
+ testEvent(track, "change", afterNestedComplete)
+ b.finish()
+ }
+ function afterNestedComplete(er, onChangeName) {
+ t.is(er, null, "nestedComplete: on change event fired")
+ t.is(onChangeName, "b", "nestedComplete: on change emits the correct name")
+ t.is(track.completed(), 0.75, "nestedComplete: Finishing everything ")
+ t.end()
+ }
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js
new file mode 100644
index 00000000000..72b6043097f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js
@@ -0,0 +1,65 @@
+"use strict"
+var test = require("tap").test
+var util = require("util")
+var stream = require("readable-stream")
+var TrackerStream = require("../index.js").TrackerStream
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+var Sink = function () {
+ stream.Writable.apply(this,arguments)
+}
+util.inherits(Sink, stream.Writable)
+Sink.prototype._write = function (data, encoding, cb) {
+ cb()
+}
+
+test("TrackerStream", function (t) {
+ t.plan(9)
+
+ var name = "test"
+ var track = new TrackerStream(name)
+
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+
+ var todo = 10
+ track = new TrackerStream(name, todo)
+ t.is(track.completed(), 0, "Nothing done is 0 completion")
+
+ track.pipe(new Sink())
+
+ testEvent(track, "change", afterCompleteWork)
+ track.write("0123456789")
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "write: on change event fired")
+ t.is(onChangeName, name, "write: on change emits the correct name")
+ t.is(track.completed(), 1, "write: 100% completed")
+
+ testEvent(track, "change", afterAddWork)
+ track.addWork(10)
+ }
+ function afterAddWork(er, onChangeName) {
+ t.is(er, null, "addWork: on change event fired")
+ t.is(track.completed(), 0.5, "addWork: 50% completed")
+
+ testEvent(track, "change", afterAllWork)
+ track.write("ABCDEFGHIJKLMNOPQRST")
+ }
+ function afterAllWork(er) {
+ t.is(er, null, "allWork: on change event fired")
+ t.is(track.completed(), 1, "allWork: 100% completed")
+ }
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/.npmignore b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/.npmignore
new file mode 100644
index 00000000000..df22a16c635
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/.npmignore
@@ -0,0 +1,32 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# Editor cruft
+*~
+.#*
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/LICENSE
new file mode 100644
index 00000000000..e756052969b
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/LICENSE
@@ -0,0 +1,13 @@
+Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/README.md
new file mode 100644
index 00000000000..ca0a8cd773d
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/README.md
@@ -0,0 +1,166 @@
+gauge
+=====
+
+A nearly stateless terminal based horizontal guage / progress bar.
+
+```javascript
+var Gauge = require("gauge")
+
+var gauge = new Gauge()
+
+gauge.show("test", 0.20)
+
+gauge.pulse("this")
+
+gauge.hide()
+```
+
+![](example.png)
+
+
+### `var gauge = new Gauge([options], [ansiStream])`
+
+* **options** – *(optional)* An option object. (See [below] for details.)
+* **ansiStream** – *(optional)* A stream that's been blessed by the [ansi]
+ module to include various commands for controlling the cursor in a terminal.
+
+[ansi]: https://www.npmjs.com/package/ansi
+[below]: #theme-objects
+
+Constructs a new gauge. Gauges are drawn on a single line, and are not drawn
+if the current terminal isn't a tty.
+
+If you resize your terminal in a way that can be detected then the gauge
+will be drawn at the new size. As a general rule, growing your terminal will
+be clean, but shrinking your terminal will result in cruft as we don't have
+enough information to know where what we wrote previously is now located.
+
+The **options** object can have the following properties, all of which are
+optional:
+
+* maxUpdateFrequency: defaults to 50 msec, the gauge will not be drawn more
+ than once in this period of time. This applies to `show` and `pulse`
+ calls, but if you `hide` and then `show` the gauge it will draw it
+ regardless of time since last draw.
+* theme: defaults to Gauge.unicode` if the terminal supports
+ unicode according to [has-unicode], otherwise it defaults to `Gauge.ascii`.
+ Details on the [theme object](#theme-objects) are documented elsewhere.
+* template: see [documentation elsewhere](#template-objects) for
+ defaults and details.
+
+[has-unicode]: https://www.npmjs.com/package/has-unicode
+
+If **ansiStream** isn't passed in, then one will be constructed from stderr
+with `ansi(process.stderr)`.
+
+### `gauge.show([name, [completed]])`
+
+* **name** – *(optional)* The name of the current thing contributing to progress. Defaults to the last value used, or "".
+* **completed** – *(optional)* The portion completed as a value between 0 and 1. Defaults to the last value used, or 0.
+
+If `process.stdout.isTTY` is false then this does nothing. If completed is 0
+and `gauge.pulse` has never been called, then similarly nothing will be printed.
+
+If `maxUpdateFrequency` msec haven't passed since the last call to `show` or
+`pulse` then similarly, nothing will be printed. (Actually, the update is
+deferred until `maxUpdateFrequency` msec have passed and if nothing else has
+happened, the gauge update will happen.)
+
+### `gauge.hide()`
+
+Removes the gauge from the terminal.
+
+### `gauge.pulse([name])`
+
+* **name** – *(optional)* The specific thing that triggered this pulse
+
+Spins the spinner in the gauge to show output. If **name** is included then
+it will be combined with the last name passed to `gauge.show` using the
+subsection property of the theme (typically a right facing arrow).
+
+### `gauge.disable()`
+
+Hides the gauge and ignores further calls to `show` or `pulse`.
+
+### `gauge.enable()`
+
+Shows the gauge and resumes updating when `show` or `pulse` is called.
+
+### `gauge.setTheme(theme)`
+
+Change the active theme, will be displayed with the next show or pulse
+
+### `gauge.setTemplate(template)`
+
+Change the active template, will be displayed with the next show or pulse
+
+### Theme Objects
+
+There are two theme objects available as a part of the module, `Gauge.unicode` and `Gauge.ascii`.
+Theme objects have the follow properties:
+
+| Property | Unicode | ASCII |
+| ---------- | ------- | ----- |
+| startgroup | ╢ | \| |
+| endgroup | ╟ | \| |
+| complete | █ | # |
+| incomplete | ░ | - |
+| spinner | ▀▐▄▌ | -\\\|/ |
+| subsection | → | -> |
+
+*startgroup*, *endgroup* and *subsection* can be as many characters as you want.
+
+*complete* and *incomplete* should be a single character width each.
+
+*spinner* is a list of characters to use in turn when displaying an activity
+spinner. The Gauge will spin as many characters as you give here.
+
+### Template Objects
+
+A template is an array of objects and strings that, after being evaluated,
+will be turned into the gauge line. The default template is:
+
+```javascript
+[
+ {type: "name", separated: true, maxLength: 25, minLength: 25, align: "left"},
+ {type: "spinner", separated: true},
+ {type: "startgroup"},
+ {type: "completionbar"},
+ {type: "endgroup"}
+]
+```
+
+The various template elements can either be **plain strings**, in which case they will
+be be included verbatum in the output.
+
+If the template element is an object, it can have the following keys:
+
+* *type* can be:
+ * `name` – The most recent name passed to `show`; if this is in response to a
+ `pulse` then the name passed to `pulse` will be appended along with the
+ subsection property from the theme.
+ * `spinner` – If you've ever called `pulse` this will be one of the characters
+ from the spinner property of the theme.
+ * `startgroup` – The `startgroup` property from the theme.
+ * `completionbar` – This progress bar itself
+ * `endgroup` – The `endgroup` property from the theme.
+* *separated* – If true, the element will be separated with spaces from things on
+ either side (and margins count as space, so it won't be indented), but only
+ if its included.
+* *maxLength* – The maximum length for this element. If its value is longer it
+ will be truncated.
+* *minLength* – The minimum length for this element. If its value is shorter it
+ will be padded according to the *align* value.
+* *align* – (Default: left) Possible values "left", "right" and "center". Works
+ as you'd expect from word processors.
+* *length* – Provides a single value for both *minLength* and *maxLength*. If both
+ *length* and *minLength or *maxLength* are specifed then the latter take precedence.
+
+### Tracking Completion
+
+If you have more than one thing going on that you want to track completion
+of, you may find the related [are-we-there-yet] helpful. It's `change`
+event can be wired up to the `show` method to get a more traditional
+progress bar interface.
+
+[are-we-there-yet]: https://www.npmjs.com/package/are-we-there-yet
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/example.png b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/example.png
new file mode 100644
index 00000000000..2667cac459e
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/example.png
Binary files differ
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore
new file mode 100644
index 00000000000..7e17cf19b7a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore
@@ -0,0 +1,32 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# Editor temp files
+*~
+.#*
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE
new file mode 100644
index 00000000000..e756052969b
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE
@@ -0,0 +1,13 @@
+Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md
new file mode 100644
index 00000000000..4393106fda3
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md
@@ -0,0 +1,39 @@
+has-unicode
+===========
+
+Try to guess if your terminal supports unicode
+
+```javascript
+var hasUnicode = require("has-unicode")
+
+if (hasUnicode()) {
+ // the terminal probably has unicode support
+}
+```
+```javascript
+var hasUnicode = require("has-unicode").tryHarder
+hasUnicode(function(unicodeSupported) {
+ if (unicodeSupported) {
+ // the terminal probably has unicode support
+ }
+})
+```
+
+## Detecting Unicode
+
+What we actually detect is UTF-8 support, as that's what Node itself supports.
+If you have a UTF-16 locale then you won't be detected as unicode capable.
+
+### Windows
+
+Since at least Windows 7, `cmd` and `powershell` have been unicode capable.
+As such, we report any Windows installation as unicode capable.
+
+
+### Unix Like Operating Systems
+
+We look at the environment variables `LC_ALL`, `LC_CTYPE`, and `LANG` in
+that order. For `LC_ALL` and `LANG`, it looks for `.UTF-8` in the value.
+For `LC_CTYPE` it looks to see if the value is `UTF-8`. This is sufficient
+for most POSIX systems. While locale data can be put in `/etc/locale.conf`
+as well, AFAIK it's always copied into the environment.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
new file mode 100644
index 00000000000..e0907b510a8
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
@@ -0,0 +1,17 @@
+"use strict"
+var os = require("os")
+
+var hasUnicode = module.exports = function () {
+ // Supported Win32 platforms (>XP) support unicode in the console, though
+ // font support isn't fantastic.
+ if (os.type() == "Windows_NT") { return true }
+
+ var isUTF8 = /[.]UTF-8/
+ if (isUTF8.test(process.env.LC_ALL)
+ || process.env.LC_CTYPE == 'UTF-8'
+ || isUTF8.test(process.env.LANG)) {
+ return true
+ }
+
+ return false
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
new file mode 100644
index 00000000000..6430bb74a47
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
@@ -0,0 +1,53 @@
+{
+ "name": "has-unicode",
+ "version": "1.0.1",
+ "description": "Try to guess if your terminal supports unicode",
+ "main": "index.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/has-unicode.git"
+ },
+ "keywords": [
+ "unicode",
+ "terminal"
+ ],
+ "author": {
+ "name": "Rebecca Turner",
+ "email": "me@re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/has-unicode/issues"
+ },
+ "homepage": "https://github.com/iarna/has-unicode",
+ "devDependencies": {
+ "require-inject": "^1.1.1",
+ "tap": "^0.4.13"
+ },
+ "gitHead": "d4ad300c67b25c197582e42e936ea928f7935d01",
+ "_id": "has-unicode@1.0.1",
+ "_shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
+ "_from": "has-unicode@>=1.0.0 <2.0.0",
+ "_npmVersion": "3.3.6",
+ "_nodeVersion": "4.1.1",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
+ "tarball": "http://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js
new file mode 100644
index 00000000000..2394c14ef7f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js
@@ -0,0 +1,26 @@
+"use strict"
+var test = require("tap").test
+var requireInject = require("require-inject")
+
+test("Windows", function (t) {
+ t.plan(1)
+ var hasUnicode = requireInject("../index.js", {
+ os: { type: function () { return "Windows_NT" } }
+ })
+ t.is(hasUnicode(), true, "Windows is assumed to be unicode aware")
+})
+test("Unix Env", function (t) {
+ t.plan(3)
+ var hasUnicode = requireInject("../index.js", {
+ os: { type: function () { return "Linux" } },
+ child_process: { exec: function (cmd,cb) { cb(new Error("not available")) } }
+ })
+ process.env.LANG = "en_US.UTF-8"
+ process.env.LC_ALL = null
+ t.is(hasUnicode(), true, "Linux with a UTF8 language")
+ process.env.LANG = null
+ process.env.LC_ALL = "en_US.UTF-8"
+ t.is(hasUnicode(), true, "Linux with UTF8 locale")
+ process.env.LC_ALL = null
+ t.is(hasUnicode(), false, "Linux without UTF8 language or locale")
+})
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE.txt b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
index 9cd87e5dcef..9cd87e5dcef 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE.txt
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
new file mode 100644
index 00000000000..456d23ddf0c
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
@@ -0,0 +1,20 @@
+# lodash.pad v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.pad` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.pad
+```
+
+In Node.js/io.js:
+
+```js
+var pad = require('lodash.pad');
+```
+
+See the [documentation](https://lodash.com/docs#pad) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.pad) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
new file mode 100644
index 00000000000..a29ccea9ca1
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Pads `string` on the left and right sides if it's shorter than `length`.
+ * Padding characters are truncated if they can't be evenly divided by `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.pad('abc', 8);
+ * // => ' abc '
+ *
+ * _.pad('abc', 8, '_-');
+ * // => '_-abc_-_'
+ *
+ * _.pad('abc', 3);
+ * // => 'abc'
+ */
+function pad(string, length, chars) {
+ string = baseToString(string);
+ length = +length;
+
+ var strLength = string.length;
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return string;
+ }
+ var mid = (length - strLength) / 2,
+ leftLength = nativeFloor(mid),
+ rightLength = nativeCeil(mid);
+
+ chars = createPadding('', rightLength, chars);
+ return chars.slice(0, leftLength) + string + chars;
+}
+
+module.exports = pad;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE.txt b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE
index 9cd87e5dcef..9cd87e5dcef 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE.txt
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md
index ad04ea956e4..f81145e6ebe 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md
@@ -1,4 +1,4 @@
-# lodash._basetostring v3.0.0
+# lodash._basetostring v3.0.1
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var baseToString = require('lodash._basetostring');
```
-See the [package source](https://github.com/lodash/lodash/blob/3.0.0-npm-packages/lodash._basetostring) for more details.
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js
index 71ac885889b..db8ecc9fdd0 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js
@@ -1,14 +1,14 @@
/**
- * lodash 3.0.0 (Custom Build) <https://lodash.com/>
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.7.0 <http://underscorejs.org/LICENSE>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license>
*/
/**
- * Converts `value` to a string if it is not one. An empty string is returned
+ * Converts `value` to a string if it's not one. An empty string is returned
* for `null` or `undefined` values.
*
* @private
@@ -16,9 +16,6 @@
* @returns {string} Returns the string.
*/
function baseToString(value) {
- if (typeof value == 'string') {
- return value;
- }
return value == null ? '' : (value + '');
}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json
index dfb815b7577..f592f32e198 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json
@@ -1,6 +1,6 @@
{
"name": "lodash._basetostring",
- "version": "3.0.0",
+ "version": "3.0.1",
"description": "The modern build of lodash’s internal `baseToString` as a module.",
"homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg",
@@ -47,11 +47,11 @@
"bugs": {
"url": "https://github.com/lodash/lodash/issues"
},
- "_id": "lodash._basetostring@3.0.0",
- "_shasum": "75a9a4aaaa2b2a8761111ff5431e7d83c1daf0e2",
- "_from": "lodash._basetostring@3.0.0",
- "_npmVersion": "2.3.0",
- "_nodeVersion": "0.10.35",
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
"_npmUser": {
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
@@ -60,13 +60,29 @@
{
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
}
],
"dist": {
- "shasum": "75a9a4aaaa2b2a8761111ff5431e7d83c1daf0e2",
- "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.0.tgz"
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.0.tgz",
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md
index 0e1c73128ce..f9c9411c704 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md
@@ -1,4 +1,4 @@
-# lodash._createpadding v3.6.0
+# lodash._createpadding v3.6.1
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var createPadding = require('lodash._createpadding');
```
-See the [package source](https://github.com/lodash/lodash/blob/3.6.0-npm-packages/lodash._createpadding) for more details.
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js
index 72890bd2d8f..3541a8aae32 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js
@@ -1,18 +1,16 @@
/**
- * lodash 3.6.0 (Custom Build) <https://lodash.com/>
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.8.2 <http://underscorejs.org/LICENSE>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license>
*/
var repeat = require('lodash.repeat');
-/** Native method references. */
-var ceil = Math.ceil;
-
/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
/**
* Creates the padding required for `string` based on the given `length`.
@@ -33,7 +31,7 @@ function createPadding(string, length, chars) {
}
var padLength = length - strLength;
chars = chars == null ? ' ' : (chars + '');
- return repeat(chars, ceil(padLength / chars.length)).slice(0, padLength);
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
}
module.exports = createPadding;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
index d2796e3f739..dec571a333a 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -1,4 +1,4 @@
-# lodash.repeat v3.0.0
+# lodash.repeat v3.0.1
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var repeat = require('lodash.repeat');
```
-See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.0-npm-packages/lodash.repeat) for more details.
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
index 68e10081346..367913f56e0 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -1,18 +1,16 @@
/**
- * lodash 3.0.0 (Custom Build) <https://lodash.com/>
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.7.0 <http://underscorejs.org/LICENSE>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license>
*/
var baseToString = require('lodash._basetostring');
-/** Native method references. */
-var floor = Math.floor;
-
/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
/**
* Repeats the given string `n` times.
@@ -47,7 +45,7 @@ function repeat(string, n) {
if (n % 2) {
result += string;
}
- n = floor(n / 2);
+ n = nativeFloor(n / 2);
string += string;
} while (n);
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
index de5156da130..f941138c4bf 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -1,6 +1,6 @@
{
"name": "lodash.repeat",
- "version": "3.0.0",
+ "version": "3.0.1",
"description": "The modern build of lodash’s `_.repeat` as a module.",
"homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg",
@@ -56,11 +56,11 @@
"bugs": {
"url": "https://github.com/lodash/lodash/issues"
},
- "_id": "lodash.repeat@3.0.0",
- "_shasum": "c340f4136c99dc5b2e397b3fd50cffbd172a94b0",
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
"_from": "lodash.repeat@>=3.0.0 <4.0.0",
- "_npmVersion": "2.3.0",
- "_nodeVersion": "0.10.35",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
"_npmUser": {
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
@@ -69,13 +69,29 @@
{
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
}
],
"dist": {
- "shasum": "c340f4136c99dc5b2e397b3fd50cffbd172a94b0",
- "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.0.tgz"
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.0.tgz",
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
new file mode 100644
index 00000000000..c18ed47167a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.pad",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.pad` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.pad@3.1.1",
+ "_shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
+ "_from": "lodash.pad@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
+ "tarball": "http://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE.txt b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt
index 17764328c82..9cd87e5dcef 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE.txt
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt
@@ -1,5 +1,5 @@
Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
-Based on Underscore.js 1.7.0, copyright 2009-2015 Jeremy Ashkenas,
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
Permission is hereby granted, free of charge, to any person obtaining
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md
new file mode 100644
index 00000000000..641b4d6f007
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md
@@ -0,0 +1,20 @@
+# lodash.padleft v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.padLeft` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.padleft
+```
+
+In Node.js/io.js:
+
+```js
+var padLeft = require('lodash.padleft');
+```
+
+See the [documentation](https://lodash.com/docs#padLeft) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.padleft) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js
new file mode 100644
index 00000000000..2abb69a6c06
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js
@@ -0,0 +1,50 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/**
+ * Creates a function for `_.padLeft` or `_.padRight`.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify padding from the right.
+ * @returns {Function} Returns the new pad function.
+ */
+function createPadDir(fromRight) {
+ return function(string, length, chars) {
+ string = baseToString(string);
+ return (fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string);
+ };
+}
+
+/**
+ * Pads `string` on the left side if it is shorter than `length`. Padding
+ * characters are truncated if they exceed `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.padLeft('abc', 6);
+ * // => ' abc'
+ *
+ * _.padLeft('abc', 6, '_-');
+ * // => '_-_abc'
+ *
+ * _.padLeft('abc', 3);
+ * // => 'abc'
+ */
+var padLeft = createPadDir();
+
+module.exports = padLeft;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..f592f32e198
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json
new file mode 100644
index 00000000000..55b0c256f9d
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.padleft",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.padLeft` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.padleft@3.1.1",
+ "_shasum": "150151f1e0245edba15d50af2d71f1d5cff46530",
+ "_from": "lodash.padleft@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.9.0",
+ "_nodeVersion": "0.12.2",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "150151f1e0245edba15d50af2d71f1d5cff46530",
+ "tarball": "http://registry.npmjs.org/lodash.padleft/-/lodash.padleft-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.padleft/-/lodash.padleft-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE.txt b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt
index 17764328c82..9cd87e5dcef 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE.txt
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt
@@ -1,5 +1,5 @@
Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
-Based on Underscore.js 1.7.0, copyright 2009-2015 Jeremy Ashkenas,
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
Permission is hereby granted, free of charge, to any person obtaining
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md
new file mode 100644
index 00000000000..bcd6e5742fe
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md
@@ -0,0 +1,20 @@
+# lodash.padright v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.padRight` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.padright
+```
+
+In Node.js/io.js:
+
+```js
+var padRight = require('lodash.padright');
+```
+
+See the [documentation](https://lodash.com/docs#padRight) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.padright) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js
new file mode 100644
index 00000000000..6de81c4bbed
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js
@@ -0,0 +1,50 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/**
+ * Creates a function for `_.padLeft` or `_.padRight`.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify padding from the right.
+ * @returns {Function} Returns the new pad function.
+ */
+function createPadDir(fromRight) {
+ return function(string, length, chars) {
+ string = baseToString(string);
+ return (fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string);
+ };
+}
+
+/**
+ * Pads `string` on the right side if it is shorter than `length`. Padding
+ * characters are truncated if they exceed `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.padRight('abc', 6);
+ * // => 'abc '
+ *
+ * _.padRight('abc', 6, '_-');
+ * // => 'abc_-_'
+ *
+ * _.padRight('abc', 3);
+ * // => 'abc'
+ */
+var padRight = createPadDir(true);
+
+module.exports = padRight;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..f592f32e198
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json
new file mode 100644
index 00000000000..2a40f94bfc3
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.padright",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.padRight` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.padright@3.1.1",
+ "_shasum": "79f7770baaa39738c040aeb5465e8d88f2aacec0",
+ "_from": "lodash.padright@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.9.0",
+ "_nodeVersion": "0.12.2",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "79f7770baaa39738c040aeb5465e8d88f2aacec0",
+ "tarball": "http://registry.npmjs.org/lodash.padright/-/lodash.padright-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.padright/-/lodash.padright-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/package.json
new file mode 100644
index 00000000000..d16cc33df97
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/package.json
@@ -0,0 +1,60 @@
+{
+ "name": "gauge",
+ "version": "1.2.2",
+ "description": "A terminal based horizontal guage",
+ "main": "progress-bar.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/gauge.git"
+ },
+ "keywords": [
+ "progressbar",
+ "progress",
+ "gauge"
+ ],
+ "author": {
+ "name": "Rebecca Turner",
+ "email": "me@re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/gauge/issues"
+ },
+ "homepage": "https://github.com/iarna/gauge",
+ "dependencies": {
+ "ansi": "^0.3.0",
+ "has-unicode": "^1.0.0",
+ "lodash.pad": "^3.0.0",
+ "lodash.padleft": "^3.0.0",
+ "lodash.padright": "^3.0.0"
+ },
+ "devDependencies": {
+ "tap": "^0.4.13"
+ },
+ "gitHead": "9f7eeeeed3b74a70f30b721d570435f6ffbc0168",
+ "_id": "gauge@1.2.2",
+ "_shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
+ "_from": "gauge@>=1.2.0 <1.3.0",
+ "_npmVersion": "3.1.0",
+ "_nodeVersion": "0.10.38",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
+ "tarball": "http://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/progress-bar.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/progress-bar.js
new file mode 100644
index 00000000000..16bdadc5103
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/progress-bar.js
@@ -0,0 +1,226 @@
+"use strict"
+var hasUnicode = require("has-unicode")
+var ansi = require("ansi")
+var align = {
+ center: require("lodash.pad"),
+ left: require("lodash.padright"),
+ right: require("lodash.padleft")
+}
+var defaultStream = process.stderr
+function isTTY() {
+ return process.stderr.isTTY
+}
+function getWritableTTYColumns() {
+ // Writing to the final column wraps the line
+ // We have to use stdout here, because Node's magic SIGWINCH handler only
+ // updates process.stdout, not process.stderr
+ return process.stdout.columns - 1
+}
+
+var ProgressBar = module.exports = function (options, cursor) {
+ if (! options) options = {}
+ if (! cursor && options.write) {
+ cursor = options
+ options = {}
+ }
+ if (! cursor) {
+ cursor = ansi(defaultStream)
+ }
+ this.cursor = cursor
+ this.showing = false
+ this.theme = options.theme || (hasUnicode() ? ProgressBar.unicode : ProgressBar.ascii)
+ this.template = options.template || [
+ {type: "name", separated: true, length: 25},
+ {type: "spinner", separated: true},
+ {type: "startgroup"},
+ {type: "completionbar"},
+ {type: "endgroup"}
+ ]
+ this.updatefreq = options.maxUpdateFrequency || 50
+ this.lastName = ""
+ this.lastCompleted = 0
+ this.spun = 0
+ this.last = new Date(0)
+
+ var self = this
+ this._handleSizeChange = function () {
+ if (!self.showing) return
+ self.hide()
+ self.show()
+ }
+}
+ProgressBar.prototype = {}
+
+ProgressBar.unicode = {
+ startgroup: "╢",
+ endgroup: "╟",
+ complete: "█",
+ incomplete: "░",
+ spinner: "▀▐▄▌",
+ subsection: "→"
+}
+
+ProgressBar.ascii = {
+ startgroup: "|",
+ endgroup: "|",
+ complete: "#",
+ incomplete: "-",
+ spinner: "-\\|/",
+ subsection: "->"
+}
+
+ProgressBar.prototype.setTheme = function(theme) {
+ this.theme = theme
+}
+
+ProgressBar.prototype.setTemplate = function(template) {
+ this.template = template
+}
+
+ProgressBar.prototype._enableResizeEvents = function() {
+ process.stdout.on('resize', this._handleSizeChange)
+}
+
+ProgressBar.prototype._disableResizeEvents = function() {
+ process.stdout.removeListener('resize', this._handleSizeChange)
+}
+
+ProgressBar.prototype.disable = function() {
+ this.hide()
+ this.disabled = true
+}
+
+ProgressBar.prototype.enable = function() {
+ this.disabled = false
+ this.show()
+}
+
+ProgressBar.prototype.hide = function() {
+ if (!isTTY()) return
+ if (this.disabled) return
+ this.cursor.show()
+ if (this.showing) this.cursor.up(1)
+ this.cursor.horizontalAbsolute(0).eraseLine()
+ this.showing = false
+}
+
+var repeat = function (str, count) {
+ var out = ""
+ for (var ii=0; ii<count; ++ii) out += str
+ return out
+}
+
+ProgressBar.prototype.pulse = function(name) {
+ ++ this.spun
+ if (! this.showing) return
+ if (this.disabled) return
+
+ var baseName = this.lastName
+ name = name
+ ? ( baseName
+ ? baseName + " " + this.theme.subsection + " " + name
+ : null )
+ : baseName
+ this.show(name)
+ this.lastName = baseName
+}
+
+ProgressBar.prototype.show = function(name, completed) {
+ name = this.lastName = name || this.lastName
+ completed = this.lastCompleted = completed || this.lastCompleted
+
+ if (!isTTY()) return
+ if (this.disabled) return
+ if (! this.spun && ! completed) return
+ if (this.tryAgain) {
+ clearTimeout(this.tryAgain)
+ this.tryAgain = null
+ }
+ var self = this
+ if (this.showing && new Date() - this.last < this.updatefreq) {
+ this.tryAgain = setTimeout(function () {
+ if (self.disabled) return
+ if (! self.spun && ! completed) return
+ drawBar()
+ }, this.updatefreq - (new Date() - this.last))
+ return
+ }
+
+ return drawBar()
+
+ function drawBar() {
+ var values = {
+ name: name,
+ spinner: self.spun,
+ completed: completed
+ }
+
+ self.last = new Date()
+
+ var statusline = self.renderTemplate(self.theme, self.template, values)
+
+ if (self.showing) self.cursor.up(1)
+ self.cursor
+ .hide()
+ .horizontalAbsolute(0)
+ .write(statusline.substr(0, getWritableTTYColumns()) + "\n")
+ .show()
+
+ self.showing = true
+ }
+}
+
+ProgressBar.prototype.renderTemplate = function (theme, template, values) {
+ values.startgroup = theme.startgroup
+ values.endgroup = theme.endgroup
+ values.spinner = values.spinner
+ ? theme.spinner.substr(values.spinner % theme.spinner.length,1)
+ : ""
+
+ var output = {prebar: "", postbar: ""}
+ var status = "prebar"
+ var self = this
+ template.forEach(function(T) {
+ if (typeof T === "string") {
+ output[status] += T
+ return
+ }
+ if (T.type === "completionbar") {
+ status = "postbar"
+ return
+ }
+ if (!values.hasOwnProperty(T.type)) throw new Error("Unknown template value '"+T.type+"'")
+ var value = self.renderValue(T, values[T.type])
+ if (value === "") return
+ var sofar = output[status].length
+ var lastChar = sofar ? output[status][sofar-1] : null
+ if (T.separated && sofar && lastChar !== " ") {
+ output[status] += " "
+ }
+ output[status] += value
+ if (T.separated) output[status] += " "
+ })
+
+ var bar = ""
+ if (status === "postbar") {
+ var nonBarLen = output.prebar.length + output.postbar.length
+
+ var barLen = getWritableTTYColumns() - nonBarLen
+ var sofar = Math.round(barLen * Math.max(0,Math.min(1,values.completed||0)))
+ var rest = barLen - sofar
+ bar = repeat(theme.complete, sofar)
+ + repeat(theme.incomplete, rest)
+ }
+
+ return output.prebar + bar + output.postbar
+}
+ProgressBar.prototype.renderValue = function (template, value) {
+ if (value == null || value === "") return ""
+ var maxLength = template.maxLength || template.length
+ var minLength = template.minLength || template.length
+ var alignWith = align[template.align] || align.left
+// if (maxLength) value = value.substr(-1 * maxLength)
+ if (maxLength) value = value.substr(0, maxLength)
+ if (minLength) value = alignWith(value, minLength)
+ return value
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/test/progress-bar.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
new file mode 100644
index 00000000000..39939269f5b
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
@@ -0,0 +1,176 @@
+"use strict"
+var test = require("tap").test
+var ProgressBar = require("../progress-bar.js")
+
+var cursor = []
+var C
+var bar = new ProgressBar({theme: ProgressBar.ascii}, C = {
+ show: function () {
+ cursor.push(["show"])
+ return C
+ },
+ hide: function () {
+ cursor.push(["hide"])
+ return C
+ },
+ up: function (lines) {
+ cursor.push(["up",lines])
+ return C
+ },
+ horizontalAbsolute: function (col) {
+ cursor.push(["horizontalAbsolute", col])
+ return C
+ },
+ eraseLine: function () {
+ cursor.push(["eraseLine"])
+ return C
+ },
+ write: function (line) {
+ cursor.push(["write", line])
+ return C
+ }
+})
+
+
+function isOutput(t, msg, output) {
+ var tests = []
+ for (var ii = 0; ii<output.length; ++ii) {
+ for (var jj = 0; jj<output[ii].length; ++jj) {
+ tests.push({cmd: ii, arg: jj})
+ }
+ }
+ tests.forEach(function(test) {
+ t.is(cursor[test.cmd] ? cursor[test.cmd][test.arg] : null,
+ output[test.cmd][test.arg],
+ msg + ": " + output[test.cmd] + (test.arg ? " arg #"+test.arg : ""))
+ })
+}
+
+test("hide", function (t) {
+ t.plan(11)
+ process.stderr.isTTY = false
+ bar.hide()
+ t.is(cursor.length, 0, "We don't progress bar without a tty")
+ cursor = []
+ process.stderr.isTTY = true
+ bar.hide()
+ isOutput(t, "hide while not showing",[
+ ["show"], // cursor
+ ["horizontalAbsolute",0],
+ ["eraseLine"]])
+ cursor = []
+ bar.showing = true
+ bar.hide()
+ isOutput(t, "hide while showing",[
+ ["show"], // cursor
+ ["up", 1],
+ ["horizontalAbsolute",0],
+ ["eraseLine"]])
+})
+
+test("renderTemplate", function (t) {
+ t.plan(16)
+ process.stdout.columns = 11
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "name"}],{name: "NAME"})
+ t.is(result, "NAME", "name substitution")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 0})
+ t.is(result, "----------", "0% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 0.5})
+ t.is(result, "#####-----", "50% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 1})
+ t.is(result, "##########", "100% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: -100})
+ t.is(result, "----------", "0% underflow bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 100})
+ t.is(result, "##########", "100% overflow bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "name"},{type: "completionbar"}],{name: "NAME", completed: 0.5})
+ t.is(result, "NAME###---", "name + 50%")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static"], {})
+ t.is(result, "static", "static text")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static",{type: "name"}], {name: "NAME"})
+ t.is(result, "staticNAME", "static text + var")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static",{type: "name", separated: true}], {name: "NAME"})
+ t.is(result, "static NAME ", "pre-separated")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "name", separated: true}, "static"], {name: "NAME"})
+ t.is(result, "NAME static", "post-separated")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["1",{type: "name", separated: true}, "2"], {name: ""})
+ t.is(result, "12", "separated no value")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["1",{type: "name", separated: true}, "2"], {name: "NAME"})
+ t.is(result, "1 NAME 2", "separated value")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 0})
+ t.is(result, "", "No spinner")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 1})
+ t.is(result, "\\", "Spinner 1")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 10})
+ t.is(result, "|", "Spinner 10")
+})
+
+test("show & pulse", function (t) {
+ t.plan(23)
+
+ process.stdout.columns = 16
+ cursor = []
+ process.stderr.isTTY = false
+ bar.template[0].length = 6
+ bar.last = new Date(0)
+ bar.show("NAME", 0)
+ t.is(cursor.length, 0, "no tty, no progressbar")
+
+ cursor = []
+ process.stderr.isTTY = true
+ bar.last = new Date(0)
+ bar.show("NAME", 0.1)
+ isOutput(t, "tty, name, completion",
+ [ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME |#-----|\n' ],
+ [ 'show' ] ])
+
+ bar.show("S")
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "pulsed spinner",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'S \\ |----|\n' ],
+ [ 'show' ] ])
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse("P")
+ isOutput(t, "pulsed spinner with subsection",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'S -> P | |----|\n' ],
+ [ 'show' ] ])
+})
+
+test("window resizing", function (t) {
+ t.plan(16)
+ process.stderr.isTTY = true
+ process.stdout.columns = 32
+ bar.show("NAME", 0.1)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "32 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME / |##------------------|\n' ],
+ [ 'show' ] ])
+
+ process.stdout.columns = 16
+ bar.show("NAME", 0.5)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "16 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME - |##--|\n' ],
+ [ 'show' ] ]);
+});
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json
new file mode 100644
index 00000000000..cd7131f4044
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json
@@ -0,0 +1,57 @@
+{
+ "author": {
+ "name": "Isaac Z. Schlueter",
+ "email": "i@izs.me",
+ "url": "http://blog.izs.me/"
+ },
+ "name": "npmlog",
+ "description": "logger for npm",
+ "version": "1.2.1",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/isaacs/npmlog.git"
+ },
+ "main": "log.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "dependencies": {
+ "ansi": "~0.3.0",
+ "are-we-there-yet": "~1.0.0",
+ "gauge": "~1.2.0"
+ },
+ "devDependencies": {
+ "tap": ""
+ },
+ "license": "ISC",
+ "gitHead": "4e1a73a567036064ded425a7d48c863d53550b4f",
+ "bugs": {
+ "url": "https://github.com/isaacs/npmlog/issues"
+ },
+ "homepage": "https://github.com/isaacs/npmlog#readme",
+ "_id": "npmlog@1.2.1",
+ "_shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
+ "_from": "npmlog@>=0.0.0 <1.0.0||>=1.0.0 <2.0.0",
+ "_npmVersion": "2.10.0",
+ "_nodeVersion": "2.0.1",
+ "_npmUser": {
+ "name": "isaacs",
+ "email": "isaacs@npmjs.com"
+ },
+ "dist": {
+ "shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
+ "tarball": "http://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "isaacs",
+ "email": "i@izs.me"
+ },
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz"
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/basic.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/basic.js
new file mode 100644
index 00000000000..1afcabd1c6b
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/basic.js
@@ -0,0 +1,228 @@
+var tap = require('tap')
+var log = require('../')
+
+var result = []
+var logEvents = []
+var logInfoEvents = []
+var logPrefixEvents = []
+
+var util = require('util')
+
+var resultExpect =
+[ '\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[7msill\u001b[0m \u001b[0m\u001b[35msilly prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[34m\u001b[40mverb\u001b[0m \u001b[0m\u001b[35mverbose prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32minfo\u001b[0m \u001b[0m\u001b[35minfo prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32m\u001b[40mhttp\u001b[0m \u001b[0m\u001b[35mhttp prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[30m\u001b[43mWARN\u001b[0m \u001b[0m\u001b[35mwarn prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35merror prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32minfo\u001b[0m \u001b[0m\u001b[35minfo prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32m\u001b[40mhttp\u001b[0m \u001b[0m\u001b[35mhttp prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[30m\u001b[43mWARN\u001b[0m \u001b[0m\u001b[35mwarn prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35merror prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m This is a longer\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m message, with some details\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m and maybe a stack.\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m \n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u0007noise\u001b[0m\u001b[35m\u001b[0m LOUD NOISES\n',
+ '\u001b[0m' ]
+
+var logPrefixEventsExpect =
+[ { id: 2,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 9,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 16,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] } ]
+
+// should be the same.
+var logInfoEventsExpect = logPrefixEventsExpect
+
+var logEventsExpect =
+[ { id: 0,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 1,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 2,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 3,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 4,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 5,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 6,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 7,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 8,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 9,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 10,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 11,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 12,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 13,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 14,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 15,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 16,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 17,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 18,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 19,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 20,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 21,
+ level: 'error',
+ prefix: '404',
+ message: 'This is a longer\nmessage, with some details\nand maybe a stack.\n',
+ messageRaw: [ 'This is a longer\nmessage, with some details\nand maybe a stack.\n' ] },
+ { id: 22,
+ level: 'noise',
+ prefix: false,
+ message: 'LOUD NOISES',
+ messageRaw: [ 'LOUD NOISES' ] } ]
+
+var Stream = require('stream').Stream
+var s = new Stream()
+s.write = function (m) {
+ result.push(m)
+}
+
+s.writable = true
+s.isTTY = true
+s.end = function () {}
+
+log.stream = s
+
+log.heading = 'npm'
+
+
+tap.test('basic', function (t) {
+ log.on('log', logEvents.push.bind(logEvents))
+ log.on('log.info', logInfoEvents.push.bind(logInfoEvents))
+ log.on('info prefix', logPrefixEvents.push.bind(logPrefixEvents))
+
+ console.error('log.level=silly')
+ log.level = 'silly'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+ console.error('log.level=silent')
+ log.level = 'silent'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+ console.error('log.level=info')
+ log.level = 'info'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('404', 'This is a longer\n'+
+ 'message, with some details\n'+
+ 'and maybe a stack.\n')
+ log.addLevel('noise', 10000, {beep: true})
+ log.noise(false, 'LOUD NOISES')
+
+ t.deepEqual(result.join('').trim(), resultExpect.join('').trim(), 'result')
+ t.deepEqual(log.record, logEventsExpect, 'record')
+ t.deepEqual(logEvents, logEventsExpect, 'logEvents')
+ t.deepEqual(logInfoEvents, logInfoEventsExpect, 'logInfoEvents')
+ t.deepEqual(logPrefixEvents, logPrefixEventsExpect, 'logPrefixEvents')
+
+ t.end()
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/progress.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/progress.js
new file mode 100644
index 00000000000..14dfb32740f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/test/progress.js
@@ -0,0 +1,114 @@
+'use strict'
+
+var test = require('tap').test
+var log = require('../log.js')
+
+var actions = []
+log.gauge = {
+ enable: function () {
+ actions.push(['enable'])
+ },
+ disable: function () {
+ actions.push(['disable'])
+ },
+ hide: function () {
+ actions.push(['hide'])
+ },
+ show: function (name, completed) {
+ actions.push(['show', name, completed])
+ },
+ pulse: function (name) {
+ actions.push(['pulse', name])
+ }
+}
+
+function didActions(t, msg, output) {
+ var tests = []
+ for (var ii = 0; ii < output.length; ++ ii) {
+ for (var jj = 0; jj < output[ii].length; ++ jj) {
+ tests.push({cmd: ii, arg: jj})
+ }
+ }
+ t.is(actions.length, output.length, msg)
+ tests.forEach(function (test) {
+ t.is(actions[test.cmd] ? actions[test.cmd][test.arg] : null,
+ output[test.cmd][test.arg],
+ msg + ': ' + output[test.cmd] + (test.arg ? ' arg #'+test.arg : ''))
+ })
+ actions = []
+}
+
+
+test('enableProgress', function (t) {
+ t.plan(6)
+ log.enableProgress()
+ didActions(t, 'enableProgress', [ [ 'enable' ], [ 'show', undefined, 0 ] ])
+ log.enableProgress()
+ didActions(t, 'enableProgress again', [])
+})
+
+test('disableProgress', function (t) {
+ t.plan(4)
+ log.disableProgress()
+ didActions(t, 'disableProgress', [ [ 'hide' ], [ 'disable' ] ])
+ log.disableProgress()
+ didActions(t, 'disableProgress again', [])
+})
+
+test('showProgress', function (t) {
+ t.plan(5)
+ log.showProgress('foo')
+ didActions(t, 'showProgress disabled', [])
+ log.enableProgress()
+ actions = []
+ log.showProgress('foo')
+ didActions(t, 'showProgress', [ [ 'show', 'foo', 0 ] ])
+})
+
+test('clearProgress', function (t) {
+ t.plan(3)
+ log.clearProgress()
+ didActions(t, 'clearProgress', [ [ 'hide' ] ])
+ log.disableProgress()
+ actions = []
+ log.clearProgress()
+ didActions(t, 'clearProgress disabled', [ ])
+})
+
+test("newItem", function (t) {
+ t.plan(12)
+ log.enableProgress()
+ actions = []
+ var a = log.newItem("test", 10)
+ didActions(t, "newItem", [ [ 'show', undefined, 0 ] ])
+ a.completeWork(5)
+ didActions(t, "newItem:completeWork", [ [ 'show', 'test', 0.5 ] ])
+ a.finish()
+ didActions(t, "newItem:finish", [ [ 'show', 'test', 1 ] ])
+})
+
+// test that log objects proxy through. And test that completion status filters up
+test("newGroup", function (t) {
+ t.plan(23)
+ var a = log.newGroup("newGroup")
+ didActions(t, "newGroup", [ [ 'show', undefined, 0.5 ] ])
+ a.warn("test", "this is a test")
+ didActions(t, "newGroup:warn", [ [ 'pulse', 'test' ], [ 'hide' ], [ 'show', undefined, 0.5 ] ])
+ var b = a.newItem("newGroup2", 10)
+ didActions(t, "newGroup:newItem", [ [ 'show', 'newGroup', 0.5 ] ])
+ b.completeWork(5)
+ didActions(t, "newGroup:completeWork", [ [ 'show', 'newGroup2', 0.75 ] ])
+ a.finish()
+ didActions(t, "newGroup:finish", [ [ 'show', 'newGroup', 1 ] ])
+})
+
+test("newStream", function (t) {
+ t.plan(13)
+ var a = log.newStream("newStream", 10)
+ didActions(t, "newStream", [ [ 'show', undefined, 0.6666666666666666 ] ])
+ a.write("abcde")
+ didActions(t, "newStream", [ [ 'show', 'newStream', 0.8333333333333333 ] ])
+ a.write("fghij")
+ didActions(t, "newStream", [ [ 'show', 'newStream', 1 ] ])
+ t.is(log.tracker.completed(), 1, "Overall completion")
+})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/.jshintrc b/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/.jshintrc
deleted file mode 100644
index 182e34d07d7..00000000000
--- a/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/.jshintrc
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "asi": true,
- "laxcomma": true
-}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/package.json b/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/package.json
index 6ba9df72c29..8ed83ab2436 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/package.json
@@ -53,6 +53,5 @@
"tarball": "http://registry.npmjs.org/array-index/-/array-index-0.1.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/array-index/-/array-index-0.1.1.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/array-index/-/array-index-0.1.1.tgz"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/path-array/package.json b/deps/npm/node_modules/node-gyp/node_modules/path-array/package.json
index 41d25482b86..ad8edc9f83e 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/path-array/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/path-array/package.json
@@ -51,6 +51,5 @@
"tarball": "http://registry.npmjs.org/path-array/-/path-array-1.0.0.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/path-array/-/path-array-1.0.0.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/path-array/-/path-array-1.0.0.tgz"
}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/tar/package.json b/deps/npm/node_modules/node-gyp/node_modules/tar/package.json
index 7fab5394cd6..5aa78aec301 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/tar/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/tar/package.json
@@ -56,6 +56,5 @@
"tarball": "http://registry.npmjs.org/tar/-/tar-1.0.3.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/tar/-/tar-1.0.3.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/tar/-/tar-1.0.3.tgz"
}
diff --git a/deps/npm/node_modules/node-gyp/package.json b/deps/npm/node_modules/node-gyp/package.json
index 76fc168f2d9..0fd88078456 100644
--- a/deps/npm/node_modules/node-gyp/package.json
+++ b/deps/npm/node_modules/node-gyp/package.json
@@ -93,6 +93,5 @@
"tarball": "http://registry.npmjs.org/node-gyp/-/node-gyp-3.0.3.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.0.3.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.0.3.tgz"
}
diff --git a/deps/npm/node_modules/nopt/lib/nopt.js b/deps/npm/node_modules/nopt/lib/nopt.js
index 5309a00fc7d..97707e78424 100644
--- a/deps/npm/node_modules/nopt/lib/nopt.js
+++ b/deps/npm/node_modules/nopt/lib/nopt.js
@@ -207,7 +207,8 @@ function validate (data, k, val, type, typeDefs) {
for (var i = 0, l = types.length; i < l; i ++) {
debug("test type %j %j %j", k, val, types[i])
var t = typeDefs[types[i]]
- if (t && type === t.type) {
+ if (t &&
+ ((type && type.name && t.type && t.type.name) ? (type.name === t.type.name) : (type === t.type))) {
var d = {}
ok = false !== t.validate(d, k, val)
val = d[k]
diff --git a/deps/npm/node_modules/nopt/package.json b/deps/npm/node_modules/nopt/package.json
index 618f93467e2..f9ff8d88261 100644
--- a/deps/npm/node_modules/nopt/package.json
+++ b/deps/npm/node_modules/nopt/package.json
@@ -1,6 +1,6 @@
{
"name": "nopt",
- "version": "3.0.4",
+ "version": "3.0.6",
"description": "Option parsing for Node, supporting types, shorthands, etc. Used by npm.",
"author": {
"name": "Isaac Z. Schlueter",
@@ -13,7 +13,7 @@
},
"repository": {
"type": "git",
- "url": "git+ssh://git@github.com/isaacs/nopt.git"
+ "url": "git+https://github.com/npm/nopt.git"
},
"bin": {
"nopt": "./bin/nopt.js"
@@ -27,12 +27,12 @@
},
"readme": "If you want to write an option parser, and have it be good, there are\ntwo ways to do it. The Right Way, and the Wrong Way.\n\nThe Wrong Way is to sit down and write an option parser. We've all done\nthat.\n\nThe Right Way is to write some complex configurable program with so many\noptions that you hit the limit of your frustration just trying to\nmanage them all, and defer it with duct-tape solutions until you see\nexactly to the core of the problem, and finally snap and write an\nawesome option parser.\n\nIf you want to write an option parser, don't write an option parser.\nWrite a package manager, or a source control system, or a service\nrestarter, or an operating system. You probably won't end up with a\ngood one of those, but if you don't give up, and you are relentless and\ndiligent enough in your procrastination, you may just end up with a very\nnice option parser.\n\n## USAGE\n\n // my-program.js\n var nopt = require(\"nopt\")\n , Stream = require(\"stream\").Stream\n , path = require(\"path\")\n , knownOpts = { \"foo\" : [String, null]\n , \"bar\" : [Stream, Number]\n , \"baz\" : path\n , \"bloo\" : [ \"big\", \"medium\", \"small\" ]\n , \"flag\" : Boolean\n , \"pick\" : Boolean\n , \"many1\" : [String, Array]\n , \"many2\" : [path]\n }\n , shortHands = { \"foofoo\" : [\"--foo\", \"Mr. Foo\"]\n , \"b7\" : [\"--bar\", \"7\"]\n , \"m\" : [\"--bloo\", \"medium\"]\n , \"p\" : [\"--pick\"]\n , \"f\" : [\"--flag\"]\n }\n // everything is optional.\n // knownOpts and shorthands default to {}\n // arg list defaults to process.argv\n // slice defaults to 2\n , parsed = nopt(knownOpts, shortHands, process.argv, 2)\n console.log(parsed)\n\nThis would give you support for any of the following:\n\n```bash\n$ node my-program.js --foo \"blerp\" --no-flag\n{ \"foo\" : \"blerp\", \"flag\" : false }\n\n$ node my-program.js ---bar 7 --foo \"Mr. Hand\" --flag\n{ bar: 7, foo: \"Mr. Hand\", flag: true }\n\n$ node my-program.js --foo \"blerp\" -f -----p\n{ foo: \"blerp\", flag: true, pick: true }\n\n$ node my-program.js -fp --foofoo\n{ foo: \"Mr. Foo\", flag: true, pick: true }\n\n$ node my-program.js --foofoo -- -fp # -- stops the flag parsing.\n{ foo: \"Mr. Foo\", argv: { remain: [\"-fp\"] } }\n\n$ node my-program.js --blatzk -fp # unknown opts are ok.\n{ blatzk: true, flag: true, pick: true }\n\n$ node my-program.js --blatzk=1000 -fp # but you need to use = if they have a value\n{ blatzk: 1000, flag: true, pick: true }\n\n$ node my-program.js --no-blatzk -fp # unless they start with \"no-\"\n{ blatzk: false, flag: true, pick: true }\n\n$ node my-program.js --baz b/a/z # known paths are resolved.\n{ baz: \"/Users/isaacs/b/a/z\" }\n\n# if Array is one of the types, then it can take many\n# values, and will always be an array. The other types provided\n# specify what types are allowed in the list.\n\n$ node my-program.js --many1 5 --many1 null --many1 foo\n{ many1: [\"5\", \"null\", \"foo\"] }\n\n$ node my-program.js --many2 foo --many2 bar\n{ many2: [\"/path/to/foo\", \"path/to/bar\"] }\n```\n\nRead the tests at the bottom of `lib/nopt.js` for more examples of\nwhat this puppy can do.\n\n## Types\n\nThe following types are supported, and defined on `nopt.typeDefs`\n\n* String: A normal string. No parsing is done.\n* path: A file system path. Gets resolved against cwd if not absolute.\n* url: A url. If it doesn't parse, it isn't accepted.\n* Number: Must be numeric.\n* Date: Must parse as a date. If it does, and `Date` is one of the options,\n then it will return a Date object, not a string.\n* Boolean: Must be either `true` or `false`. If an option is a boolean,\n then it does not need a value, and its presence will imply `true` as\n the value. To negate boolean flags, do `--no-whatever` or `--whatever\n false`\n* NaN: Means that the option is strictly not allowed. Any value will\n fail.\n* Stream: An object matching the \"Stream\" class in node. Valuable\n for use when validating programmatically. (npm uses this to let you\n supply any WriteStream on the `outfd` and `logfd` config options.)\n* Array: If `Array` is specified as one of the types, then the value\n will be parsed as a list of options. This means that multiple values\n can be specified, and that the value will always be an array.\n\nIf a type is an array of values not on this list, then those are\nconsidered valid values. For instance, in the example above, the\n`--bloo` option can only be one of `\"big\"`, `\"medium\"`, or `\"small\"`,\nand any other value will be rejected.\n\nWhen parsing unknown fields, `\"true\"`, `\"false\"`, and `\"null\"` will be\ninterpreted as their JavaScript equivalents.\n\nYou can also mix types and values, or multiple types, in a list. For\ninstance `{ blah: [Number, null] }` would allow a value to be set to\neither a Number or null. When types are ordered, this implies a\npreference, and the first type that can be used to properly interpret\nthe value will be used.\n\nTo define a new type, add it to `nopt.typeDefs`. Each item in that\nhash is an object with a `type` member and a `validate` method. The\n`type` member is an object that matches what goes in the type list. The\n`validate` method is a function that gets called with `validate(data,\nkey, val)`. Validate methods should assign `data[key]` to the valid\nvalue of `val` if it can be handled properly, or return boolean\n`false` if it cannot.\n\nYou can also call `nopt.clean(data, types, typeDefs)` to clean up a\nconfig object and remove its invalid properties.\n\n## Error Handling\n\nBy default, nopt outputs a warning to standard error when invalid values for\nknown options are found. You can change this behavior by assigning a method\nto `nopt.invalidHandler`. This method will be called with\nthe offending `nopt.invalidHandler(key, val, types)`.\n\nIf no `nopt.invalidHandler` is assigned, then it will console.error\nits whining. If it is assigned to boolean `false` then the warning is\nsuppressed.\n\n## Abbreviations\n\nYes, they are supported. If you define options like this:\n\n```javascript\n{ \"foolhardyelephants\" : Boolean\n, \"pileofmonkeys\" : Boolean }\n```\n\nThen this will work:\n\n```bash\nnode program.js --foolhar --pil\nnode program.js --no-f --pileofmon\n# etc.\n```\n\n## Shorthands\n\nShorthands are a hash of shorter option names to a snippet of args that\nthey expand to.\n\nIf multiple one-character shorthands are all combined, and the\ncombination does not unambiguously match any other option or shorthand,\nthen they will be broken up into their constituent parts. For example:\n\n```json\n{ \"s\" : [\"--loglevel\", \"silent\"]\n, \"g\" : \"--global\"\n, \"f\" : \"--force\"\n, \"p\" : \"--parseable\"\n, \"l\" : \"--long\"\n}\n```\n\n```bash\nnpm ls -sgflp\n# just like doing this:\nnpm ls --loglevel silent --global --force --long --parseable\n```\n\n## The Rest of the args\n\nThe config object returned by nopt is given a special member called\n`argv`, which is an object with the following fields:\n\n* `remain`: The remaining args after all the parsing has occurred.\n* `original`: The args as they originally appeared.\n* `cooked`: The args after flags and shorthands are expanded.\n\n## Slicing\n\nNode programs are called with more or less the exact argv as it appears\nin C land, after the v8 and node-specific options have been plucked off.\nAs such, `argv[0]` is always `node` and `argv[1]` is always the\nJavaScript program being run.\n\nThat's usually not very useful to you. So they're sliced off by\ndefault. If you want them, then you can pass in `0` as the last\nargument, or any other number that you'd like to slice off the start of\nthe list.\n",
"readmeFilename": "README.md",
- "gitHead": "f52626631ea1afef5a6dd9acf23ddd1466831a08",
+ "gitHead": "10a750c9bb99c1950160353459e733ac2aa18cb6",
"bugs": {
- "url": "https://github.com/isaacs/nopt/issues"
+ "url": "https://github.com/npm/nopt/issues"
},
- "homepage": "https://github.com/isaacs/nopt#readme",
- "_id": "nopt@3.0.4",
- "_shasum": "dd63bc9c72a6e4e85b85cdc0ca314598facede5e",
- "_from": "nopt@3.0.4"
+ "homepage": "https://github.com/npm/nopt#readme",
+ "_id": "nopt@3.0.6",
+ "_shasum": "c6465dbf08abcd4db359317f79ac68a646b28ff9",
+ "_from": "nopt@>=3.0.6 <3.1.0"
}
diff --git a/deps/npm/node_modules/nopt/test/basic.js b/deps/npm/node_modules/nopt/test/basic.js
index 2f9088cf674..d399de92099 100644
--- a/deps/npm/node_modules/nopt/test/basic.js
+++ b/deps/npm/node_modules/nopt/test/basic.js
@@ -31,6 +31,28 @@ test("Unknown options are not parsed as numbers", function (t) {
t.end()
});
+// https://github.com/npm/nopt/issues/48
+test("Check types based on name of type", function (t) {
+ var parsed = nopt({"parse-me": {name: "Number"}}, null, ['--parse-me=1.20'], 0)
+ t.equal(parsed['parse-me'], 1.2)
+ t.end()
+})
+
+
+test("Missing types are not parsed", function (t) {
+ var parsed = nopt({"parse-me": {}}, null, ['--parse-me=1.20'], 0)
+ //should only contain argv
+ t.equal(Object.keys(parsed).length, 1)
+ t.end()
+})
+
+test("Types passed without a name are not parsed", function (t) {
+ var parsed = nopt({"parse-me": {}}, {}, ['--parse-me=1.20'], 0)
+ //should only contain argv
+ t.equal(Object.keys(parsed).length, 1)
+ t.end()
+})
+
test("other tests", function (t) {
var util = require("util")
diff --git a/deps/npm/node_modules/normalize-package-data/README.md b/deps/npm/node_modules/normalize-package-data/README.md
index 9f412a0ac02..526745ef692 100644
--- a/deps/npm/node_modules/normalize-package-data/README.md
+++ b/deps/npm/node_modules/normalize-package-data/README.md
@@ -95,7 +95,7 @@ If `version` field is given, the value of the version field must be a valid *sem
### Rules for license field
-The `license` field should be a valid *SDPDX license expression* or one of the special values allowed by [validate-npm-package-license](https://npmjs.com/packages/validate-npm-package-license). See [documentation for the license field in package.json](https://docs.npmjs.com/files/package.json#license).
+The `license` field should be a valid *SPDX license expression* or one of the special values allowed by [validate-npm-package-license](https://npmjs.com/packages/validate-npm-package-license). See [documentation for the license field in package.json](https://docs.npmjs.com/files/package.json#license).
## Credits
diff --git a/deps/npm/node_modules/normalize-package-data/lib/fixer.js b/deps/npm/node_modules/normalize-package-data/lib/fixer.js
index 5f64f01d721..1409c69c9dd 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/fixer.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/fixer.js
@@ -83,7 +83,12 @@ var fixer = module.exports = {
if (!data.bin) return;
if (typeof data.bin === "string") {
var b = {}
- b[data.name] = data.bin
+ var match
+ if (match = data.name.match(/^@[^/]+[/](.*)$/)) {
+ b[match[1]] = data.bin
+ } else {
+ b[data.name] = data.bin
+ }
data.bin = b
}
}
diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/node_modules/builtin-modules/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/node_modules/builtin-modules/package.json
index a6851b0e059..453d1632197 100644
--- a/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/node_modules/builtin-modules/package.json
+++ b/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/node_modules/builtin-modules/package.json
@@ -65,5 +65,6 @@
}
],
"directories": {},
- "_resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.0.tgz"
+ "_resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.0.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/package.json
index 58feefdfb88..3e0bf21f85c 100644
--- a/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/package.json
+++ b/deps/npm/node_modules/normalize-package-data/node_modules/is-builtin-module/package.json
@@ -5,7 +5,7 @@
"license": "MIT",
"repository": {
"type": "git",
- "url": "https://github.com/sindresorhus/is-builtin-module"
+ "url": "git+https://github.com/sindresorhus/is-builtin-module.git"
},
"author": {
"name": "Sindre Sorhus",
@@ -68,5 +68,6 @@
}
],
"directories": {},
- "_resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz"
+ "_resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/normalize-package-data/package.json b/deps/npm/node_modules/normalize-package-data/package.json
index 464b0092769..f8c8aa90874 100644
--- a/deps/npm/node_modules/normalize-package-data/package.json
+++ b/deps/npm/node_modules/normalize-package-data/package.json
@@ -1,6 +1,6 @@
{
"name": "normalize-package-data",
- "version": "2.3.4",
+ "version": "2.3.5",
"author": {
"name": "Meryn Stol",
"email": "merynstol@gmail.com"
@@ -16,15 +16,15 @@
"test": "tap test/*.js"
},
"dependencies": {
- "hosted-git-info": "^2.0.2",
+ "hosted-git-info": "^2.1.4",
"is-builtin-module": "^1.0.0",
"semver": "2 || 3 || 4 || 5",
"validate-npm-package-license": "^3.0.1"
},
"devDependencies": {
- "async": "~0.9.0",
- "tap": "^1.1.0",
- "underscore": "~1.4.4"
+ "async": "^1.5.0",
+ "tap": "^2.2.0",
+ "underscore": "^1.8.3"
},
"contributors": [
{
@@ -40,14 +40,47 @@
"email": "rok@kowalski.gd"
}
],
- "readme": "# normalize-package-data [![Build Status](https://travis-ci.org/npm/normalize-package-data.png?branch=master)](https://travis-ci.org/npm/normalize-package-data)\n\nnormalize-package data exports a function that normalizes package metadata. This data is typically found in a package.json file, but in principle could come from any source - for example the npm registry.\n\nnormalize-package-data is used by [read-package-json](https://npmjs.org/package/read-package-json) to normalize the data it reads from a package.json file. In turn, read-package-json is used by [npm](https://npmjs.org/package/npm) and various npm-related tools.\n\n## Installation\n\n```\nnpm install normalize-package-data\n```\n\n## Usage\n\nBasic usage is really simple. You call the function that normalize-package-data exports. Let's call it `normalizeData`.\n\n```javascript\nnormalizeData = require('normalize-package-data')\npackageData = fs.readFileSync(\"package.json\")\nnormalizeData(packageData)\n// packageData is now normalized\n```\n\n#### Strict mode\n\nYou may activate strict validation by passing true as the second argument.\n\n```javascript\nnormalizeData = require('normalize-package-data')\npackageData = fs.readFileSync(\"package.json\")\nwarnFn = function(msg) { console.error(msg) }\nnormalizeData(packageData, true)\n// packageData is now normalized\n```\n\nIf strict mode is activated, only Semver 2.0 version strings are accepted. Otherwise, Semver 1.0 strings are accepted as well. Packages must have a name, and the name field must not have contain leading or trailing whitespace.\n\n#### Warnings\n\nOptionally, you may pass a \"warning\" function. It gets called whenever the `normalizeData` function encounters something that doesn't look right. It indicates less than perfect input data.\n\n```javascript\nnormalizeData = require('normalize-package-data')\npackageData = fs.readFileSync(\"package.json\")\nwarnFn = function(msg) { console.error(msg) }\nnormalizeData(packageData, warnFn)\n// packageData is now normalized. Any number of warnings may have been logged.\n```\n\nYou may combine strict validation with warnings by passing `true` as the second argument, and `warnFn` as third.\n\nWhen `private` field is set to `true`, warnings will be suppressed.\n\n### Potential exceptions\n\nIf the supplied data has an invalid name or version vield, `normalizeData` will throw an error. Depending on where you call `normalizeData`, you may want to catch these errors so can pass them to a callback.\n\n## What normalization (currently) entails\n\n* The value of `name` field gets trimmed (unless in strict mode).\n* The value of the `version` field gets cleaned by `semver.clean`. See [documentation for the semver module](https://github.com/isaacs/node-semver).\n* If `name` and/or `version` fields are missing, they are set to empty strings.\n* If `files` field is not an array, it will be removed.\n* If `bin` field is a string, then `bin` field will become an object with `name` set to the value of the `name` field, and `bin` set to the original string value.\n* If `man` field is a string, it will become an array with the original string as its sole member.\n* If `keywords` field is string, it is considered to be a list of keywords separated by one or more white-space characters. It gets converted to an array by splitting on `\\s+`.\n* All people fields (`author`, `maintainers`, `contributors`) get converted into objects with name, email and url properties.\n* If `bundledDependencies` field (a typo) exists and `bundleDependencies` field does not, `bundledDependencies` will get renamed to `bundleDependencies`.\n* If the value of any of the dependencies fields (`dependencies`, `devDependencies`, `optionalDependencies`) is a string, it gets converted into an object with familiar `name=>value` pairs.\n* The values in `optionalDependencies` get added to `dependencies`. The `optionalDependencies` array is left untouched.\n* As of v2: Dependencies that point at known hosted git providers (currently: github, bitbucket, gitlab) will have their URLs canonicalized, but protocols will be preserved.\n* As of v2: Dependencies that use shortcuts for hosted git providers (`org/proj`, `github:org/proj`, `bitbucket:org/proj`, `gitlab:org/proj`, `gist:docid`) will have the shortcut left in place. (In the case of github, the `org/proj` form will be expanded to `github:org/proj`.) THIS MARKS A BREAKING CHANGE FROM V1, where the shorcut was previously expanded to a URL.\n* If `description` field does not exist, but `readme` field does, then (more or less) the first paragraph of text that's found in the readme is taken as value for `description`.\n* If `repository` field is a string, it will become an object with `url` set to the original string value, and `type` set to `\"git\"`.\n* If `repository.url` is not a valid url, but in the style of \"[owner-name]/[repo-name]\", `repository.url` will be set to git+https://github.com/[owner-name]/[repo-name].git\n* If `bugs` field is a string, the value of `bugs` field is changed into an object with `url` set to the original string value.\n* If `bugs` field does not exist, but `repository` field points to a repository hosted on GitHub, the value of the `bugs` field gets set to an url in the form of https://github.com/[owner-name]/[repo-name]/issues . If the repository field points to a GitHub Gist repo url, the associated http url is chosen.\n* If `bugs` field is an object, the resulting value only has email and url properties. If email and url properties are not strings, they are ignored. If no valid values for either email or url is found, bugs field will be removed.\n* If `homepage` field is not a string, it will be removed.\n* If the url in the `homepage` field does not specify a protocol, then http is assumed. For example, `myproject.org` will be changed to `http://myproject.org`.\n* If `homepage` field does not exist, but `repository` field points to a repository hosted on GitHub, the value of the `homepage` field gets set to an url in the form of https://github.com/[owner-name]/[repo-name]/ . If the repository field points to a GitHub Gist repo url, the associated http url is chosen.\n\n### Rules for name field\n\nIf `name` field is given, the value of the name field must be a string. The string may not:\n\n* start with a period.\n* contain the following characters: `/@\\s+%`\n* contain and characters that would need to be encoded for use in urls.\n* resemble the word `node_modules` or `favicon.ico` (case doesn't matter).\n\n### Rules for version field\n\nIf `version` field is given, the value of the version field must be a valid *semver* string, as determined by the `semver.valid` method. See [documentation for the semver module](https://github.com/isaacs/node-semver).\n\n### Rules for license field\n\nThe `license` field should be a valid *SDPDX license expression* or one of the special values allowed by [validate-npm-package-license](https://npmjs.com/packages/validate-npm-package-license). See [documentation for the license field in package.json](https://docs.npmjs.com/files/package.json#license).\n\n## Credits\n\nThis package contains code based on read-package-json written by Isaac Z. Schlueter. Used with permisson.\n\n## License\n\nnormalize-package-data is released under the [BSD 2-Clause License](http://opensource.org/licenses/MIT). \nCopyright (c) 2013 Meryn Stol \n",
- "readmeFilename": "README.md",
- "gitHead": "0aa15b23116f2dfd086f1ed6bf213cbb7e7490dd",
+ "gitHead": "3dc7756af20b3b1b24c6d75302448ca3659e0a65",
"bugs": {
"url": "https://github.com/npm/normalize-package-data/issues"
},
"homepage": "https://github.com/npm/normalize-package-data#readme",
- "_id": "normalize-package-data@2.3.4",
- "_shasum": "b92233ce6ef04fbd6bc0c05dead155af33a623e0",
- "_from": "normalize-package-data@2.3.4"
+ "_id": "normalize-package-data@2.3.5",
+ "_shasum": "8d924f142960e1777e7ffe170543631cc7cb02df",
+ "_from": "normalize-package-data@>=2.3.5 <2.4.0",
+ "_npmVersion": "3.3.6",
+ "_nodeVersion": "5.0.0",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "8d924f142960e1777e7ffe170543631cc7cb02df",
+ "tarball": "http://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.5.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ {
+ "name": "isaacs",
+ "email": "isaacs@npmjs.com"
+ },
+ {
+ "name": "meryn",
+ "email": "merynstol@gmail.com"
+ },
+ {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ },
+ {
+ "name": "zkat",
+ "email": "kat@sykosomatic.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.5.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/normalize-package-data/test/normalize.js b/deps/npm/node_modules/normalize-package-data/test/normalize.js
index de6f1ce5b5b..3926938b6ac 100644
--- a/deps/npm/node_modules/normalize-package-data/test/normalize.js
+++ b/deps/npm/node_modules/normalize-package-data/test/normalize.js
@@ -2,8 +2,6 @@ var tap = require("tap")
var fs = require("fs")
var path = require("path")
-var globals = Object.keys(global)
-
var normalize = require("../lib/normalize")
var warningMessages = require("../lib/warning_messages.json")
var safeFormat = require("../lib/safe_format")
@@ -246,8 +244,3 @@ tap.test("deprecation warning for array in dependencies fields", function(t) {
t.ok(~warnings.indexOf(safeFormat(warningMessages.deprecatedArrayDependencies, 'optionalDependencies')), "deprecation warning")
t.end()
})
-
-tap.test('no new globals', function(t) {
- t.same(Object.keys(global), globals)
- t.end()
-})
diff --git a/deps/npm/node_modules/normalize-package-data/test/scoped.js b/deps/npm/node_modules/normalize-package-data/test/scoped.js
index 31bbf4f7fc5..82d2a543f97 100644
--- a/deps/npm/node_modules/normalize-package-data/test/scoped.js
+++ b/deps/npm/node_modules/normalize-package-data/test/scoped.js
@@ -1,6 +1,7 @@
var test = require("tap").test
var fixNameField = require("../lib/fixer.js").fixNameField
+var fixBinField = require("../lib/fixer.js").fixBinField
test("a simple scoped module has a valid name", function (t) {
var data = {name : "@org/package"}
@@ -49,3 +50,10 @@ test("'@/package' is not a valid name", function (t) {
t.end()
})
+
+test("name='@org/package', bin='bin.js' is bin={package:'bin.js'}", function (t) {
+ var obj = {name : "@org/package", bin: "bin.js"}
+ fixBinField(obj)
+ t.isDeeply(obj.bin, {package: 'bin.js'})
+ t.end()
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/LICENSE
new file mode 100644
index 00000000000..19129e315fe
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/LICENSE
@@ -0,0 +1,15 @@
+The ISC License
+
+Copyright (c) Isaac Z. Schlueter and Contributors
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/README.md
new file mode 100644
index 00000000000..a57cf429d4a
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/README.md
@@ -0,0 +1,195 @@
+# npmlog
+
+The logger util that npm uses.
+
+This logger is very basic. It does the logging for npm. It supports
+custom levels and colored output.
+
+By default, logs are written to stderr. If you want to send log messages
+to outputs other than streams, then you can change the `log.stream`
+member, or you can just listen to the events that it emits, and do
+whatever you want with them.
+
+# Basic Usage
+
+```
+var log = require('npmlog')
+
+// additional stuff ---------------------------+
+// message ----------+ |
+// prefix ----+ | |
+// level -+ | | |
+// v v v v
+ log.info('fyi', 'I have a kitty cat: %j', myKittyCat)
+```
+
+## log.level
+
+* {String}
+
+The level to display logs at. Any logs at or above this level will be
+displayed. The special level `silent` will prevent anything from being
+displayed ever.
+
+## log.record
+
+* {Array}
+
+An array of all the log messages that have been entered.
+
+## log.maxRecordSize
+
+* {Number}
+
+The maximum number of records to keep. If log.record gets bigger than
+10% over this value, then it is sliced down to 90% of this value.
+
+The reason for the 10% window is so that it doesn't have to resize a
+large array on every log entry.
+
+## log.prefixStyle
+
+* {Object}
+
+A style object that specifies how prefixes are styled. (See below)
+
+## log.headingStyle
+
+* {Object}
+
+A style object that specifies how the heading is styled. (See below)
+
+## log.heading
+
+* {String} Default: ""
+
+If set, a heading that is printed at the start of every line.
+
+## log.stream
+
+* {Stream} Default: `process.stderr`
+
+The stream where output is written.
+
+## log.enableColor()
+
+Force colors to be used on all messages, regardless of the output
+stream.
+
+## log.disableColor()
+
+Disable colors on all messages.
+
+## log.enableProgress()
+
+Enable the display of log activity spinner and progress bar
+
+## log.disableProgress()
+
+Disable the display of a progress bar
+
+## log.enableUnicode()
+
+Force the unicode theme to be used for the progress bar.
+
+## log.disableUnicode()
+
+Disable the use of unicode in the progress bar.
+
+## log.setGaugeTemplate(template)
+
+Overrides the default gauge template.
+
+## log.pause()
+
+Stop emitting messages to the stream, but do not drop them.
+
+## log.resume()
+
+Emit all buffered messages that were written while paused.
+
+## log.log(level, prefix, message, ...)
+
+* `level` {String} The level to emit the message at
+* `prefix` {String} A string prefix. Set to "" to skip.
+* `message...` Arguments to `util.format`
+
+Emit a log message at the specified level.
+
+## log\[level](prefix, message, ...)
+
+For example,
+
+* log.silly(prefix, message, ...)
+* log.verbose(prefix, message, ...)
+* log.info(prefix, message, ...)
+* log.http(prefix, message, ...)
+* log.warn(prefix, message, ...)
+* log.error(prefix, message, ...)
+
+Like `log.log(level, prefix, message, ...)`. In this way, each level is
+given a shorthand, so you can do `log.info(prefix, message)`.
+
+## log.addLevel(level, n, style, disp)
+
+* `level` {String} Level indicator
+* `n` {Number} The numeric level
+* `style` {Object} Object with fg, bg, inverse, etc.
+* `disp` {String} Optional replacement for `level` in the output.
+
+Sets up a new level with a shorthand function and so forth.
+
+Note that if the number is `Infinity`, then setting the level to that
+will cause all log messages to be suppressed. If the number is
+`-Infinity`, then the only way to show it is to enable all log messages.
+
+## log.newItem(name, todo, weight)
+
+* `name` {String} Optional; progress item name.
+* `todo` {Number} Optional; total amount of work to be done. Default 0.
+* `weight` {Number} Optional; the weight of this item relative to others. Default 1.
+
+This adds a new `are-we-there-yet` item tracker to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `Tracker` object.
+
+## log.newStream(name, todo, weight)
+
+This adds a new `are-we-there-yet` stream tracker to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `TrackerStream` object.
+
+## log.newGroup(name, weight)
+
+This adds a new `are-we-there-yet` tracker group to the progress tracker. The
+object returned has the `log[level]` methods but is otherwise an
+`are-we-there-yet` `TrackerGroup` object.
+
+# Events
+
+Events are all emitted with the message object.
+
+* `log` Emitted for all messages
+* `log.<level>` Emitted for all messages with the `<level>` level.
+* `<prefix>` Messages with prefixes also emit their prefix as an event.
+
+# Style Objects
+
+Style objects can have the following fields:
+
+* `fg` {String} Color for the foreground text
+* `bg` {String} Color for the background
+* `bold`, `inverse`, `underline` {Boolean} Set the associated property
+* `bell` {Boolean} Make a noise (This is pretty annoying, probably.)
+
+# Message Objects
+
+Every log event is emitted with a message object, and the `log.record`
+list contains all of them that have been created. They have the
+following fields:
+
+* `id` {Number}
+* `level` {String}
+* `prefix` {String}
+* `message` {String} Result of `util.format()`
+* `messageRaw` {Array} Arguments to `util.format()`
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/example.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/example.js
new file mode 100644
index 00000000000..c009fb15777
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/example.js
@@ -0,0 +1,39 @@
+var log = require('./log.js')
+
+log.heading = 'npm'
+
+console.error('log.level=silly')
+log.level = 'silly'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+console.error('log.level=silent')
+log.level = 'silent'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+console.error('log.level=info')
+log.level = 'info'
+log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+log.error('404', 'This is a longer\n'+
+ 'message, with some details\n'+
+ 'and maybe a stack.\n'+
+ new Error('a 404 error').stack)
+log.addLevel('noise', 10000, {beep: true})
+log.noise(false, 'LOUD NOISES')
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/log.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/log.js
new file mode 100644
index 00000000000..8bf6422b6cf
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/log.js
@@ -0,0 +1,247 @@
+'use strict'
+var Progress = require('are-we-there-yet')
+var Gauge = require('gauge')
+var EE = require('events').EventEmitter
+var log = exports = module.exports = new EE
+var util = require('util')
+
+var ansi = require('ansi')
+log.cursor = ansi(process.stderr)
+log.stream = process.stderr
+
+// by default, let ansi decide based on tty-ness.
+var colorEnabled = undefined
+log.enableColor = function () {
+ colorEnabled = true
+ this.cursor.enabled = true
+}
+log.disableColor = function () {
+ colorEnabled = false
+ this.cursor.enabled = false
+}
+
+// default level
+log.level = 'info'
+
+log.gauge = new Gauge(log.cursor)
+log.tracker = new Progress.TrackerGroup()
+
+// no progress bars unless asked
+log.progressEnabled = false
+
+var gaugeTheme = undefined
+
+log.enableUnicode = function () {
+ gaugeTheme = Gauge.unicode
+ log.gauge.setTheme(gaugeTheme)
+}
+
+log.disableUnicode = function () {
+ gaugeTheme = Gauge.ascii
+ log.gauge.setTheme(gaugeTheme)
+}
+
+var gaugeTemplate = undefined
+log.setGaugeTemplate = function (template) {
+ gaugeTemplate = template
+ log.gauge.setTemplate(gaugeTemplate)
+}
+
+log.enableProgress = function () {
+ if (this.progressEnabled) return
+ this.progressEnabled = true
+ if (this._pause) return
+ this.tracker.on('change', this.showProgress)
+ this.gauge.enable()
+ this.showProgress()
+}
+
+log.disableProgress = function () {
+ if (!this.progressEnabled) return
+ this.clearProgress()
+ this.progressEnabled = false
+ this.tracker.removeListener('change', this.showProgress)
+ this.gauge.disable()
+}
+
+var trackerConstructors = ['newGroup', 'newItem', 'newStream']
+
+var mixinLog = function (tracker) {
+ // mixin the public methods from log into the tracker
+ // (except: conflicts and one's we handle specially)
+ Object.keys(log).forEach(function (P) {
+ if (P[0] === '_') return
+ if (trackerConstructors.filter(function (C) { return C === P }).length) return
+ if (tracker[P]) return
+ if (typeof log[P] !== 'function') return
+ var func = log[P]
+ tracker[P] = function () {
+ return func.apply(log, arguments)
+ }
+ })
+ // if the new tracker is a group, make sure any subtrackers get
+ // mixed in too
+ if (tracker instanceof Progress.TrackerGroup) {
+ trackerConstructors.forEach(function (C) {
+ var func = tracker[C]
+ tracker[C] = function () { return mixinLog(func.apply(tracker, arguments)) }
+ })
+ }
+ return tracker
+}
+
+// Add tracker constructors to the top level log object
+trackerConstructors.forEach(function (C) {
+ log[C] = function () { return mixinLog(this.tracker[C].apply(this.tracker, arguments)) }
+})
+
+log.clearProgress = function () {
+ if (!this.progressEnabled) return
+ this.gauge.hide()
+}
+
+log.showProgress = function (name) {
+ if (!this.progressEnabled) return
+ this.gauge.show(name, this.tracker.completed())
+}.bind(log) // bind for use in tracker's on-change listener
+
+// temporarily stop emitting, but don't drop
+log.pause = function () {
+ this._paused = true
+}
+
+log.resume = function () {
+ if (!this._paused) return
+ this._paused = false
+
+ var b = this._buffer
+ this._buffer = []
+ b.forEach(function (m) {
+ this.emitLog(m)
+ }, this)
+ if (this.progressEnabled) this.enableProgress()
+}
+
+log._buffer = []
+
+var id = 0
+log.record = []
+log.maxRecordSize = 10000
+log.log = function (lvl, prefix, message) {
+ var l = this.levels[lvl]
+ if (l === undefined) {
+ return this.emit('error', new Error(util.format(
+ 'Undefined log level: %j', lvl)))
+ }
+
+ var a = new Array(arguments.length - 2)
+ var stack = null
+ for (var i = 2; i < arguments.length; i ++) {
+ var arg = a[i-2] = arguments[i]
+
+ // resolve stack traces to a plain string.
+ if (typeof arg === 'object' && arg &&
+ (arg instanceof Error) && arg.stack) {
+ arg.stack = stack = arg.stack + ''
+ }
+ }
+ if (stack) a.unshift(stack + '\n')
+ message = util.format.apply(util, a)
+
+ var m = { id: id++,
+ level: lvl,
+ prefix: String(prefix || ''),
+ message: message,
+ messageRaw: a }
+
+ this.emit('log', m)
+ this.emit('log.' + lvl, m)
+ if (m.prefix) this.emit(m.prefix, m)
+
+ this.record.push(m)
+ var mrs = this.maxRecordSize
+ var n = this.record.length - mrs
+ if (n > mrs / 10) {
+ var newSize = Math.floor(mrs * 0.9)
+ this.record = this.record.slice(-1 * newSize)
+ }
+
+ this.emitLog(m)
+}.bind(log)
+
+log.emitLog = function (m) {
+ if (this._paused) {
+ this._buffer.push(m)
+ return
+ }
+ if (this.progressEnabled) this.gauge.pulse(m.prefix)
+ var l = this.levels[m.level]
+ if (l === undefined) return
+ if (l < this.levels[this.level]) return
+ if (l > 0 && !isFinite(l)) return
+
+ var style = log.style[m.level]
+ var disp = log.disp[m.level] || m.level
+ this.clearProgress()
+ m.message.split(/\r?\n/).forEach(function (line) {
+ if (this.heading) {
+ this.write(this.heading, this.headingStyle)
+ this.write(' ')
+ }
+ this.write(disp, log.style[m.level])
+ var p = m.prefix || ''
+ if (p) this.write(' ')
+ this.write(p, this.prefixStyle)
+ this.write(' ' + line + '\n')
+ }, this)
+ this.showProgress()
+}
+
+log.write = function (msg, style) {
+ if (!this.cursor) return
+ if (this.stream !== this.cursor.stream) {
+ this.cursor = ansi(this.stream, { enabled: colorEnabled })
+ var options = {}
+ if (gaugeTheme != null) options.theme = gaugeTheme
+ if (gaugeTemplate != null) options.template = gaugeTemplate
+ this.gauge = new Gauge(options, this.cursor)
+ }
+
+ style = style || {}
+ if (style.fg) this.cursor.fg[style.fg]()
+ if (style.bg) this.cursor.bg[style.bg]()
+ if (style.bold) this.cursor.bold()
+ if (style.underline) this.cursor.underline()
+ if (style.inverse) this.cursor.inverse()
+ if (style.beep) this.cursor.beep()
+ this.cursor.write(msg).reset()
+}
+
+log.addLevel = function (lvl, n, style, disp) {
+ if (!disp) disp = lvl
+ this.levels[lvl] = n
+ this.style[lvl] = style
+ if (!this[lvl]) this[lvl] = function () {
+ var a = new Array(arguments.length + 1)
+ a[0] = lvl
+ for (var i = 0; i < arguments.length; i ++) {
+ a[i + 1] = arguments[i]
+ }
+ return this.log.apply(this, a)
+ }.bind(this)
+ this.disp[lvl] = disp
+}
+
+log.prefixStyle = { fg: 'magenta' }
+log.headingStyle = { fg: 'white', bg: 'black' }
+
+log.style = {}
+log.levels = {}
+log.disp = {}
+log.addLevel('silly', -Infinity, { inverse: true }, 'sill')
+log.addLevel('verbose', 1000, { fg: 'blue', bg: 'black' }, 'verb')
+log.addLevel('info', 2000, { fg: 'green' })
+log.addLevel('http', 3000, { fg: 'green', bg: 'black' })
+log.addLevel('warn', 4000, { fg: 'black', bg: 'yellow' }, 'WARN')
+log.addLevel('error', 5000, { fg: 'red', bg: 'black' }, 'ERR!')
+log.addLevel('silent', Infinity)
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore
new file mode 100644
index 00000000000..926ddf616c7
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/.npmignore
@@ -0,0 +1,3 @@
+*~
+.#*
+node_modules
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/README.md
new file mode 100644
index 00000000000..3491c5956cc
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/README.md
@@ -0,0 +1,183 @@
+are-we-there-yet
+----------------
+
+Track complex hiearchies of asynchronous task completion statuses. This is
+intended to give you a way of recording and reporting the progress of the big
+recursive fan-out and gather type workflows that are so common in async.
+
+What you do with this completion data is up to you, but the most common use case is to
+feed it to one of the many progress bar modules.
+
+Most progress bar modules include a rudamentary version of this, but my
+needs were more complex.
+
+Usage
+=====
+
+```javascript
+var TrackerGroup = require("are-we-there-yet").TrackerGroup
+
+var top = new TrackerGroup("program")
+
+var single = top.newItem("one thing", 100)
+single.completeWork(20)
+
+console.log(top.completed()) // 0.2
+
+fs.stat("file", function(er, stat) {
+ if (er) throw er
+ var stream = top.newStream("file", stat.size)
+ console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete
+ // and 50% * 20% == 10%
+ fs.createReadStream("file").pipe(stream).on("data", function (chunk) {
+ // do stuff with chunk
+ })
+ top.on("change", function (name) {
+ // called each time a chunk is read from "file"
+ // top.completed() will start at 0.1 and fill up to 0.6 as the file is read
+ })
+})
+```
+
+Shared Methods
+==============
+
+All tracker objects described below have the following methods, they, along
+with the event comprise the interface for consumers of tracker objects.
+
+* var completed = tracker.completed()
+
+Returns the ratio of completed work to work to be done. Range of 0 to 1.
+
+* tracker.finish()
+
+Marks the tracker as completed. With a TrackerGroup this marks all of its
+components as completed.
+
+Marks all of the components of this tracker as finished, which in turn means
+that `tracker.completed()` for this will now be 1.
+
+This will result in one or more `change` events being emitted.
+
+Events
+======
+
+All tracker objects emit `change` events with an argument of the name of the
+thing changing.
+
+TrackerGroup
+============
+
+* var tracker = new TrackerGroup(**name**)
+
+ * **name** *(optional)* - The name of this tracker group, used in change
+ notifications if the component updating didn't have a name. Defaults to undefined.
+
+Creates a new empty tracker aggregation group. These are trackers whose
+completion status is determined by the completion status of other trackers.
+
+* tracker.addUnit(**otherTracker**, **weight**)
+
+ * **otherTracker** - Any of the other are-we-there-yet tracker objects
+ * **weight** *(optional)* - The weight to give the tracker, defaults to 1.
+
+Adds the **otherTracker** to this aggregation group. The weight determines
+how long you expect this tracker to take to complete in proportion to other
+units. So for instance, if you add one tracker with a weight of 1 and
+another with a weight of 2, you're saying the second will take twice as long
+to complete as the first. As such, the first will account for 33% of the
+completion of this tracker and the second will account for the other 67%.
+
+Returns **otherTracker**.
+
+* var subGroup = tracker.newGroup(**name**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subGroup = tracker.addUnit(new TrackerGroup(name), weight)
+```
+
+* var subItem = tracker.newItem(**name**, **todo**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subItem = tracker.addUnit(new Tracker(name, todo), weight)
+```
+
+* var subStream = tracker.newStream(**name**, **todo**, **weight**)
+
+The above is exactly equivalent to:
+
+```javascript
+ var subStream = tracker.addUnit(new TrackerStream(name, todo), weight)
+```
+
+* console.log( tracker.debug() )
+
+Returns a tree showing the completion of this tracker group and all of its
+children, including recursively entering all of the children.
+
+Tracker
+=======
+
+* var tracker = new Tracker(**name**, **todo**)
+
+ * **name** *(optional)* The name of this counter to report in change
+ events. Defaults to undefined.
+ * **todo** *(optional)* The amount of work todo (a number). Defaults to 0.
+
+Ordinarily these are constructed as a part of a tracker group (via `newItem`) but they c
+
+* var completed = tracker.completed()
+
+Returns the ratio of completed work to work to be done. Range of 0 to 1. If
+total work to be done is 0 then it will return 0.
+
+* tracker.addWork(**todo**)
+
+ * **todo** A number to add to the amount of work to be done.
+
+Increases the amount of work to be done, thus decreasing the completion
+percentage. Triggers a `change` event.
+
+* tracker.completeWork(**completed**)
+
+ * **completed** A number to add to the work complete
+
+Increase the amount of work complete, thus increasing the completion percentage.
+Will never increase the work completed past the amount of work todo. That is,
+percentages > 100% are not allowed. Triggers a `change` event.
+
+* tracker.finish()
+
+Marks this tracker as finished, tracker.completed() will now be 1. Triggers
+a `change` event.
+
+TrackerStream
+=============
+
+* var tracker = new TrackerStream(**name**, **size**, **options**)
+
+ * **name** *(optional)* The name of this counter to report in change
+ events. Defaults to undefined.
+ * **size** *(optional)* The number of bytes being sent through this stream.
+ * **options** *(optional)* A hash of stream options
+
+The tracker stream object is a pass through stream that updates an internal
+tracker object each time a block passes through. It's intended to track
+downloads, file extraction and other related activities. You use it by piping
+your data source into it and then using it as your data source.
+
+If your data has a length attribute then that's used as the amount of work
+completed when the chunk is passed through. If it does not (eg, object
+streams) then each chunk counts as completing 1 unit of work, so your size
+should be the total number of objects being streamed.
+
+* tracker.addWork(**todo**)
+
+ * **todo** Increase the expected overall size by **todo** bytes.
+
+Increases the amount of work to be done, thus decreasing the completion
+percentage. Triggers a `change` event.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/index.js
new file mode 100644
index 00000000000..22f47ac8852
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/index.js
@@ -0,0 +1,130 @@
+"use strict"
+var stream = require("readable-stream");
+var EventEmitter = require("events").EventEmitter
+var util = require("util")
+var delegate = require("delegates")
+
+var TrackerGroup = exports.TrackerGroup = function (name) {
+ EventEmitter.call(this)
+ this.name = name
+ this.trackGroup = []
+ var self = this
+ this.totalWeight = 0
+ var noteChange = this.noteChange = function (name) {
+ self.emit("change", name || this.name)
+ }.bind(this)
+ this.trackGroup.forEach(function(unit) {
+ unit.on("change", noteChange)
+ })
+}
+util.inherits(TrackerGroup, EventEmitter)
+
+TrackerGroup.prototype.completed = function () {
+ if (this.trackGroup.length==0) return 0
+ var valPerWeight = 1 / this.totalWeight
+ var completed = 0
+ this.trackGroup.forEach(function(T) {
+ completed += valPerWeight * T.weight * T.completed()
+ })
+ return completed
+}
+
+TrackerGroup.prototype.addUnit = function (unit, weight, noChange) {
+ unit.weight = weight || 1
+ this.totalWeight += unit.weight
+ this.trackGroup.push(unit)
+ unit.on("change", this.noteChange)
+ if (! noChange) this.emit("change", this.name)
+ return unit
+}
+
+TrackerGroup.prototype.newGroup = function (name, weight) {
+ return this.addUnit(new TrackerGroup(name), weight)
+}
+
+TrackerGroup.prototype.newItem = function (name, todo, weight) {
+ return this.addUnit(new Tracker(name, todo), weight)
+}
+
+TrackerGroup.prototype.newStream = function (name, todo, weight) {
+ return this.addUnit(new TrackerStream(name, todo), weight)
+}
+
+TrackerGroup.prototype.finish = function () {
+ if (! this.trackGroup.length) { this.addUnit(new Tracker(), 1, true) }
+ var self = this
+ this.trackGroup.forEach(function(T) {
+ T.removeListener("change", self.noteChange)
+ T.finish()
+ })
+ this.emit("change", this.name)
+}
+
+var buffer = " "
+TrackerGroup.prototype.debug = function (depth) {
+ depth = depth || 0
+ var indent = depth ? buffer.substr(0,depth) : ""
+ var output = indent + (this.name||"top") + ": " + this.completed() + "\n"
+ this.trackGroup.forEach(function(T) {
+ if (T instanceof TrackerGroup) {
+ output += T.debug(depth + 1)
+ }
+ else {
+ output += indent + " " + T.name + ": " + T.completed() + "\n"
+ }
+ })
+ return output
+}
+
+var Tracker = exports.Tracker = function (name,todo) {
+ EventEmitter.call(this)
+ this.name = name
+ this.workDone = 0
+ this.workTodo = todo || 0
+}
+util.inherits(Tracker, EventEmitter)
+
+Tracker.prototype.completed = function () {
+ return this.workTodo==0 ? 0 : this.workDone / this.workTodo
+}
+
+Tracker.prototype.addWork = function (work) {
+ this.workTodo += work
+ this.emit("change", this.name)
+}
+
+Tracker.prototype.completeWork = function (work) {
+ this.workDone += work
+ if (this.workDone > this.workTodo) this.workDone = this.workTodo
+ this.emit("change", this.name)
+}
+
+Tracker.prototype.finish = function () {
+ this.workTodo = this.workDone = 1
+ this.emit("change", this.name)
+}
+
+
+var TrackerStream = exports.TrackerStream = function (name, size, options) {
+ stream.Transform.call(this, options)
+ this.tracker = new Tracker(name, size)
+ this.name = name
+ var self = this
+ this.tracker.on("change", function (name) { self.emit("change", name) })
+}
+util.inherits(TrackerStream, stream.Transform)
+
+TrackerStream.prototype._transform = function (data, encoding, cb) {
+ this.tracker.completeWork(data.length ? data.length : 1)
+ this.push(data)
+ cb()
+}
+
+TrackerStream.prototype._flush = function (cb) {
+ this.tracker.finish()
+ cb()
+}
+
+delegate(TrackerStream.prototype, "tracker")
+ .method("completed")
+ .method("addWork")
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore
new file mode 100644
index 00000000000..c2658d7d1b3
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/.npmignore
@@ -0,0 +1 @@
+node_modules/
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md
new file mode 100644
index 00000000000..aee31a4c35b
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/History.md
@@ -0,0 +1,16 @@
+
+0.1.0 / 2014-10-17
+==================
+
+ * adds `.fluent()` to api
+
+0.0.3 / 2014-01-13
+==================
+
+ * fix receiver for .method()
+
+0.0.2 / 2014-01-13
+==================
+
+ * Object.defineProperty() sucks
+ * Initial commit
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile
new file mode 100644
index 00000000000..a9dcfd50dbd
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Makefile
@@ -0,0 +1,8 @@
+
+test:
+ @./node_modules/.bin/mocha \
+ --require should \
+ --reporter spec \
+ --bail
+
+.PHONY: test \ No newline at end of file
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md
new file mode 100644
index 00000000000..ab8cf4ace15
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/Readme.md
@@ -0,0 +1,94 @@
+
+# delegates
+
+ Node method and accessor delegation utilty.
+
+## Installation
+
+```
+$ npm install delegates
+```
+
+## Example
+
+```js
+var delegate = require('delegates');
+
+...
+
+delegate(proto, 'request')
+ .method('acceptsLanguages')
+ .method('acceptsEncodings')
+ .method('acceptsCharsets')
+ .method('accepts')
+ .method('is')
+ .access('querystring')
+ .access('idempotent')
+ .access('socket')
+ .access('length')
+ .access('query')
+ .access('search')
+ .access('status')
+ .access('method')
+ .access('path')
+ .access('body')
+ .access('host')
+ .access('url')
+ .getter('subdomains')
+ .getter('protocol')
+ .getter('header')
+ .getter('stale')
+ .getter('fresh')
+ .getter('secure')
+ .getter('ips')
+ .getter('ip')
+```
+
+# API
+
+## Delegate(proto, prop)
+
+Creates a delegator instance used to configure using the `prop` on the given
+`proto` object. (which is usually a prototype)
+
+## Delegate#method(name)
+
+Allows the given method `name` to be accessed on the host.
+
+## Delegate#getter(name)
+
+Creates a "getter" for the property with the given `name` on the delegated
+object.
+
+## Delegate#setter(name)
+
+Creates a "setter" for the property with the given `name` on the delegated
+object.
+
+## Delegate#access(name)
+
+Creates an "accessor" (ie: both getter *and* setter) for the property with the
+given `name` on the delegated object.
+
+## Delegate#fluent(name)
+
+A unique type of "accessor" that works for a "fluent" API. When called as a
+getter, the method returns the expected value. However, if the method is called
+with a value, it will return itself so it can be chained. For example:
+
+```js
+delegate(proto, 'request')
+ .fluent('query')
+
+// getter
+var q = request.query();
+
+// setter (chainable)
+request
+ .query({ a: 1 })
+ .query({ b: 2 });
+```
+
+# License
+
+ MIT
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js
new file mode 100644
index 00000000000..17c222d5293
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/index.js
@@ -0,0 +1,121 @@
+
+/**
+ * Expose `Delegator`.
+ */
+
+module.exports = Delegator;
+
+/**
+ * Initialize a delegator.
+ *
+ * @param {Object} proto
+ * @param {String} target
+ * @api public
+ */
+
+function Delegator(proto, target) {
+ if (!(this instanceof Delegator)) return new Delegator(proto, target);
+ this.proto = proto;
+ this.target = target;
+ this.methods = [];
+ this.getters = [];
+ this.setters = [];
+ this.fluents = [];
+}
+
+/**
+ * Delegate method `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.method = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.methods.push(name);
+
+ proto[name] = function(){
+ return this[target][name].apply(this[target], arguments);
+ };
+
+ return this;
+};
+
+/**
+ * Delegator accessor `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.access = function(name){
+ return this.getter(name).setter(name);
+};
+
+/**
+ * Delegator getter `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.getter = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.getters.push(name);
+
+ proto.__defineGetter__(name, function(){
+ return this[target][name];
+ });
+
+ return this;
+};
+
+/**
+ * Delegator setter `name`.
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.setter = function(name){
+ var proto = this.proto;
+ var target = this.target;
+ this.setters.push(name);
+
+ proto.__defineSetter__(name, function(val){
+ return this[target][name] = val;
+ });
+
+ return this;
+};
+
+/**
+ * Delegator fluent accessor
+ *
+ * @param {String} name
+ * @return {Delegator} self
+ * @api public
+ */
+
+Delegator.prototype.fluent = function (name) {
+ var proto = this.proto;
+ var target = this.target;
+ this.fluents.push(name);
+
+ proto[name] = function(val){
+ if ('undefined' != typeof val) {
+ this[target][name] = val;
+ return this;
+ } else {
+ return this[target][name];
+ }
+ };
+
+ return this;
+};
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json
new file mode 100644
index 00000000000..ea3c1da0d49
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/package.json
@@ -0,0 +1,48 @@
+{
+ "name": "delegates",
+ "version": "0.1.0",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/visionmedia/node-delegates.git"
+ },
+ "description": "delegate methods and accessors to another property",
+ "keywords": [
+ "delegate",
+ "delegation"
+ ],
+ "dependencies": {},
+ "devDependencies": {
+ "mocha": "*",
+ "should": "*"
+ },
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/visionmedia/node-delegates/issues"
+ },
+ "homepage": "https://github.com/visionmedia/node-delegates",
+ "_id": "delegates@0.1.0",
+ "_shasum": "b4b57be11a1653517a04b27f0949bdc327dfe390",
+ "_from": "delegates@>=0.1.0 <0.2.0",
+ "_npmVersion": "1.4.9",
+ "_npmUser": {
+ "name": "dominicbarnes",
+ "email": "dominic@dbarnes.info"
+ },
+ "maintainers": [
+ {
+ "name": "tjholowaychuk",
+ "email": "tj@vision-media.ca"
+ },
+ {
+ "name": "dominicbarnes",
+ "email": "dominic@dbarnes.info"
+ }
+ ],
+ "dist": {
+ "shasum": "b4b57be11a1653517a04b27f0949bdc327dfe390",
+ "tarball": "http://registry.npmjs.org/delegates/-/delegates-0.1.0.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/delegates/-/delegates-0.1.0.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js
new file mode 100644
index 00000000000..7b6e3d4df19
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/node_modules/delegates/test/index.js
@@ -0,0 +1,94 @@
+
+var assert = require('assert');
+var delegate = require('..');
+
+describe('.method(name)', function(){
+ it('should delegate methods', function(){
+ var obj = {};
+
+ obj.request = {
+ foo: function(bar){
+ assert(this == obj.request);
+ return bar;
+ }
+ };
+
+ delegate(obj, 'request').method('foo');
+
+ obj.foo('something').should.equal('something');
+ })
+})
+
+describe('.getter(name)', function(){
+ it('should delegate getters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return 'text/html';
+ }
+ }
+
+ delegate(obj, 'request').getter('type');
+
+ obj.type.should.equal('text/html');
+ })
+})
+
+describe('.setter(name)', function(){
+ it('should delegate setters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return this._type.toUpperCase();
+ },
+
+ set type(val) {
+ this._type = val;
+ }
+ }
+
+ delegate(obj, 'request').setter('type');
+
+ obj.type = 'hey';
+ obj.request.type.should.equal('HEY');
+ })
+})
+
+describe('.access(name)', function(){
+ it('should delegate getters and setters', function(){
+ var obj = {};
+
+ obj.request = {
+ get type() {
+ return this._type.toUpperCase();
+ },
+
+ set type(val) {
+ this._type = val;
+ }
+ }
+
+ delegate(obj, 'request').access('type');
+
+ obj.type = 'hey';
+ obj.type.should.equal('HEY');
+ })
+})
+
+describe('.fluent(name)', function () {
+ it('should delegate in a fluent fashion', function () {
+ var obj = {
+ settings: {
+ env: 'development'
+ }
+ };
+
+ delegate(obj, 'settings').fluent('env');
+
+ obj.env().should.equal('development');
+ obj.env('production').should.equal(obj);
+ obj.settings.env.should.equal('production');
+ })
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/package.json
new file mode 100644
index 00000000000..75910066693
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/package.json
@@ -0,0 +1,51 @@
+{
+ "name": "are-we-there-yet",
+ "version": "1.0.4",
+ "description": "Keep track of the overall completion of many dispirate processes",
+ "main": "index.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/are-we-there-yet.git"
+ },
+ "author": {
+ "name": "Rebecca Turner",
+ "url": "http://re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/are-we-there-yet/issues"
+ },
+ "homepage": "https://github.com/iarna/are-we-there-yet",
+ "devDependencies": {
+ "tap": "^0.4.13"
+ },
+ "dependencies": {
+ "delegates": "^0.1.0",
+ "readable-stream": "^1.1.13"
+ },
+ "gitHead": "7ce414849b81ab83935a935275def01914821bde",
+ "_id": "are-we-there-yet@1.0.4",
+ "_shasum": "527fe389f7bcba90806106b99244eaa07e886f85",
+ "_from": "are-we-there-yet@>=1.0.0 <1.1.0",
+ "_npmVersion": "2.0.0",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "dist": {
+ "shasum": "527fe389f7bcba90806106b99244eaa07e886f85",
+ "tarball": "http://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.0.4.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.0.4.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js
new file mode 100644
index 00000000000..18c31c32cfd
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/tracker.js
@@ -0,0 +1,56 @@
+"use strict"
+var test = require("tap").test
+var Tracker = require("../index.js").Tracker
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+test("Tracker", function (t) {
+ t.plan(10)
+
+ var name = "test"
+ var track = new Tracker(name)
+
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+
+ var todo = 100
+ track = new Tracker(name, todo)
+ t.is(track.completed(), 0, "Nothing done is 0 completion")
+
+ testEvent(track, "change", afterCompleteWork)
+ track.completeWork(100)
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "completeWork: on change event fired")
+ t.is(onChangeName, name, "completeWork: on change emits the correct name")
+ }
+ t.is(track.completed(), 1, "completeWork: 100% completed")
+
+ testEvent(track, "change", afterAddWork)
+ track.addWork(100)
+ function afterAddWork(er, onChangeName) {
+ t.is(er, null, "addWork: on change event fired")
+ t.is(onChangeName, name, "addWork: on change emits the correct name")
+ }
+ t.is(track.completed(), 0.5, "addWork: 50% completed")
+
+
+ track.completeWork(200)
+ t.is(track.completed(), 1, "completeWork: Over completion is still only 100% complete")
+
+ track = new Tracker(name, todo)
+ track.completeWork(50)
+ track.finish()
+ t.is(track.completed(), 1, "finish: Explicitly finishing moves to 100%")
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js
new file mode 100644
index 00000000000..f97e1034ff9
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackergroup.js
@@ -0,0 +1,87 @@
+"use strict"
+var test = require("tap").test
+var Tracker = require("../index.js").Tracker
+var TrackerGroup = require("../index.js").TrackerGroup
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+test("TrackerGroup", function (t) {
+ var name = "test"
+
+ var track = new TrackerGroup(name)
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+ testEvent(track, "change", afterFinishEmpty)
+ track.finish()
+ var a, b
+ function afterFinishEmpty(er, onChangeName) {
+ t.is(er, null, "finishEmpty: on change event fired")
+ t.is(onChangeName, name, "finishEmpty: on change emits the correct name")
+ t.is(track.completed(), 1, "finishEmpty: Finishing an empty group actually finishes it")
+
+ track = new TrackerGroup(name)
+ a = track.newItem("a", 10, 1)
+ b = track.newItem("b", 10, 1)
+ t.is(track.completed(), 0, "Initially empty")
+ testEvent(track, "change", afterCompleteWork)
+ a.completeWork(5)
+ }
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "on change event fired")
+ t.is(onChangeName, "a", "on change emits the correct name")
+ t.is(track.completed(), 0.25, "Complete half of one is a quarter overall")
+ testEvent(track, "change", afterFinishAll)
+ track.finish()
+ }
+ function afterFinishAll(er, onChangeName) {
+ t.is(er, null, "finishAll: on change event fired")
+ t.is(onChangeName, name, "finishAll: on change emits the correct name")
+ t.is(track.completed(), 1, "Finishing everything ")
+
+ track = new TrackerGroup(name)
+ a = track.newItem("a", 10, 2)
+ b = track.newItem("b", 10, 1)
+ t.is(track.completed(), 0, "weighted: Initially empty")
+ testEvent(track, "change", afterWeightedCompleteWork)
+ a.completeWork(5)
+ }
+ function afterWeightedCompleteWork(er, onChangeName) {
+ t.is(er, null, "weighted: on change event fired")
+ t.is(onChangeName, "a", "weighted: on change emits the correct name")
+ t.is(Math.round(track.completed()*100), 33, "weighted: Complete half of double weighted")
+ testEvent(track, "change", afterWeightedFinishAll)
+ track.finish()
+ }
+ function afterWeightedFinishAll(er, onChangeName) {
+ t.is(er, null, "weightedFinishAll: on change event fired")
+ t.is(onChangeName, name, "weightedFinishAll: on change emits the correct name")
+ t.is(track.completed(), 1, "weightedFinishaAll: Finishing everything ")
+
+ track = new TrackerGroup(name)
+ a = track.newGroup("a", 10)
+ b = track.newGroup("b", 10)
+ var a1 = a.newItem("a.1",10)
+ a1.completeWork(5)
+ t.is(track.completed(), 0.25, "nested: Initially quarter done")
+ testEvent(track, "change", afterNestedComplete)
+ b.finish()
+ }
+ function afterNestedComplete(er, onChangeName) {
+ t.is(er, null, "nestedComplete: on change event fired")
+ t.is(onChangeName, "b", "nestedComplete: on change emits the correct name")
+ t.is(track.completed(), 0.75, "nestedComplete: Finishing everything ")
+ t.end()
+ }
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js
new file mode 100644
index 00000000000..72b6043097f
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/are-we-there-yet/test/trackerstream.js
@@ -0,0 +1,65 @@
+"use strict"
+var test = require("tap").test
+var util = require("util")
+var stream = require("readable-stream")
+var TrackerStream = require("../index.js").TrackerStream
+
+var timeoutError = new Error("timeout")
+var testEvent = function (obj,event,next) {
+ var timeout = setTimeout(function(){
+ obj.removeListener(event, eventHandler)
+ next(timeoutError)
+ }, 10)
+ var eventHandler = function () {
+ var args = Array.prototype.slice.call(arguments)
+ args.unshift(null)
+ clearTimeout(timeout)
+ next.apply(null, args)
+ }
+ obj.once(event, eventHandler)
+}
+
+var Sink = function () {
+ stream.Writable.apply(this,arguments)
+}
+util.inherits(Sink, stream.Writable)
+Sink.prototype._write = function (data, encoding, cb) {
+ cb()
+}
+
+test("TrackerStream", function (t) {
+ t.plan(9)
+
+ var name = "test"
+ var track = new TrackerStream(name)
+
+ t.is(track.completed(), 0, "Nothing todo is 0 completion")
+
+ var todo = 10
+ track = new TrackerStream(name, todo)
+ t.is(track.completed(), 0, "Nothing done is 0 completion")
+
+ track.pipe(new Sink())
+
+ testEvent(track, "change", afterCompleteWork)
+ track.write("0123456789")
+ function afterCompleteWork(er, onChangeName) {
+ t.is(er, null, "write: on change event fired")
+ t.is(onChangeName, name, "write: on change emits the correct name")
+ t.is(track.completed(), 1, "write: 100% completed")
+
+ testEvent(track, "change", afterAddWork)
+ track.addWork(10)
+ }
+ function afterAddWork(er, onChangeName) {
+ t.is(er, null, "addWork: on change event fired")
+ t.is(track.completed(), 0.5, "addWork: 50% completed")
+
+ testEvent(track, "change", afterAllWork)
+ track.write("ABCDEFGHIJKLMNOPQRST")
+ }
+ function afterAllWork(er) {
+ t.is(er, null, "allWork: on change event fired")
+ t.is(track.completed(), 1, "allWork: 100% completed")
+ }
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/.npmignore b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/.npmignore
new file mode 100644
index 00000000000..df22a16c635
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/.npmignore
@@ -0,0 +1,32 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# Editor cruft
+*~
+.#*
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/LICENSE
new file mode 100644
index 00000000000..e756052969b
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/LICENSE
@@ -0,0 +1,13 @@
+Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/README.md
new file mode 100644
index 00000000000..ca0a8cd773d
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/README.md
@@ -0,0 +1,166 @@
+gauge
+=====
+
+A nearly stateless terminal based horizontal guage / progress bar.
+
+```javascript
+var Gauge = require("gauge")
+
+var gauge = new Gauge()
+
+gauge.show("test", 0.20)
+
+gauge.pulse("this")
+
+gauge.hide()
+```
+
+![](example.png)
+
+
+### `var gauge = new Gauge([options], [ansiStream])`
+
+* **options** – *(optional)* An option object. (See [below] for details.)
+* **ansiStream** – *(optional)* A stream that's been blessed by the [ansi]
+ module to include various commands for controlling the cursor in a terminal.
+
+[ansi]: https://www.npmjs.com/package/ansi
+[below]: #theme-objects
+
+Constructs a new gauge. Gauges are drawn on a single line, and are not drawn
+if the current terminal isn't a tty.
+
+If you resize your terminal in a way that can be detected then the gauge
+will be drawn at the new size. As a general rule, growing your terminal will
+be clean, but shrinking your terminal will result in cruft as we don't have
+enough information to know where what we wrote previously is now located.
+
+The **options** object can have the following properties, all of which are
+optional:
+
+* maxUpdateFrequency: defaults to 50 msec, the gauge will not be drawn more
+ than once in this period of time. This applies to `show` and `pulse`
+ calls, but if you `hide` and then `show` the gauge it will draw it
+ regardless of time since last draw.
+* theme: defaults to Gauge.unicode` if the terminal supports
+ unicode according to [has-unicode], otherwise it defaults to `Gauge.ascii`.
+ Details on the [theme object](#theme-objects) are documented elsewhere.
+* template: see [documentation elsewhere](#template-objects) for
+ defaults and details.
+
+[has-unicode]: https://www.npmjs.com/package/has-unicode
+
+If **ansiStream** isn't passed in, then one will be constructed from stderr
+with `ansi(process.stderr)`.
+
+### `gauge.show([name, [completed]])`
+
+* **name** – *(optional)* The name of the current thing contributing to progress. Defaults to the last value used, or "".
+* **completed** – *(optional)* The portion completed as a value between 0 and 1. Defaults to the last value used, or 0.
+
+If `process.stdout.isTTY` is false then this does nothing. If completed is 0
+and `gauge.pulse` has never been called, then similarly nothing will be printed.
+
+If `maxUpdateFrequency` msec haven't passed since the last call to `show` or
+`pulse` then similarly, nothing will be printed. (Actually, the update is
+deferred until `maxUpdateFrequency` msec have passed and if nothing else has
+happened, the gauge update will happen.)
+
+### `gauge.hide()`
+
+Removes the gauge from the terminal.
+
+### `gauge.pulse([name])`
+
+* **name** – *(optional)* The specific thing that triggered this pulse
+
+Spins the spinner in the gauge to show output. If **name** is included then
+it will be combined with the last name passed to `gauge.show` using the
+subsection property of the theme (typically a right facing arrow).
+
+### `gauge.disable()`
+
+Hides the gauge and ignores further calls to `show` or `pulse`.
+
+### `gauge.enable()`
+
+Shows the gauge and resumes updating when `show` or `pulse` is called.
+
+### `gauge.setTheme(theme)`
+
+Change the active theme, will be displayed with the next show or pulse
+
+### `gauge.setTemplate(template)`
+
+Change the active template, will be displayed with the next show or pulse
+
+### Theme Objects
+
+There are two theme objects available as a part of the module, `Gauge.unicode` and `Gauge.ascii`.
+Theme objects have the follow properties:
+
+| Property | Unicode | ASCII |
+| ---------- | ------- | ----- |
+| startgroup | ╢ | \| |
+| endgroup | ╟ | \| |
+| complete | █ | # |
+| incomplete | ░ | - |
+| spinner | ▀▐▄▌ | -\\\|/ |
+| subsection | → | -> |
+
+*startgroup*, *endgroup* and *subsection* can be as many characters as you want.
+
+*complete* and *incomplete* should be a single character width each.
+
+*spinner* is a list of characters to use in turn when displaying an activity
+spinner. The Gauge will spin as many characters as you give here.
+
+### Template Objects
+
+A template is an array of objects and strings that, after being evaluated,
+will be turned into the gauge line. The default template is:
+
+```javascript
+[
+ {type: "name", separated: true, maxLength: 25, minLength: 25, align: "left"},
+ {type: "spinner", separated: true},
+ {type: "startgroup"},
+ {type: "completionbar"},
+ {type: "endgroup"}
+]
+```
+
+The various template elements can either be **plain strings**, in which case they will
+be be included verbatum in the output.
+
+If the template element is an object, it can have the following keys:
+
+* *type* can be:
+ * `name` – The most recent name passed to `show`; if this is in response to a
+ `pulse` then the name passed to `pulse` will be appended along with the
+ subsection property from the theme.
+ * `spinner` – If you've ever called `pulse` this will be one of the characters
+ from the spinner property of the theme.
+ * `startgroup` – The `startgroup` property from the theme.
+ * `completionbar` – This progress bar itself
+ * `endgroup` – The `endgroup` property from the theme.
+* *separated* – If true, the element will be separated with spaces from things on
+ either side (and margins count as space, so it won't be indented), but only
+ if its included.
+* *maxLength* – The maximum length for this element. If its value is longer it
+ will be truncated.
+* *minLength* – The minimum length for this element. If its value is shorter it
+ will be padded according to the *align* value.
+* *align* – (Default: left) Possible values "left", "right" and "center". Works
+ as you'd expect from word processors.
+* *length* – Provides a single value for both *minLength* and *maxLength*. If both
+ *length* and *minLength or *maxLength* are specifed then the latter take precedence.
+
+### Tracking Completion
+
+If you have more than one thing going on that you want to track completion
+of, you may find the related [are-we-there-yet] helpful. It's `change`
+event can be wired up to the `show` method to get a more traditional
+progress bar interface.
+
+[are-we-there-yet]: https://www.npmjs.com/package/are-we-there-yet
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/example.png b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/example.png
new file mode 100644
index 00000000000..2667cac459e
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/example.png
Binary files differ
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore
new file mode 100644
index 00000000000..7e17cf19b7a
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/.npmignore
@@ -0,0 +1,32 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# Editor temp files
+*~
+.#*
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE
new file mode 100644
index 00000000000..e756052969b
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/LICENSE
@@ -0,0 +1,13 @@
+Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md
new file mode 100644
index 00000000000..4393106fda3
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/README.md
@@ -0,0 +1,39 @@
+has-unicode
+===========
+
+Try to guess if your terminal supports unicode
+
+```javascript
+var hasUnicode = require("has-unicode")
+
+if (hasUnicode()) {
+ // the terminal probably has unicode support
+}
+```
+```javascript
+var hasUnicode = require("has-unicode").tryHarder
+hasUnicode(function(unicodeSupported) {
+ if (unicodeSupported) {
+ // the terminal probably has unicode support
+ }
+})
+```
+
+## Detecting Unicode
+
+What we actually detect is UTF-8 support, as that's what Node itself supports.
+If you have a UTF-16 locale then you won't be detected as unicode capable.
+
+### Windows
+
+Since at least Windows 7, `cmd` and `powershell` have been unicode capable.
+As such, we report any Windows installation as unicode capable.
+
+
+### Unix Like Operating Systems
+
+We look at the environment variables `LC_ALL`, `LC_CTYPE`, and `LANG` in
+that order. For `LC_ALL` and `LANG`, it looks for `.UTF-8` in the value.
+For `LC_CTYPE` it looks to see if the value is `UTF-8`. This is sufficient
+for most POSIX systems. While locale data can be put in `/etc/locale.conf`
+as well, AFAIK it's always copied into the environment.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
new file mode 100644
index 00000000000..e0907b510a8
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
@@ -0,0 +1,17 @@
+"use strict"
+var os = require("os")
+
+var hasUnicode = module.exports = function () {
+ // Supported Win32 platforms (>XP) support unicode in the console, though
+ // font support isn't fantastic.
+ if (os.type() == "Windows_NT") { return true }
+
+ var isUTF8 = /[.]UTF-8/
+ if (isUTF8.test(process.env.LC_ALL)
+ || process.env.LC_CTYPE == 'UTF-8'
+ || isUTF8.test(process.env.LANG)) {
+ return true
+ }
+
+ return false
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
new file mode 100644
index 00000000000..6430bb74a47
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
@@ -0,0 +1,53 @@
+{
+ "name": "has-unicode",
+ "version": "1.0.1",
+ "description": "Try to guess if your terminal supports unicode",
+ "main": "index.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/has-unicode.git"
+ },
+ "keywords": [
+ "unicode",
+ "terminal"
+ ],
+ "author": {
+ "name": "Rebecca Turner",
+ "email": "me@re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/has-unicode/issues"
+ },
+ "homepage": "https://github.com/iarna/has-unicode",
+ "devDependencies": {
+ "require-inject": "^1.1.1",
+ "tap": "^0.4.13"
+ },
+ "gitHead": "d4ad300c67b25c197582e42e936ea928f7935d01",
+ "_id": "has-unicode@1.0.1",
+ "_shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
+ "_from": "has-unicode@>=1.0.0 <2.0.0",
+ "_npmVersion": "3.3.6",
+ "_nodeVersion": "4.1.1",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
+ "tarball": "http://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js
new file mode 100644
index 00000000000..2394c14ef7f
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/test/index.js
@@ -0,0 +1,26 @@
+"use strict"
+var test = require("tap").test
+var requireInject = require("require-inject")
+
+test("Windows", function (t) {
+ t.plan(1)
+ var hasUnicode = requireInject("../index.js", {
+ os: { type: function () { return "Windows_NT" } }
+ })
+ t.is(hasUnicode(), true, "Windows is assumed to be unicode aware")
+})
+test("Unix Env", function (t) {
+ t.plan(3)
+ var hasUnicode = requireInject("../index.js", {
+ os: { type: function () { return "Linux" } },
+ child_process: { exec: function (cmd,cb) { cb(new Error("not available")) } }
+ })
+ process.env.LANG = "en_US.UTF-8"
+ process.env.LC_ALL = null
+ t.is(hasUnicode(), true, "Linux with a UTF8 language")
+ process.env.LANG = null
+ process.env.LC_ALL = "en_US.UTF-8"
+ t.is(hasUnicode(), true, "Linux with UTF8 locale")
+ process.env.LC_ALL = null
+ t.is(hasUnicode(), false, "Linux without UTF8 language or locale")
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..93233eaac56
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,56 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "readme": "# lodash._basetostring v3.0.1\n\nThe [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.\n\n## Installation\n\nUsing npm:\n\n```bash\n$ {sudo -H} npm i -g npm\n$ npm i --save lodash._basetostring\n```\n\nIn Node.js/io.js:\n\n```js\nvar baseToString = require('lodash._basetostring');\n```\n\nSee the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.\n",
+ "readmeFilename": "README.md",
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "_from": "lodash._basetostring@3.0.1"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json
index ffe797253ae..945409f3e1c 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash._createpadding/package.json
@@ -1,6 +1,6 @@
{
"name": "lodash._createpadding",
- "version": "3.6.0",
+ "version": "3.6.1",
"description": "The modern build of lodash’s internal `createPadding` as a module.",
"homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg",
@@ -50,11 +50,11 @@
"bugs": {
"url": "https://github.com/lodash/lodash/issues"
},
- "_id": "lodash._createpadding@3.6.0",
- "_shasum": "c466850dd1a05e6bfec54fd0cf0db28b68332d5e",
- "_from": "lodash._createpadding@3.6.0",
- "_npmVersion": "2.7.3",
- "_nodeVersion": "0.12.0",
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@3.6.1",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
"_npmUser": {
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
@@ -63,13 +63,29 @@
{
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
}
],
"dist": {
- "shasum": "c466850dd1a05e6bfec54fd0cf0db28b68332d5e",
- "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.0.tgz"
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.0.tgz",
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
new file mode 100644
index 00000000000..456d23ddf0c
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
@@ -0,0 +1,20 @@
+# lodash.pad v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.pad` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.pad
+```
+
+In Node.js/io.js:
+
+```js
+var pad = require('lodash.pad');
+```
+
+See the [documentation](https://lodash.com/docs#pad) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.pad) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
new file mode 100644
index 00000000000..a29ccea9ca1
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Pads `string` on the left and right sides if it's shorter than `length`.
+ * Padding characters are truncated if they can't be evenly divided by `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.pad('abc', 8);
+ * // => ' abc '
+ *
+ * _.pad('abc', 8, '_-');
+ * // => '_-abc_-_'
+ *
+ * _.pad('abc', 3);
+ * // => 'abc'
+ */
+function pad(string, length, chars) {
+ string = baseToString(string);
+ length = +length;
+
+ var strLength = string.length;
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return string;
+ }
+ var mid = (length - strLength) / 2,
+ leftLength = nativeFloor(mid),
+ rightLength = nativeCeil(mid);
+
+ chars = createPadding('', rightLength, chars);
+ return chars.slice(0, leftLength) + string + chars;
+}
+
+module.exports = pad;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
new file mode 100644
index 00000000000..c18ed47167a
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.pad",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.pad` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.pad@3.1.1",
+ "_shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
+ "_from": "lodash.pad@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
+ "tarball": "http://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/LICENSE.txt
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md
new file mode 100644
index 00000000000..641b4d6f007
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/README.md
@@ -0,0 +1,20 @@
+# lodash.padleft v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.padLeft` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.padleft
+```
+
+In Node.js/io.js:
+
+```js
+var padLeft = require('lodash.padleft');
+```
+
+See the [documentation](https://lodash.com/docs#padLeft) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.padleft) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js
new file mode 100644
index 00000000000..2abb69a6c06
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/index.js
@@ -0,0 +1,50 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/**
+ * Creates a function for `_.padLeft` or `_.padRight`.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify padding from the right.
+ * @returns {Function} Returns the new pad function.
+ */
+function createPadDir(fromRight) {
+ return function(string, length, chars) {
+ string = baseToString(string);
+ return (fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string);
+ };
+}
+
+/**
+ * Pads `string` on the left side if it is shorter than `length`. Padding
+ * characters are truncated if they exceed `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.padLeft('abc', 6);
+ * // => ' abc'
+ *
+ * _.padLeft('abc', 6, '_-');
+ * // => '_-_abc'
+ *
+ * _.padLeft('abc', 3);
+ * // => 'abc'
+ */
+var padLeft = createPadDir();
+
+module.exports = padLeft;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json
new file mode 100644
index 00000000000..55b0c256f9d
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.padleft",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.padLeft` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.padleft@3.1.1",
+ "_shasum": "150151f1e0245edba15d50af2d71f1d5cff46530",
+ "_from": "lodash.padleft@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.9.0",
+ "_nodeVersion": "0.12.2",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "150151f1e0245edba15d50af2d71f1d5cff46530",
+ "tarball": "http://registry.npmjs.org/lodash.padleft/-/lodash.padleft-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.padleft/-/lodash.padleft-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/LICENSE.txt
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md
new file mode 100644
index 00000000000..bcd6e5742fe
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/README.md
@@ -0,0 +1,20 @@
+# lodash.padright v3.1.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.padRight` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.padright
+```
+
+In Node.js/io.js:
+
+```js
+var padRight = require('lodash.padright');
+```
+
+See the [documentation](https://lodash.com/docs#padRight) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.padright) for more details.
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js
new file mode 100644
index 00000000000..6de81c4bbed
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/index.js
@@ -0,0 +1,50 @@
+/**
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring'),
+ createPadding = require('lodash._createpadding');
+
+/**
+ * Creates a function for `_.padLeft` or `_.padRight`.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify padding from the right.
+ * @returns {Function} Returns the new pad function.
+ */
+function createPadDir(fromRight) {
+ return function(string, length, chars) {
+ string = baseToString(string);
+ return (fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string);
+ };
+}
+
+/**
+ * Pads `string` on the right side if it is shorter than `length`. Padding
+ * characters are truncated if they exceed `length`.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to pad.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the padded string.
+ * @example
+ *
+ * _.padRight('abc', 6);
+ * // => 'abc '
+ *
+ * _.padRight('abc', 6, '_-');
+ * // => 'abc_-_'
+ *
+ * _.padRight('abc', 3);
+ * // => 'abc'
+ */
+var padRight = createPadDir(true);
+
+module.exports = padRight;
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json
new file mode 100644
index 00000000000..2a40f94bfc3
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/package.json
@@ -0,0 +1,98 @@
+{
+ "name": "lodash.padright",
+ "version": "3.1.1",
+ "description": "The modern build of lodash’s `_.padRight` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0",
+ "lodash._createpadding": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.padright@3.1.1",
+ "_shasum": "79f7770baaa39738c040aeb5465e8d88f2aacec0",
+ "_from": "lodash.padright@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.9.0",
+ "_nodeVersion": "0.12.2",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "79f7770baaa39738c040aeb5465e8d88f2aacec0",
+ "tarball": "http://registry.npmjs.org/lodash.padright/-/lodash.padright-3.1.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.padright/-/lodash.padright-3.1.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/package.json
new file mode 100644
index 00000000000..d16cc33df97
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/package.json
@@ -0,0 +1,60 @@
+{
+ "name": "gauge",
+ "version": "1.2.2",
+ "description": "A terminal based horizontal guage",
+ "main": "progress-bar.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/iarna/gauge.git"
+ },
+ "keywords": [
+ "progressbar",
+ "progress",
+ "gauge"
+ ],
+ "author": {
+ "name": "Rebecca Turner",
+ "email": "me@re-becca.org"
+ },
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/gauge/issues"
+ },
+ "homepage": "https://github.com/iarna/gauge",
+ "dependencies": {
+ "ansi": "^0.3.0",
+ "has-unicode": "^1.0.0",
+ "lodash.pad": "^3.0.0",
+ "lodash.padleft": "^3.0.0",
+ "lodash.padright": "^3.0.0"
+ },
+ "devDependencies": {
+ "tap": "^0.4.13"
+ },
+ "gitHead": "9f7eeeeed3b74a70f30b721d570435f6ffbc0168",
+ "_id": "gauge@1.2.2",
+ "_shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
+ "_from": "gauge@>=1.2.0 <1.3.0",
+ "_npmVersion": "3.1.0",
+ "_nodeVersion": "0.10.38",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
+ "tarball": "http://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/progress-bar.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/progress-bar.js
new file mode 100644
index 00000000000..16bdadc5103
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/progress-bar.js
@@ -0,0 +1,226 @@
+"use strict"
+var hasUnicode = require("has-unicode")
+var ansi = require("ansi")
+var align = {
+ center: require("lodash.pad"),
+ left: require("lodash.padright"),
+ right: require("lodash.padleft")
+}
+var defaultStream = process.stderr
+function isTTY() {
+ return process.stderr.isTTY
+}
+function getWritableTTYColumns() {
+ // Writing to the final column wraps the line
+ // We have to use stdout here, because Node's magic SIGWINCH handler only
+ // updates process.stdout, not process.stderr
+ return process.stdout.columns - 1
+}
+
+var ProgressBar = module.exports = function (options, cursor) {
+ if (! options) options = {}
+ if (! cursor && options.write) {
+ cursor = options
+ options = {}
+ }
+ if (! cursor) {
+ cursor = ansi(defaultStream)
+ }
+ this.cursor = cursor
+ this.showing = false
+ this.theme = options.theme || (hasUnicode() ? ProgressBar.unicode : ProgressBar.ascii)
+ this.template = options.template || [
+ {type: "name", separated: true, length: 25},
+ {type: "spinner", separated: true},
+ {type: "startgroup"},
+ {type: "completionbar"},
+ {type: "endgroup"}
+ ]
+ this.updatefreq = options.maxUpdateFrequency || 50
+ this.lastName = ""
+ this.lastCompleted = 0
+ this.spun = 0
+ this.last = new Date(0)
+
+ var self = this
+ this._handleSizeChange = function () {
+ if (!self.showing) return
+ self.hide()
+ self.show()
+ }
+}
+ProgressBar.prototype = {}
+
+ProgressBar.unicode = {
+ startgroup: "╢",
+ endgroup: "╟",
+ complete: "█",
+ incomplete: "░",
+ spinner: "▀▐▄▌",
+ subsection: "→"
+}
+
+ProgressBar.ascii = {
+ startgroup: "|",
+ endgroup: "|",
+ complete: "#",
+ incomplete: "-",
+ spinner: "-\\|/",
+ subsection: "->"
+}
+
+ProgressBar.prototype.setTheme = function(theme) {
+ this.theme = theme
+}
+
+ProgressBar.prototype.setTemplate = function(template) {
+ this.template = template
+}
+
+ProgressBar.prototype._enableResizeEvents = function() {
+ process.stdout.on('resize', this._handleSizeChange)
+}
+
+ProgressBar.prototype._disableResizeEvents = function() {
+ process.stdout.removeListener('resize', this._handleSizeChange)
+}
+
+ProgressBar.prototype.disable = function() {
+ this.hide()
+ this.disabled = true
+}
+
+ProgressBar.prototype.enable = function() {
+ this.disabled = false
+ this.show()
+}
+
+ProgressBar.prototype.hide = function() {
+ if (!isTTY()) return
+ if (this.disabled) return
+ this.cursor.show()
+ if (this.showing) this.cursor.up(1)
+ this.cursor.horizontalAbsolute(0).eraseLine()
+ this.showing = false
+}
+
+var repeat = function (str, count) {
+ var out = ""
+ for (var ii=0; ii<count; ++ii) out += str
+ return out
+}
+
+ProgressBar.prototype.pulse = function(name) {
+ ++ this.spun
+ if (! this.showing) return
+ if (this.disabled) return
+
+ var baseName = this.lastName
+ name = name
+ ? ( baseName
+ ? baseName + " " + this.theme.subsection + " " + name
+ : null )
+ : baseName
+ this.show(name)
+ this.lastName = baseName
+}
+
+ProgressBar.prototype.show = function(name, completed) {
+ name = this.lastName = name || this.lastName
+ completed = this.lastCompleted = completed || this.lastCompleted
+
+ if (!isTTY()) return
+ if (this.disabled) return
+ if (! this.spun && ! completed) return
+ if (this.tryAgain) {
+ clearTimeout(this.tryAgain)
+ this.tryAgain = null
+ }
+ var self = this
+ if (this.showing && new Date() - this.last < this.updatefreq) {
+ this.tryAgain = setTimeout(function () {
+ if (self.disabled) return
+ if (! self.spun && ! completed) return
+ drawBar()
+ }, this.updatefreq - (new Date() - this.last))
+ return
+ }
+
+ return drawBar()
+
+ function drawBar() {
+ var values = {
+ name: name,
+ spinner: self.spun,
+ completed: completed
+ }
+
+ self.last = new Date()
+
+ var statusline = self.renderTemplate(self.theme, self.template, values)
+
+ if (self.showing) self.cursor.up(1)
+ self.cursor
+ .hide()
+ .horizontalAbsolute(0)
+ .write(statusline.substr(0, getWritableTTYColumns()) + "\n")
+ .show()
+
+ self.showing = true
+ }
+}
+
+ProgressBar.prototype.renderTemplate = function (theme, template, values) {
+ values.startgroup = theme.startgroup
+ values.endgroup = theme.endgroup
+ values.spinner = values.spinner
+ ? theme.spinner.substr(values.spinner % theme.spinner.length,1)
+ : ""
+
+ var output = {prebar: "", postbar: ""}
+ var status = "prebar"
+ var self = this
+ template.forEach(function(T) {
+ if (typeof T === "string") {
+ output[status] += T
+ return
+ }
+ if (T.type === "completionbar") {
+ status = "postbar"
+ return
+ }
+ if (!values.hasOwnProperty(T.type)) throw new Error("Unknown template value '"+T.type+"'")
+ var value = self.renderValue(T, values[T.type])
+ if (value === "") return
+ var sofar = output[status].length
+ var lastChar = sofar ? output[status][sofar-1] : null
+ if (T.separated && sofar && lastChar !== " ") {
+ output[status] += " "
+ }
+ output[status] += value
+ if (T.separated) output[status] += " "
+ })
+
+ var bar = ""
+ if (status === "postbar") {
+ var nonBarLen = output.prebar.length + output.postbar.length
+
+ var barLen = getWritableTTYColumns() - nonBarLen
+ var sofar = Math.round(barLen * Math.max(0,Math.min(1,values.completed||0)))
+ var rest = barLen - sofar
+ bar = repeat(theme.complete, sofar)
+ + repeat(theme.incomplete, rest)
+ }
+
+ return output.prebar + bar + output.postbar
+}
+ProgressBar.prototype.renderValue = function (template, value) {
+ if (value == null || value === "") return ""
+ var maxLength = template.maxLength || template.length
+ var minLength = template.minLength || template.length
+ var alignWith = align[template.align] || align.left
+// if (maxLength) value = value.substr(-1 * maxLength)
+ if (maxLength) value = value.substr(0, maxLength)
+ if (minLength) value = alignWith(value, minLength)
+ return value
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/test/progress-bar.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
new file mode 100644
index 00000000000..39939269f5b
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
@@ -0,0 +1,176 @@
+"use strict"
+var test = require("tap").test
+var ProgressBar = require("../progress-bar.js")
+
+var cursor = []
+var C
+var bar = new ProgressBar({theme: ProgressBar.ascii}, C = {
+ show: function () {
+ cursor.push(["show"])
+ return C
+ },
+ hide: function () {
+ cursor.push(["hide"])
+ return C
+ },
+ up: function (lines) {
+ cursor.push(["up",lines])
+ return C
+ },
+ horizontalAbsolute: function (col) {
+ cursor.push(["horizontalAbsolute", col])
+ return C
+ },
+ eraseLine: function () {
+ cursor.push(["eraseLine"])
+ return C
+ },
+ write: function (line) {
+ cursor.push(["write", line])
+ return C
+ }
+})
+
+
+function isOutput(t, msg, output) {
+ var tests = []
+ for (var ii = 0; ii<output.length; ++ii) {
+ for (var jj = 0; jj<output[ii].length; ++jj) {
+ tests.push({cmd: ii, arg: jj})
+ }
+ }
+ tests.forEach(function(test) {
+ t.is(cursor[test.cmd] ? cursor[test.cmd][test.arg] : null,
+ output[test.cmd][test.arg],
+ msg + ": " + output[test.cmd] + (test.arg ? " arg #"+test.arg : ""))
+ })
+}
+
+test("hide", function (t) {
+ t.plan(11)
+ process.stderr.isTTY = false
+ bar.hide()
+ t.is(cursor.length, 0, "We don't progress bar without a tty")
+ cursor = []
+ process.stderr.isTTY = true
+ bar.hide()
+ isOutput(t, "hide while not showing",[
+ ["show"], // cursor
+ ["horizontalAbsolute",0],
+ ["eraseLine"]])
+ cursor = []
+ bar.showing = true
+ bar.hide()
+ isOutput(t, "hide while showing",[
+ ["show"], // cursor
+ ["up", 1],
+ ["horizontalAbsolute",0],
+ ["eraseLine"]])
+})
+
+test("renderTemplate", function (t) {
+ t.plan(16)
+ process.stdout.columns = 11
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "name"}],{name: "NAME"})
+ t.is(result, "NAME", "name substitution")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 0})
+ t.is(result, "----------", "0% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 0.5})
+ t.is(result, "#####-----", "50% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 1})
+ t.is(result, "##########", "100% bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: -100})
+ t.is(result, "----------", "0% underflow bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 100})
+ t.is(result, "##########", "100% overflow bar")
+ var result = bar.renderTemplate(ProgressBar.ascii,[{type: "name"},{type: "completionbar"}],{name: "NAME", completed: 0.5})
+ t.is(result, "NAME###---", "name + 50%")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static"], {})
+ t.is(result, "static", "static text")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static",{type: "name"}], {name: "NAME"})
+ t.is(result, "staticNAME", "static text + var")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["static",{type: "name", separated: true}], {name: "NAME"})
+ t.is(result, "static NAME ", "pre-separated")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "name", separated: true}, "static"], {name: "NAME"})
+ t.is(result, "NAME static", "post-separated")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["1",{type: "name", separated: true}, "2"], {name: ""})
+ t.is(result, "12", "separated no value")
+ var result = bar.renderTemplate(ProgressBar.ascii, ["1",{type: "name", separated: true}, "2"], {name: "NAME"})
+ t.is(result, "1 NAME 2", "separated value")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 0})
+ t.is(result, "", "No spinner")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 1})
+ t.is(result, "\\", "Spinner 1")
+ var result = bar.renderTemplate(ProgressBar.ascii, [{type: "spinner"}], {spinner: 10})
+ t.is(result, "|", "Spinner 10")
+})
+
+test("show & pulse", function (t) {
+ t.plan(23)
+
+ process.stdout.columns = 16
+ cursor = []
+ process.stderr.isTTY = false
+ bar.template[0].length = 6
+ bar.last = new Date(0)
+ bar.show("NAME", 0)
+ t.is(cursor.length, 0, "no tty, no progressbar")
+
+ cursor = []
+ process.stderr.isTTY = true
+ bar.last = new Date(0)
+ bar.show("NAME", 0.1)
+ isOutput(t, "tty, name, completion",
+ [ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME |#-----|\n' ],
+ [ 'show' ] ])
+
+ bar.show("S")
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "pulsed spinner",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'S \\ |----|\n' ],
+ [ 'show' ] ])
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse("P")
+ isOutput(t, "pulsed spinner with subsection",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'S -> P | |----|\n' ],
+ [ 'show' ] ])
+})
+
+test("window resizing", function (t) {
+ t.plan(16)
+ process.stderr.isTTY = true
+ process.stdout.columns = 32
+ bar.show("NAME", 0.1)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "32 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME / |##------------------|\n' ],
+ [ 'show' ] ])
+
+ process.stdout.columns = 16
+ bar.show("NAME", 0.5)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "16 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME - |##--|\n' ],
+ [ 'show' ] ]);
+});
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/package.json b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/package.json
new file mode 100644
index 00000000000..9ceb50f2158
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/package.json
@@ -0,0 +1,58 @@
+{
+ "author": {
+ "name": "Isaac Z. Schlueter",
+ "email": "i@izs.me",
+ "url": "http://blog.izs.me/"
+ },
+ "name": "npmlog",
+ "description": "logger for npm",
+ "version": "1.2.1",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/isaacs/npmlog.git"
+ },
+ "main": "log.js",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "dependencies": {
+ "ansi": "~0.3.0",
+ "are-we-there-yet": "~1.0.0",
+ "gauge": "~1.2.0"
+ },
+ "devDependencies": {
+ "tap": ""
+ },
+ "license": "ISC",
+ "gitHead": "4e1a73a567036064ded425a7d48c863d53550b4f",
+ "bugs": {
+ "url": "https://github.com/isaacs/npmlog/issues"
+ },
+ "homepage": "https://github.com/isaacs/npmlog#readme",
+ "_id": "npmlog@1.2.1",
+ "_shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
+ "_from": "npmlog@>=0.1.0 <0.2.0||>=1.0.0 <2.0.0",
+ "_npmVersion": "2.10.0",
+ "_nodeVersion": "2.0.1",
+ "_npmUser": {
+ "name": "isaacs",
+ "email": "isaacs@npmjs.com"
+ },
+ "dist": {
+ "shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
+ "tarball": "http://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "isaacs",
+ "email": "i@izs.me"
+ },
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/basic.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/basic.js
new file mode 100644
index 00000000000..1afcabd1c6b
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/basic.js
@@ -0,0 +1,228 @@
+var tap = require('tap')
+var log = require('../')
+
+var result = []
+var logEvents = []
+var logInfoEvents = []
+var logPrefixEvents = []
+
+var util = require('util')
+
+var resultExpect =
+[ '\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[7msill\u001b[0m \u001b[0m\u001b[35msilly prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[34m\u001b[40mverb\u001b[0m \u001b[0m\u001b[35mverbose prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32minfo\u001b[0m \u001b[0m\u001b[35minfo prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32m\u001b[40mhttp\u001b[0m \u001b[0m\u001b[35mhttp prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[30m\u001b[43mWARN\u001b[0m \u001b[0m\u001b[35mwarn prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35merror prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32minfo\u001b[0m \u001b[0m\u001b[35minfo prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[32m\u001b[40mhttp\u001b[0m \u001b[0m\u001b[35mhttp prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[30m\u001b[43mWARN\u001b[0m \u001b[0m\u001b[35mwarn prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35merror prefix\u001b[0m x = {"foo":{"bar":"baz"}}\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m This is a longer\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m message, with some details\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m and maybe a stack.\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m \n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u0007noise\u001b[0m\u001b[35m\u001b[0m LOUD NOISES\n',
+ '\u001b[0m' ]
+
+var logPrefixEventsExpect =
+[ { id: 2,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 9,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 16,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] } ]
+
+// should be the same.
+var logInfoEventsExpect = logPrefixEventsExpect
+
+var logEventsExpect =
+[ { id: 0,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 1,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 2,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 3,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 4,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 5,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 6,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 7,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 8,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 9,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 10,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 11,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 12,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 13,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 14,
+ level: 'silly',
+ prefix: 'silly prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 15,
+ level: 'verbose',
+ prefix: 'verbose prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 16,
+ level: 'info',
+ prefix: 'info prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 17,
+ level: 'http',
+ prefix: 'http prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 18,
+ level: 'warn',
+ prefix: 'warn prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 19,
+ level: 'error',
+ prefix: 'error prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 20,
+ level: 'silent',
+ prefix: 'silent prefix',
+ message: 'x = {"foo":{"bar":"baz"}}',
+ messageRaw: [ 'x = %j', { foo: { bar: 'baz' } } ] },
+ { id: 21,
+ level: 'error',
+ prefix: '404',
+ message: 'This is a longer\nmessage, with some details\nand maybe a stack.\n',
+ messageRaw: [ 'This is a longer\nmessage, with some details\nand maybe a stack.\n' ] },
+ { id: 22,
+ level: 'noise',
+ prefix: false,
+ message: 'LOUD NOISES',
+ messageRaw: [ 'LOUD NOISES' ] } ]
+
+var Stream = require('stream').Stream
+var s = new Stream()
+s.write = function (m) {
+ result.push(m)
+}
+
+s.writable = true
+s.isTTY = true
+s.end = function () {}
+
+log.stream = s
+
+log.heading = 'npm'
+
+
+tap.test('basic', function (t) {
+ log.on('log', logEvents.push.bind(logEvents))
+ log.on('log.info', logInfoEvents.push.bind(logInfoEvents))
+ log.on('info prefix', logPrefixEvents.push.bind(logPrefixEvents))
+
+ console.error('log.level=silly')
+ log.level = 'silly'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+ console.error('log.level=silent')
+ log.level = 'silent'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+
+ console.error('log.level=info')
+ log.level = 'info'
+ log.silly('silly prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.verbose('verbose prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.info('info prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.http('http prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.warn('warn prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('error prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.silent('silent prefix', 'x = %j', {foo:{bar:'baz'}})
+ log.error('404', 'This is a longer\n'+
+ 'message, with some details\n'+
+ 'and maybe a stack.\n')
+ log.addLevel('noise', 10000, {beep: true})
+ log.noise(false, 'LOUD NOISES')
+
+ t.deepEqual(result.join('').trim(), resultExpect.join('').trim(), 'result')
+ t.deepEqual(log.record, logEventsExpect, 'record')
+ t.deepEqual(logEvents, logEventsExpect, 'logEvents')
+ t.deepEqual(logInfoEvents, logInfoEventsExpect, 'logInfoEvents')
+ t.deepEqual(logPrefixEvents, logPrefixEventsExpect, 'logPrefixEvents')
+
+ t.end()
+})
diff --git a/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/progress.js b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/progress.js
new file mode 100644
index 00000000000..14dfb32740f
--- /dev/null
+++ b/deps/npm/node_modules/npm-install-checks/node_modules/npmlog/test/progress.js
@@ -0,0 +1,114 @@
+'use strict'
+
+var test = require('tap').test
+var log = require('../log.js')
+
+var actions = []
+log.gauge = {
+ enable: function () {
+ actions.push(['enable'])
+ },
+ disable: function () {
+ actions.push(['disable'])
+ },
+ hide: function () {
+ actions.push(['hide'])
+ },
+ show: function (name, completed) {
+ actions.push(['show', name, completed])
+ },
+ pulse: function (name) {
+ actions.push(['pulse', name])
+ }
+}
+
+function didActions(t, msg, output) {
+ var tests = []
+ for (var ii = 0; ii < output.length; ++ ii) {
+ for (var jj = 0; jj < output[ii].length; ++ jj) {
+ tests.push({cmd: ii, arg: jj})
+ }
+ }
+ t.is(actions.length, output.length, msg)
+ tests.forEach(function (test) {
+ t.is(actions[test.cmd] ? actions[test.cmd][test.arg] : null,
+ output[test.cmd][test.arg],
+ msg + ': ' + output[test.cmd] + (test.arg ? ' arg #'+test.arg : ''))
+ })
+ actions = []
+}
+
+
+test('enableProgress', function (t) {
+ t.plan(6)
+ log.enableProgress()
+ didActions(t, 'enableProgress', [ [ 'enable' ], [ 'show', undefined, 0 ] ])
+ log.enableProgress()
+ didActions(t, 'enableProgress again', [])
+})
+
+test('disableProgress', function (t) {
+ t.plan(4)
+ log.disableProgress()
+ didActions(t, 'disableProgress', [ [ 'hide' ], [ 'disable' ] ])
+ log.disableProgress()
+ didActions(t, 'disableProgress again', [])
+})
+
+test('showProgress', function (t) {
+ t.plan(5)
+ log.showProgress('foo')
+ didActions(t, 'showProgress disabled', [])
+ log.enableProgress()
+ actions = []
+ log.showProgress('foo')
+ didActions(t, 'showProgress', [ [ 'show', 'foo', 0 ] ])
+})
+
+test('clearProgress', function (t) {
+ t.plan(3)
+ log.clearProgress()
+ didActions(t, 'clearProgress', [ [ 'hide' ] ])
+ log.disableProgress()
+ actions = []
+ log.clearProgress()
+ didActions(t, 'clearProgress disabled', [ ])
+})
+
+test("newItem", function (t) {
+ t.plan(12)
+ log.enableProgress()
+ actions = []
+ var a = log.newItem("test", 10)
+ didActions(t, "newItem", [ [ 'show', undefined, 0 ] ])
+ a.completeWork(5)
+ didActions(t, "newItem:completeWork", [ [ 'show', 'test', 0.5 ] ])
+ a.finish()
+ didActions(t, "newItem:finish", [ [ 'show', 'test', 1 ] ])
+})
+
+// test that log objects proxy through. And test that completion status filters up
+test("newGroup", function (t) {
+ t.plan(23)
+ var a = log.newGroup("newGroup")
+ didActions(t, "newGroup", [ [ 'show', undefined, 0.5 ] ])
+ a.warn("test", "this is a test")
+ didActions(t, "newGroup:warn", [ [ 'pulse', 'test' ], [ 'hide' ], [ 'show', undefined, 0.5 ] ])
+ var b = a.newItem("newGroup2", 10)
+ didActions(t, "newGroup:newItem", [ [ 'show', 'newGroup', 0.5 ] ])
+ b.completeWork(5)
+ didActions(t, "newGroup:completeWork", [ [ 'show', 'newGroup2', 0.75 ] ])
+ a.finish()
+ didActions(t, "newGroup:finish", [ [ 'show', 'newGroup', 1 ] ])
+})
+
+test("newStream", function (t) {
+ t.plan(13)
+ var a = log.newStream("newStream", 10)
+ didActions(t, "newStream", [ [ 'show', undefined, 0.6666666666666666 ] ])
+ a.write("abcde")
+ didActions(t, "newStream", [ [ 'show', 'newStream', 0.8333333333333333 ] ])
+ a.write("fghij")
+ didActions(t, "newStream", [ [ 'show', 'newStream', 1 ] ])
+ t.is(log.tracker.completed(), 1, "Overall completion")
+})
diff --git a/deps/npm/node_modules/npm-install-checks/package.json b/deps/npm/node_modules/npm-install-checks/package.json
index 3e7203c6fa5..b15bf52a2b4 100644
--- a/deps/npm/node_modules/npm-install-checks/package.json
+++ b/deps/npm/node_modules/npm-install-checks/package.json
@@ -32,10 +32,38 @@
"bugs": {
"url": "https://github.com/npm/npm-install-checks/issues"
},
- "readme": "# npm-install-checks\n\nA package that contains checks that npm runs during the installation.\n\n## API\n\n### .checkEngine(target, npmVer, nodeVer, force, strict, cb)\nCheck if node/npm version is supported by the package.\n\nError type: `ENOTSUP`\n\n### .checkPlatform(target, force, cb)\nCheck if OS/Arch is supported by the package.\n\nError type: `EBADPLATFORM`\n\n### .checkCycle(target, ancestors, cb)\nCheck for cyclic dependencies.\n\nError type: `ECYCLE`\n\n### .checkGit(folder, cb)\nCheck if a folder is a .git folder.\n\nError type: `EISGIT`\n",
- "readmeFilename": "README.md",
"gitHead": "f28aebca7f5df0ddb13161b0f04d069004f6c367",
"_id": "npm-install-checks@1.0.6",
"_shasum": "8d4c1e852806e4e2d66601ab787be5841550d0cb",
- "_from": "npm-install-checks@>=1.0.6 <1.1.0"
+ "_from": "npm-install-checks@1.0.6",
+ "_npmVersion": "2.13.1",
+ "_nodeVersion": "2.3.1",
+ "_npmUser": {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ },
+ "dist": {
+ "shasum": "8d4c1e852806e4e2d66601ab787be5841550d0cb",
+ "tarball": "http://registry.npmjs.org/npm-install-checks/-/npm-install-checks-1.0.6.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "robertkowalski",
+ "email": "rok@kowalski.gd"
+ },
+ {
+ "name": "isaacs",
+ "email": "isaacs@npmjs.com"
+ },
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ }
+ ],
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-1.0.6.tgz"
}
diff --git a/deps/npm/node_modules/npm-package-arg/README.md b/deps/npm/node_modules/npm-package-arg/README.md
index d37b35533a8..82968a4bef8 100644
--- a/deps/npm/node_modules/npm-package-arg/README.md
+++ b/deps/npm/node_modules/npm-package-arg/README.md
@@ -99,3 +99,7 @@ keys:
* `scope` - If a name is something like `@org/module` then the `scope`
field will be set to `org`. If it doesn't have a scoped name, then
scope is `null`.
+
+If you only include a name and no specifier part, eg, `foo` or `foo@` then
+a default of `latest` will be used (as of 4.1.0). This is contrast with
+previous behavior where `*` was used.
diff --git a/deps/npm/node_modules/npm-package-arg/npa.js b/deps/npm/node_modules/npm-package-arg/npa.js
index 2cba4cfb159..8989049ec86 100644
--- a/deps/npm/node_modules/npm-package-arg/npa.js
+++ b/deps/npm/node_modules/npm-package-arg/npa.js
@@ -82,6 +82,7 @@ function npa (arg) {
// if it's got / chars in it, then assume that it's local.
if (res.name) {
+ if (arg == '') arg = 'latest'
var version = semver.valid(arg, true)
var range = semver.validRange(arg, true)
// foo@...
@@ -101,8 +102,8 @@ function npa (arg) {
var p = arg.match(parseName)
if (p && validName(p[2]) &&
(!p[1] || validName(p[1]))) {
- res.type = "range"
- res.spec = "*"
+ res.type = "tag"
+ res.spec = "latest"
res.rawSpec = ""
res.name = arg
if (p[1])
diff --git a/deps/npm/node_modules/npm-package-arg/package.json b/deps/npm/node_modules/npm-package-arg/package.json
index 9caed85e739..2a57f73bc4e 100644
--- a/deps/npm/node_modules/npm-package-arg/package.json
+++ b/deps/npm/node_modules/npm-package-arg/package.json
@@ -1,6 +1,6 @@
{
"name": "npm-package-arg",
- "version": "4.0.2",
+ "version": "4.1.0",
"description": "Parse the things that can be arguments to `npm install`",
"main": "npa.js",
"directories": {
@@ -30,10 +30,33 @@
"url": "https://github.com/npm/npm-package-arg/issues"
},
"homepage": "https://github.com/npm/npm-package-arg",
- "readme": "# npm-package-arg\n\nParse package name and specifier passed to commands like `npm install` or\n`npm cache add`. This just parses the text given-- it's worth noting that\n`npm` has further logic it applies by looking at your disk to figure out\nwhat ambiguous specifiers are. If you want that logic, please see\n[realize-package-specifier].\n\n[realize-package-specifier]: https://www.npmjs.org/package/realize-package-specifier\n\nArguments look like: `foo@1.2`, `@bar/foo@1.2`, `foo@user/foo`, `http://x.com/foo.tgz`,\n`git+https://github.com/user/foo`, `bitbucket:user/foo`, `foo.tar.gz` or `bar`\n\n## EXAMPLES\n\n```javascript\nvar assert = require(\"assert\")\nvar npa = require(\"npm-package-arg\")\n\n// Pass in the descriptor, and it'll return an object\nvar parsed = npa(\"@bar/foo@1.2\")\n\n// Returns an object like:\n{\n raw: '@bar/foo@1.2', // what was passed in\n name: \"@bar/foo\", // the name of the package\n scope: \"@bar\", // the private scope of the package, or null\n type: \"range\", // the type of specifier this is\n spec: \">=1.2.0 <1.3.0\" // the expanded specifier\n rawSpec: \"1.2\" // the specifier as passed in\n }\n\n// Parsing urls pointing at hosted git services produces a variation:\nvar parsed = npa(\"git+https://github.com/user/foo\")\n\n// Returns an object like:\n{\n raw: 'git+https://github.com/user/foo',\n scope: null,\n name: null,\n rawSpec: 'git+https://github.com/user/foo',\n spec: 'user/foo',\n type: 'hosted',\n hosted: {\n type: 'github',\n ssh: 'git@github.com:user/foo.git',\n sshurl: 'git+ssh://git@github.com/user/foo.git',\n https: 'https://github.com/user/foo.git',\n directUrl: 'https://raw.githubusercontent.com/user/foo/master/package.json'\n }\n}\n\n// Completely unreasonable invalid garbage throws an error\n// Make sure you wrap this in a try/catch if you have not\n// already sanitized the inputs!\nassert.throws(function() {\n npa(\"this is not \\0 a valid package name or url\")\n})\n```\n\n## USING\n\n`var npa = require('npm-package-arg')`\n\n* var result = npa(*arg*)\n\nParses *arg* and returns a result object detailing what *arg* is.\n\n*arg* -- a package descriptor, like: `foo@1.2`, or `foo@user/foo`, or\n`http://x.com/foo.tgz`, or `git+https://github.com/user/foo`\n\n## RESULT OBJECT\n\nThe objects that are returned by npm-package-arg contain the following\nkeys:\n\n* `name` - If known, the `name` field expected in the resulting pkg.\n* `type` - One of the following strings:\n * `git` - A git repo\n * `hosted` - A hosted project, from github, bitbucket or gitlab. Originally\n either a full url pointing at one of these services or a shorthand like\n `user/project` or `github:user/project` for github or `bitbucket:user/project`\n for bitbucket.\n * `tag` - A tagged version, like `\"foo@latest\"`\n * `version` - A specific version number, like `\"foo@1.2.3\"`\n * `range` - A version range, like `\"foo@2.x\"`\n * `local` - A local file or folder path\n * `remote` - An http url (presumably to a tgz)\n* `spec` - The \"thing\". URL, the range, git repo, etc.\n* `hosted` - If type=hosted this will be an object with the following keys:\n * `type` - github, bitbucket or gitlab\n * `ssh` - The ssh path for this git repo\n * `sshUrl` - The ssh URL for this git repo\n * `httpsUrl` - The HTTPS URL for this git repo\n * `directUrl` - The URL for the package.json in this git repo\n* `raw` - The original un-modified string that was provided.\n* `rawSpec` - The part after the `name@...`, as it was originally\n provided.\n* `scope` - If a name is something like `@org/module` then the `scope`\n field will be set to `org`. If it doesn't have a scoped name, then\n scope is `null`.\n",
- "readmeFilename": "README.md",
- "gitHead": "8d3c51c33807fabde4db86a3811831b756eaf2eb",
- "_id": "npm-package-arg@4.0.2",
- "_shasum": "3f28235f9f6428e54bfeca73629e27d6c81a7e82",
- "_from": "npm-package-arg@>=4.0.2 <4.1.0"
+ "gitHead": "383b4783a076b825815be51eb1ab2e4bb8a1e1fc",
+ "_id": "npm-package-arg@4.1.0",
+ "_shasum": "2e015f8ac00737cb97f997c9cbf059f42a74527d",
+ "_from": "npm-package-arg@>=4.1.0 <4.2.0",
+ "_npmVersion": "3.4.0",
+ "_nodeVersion": "4.2.1",
+ "_npmUser": {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ },
+ "dist": {
+ "shasum": "2e015f8ac00737cb97f997c9cbf059f42a74527d",
+ "tarball": "http://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.1.0.tgz"
+ },
+ "maintainers": [
+ {
+ "name": "isaacs",
+ "email": "i@izs.me"
+ },
+ {
+ "name": "othiym23",
+ "email": "ogd@aoaioxxysz.net"
+ },
+ {
+ "name": "iarna",
+ "email": "me@re-becca.org"
+ }
+ ],
+ "_resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.1.0.tgz"
}
diff --git a/deps/npm/node_modules/npm-package-arg/test/basic.js b/deps/npm/node_modules/npm-package-arg/test/basic.js
index a3d58c88c50..b72826b901a 100644
--- a/deps/npm/node_modules/npm-package-arg/test/basic.js
+++ b/deps/npm/node_modules/npm-package-arg/test/basic.js
@@ -18,8 +18,8 @@ require("tap").test("basic", function (t) {
name: "@foo/bar",
scope: "@foo",
rawSpec: "",
- spec: "*",
- type: "range"
+ spec: "latest",
+ type: "tag"
},
"@foo/bar@": {
@@ -27,8 +27,8 @@ require("tap").test("basic", function (t) {
name: "@foo/bar",
scope: "@foo",
rawSpec: "",
- spec: "*",
- type: "range"
+ spec: "latest",
+ type: "tag"
},
"@foo/bar@baz": {
@@ -143,8 +143,8 @@ require("tap").test("basic", function (t) {
"foo": {
name: "foo",
- type: "range",
- spec: "*",
+ type: "tag",
+ spec: "latest",
raw: "foo"
}
}
diff --git a/deps/npm/node_modules/npm-registry-client/lib/access.js b/deps/npm/node_modules/npm-registry-client/lib/access.js
index badb770ea49..ff01e95e282 100644
--- a/deps/npm/node_modules/npm-registry-client/lib/access.js
+++ b/deps/npm/node_modules/npm-registry-client/lib/access.js
@@ -102,20 +102,20 @@ function accessAssertions (subcommand, uri, params, cb) {
'callback': [cb, 'function']
})
if (contains([
- 'public', 'restricted', 'grant', 'revoke', 'ls-collaborators'
+ 'public', 'restricted'
], subcommand)) {
- typeChecks({ 'package': [params.package, 'string']})
+ typeChecks({ 'package': [params.package, 'string'] })
assert(!!npa(params.package).scope,
'access commands are only accessible for scoped packages')
}
if (contains(['grant', 'revoke', 'ls-packages'], subcommand)) {
- typeChecks({ 'scope': [params.scope, 'string']})
+ typeChecks({ 'scope': [params.scope, 'string'] })
}
if (contains(['grant', 'revoke'], subcommand)) {
- typeChecks({ 'team': [params.team, 'string']})
+ typeChecks({ 'team': [params.team, 'string'] })
}
if (subcommand === 'grant') {
- typeChecks({ 'permissions': [params.permissions, 'string']})
+ typeChecks({ 'permissions': [params.permissions, 'string'] })
assert(params.permissions === 'read-only' ||
params.permissions === 'read-write',
'permissions must be either read-only or read-write')
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/.travis.yml b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/.travis.yml
index a2870dfb162..cfe1c943938 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/.travis.yml
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/.travis.yml
@@ -1,6 +1,7 @@
sudo: false
language: node_js
before_install:
+ - npm install -g npm@2
- npm install -g npm
notifications:
email: false
@@ -14,23 +15,33 @@ matrix:
env: TASK=test
- node_js: '0.12'
env: TASK=test
- - node_js: 'iojs'
+ - node_js: 1
env: TASK=test
- - node_js: 'iojs'
+ - node_js: 2
+ env: TASK=test
+ - node_js: 3
+ env: TASK=test
+ - node_js: 4
+ env: TASK=test
+ - node_js: 5
+ env: TASK=test
+ - node_js: node
+ env: TASK=test
+ - node_js: node
env: TASK=browser BROWSER_NAME=opera BROWSER_VERSION="11..latest"
- - node_js: 'iojs'
+ - node_js: node
env: TASK=browser BROWSER_NAME=ie BROWSER_VERSION="9..latest"
- - node_js: 'iojs'
- env: TASK=browser BROWSER_NAME=chrome BROWSER_VERSION="39..beta"
- - node_js: 'iojs'
- env: TASK=browser BROWSER_NAME=firefox BROWSER_VERSION="34..beta"
- - node_js: 'iojs'
- env: TASK=browser BROWSER_NAME=ipad BROWSER_VERSION="6.0..latest"
- - node_js: 'iojs'
- env: TASK=browser BROWSER_NAME=iphone BROWSER_VERSION="6.0..latest"
- - node_js: 'iojs'
+ - node_js: node
+ env: TASK=browser BROWSER_NAME=chrome BROWSER_VERSION="41..beta"
+ - node_js: node
+ env: TASK=browser BROWSER_NAME=firefox BROWSER_VERSION="36..latest"
+ - node_js: node
+ env: TASK=browser BROWSER_NAME=ipad BROWSER_VERSION="['6.1', '7.1', '8.2']"
+ - node_js: node
+ env: TASK=browser BROWSER_NAME=iphone BROWSER_VERSION="['6.1', '7.1', '8.2']"
+ - node_js: node
env: TASK=browser BROWSER_NAME=safari BROWSER_VERSION="5..latest"
- - node_js: 'iojs'
+ - node_js: node
env: TASK=browser BROWSER_NAME=android BROWSER_VERSION="4.0..latest"
script: "npm run $TASK"
env:
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/doc/stream.markdown b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/doc/stream.markdown
index a2270c88057..bf544f9f256 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/doc/stream.markdown
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/doc/stream.markdown
@@ -3,8 +3,8 @@
Stability: 2 - Stable
A stream is an abstract interface implemented by various objects in
-io.js. For example a [request to an HTTP
-server](https://iojs.org/dist/v2.3.0/doc/api/http.html#http_http_incomingmessage) is a stream, as is
+Node.js. For example a [request to an HTTP
+server](https://iojs.org/dist/v5.0.0/doc/api/http.html#http_http_incomingmessage) is a stream, as is
[stdout][]. Streams are readable, writable, or both. All streams are
instances of [EventEmitter][]
@@ -47,8 +47,8 @@ streams in your programs. If you **are** implementing streaming
interfaces in your own program, please also refer to
[API for Stream Implementors][] below.
-Almost all io.js programs, no matter how simple, use Streams in some
-way. Here is an example of using Streams in an io.js program:
+Almost all Node.js programs, no matter how simple, use Streams in some
+way. Here is an example of using Streams in an Node.js program:
```javascript
var http = require('http');
@@ -136,9 +136,9 @@ destinations drain and ask for more data.
Examples of readable streams include:
-* [http responses, on the client](https://iojs.org/dist/v2.3.0/doc/api/http.html#http_http_incomingmessage)
-* [http requests, on the server](https://iojs.org/dist/v2.3.0/doc/api/http.html#http_http_incomingmessage)
-* [fs read streams](https://iojs.org/dist/v2.3.0/doc/api/fs.html#fs_class_fs_readstream)
+* [http responses, on the client](https://iojs.org/dist/v5.0.0/doc/api/http.html#http_http_incomingmessage)
+* [http requests, on the server](https://iojs.org/dist/v5.0.0/doc/api/http.html#http_http_incomingmessage)
+* [fs read streams](https://iojs.org/dist/v5.0.0/doc/api/fs.html#fs_class_fs_readstream)
* [zlib streams][]
* [crypto streams][]
* [tcp sockets][]
@@ -164,6 +164,34 @@ readable.on('readable', function() {
Once the internal buffer is drained, a `readable` event will fire
again when more data is available.
+The `readable` event is not emitted in the "flowing" mode with the
+sole exception of the last one, on end-of-stream.
+
+The 'readable' event indicates that the stream has new information:
+either new data is available or the end of the stream has been reached.
+In the former case, `.read()` will return that data. In the latter case,
+`.read()` will return null. For instance, in the following example, `foo.txt`
+is an empty file:
+
+```javascript
+var fs = require('fs');
+var rr = fs.createReadStream('foo.txt');
+rr.on('readable', function() {
+ console.log('readable:', rr.read());
+});
+rr.on('end', function() {
+ console.log('end');
+});
+```
+
+The output of running this script is:
+
+```
+bash-3.2$ node test.js
+readable: null
+end
+```
+
#### Event: 'data'
* `chunk` {Buffer | String} The chunk of data.
@@ -202,8 +230,11 @@ readable.on('end', function() {
#### Event: 'close'
-Emitted when the underlying resource (for example, the backing file
-descriptor) has been closed. Not all streams will emit this.
+Emitted when the stream and any of its underlying resources (a file
+descriptor, for example) have been closed. The event indicates that
+no more events will be emitted, and no further computation will occur.
+
+Not all streams will emit the 'close' event.
#### Event: 'error'
@@ -221,7 +252,9 @@ returns it. If there is no data available, then it will return
`null`.
If you pass in a `size` argument, then it will return that many
-bytes. If `size` bytes are not available, then it will return `null`.
+bytes. If `size` bytes are not available, then it will return `null`,
+unless we've ended, in which case it will return the data remaining
+in the buffer.
If you do not specify a `size` argument, then it will return all the
data in the internal buffer.
@@ -243,6 +276,9 @@ readable.on('readable', function() {
If this method returns a data chunk, then it will also trigger the
emission of a [`'data'` event][].
+Note that calling `readable.read([size])` after the `end` event has been
+triggered will return `null`. No runtime error will be raised.
+
#### readable.setEncoding(encoding)
* `encoding` {String} The encoding to use.
@@ -414,6 +450,9 @@ parser, which needs to "un-consume" some data that it has
optimistically pulled out of the source, so that the stream can be
passed on to some other party.
+Note that `stream.unshift(chunk)` cannot be called after the `end` event
+has been triggered; a runtime error will be raised.
+
If you find that you must often call `stream.unshift(chunk)` in your
programs, consider implementing a [Transform][] stream instead. (See API
for Stream Implementors, below.)
@@ -452,6 +491,13 @@ function parseHeader(stream, callback) {
}
}
```
+Note that, unlike `stream.push(chunk)`, `stream.unshift(chunk)` will not
+end the reading process by resetting the internal reading state of the
+stream. This can cause unexpected results if `unshift` is called during a
+read (i.e. from within a `_read` implementation on a custom stream). Following
+the call to `unshift` with an immediate `stream.push('')` will reset the
+reading state appropriately, however it is best to simply avoid calling
+`unshift` while in the process of performing a read.
#### readable.wrap(stream)
@@ -461,13 +507,13 @@ Versions of Node.js prior to v0.10 had streams that did not implement the
entire Streams API as it is today. (See "Compatibility" below for
more information.)
-If you are using an older io.js library that emits `'data'` events and
+If you are using an older Node.js library that emits `'data'` events and
has a [`pause()`][] method that is advisory only, then you can use the
`wrap()` method to create a [Readable][] stream that uses the old stream
as its data source.
You will very rarely ever need to call this function, but it exists
-as a convenience for interacting with old io.js programs and libraries.
+as a convenience for interacting with old Node.js programs and libraries.
For example:
@@ -492,13 +538,13 @@ that you are writing data *to*.
Examples of writable streams include:
-* [http requests, on the client](https://iojs.org/dist/v2.3.0/doc/api/http.html#http_class_http_clientrequest)
-* [http responses, on the server](https://iojs.org/dist/v2.3.0/doc/api/http.html#http_class_http_serverresponse)
-* [fs write streams](https://iojs.org/dist/v2.3.0/doc/api/fs.html#fs_class_fs_writestream)
+* [http requests, on the client](https://iojs.org/dist/v5.0.0/doc/api/http.html#http_class_http_clientrequest)
+* [http responses, on the server](https://iojs.org/dist/v5.0.0/doc/api/http.html#http_class_http_serverresponse)
+* [fs write streams](https://iojs.org/dist/v5.0.0/doc/api/fs.html#fs_class_fs_writestream)
* [zlib streams][]
* [crypto streams][]
* [tcp sockets][]
-* [child process stdin](https://iojs.org/dist/v2.3.0/doc/api/child_process.html#child_process_child_stdin)
+* [child process stdin](https://iojs.org/dist/v5.0.0/doc/api/child_process.html#child_process_child_stdin)
* [process.stdout][], [process.stderr][]
#### writable.write(chunk[, encoding][, callback])
@@ -527,7 +573,7 @@ event will indicate when it is appropriate to begin writing more data
to the stream.
```javascript
-// Write the data to the supplied writable stream 1MM times.
+// Write the data to the supplied writable stream one million times.
// Be attentive to back-pressure.
function writeOneMillionTimes(writer, data, encoding, callback) {
var i = 1000000;
@@ -883,6 +929,10 @@ SimpleProtocol.prototype._read = function(n) {
// back into the read queue so that our consumer will see it.
var b = chunk.slice(split);
this.unshift(b);
+ // calling unshift by itself does not reset the reading state
+ // of the stream; since we're inside _read, doing an additional
+ // push('') will reset the state appropriately.
+ this.push('');
// and let them know that we are done parsing the header.
this.emit('header', this.header);
@@ -922,24 +972,22 @@ initialized.
* `size` {Number} Number of bytes to read asynchronously
-Note: **Implement this function, but do NOT call it directly.**
+Note: **Implement this method, but do NOT call it directly.**
-This function should NOT be called directly. It should be implemented
-by child classes, and only called by the internal Readable class
-methods.
+This method is prefixed with an underscore because it is internal to the
+class that defines it and should only be called by the internal Readable
+class methods. All Readable stream implementations must provide a _read
+method to fetch data from the underlying resource.
-All Readable stream implementations must provide a `_read` method to
-fetch data from the underlying resource.
+When _read is called, if data is available from the resource, `_read` should
+start pushing that data into the read queue by calling `this.push(dataChunk)`.
+`_read` should continue reading from the resource and pushing data until push
+returns false, at which point it should stop reading from the resource. Only
+when _read is called again after it has stopped should it start reading
+more data from the resource and pushing that data onto the queue.
-This method is prefixed with an underscore because it is internal to
-the class that defines it, and should not be called directly by user
-programs. However, you **are** expected to override this method in
-your own extension classes.
-
-When data is available, put it into the read queue by calling
-`readable.push(chunk)`. If `push` returns false, then you should stop
-reading. When `_read` is called again, you should start pushing more
-data.
+Note: once the `_read()` method is called, it will not be called again until
+the `push` method is called.
The `size` argument is advisory. Implementations where a "read" is a
single call that returns data can use this to know how much data to
@@ -955,19 +1003,16 @@ becomes available. There is no need, for example to "wait" until
Buffer encoding, such as `'utf8'` or `'ascii'`
* return {Boolean} Whether or not more pushes should be performed
-Note: **This function should be called by Readable implementors, NOT
+Note: **This method should be called by Readable implementors, NOT
by consumers of Readable streams.**
-The `_read()` function will not be called again until at least one
-`push(chunk)` call is made.
-
-The `Readable` class works by putting data into a read queue to be
-pulled out later by calling the `read()` method when the `'readable'`
-event fires.
+If a value other than null is passed, The `push()` method adds a chunk of data
+into the queue for subsequent stream processors to consume. If `null` is
+passed, it signals the end of the stream (EOF), after which no more data
+can be written.
-The `push()` method will explicitly insert some data into the read
-queue. If it is called with `null` then it will signal the end of the
-data (EOF).
+The data added with `push` can be pulled out by calling the `read()` method
+when the `'readable'`event fires.
This API is designed to be as flexible as possible. For example,
you may be wrapping a lower-level source which has some sort of
@@ -1173,19 +1218,19 @@ as a result of this chunk.
Call the callback function only when the current chunk is completely
consumed. Note that there may or may not be output as a result of any
-particular input chunk. If you supply output as the second argument to the
-callback, it will be passed to push method, in other words the following are
+particular input chunk. If you supply a second argument to the callback
+it will be passed to the push method. In other words the following are
equivalent:
```javascript
transform.prototype._transform = function (data, encoding, callback) {
this.push(data);
callback();
-}
+};
transform.prototype._transform = function (data, encoding, callback) {
callback(null, data);
-}
+};
```
This method is prefixed with an underscore because it is internal to
@@ -1235,7 +1280,7 @@ simply by using the higher level [Transform][] stream class, similar to
the `parseHeader` and `SimpleProtocol v1` examples above.
In this example, rather than providing the input as an argument, it
-would be piped into the parser, which is a more idiomatic io.js stream
+would be piped into the parser, which is a more idiomatic Node.js stream
approach.
```javascript
@@ -1395,8 +1440,8 @@ var transform = new stream.Transform({
<!--type=misc-->
Both Writable and Readable streams will buffer data on an internal
-object called `_writableState.buffer` or `_readableState.buffer`,
-respectively.
+object which can be retrieved from `_writableState.getBuffer()` or
+`_readableState.buffer`, respectively.
The amount of data that will potentially be buffered depends on the
`highWaterMark` option which is passed into the constructor.
@@ -1424,8 +1469,8 @@ If the internal read buffer is below the `highWaterMark`, and the
stream is not currently reading, then calling `read(0)` will trigger
a low-level `_read` call.
-There is almost never a need to do this. However, you will see some
-cases in io.js's internals where this is done, particularly in the
+There is almost never a need to do this. However, you will see some
+cases in Node.js's internals where this is done, particularly in the
Readable stream class internals.
### `stream.push('')`
@@ -1442,7 +1487,7 @@ code) will know when to check again, by calling `stream.read(0)`. In
those cases, you *may* call `stream.push('')`.
So far, the only use case for this functionality is in the
-[tls.CryptoStream][] class, which is deprecated in io.js v1.0. If you
+[tls.CryptoStream][] class, which is deprecated in Node.js/io.js v1.0. If you
find that you have to use `stream.push('')`, please consider another
approach, because it almost certainly indicates that something is
horribly wrong.
@@ -1462,7 +1507,7 @@ simpler, but also less powerful and less useful.
meant that you still had to be prepared to receive `'data'` events
even when the stream was in a paused state.
-In io.js v1.0 and Node.js v0.10, the Readable class described below was added.
+In Node.js v0.10, the Readable class described below was added.
For backwards compatibility with older Node.js programs, Readable streams
switch into "flowing mode" when a `'data'` event handler is added, or
when the [`resume()`][] method is called. The effect is that, even if
@@ -1492,7 +1537,7 @@ net.createServer(function(socket) {
```
In versions of Node.js prior to v0.10, the incoming message data would be
-simply discarded. However, in io.js v1.0 and Node.js v0.10 and beyond,
+simply discarded. However, in Node.js v0.10 and beyond,
the socket will remain paused forever.
The workaround in this situation is to call the `resume()` method to
@@ -1539,7 +1584,7 @@ return value from `stream.read()` indicates that there is no more
data, and [`stream.push(null)`][] will signal the end of stream data
(`EOF`).
-No streams in io.js core are object mode streams. This pattern is only
+No streams in Node.js core are object mode streams. This pattern is only
used by userland streaming libraries.
You should set `objectMode` in your stream child class constructor on
@@ -1605,24 +1650,24 @@ JSONParseStream.prototype._flush = function(cb) {
```
-[EventEmitter]: https://iojs.org/dist/v2.3.0/doc/api/events.html#events_class_events_eventemitter
+[EventEmitter]: https://iojs.org/dist/v5.0.0/doc/api/events.html#events_class_events_eventemitter
[Object mode]: #stream_object_mode
[`stream.push(chunk)`]: #stream_readable_push_chunk_encoding
[`stream.push(null)`]: #stream_readable_push_chunk_encoding
[`stream.push()`]: #stream_readable_push_chunk_encoding
[`unpipe()`]: #stream_readable_unpipe_destination
[unpiped]: #stream_readable_unpipe_destination
-[tcp sockets]: https://iojs.org/dist/v2.3.0/doc/api/net.html#net_class_net_socket
+[tcp sockets]: https://iojs.org/dist/v5.0.0/doc/api/net.html#net_class_net_socket
[zlib streams]: zlib.html
[zlib]: zlib.html
[crypto streams]: crypto.html
[crypto]: crypto.html
-[tls.CryptoStream]: https://iojs.org/dist/v2.3.0/doc/api/tls.html#tls_class_cryptostream
-[process.stdin]: https://iojs.org/dist/v2.3.0/doc/api/process.html#process_process_stdin
-[stdout]: https://iojs.org/dist/v2.3.0/doc/api/process.html#process_process_stdout
-[process.stdout]: https://iojs.org/dist/v2.3.0/doc/api/process.html#process_process_stdout
-[process.stderr]: https://iojs.org/dist/v2.3.0/doc/api/process.html#process_process_stderr
-[child process stdout and stderr]: https://iojs.org/dist/v2.3.0/doc/api/child_process.html#child_process_child_stdout
+[tls.CryptoStream]: https://iojs.org/dist/v5.0.0/doc/api/tls.html#tls_class_cryptostream
+[process.stdin]: https://iojs.org/dist/v5.0.0/doc/api/process.html#process_process_stdin
+[stdout]: https://iojs.org/dist/v5.0.0/doc/api/process.html#process_process_stdout
+[process.stdout]: https://iojs.org/dist/v5.0.0/doc/api/process.html#process_process_stdout
+[process.stderr]: https://iojs.org/dist/v5.0.0/doc/api/process.html#process_process_stderr
+[child process stdout and stderr]: https://iojs.org/dist/v5.0.0/doc/api/child_process.html#child_process_child_stdout
[API for Stream Consumers]: #stream_api_for_stream_consumers
[API for Stream Implementors]: #stream_api_for_stream_implementors
[Readable]: #stream_class_stream_readable
@@ -1641,7 +1686,7 @@ JSONParseStream.prototype._flush = function(cb) {
[`_write(chunk, encoding, callback)`]: #stream_writable_write_chunk_encoding_callback_1
[`_write()`]: #stream_writable_write_chunk_encoding_callback_1
[_write]: #stream_writable_write_chunk_encoding_callback_1
-[`util.inherits`]: https://iojs.org/dist/v2.3.0/doc/api/util.html#util_util_inherits_constructor_superconstructor
+[`util.inherits`]: https://iojs.org/dist/v5.0.0/doc/api/util.html#util_util_inherits_constructor_superconstructor
[`end()`]: #stream_writable_end_chunk_encoding_callback
[`'data'` event]: #stream_event_data
[`resume()`]: #stream_readable_resume
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js
index eef3d825d7a..90068ea249d 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js
@@ -18,10 +18,10 @@ var Buffer = require('buffer').Buffer;
Readable.ReadableState = ReadableState;
-var EE = require('events').EventEmitter;
+var EE = require('events');
/*<replacement>*/
-if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
+var EElistenerCount = function(emitter, type) {
return emitter.listeners(type).length;
};
/*</replacement>*/
@@ -48,9 +48,10 @@ util.inherits = require('inherits');
/*<replacement>*/
-var debug = require('util');
-if (debug && debug.debuglog) {
- debug = debug.debuglog('stream');
+var debugUtil = require('util');
+var debug;
+if (debugUtil && debugUtil.debuglog) {
+ debug = debugUtil.debuglog('stream');
} else {
debug = function () {};
}
@@ -219,7 +220,6 @@ function readableAddChunk(stream, state, chunk, encoding, addToFront) {
}
-
// if it's past the high water mark, we can push in some more.
// Also, if we have no data yet, we can stand some
// more bytes. This is to work around cases where hwm=0,
@@ -243,15 +243,19 @@ Readable.prototype.setEncoding = function(enc) {
return this;
};
-// Don't raise the hwm > 128MB
+// Don't raise the hwm > 8MB
var MAX_HWM = 0x800000;
-function roundUpToNextPowerOf2(n) {
+function computeNewHighWaterMark(n) {
if (n >= MAX_HWM) {
n = MAX_HWM;
} else {
// Get the next highest power of 2
n--;
- for (var p = 1; p < 32; p <<= 1) n |= n >> p;
+ n |= n >>> 1;
+ n |= n >>> 2;
+ n |= n >>> 4;
+ n |= n >>> 8;
+ n |= n >>> 16;
n++;
}
return n;
@@ -280,7 +284,7 @@ function howMuchToRead(n, state) {
// power of 2, to prevent increasing it excessively in tiny
// amounts.
if (n > state.highWaterMark)
- state.highWaterMark = roundUpToNextPowerOf2(n);
+ state.highWaterMark = computeNewHighWaterMark(n);
// don't have that much. return null, unless we've ended.
if (n > state.length) {
@@ -546,6 +550,7 @@ Readable.prototype.pipe = function(dest, pipeOpts) {
var ondrain = pipeOnDrain(src);
dest.on('drain', ondrain);
+ var cleanedUp = false;
function cleanup() {
debug('cleanup');
// cleanup event handlers once the pipe is broken
@@ -558,6 +563,8 @@ Readable.prototype.pipe = function(dest, pipeOpts) {
src.removeListener('end', cleanup);
src.removeListener('data', ondata);
+ cleanedUp = true;
+
// if the reader is waiting for a drain event from this
// specific writer, then it would cause it to never start
// flowing again.
@@ -573,9 +580,16 @@ Readable.prototype.pipe = function(dest, pipeOpts) {
debug('ondata');
var ret = dest.write(chunk);
if (false === ret) {
- debug('false write response, pause',
- src._readableState.awaitDrain);
- src._readableState.awaitDrain++;
+ // If the user unpiped during `dest.write()`, it is possible
+ // to get stuck in a permanently paused state if that write
+ // also returned false.
+ if (state.pipesCount === 1 &&
+ state.pipes[0] === dest &&
+ src.listenerCount('data') === 1 &&
+ !cleanedUp) {
+ debug('false write response, pause', src._readableState.awaitDrain);
+ src._readableState.awaitDrain++;
+ }
src.pause();
}
}
@@ -586,7 +600,7 @@ Readable.prototype.pipe = function(dest, pipeOpts) {
debug('onerror', er);
unpipe();
dest.removeListener('error', onerror);
- if (EE.listenerCount(dest, 'error') === 0)
+ if (EElistenerCount(dest, 'error') === 0)
dest.emit('error', er);
}
// This is a brutally ugly hack to make sure that our error handler
@@ -599,7 +613,6 @@ Readable.prototype.pipe = function(dest, pipeOpts) {
dest._events.error = [onerror, dest._events.error];
-
// Both close and finish should trigger unpipe, but only once.
function onclose() {
dest.removeListener('finish', onfinish);
@@ -636,7 +649,7 @@ function pipeOnDrain(src) {
debug('pipeOnDrain', state.awaitDrain);
if (state.awaitDrain)
state.awaitDrain--;
- if (state.awaitDrain === 0 && EE.listenerCount(src, 'data')) {
+ if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {
state.flowing = true;
flow(src);
}
@@ -852,7 +865,6 @@ Readable.prototype.wrap = function(stream) {
};
-
// exposed for testing purposes only.
Readable._fromList = fromList;
@@ -877,6 +889,8 @@ function fromList(n, state) {
// read it all, truncate the array.
if (stringMode)
ret = list.join('');
+ else if (list.length === 1)
+ ret = list[0];
else
ret = Buffer.concat(list, length);
list.length = 0;
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js
index b232952016a..23a2ba295df 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js
@@ -1,5 +1,5 @@
// A bit simpler than readable streams.
-// Implement an async ._write(chunk, cb), and it'll handle all
+// Implement an async ._write(chunk, encoding, cb), and it'll handle all
// the drain event emission and buffering.
'use strict';
@@ -24,6 +24,13 @@ util.inherits = require('inherits');
/*</replacement>*/
+/*<replacement>*/
+var internalUtil = {
+ deprecate: require('util-deprecate')
+};
+/*</replacement>*/
+
+
/*<replacement>*/
var Stream;
@@ -149,10 +156,10 @@ WritableState.prototype.getBuffer = function writableStateGetBuffer() {
(function (){try {
Object.defineProperty(WritableState.prototype, 'buffer', {
- get: require('util-deprecate')(function() {
+ get: internalUtil.deprecate(function() {
return this.getBuffer();
- }, '_writableState.buffer is deprecated. Use ' +
- '_writableState.getBuffer() instead.')
+ }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' +
+ 'instead.')
});
}catch(_){}}());
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/History.md b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/History.md
index ec010299b1b..acc8675372e 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/History.md
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/History.md
@@ -1,4 +1,9 @@
+1.0.2 / 2015-10-07
+==================
+
+ * use try/catch when checking `localStorage` (#3, @kumavis)
+
1.0.1 / 2014-11-25
==================
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/browser.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/browser.js
index 55fa5a4bc60..549ae2f065e 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/browser.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/browser.js
@@ -55,7 +55,12 @@ function deprecate (fn, msg) {
*/
function config (name) {
- if (!global.localStorage) return false;
+ // accessing global.localStorage can trigger a DOMException in sandboxed iframes
+ try {
+ if (!global.localStorage) return false;
+ } catch (_) {
+ return false;
+ }
var val = global.localStorage[name];
if (null == val) return false;
return String(val).toLowerCase() === 'true';
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json
index ea487da0e43..ae0c70f6c63 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json
@@ -1,6 +1,6 @@
{
"name": "util-deprecate",
- "version": "1.0.1",
+ "version": "1.0.2",
"description": "The Node.js `util.deprecate()` function with browser support",
"main": "node.js",
"browser": "browser.js",
@@ -28,11 +28,12 @@
"url": "https://github.com/TooTallNate/util-deprecate/issues"
},
"homepage": "https://github.com/TooTallNate/util-deprecate",
- "gitHead": "6e923f7d98a0afbe5b9c7db9d0f0029c1936746c",
- "_id": "util-deprecate@1.0.1",
- "_shasum": "3556a3d13c4c6aa7983d7e2425478197199b7881",
+ "gitHead": "475fb6857cd23fafff20c1be846c1350abf8e6d4",
+ "_id": "util-deprecate@1.0.2",
+ "_shasum": "450d4dc9fa70de732762fbd2d4a28981419a0ccf",
"_from": "util-deprecate@>=1.0.1 <1.1.0",
- "_npmVersion": "1.4.28",
+ "_npmVersion": "2.14.4",
+ "_nodeVersion": "4.1.2",
"_npmUser": {
"name": "tootallnate",
"email": "nathan@tootallnate.net"
@@ -44,10 +45,10 @@
}
],
"dist": {
- "shasum": "3556a3d13c4c6aa7983d7e2425478197199b7881",
- "tarball": "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.1.tgz"
+ "shasum": "450d4dc9fa70de732762fbd2d4a28981419a0ccf",
+ "tarball": "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.1.tgz",
+ "_resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/package.json b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/package.json
index 70ad998cae2..248dbac49b9 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/package.json
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/package.json
@@ -1,6 +1,6 @@
{
"name": "readable-stream",
- "version": "2.0.2",
+ "version": "2.0.4",
"description": "Streams3, a user-land copy of the stream library from iojs v2.x",
"main": "readable.js",
"dependencies": {
@@ -18,7 +18,8 @@
},
"scripts": {
"test": "tap test/parallel/*.js",
- "browser": "zuul --browser-name $BROWSER_NAME --browser-version $BROWSER_VERSION -- test/browser.js"
+ "browser": "npm run write-zuul && zuul -- test/browser.js",
+ "write-zuul": "printf \"ui: tape\nbrowsers:\n - name: $BROWSER_NAME\n version: $BROWSER_VERSION\n\">.zuul.yml"
},
"repository": {
"type": "git",
@@ -33,23 +34,23 @@
"util": false
},
"license": "MIT",
- "gitHead": "1a70134a71196eeabb5e27bc7580faaa68d30513",
+ "gitHead": "f2a4f4a659bacbe742a494b7d2aede64fab0d4f9",
"bugs": {
"url": "https://github.com/nodejs/readable-stream/issues"
},
"homepage": "https://github.com/nodejs/readable-stream#readme",
- "_id": "readable-stream@2.0.2",
- "_shasum": "bec81beae8cf455168bc2e5b2b31f5bcfaed9b1b",
+ "_id": "readable-stream@2.0.4",
+ "_shasum": "2523ef27ffa339d7ba9da8603f2d0599d06edbd8",
"_from": "readable-stream@>=2.0.0 <2.1.0",
- "_npmVersion": "2.11.1",
- "_nodeVersion": "2.3.0",
+ "_npmVersion": "2.14.4",
+ "_nodeVersion": "4.1.1",
"_npmUser": {
"name": "cwmma",
"email": "calvin.metcalf@gmail.com"
},
"dist": {
- "shasum": "bec81beae8cf455168bc2e5b2b31f5bcfaed9b1b",
- "tarball": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz"
+ "shasum": "2523ef27ffa339d7ba9da8603f2d0599d06edbd8",
+ "tarball": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.4.tgz"
},
"maintainers": [
{
@@ -70,6 +71,6 @@
}
],
"directories": {},
- "_resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz",
+ "_resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.4.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/package.json b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/package.json
index caa06817b0e..5a3f8b401e4 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/package.json
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/package.json
@@ -1,6 +1,6 @@
{
"name": "concat-stream",
- "version": "1.5.0",
+ "version": "1.5.1",
"description": "writable stream that concatenates strings or binary data and calls a callback with the result",
"tags": [
"stream",
@@ -54,28 +54,28 @@
"android-browser/4.2..latest"
]
},
- "gitHead": "7cb37c8ddc0fd2ea03c104d07d44d84b83a31185",
+ "gitHead": "522adc12d82f57c691a5f946fbc8ba08718dcdcb",
"homepage": "https://github.com/maxogden/concat-stream#readme",
- "_id": "concat-stream@1.5.0",
- "_shasum": "53f7d43c51c5e43f81c8fdd03321c631be68d611",
+ "_id": "concat-stream@1.5.1",
+ "_shasum": "f3b80acf9e1f48e3875c0688b41b6c31602eea1c",
"_from": "concat-stream@>=1.4.6 <2.0.0",
- "_npmVersion": "2.9.0",
- "_nodeVersion": "1.8.2",
+ "_npmVersion": "2.14.2",
+ "_nodeVersion": "4.0.0",
"_npmUser": {
"name": "maxogden",
"email": "max@maxogden.com"
},
+ "dist": {
+ "shasum": "f3b80acf9e1f48e3875c0688b41b6c31602eea1c",
+ "tarball": "http://registry.npmjs.org/concat-stream/-/concat-stream-1.5.1.tgz"
+ },
"maintainers": [
{
"name": "maxogden",
"email": "max@maxogden.com"
}
],
- "dist": {
- "shasum": "53f7d43c51c5e43f81c8fdd03321c631be68d611",
- "tarball": "http://registry.npmjs.org/concat-stream/-/concat-stream-1.5.0.tgz"
- },
"directories": {},
- "_resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.0.tgz",
+ "_resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/readme.md b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/readme.md
index 69234d52a53..1a16af94c40 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/readme.md
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/readme.md
@@ -1,6 +1,6 @@
# concat-stream
-Writable stream that concatenates strings or binary data and calls a callback with the result. Not a transform stream -- more of a stream sink.
+Writable stream that concatenates all the data from a stream and calls a callback with the result. Use this when you want to collect all the data from a stream into a single buffer.
[![Build Status](https://travis-ci.org/maxogden/concat-stream.svg?branch=master)](https://travis-ci.org/maxogden/concat-stream)
@@ -14,6 +14,10 @@ Only use this if you know you can fit all of the output of your stream into a si
There are also `objectMode` streams that emit things other than Buffers, and you can concatenate these too. See below for details.
+## Related
+
+`stream-each` is part of the [mississippi stream utility collection](https://github.com/maxogden/mississippi) which includes more useful stream modules similar to this one.
+
### examples
#### Buffers
@@ -89,6 +93,8 @@ If you don't specify an encoding, and the types can't be inferred (e.g. you writ
`concat-stream` does not handle errors for you, so you must handle errors on whatever streams you pipe into `concat-stream`. This is a general rule when programming with node.js streams: always handle errors on each and every stream. Since `concat-stream` is not itself a stream it does not emit errors.
+We recommend using [`end-of-stream`](https://npmjs.org/end-of-stream) or [`pump`](https://npmjs.org/pump) for writing error tolerant stream code.
+
# license
MIT LICENSE
diff --git a/deps/npm/node_modules/npm-registry-client/package.json b/deps/npm/node_modules/npm-registry-client/package.json
index ab9f763737e..5671705ab08 100644
--- a/deps/npm/node_modules/npm-registry-client/package.json
+++ b/deps/npm/node_modules/npm-registry-client/package.json
@@ -6,9 +6,9 @@
},
"name": "npm-registry-client",
"description": "Client for the npm registry",
- "version": "7.0.7",
+ "version": "7.0.8",
"repository": {
- "url": "git://github.com/isaacs/npm-registry-client.git"
+ "url": "git+https://github.com/npm/npm-registry-client.git"
},
"main": "index.js",
"scripts": {
@@ -42,12 +42,12 @@
"license": "ISC",
"readme": "# npm-registry-client\n\nThe code that npm uses to talk to the registry.\n\nIt handles all the caching and HTTP calls.\n\n## Usage\n\n```javascript\nvar RegClient = require('npm-registry-client')\nvar client = new RegClient(config)\nvar uri = \"https://registry.npmjs.org/npm\"\nvar params = {timeout: 1000}\n\nclient.get(uri, params, function (error, data, raw, res) {\n // error is an error if there was a problem.\n // data is the parsed data object\n // raw is the json string\n // res is the response from couch\n})\n```\n\n# Registry URLs\n\nThe registry calls take either a full URL pointing to a resource in the\nregistry, or a base URL for the registry as a whole (including the registry\npath – but be sure to terminate the path with `/`). `http` and `https` URLs are\nthe only ones supported.\n\n## Using the client\n\nEvery call to the client follows the same pattern:\n\n* `uri` {String} The *fully-qualified* URI of the registry API method being\n invoked.\n* `params` {Object} Per-request parameters.\n* `callback` {Function} Callback to be invoked when the call is complete.\n\n### Credentials\n\nMany requests to the registry can by authenticated, and require credentials\nfor authorization. These credentials always look the same:\n\n* `username` {String}\n* `password` {String}\n* `email` {String}\n* `alwaysAuth` {Boolean} Whether calls to the target registry are always\n authed.\n\n**or**\n\n* `token` {String}\n* `alwaysAuth` {Boolean} Whether calls to the target registry are always\n authed.\n\n## API\n\n### client.access(uri, params, cb)\n\n* `uri` {String} Registry URL for the package's access API endpoint.\n Looks like `/-/package/<package name>/access`.\n* `params` {Object} Object containing per-request properties.\n * `access` {String} New access level for the package. Can be either\n `public` or `restricted`. Registry will raise an error if trying\n to change the access level of an unscoped package.\n * `auth` {Credentials}\n\nSet the access level for scoped packages. For now, there are only two\naccess levels: \"public\" and \"restricted\".\n\n### client.adduser(uri, params, cb)\n\n* `uri` {String} Base registry URL.\n* `params` {Object} Object containing per-request properties.\n * `auth` {Credentials}\n* `cb` {Function}\n * `error` {Error | null}\n * `data` {Object} the parsed data object\n * `raw` {String} the json\n * `res` {Response Object} response from couch\n\nAdd a user account to the registry, or verify the credentials.\n\n### client.deprecate(uri, params, cb)\n\n* `uri` {String} Full registry URI for the deprecated package.\n* `params` {Object} Object containing per-request properties.\n * `version` {String} Semver version range.\n * `message` {String} The message to use as a deprecation warning.\n * `auth` {Credentials}\n* `cb` {Function}\n\nDeprecate a version of a package in the registry.\n\n### client.distTags.fetch(uri, params, cb)\n\n* `uri` {String} Base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `package` {String} Name of the package.\n * `auth` {Credentials}\n* `cb` {Function}\n\nFetch all of the `dist-tags` for the named package.\n\n### client.distTags.add(uri, params, cb)\n\n* `uri` {String} Base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `package` {String} Name of the package.\n * `distTag` {String} Name of the new `dist-tag`.\n * `version` {String} Exact version to be mapped to the `dist-tag`.\n * `auth` {Credentials}\n* `cb` {Function}\n\nAdd (or replace) a single dist-tag onto the named package.\n\n### client.distTags.set(uri, params, cb)\n\n* `uri` {String} Base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `package` {String} Name of the package.\n * `distTags` {Object} Object containing a map from tag names to package\n versions.\n * `auth` {Credentials}\n* `cb` {Function}\n\nSet all of the `dist-tags` for the named package at once, creating any\n`dist-tags` that do not already exit. Any `dist-tags` not included in the\n`distTags` map will be removed.\n\n### client.distTags.update(uri, params, cb)\n\n* `uri` {String} Base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `package` {String} Name of the package.\n * `distTags` {Object} Object containing a map from tag names to package\n versions.\n * `auth` {Credentials}\n* `cb` {Function}\n\nUpdate the values of multiple `dist-tags`, creating any `dist-tags` that do\nnot already exist. Any pre-existing `dist-tags` not included in the `distTags`\nmap will be left alone.\n\n### client.distTags.rm(uri, params, cb)\n\n* `uri` {String} Base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `package` {String} Name of the package.\n * `distTag` {String} Name of the new `dist-tag`.\n * `auth` {Credentials}\n* `cb` {Function}\n\nRemove a single `dist-tag` from the named package.\n\n### client.get(uri, params, cb)\n\n* `uri` {String} The complete registry URI to fetch\n* `params` {Object} Object containing per-request properties.\n * `timeout` {Number} Duration before the request times out. Optional\n (default: never).\n * `follow` {Boolean} Follow 302/301 responses. Optional (default: true).\n * `staleOk` {Boolean} If there's cached data available, then return that to\n the callback quickly, and update the cache the background. Optional\n (default: false).\n * `auth` {Credentials} Optional.\n* `cb` {Function}\n\nFetches data from the registry via a GET request, saving it in the cache folder\nwith the ETag or the \"Last Modified\" timestamp.\n\n### client.publish(uri, params, cb)\n\n* `uri` {String} The registry URI for the package to publish.\n* `params` {Object} Object containing per-request properties.\n * `metadata` {Object} Package metadata.\n * `access` {String} Access for the package. Can be `public` or `restricted` (no default).\n * `body` {Stream} Stream of the package body / tarball.\n * `auth` {Credentials}\n* `cb` {Function}\n\nPublish a package to the registry.\n\nNote that this does not create the tarball from a folder.\n\n### client.star(uri, params, cb)\n\n* `uri` {String} The complete registry URI for the package to star.\n* `params` {Object} Object containing per-request properties.\n * `starred` {Boolean} True to star the package, false to unstar it. Optional\n (default: false).\n * `auth` {Credentials}\n* `cb` {Function}\n\nStar or unstar a package.\n\nNote that the user does not have to be the package owner to star or unstar a\npackage, though other writes do require that the user be the package owner.\n\n### client.stars(uri, params, cb)\n\n* `uri` {String} The base URL for the registry.\n* `params` {Object} Object containing per-request properties.\n * `username` {String} Name of user to fetch starred packages for. Optional\n (default: user in `auth`).\n * `auth` {Credentials} Optional (required if `username` is omitted).\n* `cb` {Function}\n\nView your own or another user's starred packages.\n\n### client.tag(uri, params, cb)\n\n* `uri` {String} The complete registry URI to tag\n* `params` {Object} Object containing per-request properties.\n * `version` {String} Version to tag.\n * `tag` {String} Tag name to apply.\n * `auth` {Credentials}\n* `cb` {Function}\n\nMark a version in the `dist-tags` hash, so that `pkg@tag` will fetch the\nspecified version.\n\n### client.unpublish(uri, params, cb)\n\n* `uri` {String} The complete registry URI of the package to unpublish.\n* `params` {Object} Object containing per-request properties.\n * `version` {String} version to unpublish. Optional – omit to unpublish all\n versions.\n * `auth` {Credentials}\n* `cb` {Function}\n\nRemove a version of a package (or all versions) from the registry. When the\nlast version us unpublished, the entire document is removed from the database.\n\n### client.whoami(uri, params, cb)\n\n* `uri` {String} The base registry for the URI.\n* `params` {Object} Object containing per-request properties.\n * `auth` {Credentials}\n* `cb` {Function}\n\nSimple call to see who the registry thinks you are. Especially useful with\ntoken-based auth.\n\n\n## PLUMBING\n\nThe below are primarily intended for use by the rest of the API, or by the npm\ncaching logic directly.\n\n### client.request(uri, params, cb)\n\n* `uri` {String} URI pointing to the resource to request.\n* `params` {Object} Object containing per-request properties.\n * `method` {String} HTTP method. Optional (default: \"GET\").\n * `body` {Stream | Buffer | String | Object} The request body. Objects\n that are not Buffers or Streams are encoded as JSON. Optional – body\n only used for write operations.\n * `etag` {String} The cached ETag. Optional.\n * `lastModified` {String} The cached Last-Modified timestamp. Optional.\n * `follow` {Boolean} Follow 302/301 responses. Optional (default: true).\n * `auth` {Credentials} Optional.\n* `cb` {Function}\n * `error` {Error | null}\n * `data` {Object} the parsed data object\n * `raw` {String} the json\n * `res` {Response Object} response from couch\n\nMake a generic request to the registry. All the other methods are wrappers\naround `client.request`.\n\n### client.fetch(uri, params, cb)\n\n* `uri` {String} The complete registry URI to upload to\n* `params` {Object} Object containing per-request properties.\n * `headers` {Stream} HTTP headers to be included with the request. Optional.\n * `auth` {Credentials} Optional.\n* `cb` {Function}\n\nFetch a package from a URL, with auth set appropriately if included. Used to\ncache remote tarballs as well as request package tarballs from the registry.\n\n# Configuration\n\nThe client uses its own configuration, which is just passed in as a simple\nnested object. The following are the supported values (with their defaults, if\nany):\n\n* `proxy.http` {URL} The URL to proxy HTTP requests through.\n* `proxy.https` {URL} The URL to proxy HTTPS requests through. Defaults to be\n the same as `proxy.http` if unset.\n* `proxy.localAddress` {IP} The local address to use on multi-homed systems.\n* `ssl.ca` {String} Certificate signing authority certificates to trust.\n* `ssl.certificate` {String} Client certificate (PEM encoded). Enable access\n to servers that require client certificates.\n* `ssl.key` {String} Private key (PEM encoded) for client certificate.\n* `ssl.strict` {Boolean} Whether or not to be strict with SSL certificates.\n Default = `true`\n* `retry.count` {Number} Number of times to retry on GET failures. Default = 2.\n* `retry.factor` {Number} `factor` setting for `node-retry`. Default = 10.\n* `retry.minTimeout` {Number} `minTimeout` setting for `node-retry`.\n Default = 10000 (10 seconds)\n* `retry.maxTimeout` {Number} `maxTimeout` setting for `node-retry`.\n Default = 60000 (60 seconds)\n* `userAgent` {String} User agent header to send. Default =\n `\"node/{process.version}\"`\n* `log` {Object} The logger to use. Defaults to `require(\"npmlog\")` if\n that works, otherwise logs are disabled.\n* `defaultTag` {String} The default tag to use when publishing new packages.\n Default = `\"latest\"`\n* `couchToken` {Object} A token for use with\n [couch-login](https://npmjs.org/package/couch-login).\n* `sessionToken` {string} A random identifier for this set of client requests.\n Default = 8 random hexadecimal bytes.\n",
"readmeFilename": "README.md",
- "gitHead": "06f188917bf575fe7dc7c2f6d1d4adbaa50bc423",
+ "gitHead": "e56227b65d18c5158979509ee22a9c3f40cb6756",
"bugs": {
- "url": "https://github.com/isaacs/npm-registry-client/issues"
+ "url": "https://github.com/npm/npm-registry-client/issues"
},
- "homepage": "https://github.com/isaacs/npm-registry-client#readme",
- "_id": "npm-registry-client@7.0.7",
- "_shasum": "899d7c8fefe87b72a70d8c9e075fb874539e0d3e",
- "_from": "npm-registry-client@7.0.7"
+ "homepage": "https://github.com/npm/npm-registry-client#readme",
+ "_id": "npm-registry-client@7.0.8",
+ "_shasum": "8c9fea64458fcc26f31da1219127e6e0ebfb0590",
+ "_from": "npm-registry-client@>=7.0.8 <7.1.0"
}
diff --git a/deps/npm/node_modules/npm-registry-client/test/access.js b/deps/npm/node_modules/npm-registry-client/test/access.js
index c07b1bd6a33..78b00017f18 100644
--- a/deps/npm/node_modules/npm-registry-client/test/access.js
+++ b/deps/npm/node_modules/npm-registry-client/test/access.js
@@ -14,6 +14,13 @@ var PARAMS = {
package: '@foo/bar',
permissions: 'read-write'
}
+var UNSCOPED = {
+ auth: { token: 'foo' },
+ scope: 'myorg',
+ team: 'myteam',
+ package: 'bar',
+ permissions: 'read-write'
+}
var commands = [
'public', 'restricted', 'grant', 'revoke', 'ls-packages', 'ls-collaborators'
@@ -72,6 +79,25 @@ test('access grant basic', function (t) {
})
})
+test('access grant basic unscoped', function (t) {
+ server.expect('PUT', '/-/team/myorg/myteam/package', function (req, res) {
+ t.equal(req.method, 'PUT')
+ onJsonReq(req, function (json) {
+ t.deepEqual(json, {
+ permissions: UNSCOPED.permissions,
+ package: UNSCOPED.package
+ })
+ res.statusCode = 201
+ res.json({ accessChanged: true })
+ })
+ })
+ client.access('grant', URI, UNSCOPED, function (error, data) {
+ t.ifError(error, 'no errors')
+ t.ok(data.accessChanged, 'access level set')
+ t.end()
+ })
+})
+
test('access revoke basic', function (t) {
server.expect('DELETE', '/-/team/myorg/myteam/package', function (req, res) {
t.equal(req.method, 'DELETE')
@@ -90,6 +116,24 @@ test('access revoke basic', function (t) {
})
})
+test('access revoke basic unscoped', function (t) {
+ server.expect('DELETE', '/-/team/myorg/myteam/package', function (req, res) {
+ t.equal(req.method, 'DELETE')
+ onJsonReq(req, function (json) {
+ t.deepEqual(json, {
+ package: UNSCOPED.package
+ })
+ res.statusCode = 200
+ res.json({ accessChanged: true })
+ })
+ })
+ client.access('revoke', URI, UNSCOPED, function (error, data) {
+ t.ifError(error, 'no errors')
+ t.ok(data.accessChanged, 'access level set')
+ t.end()
+ })
+})
+
test('ls-packages on team', function (t) {
var serverPackages = {
'@foo/bar': 'write',
@@ -188,7 +232,7 @@ test('ls-collaborators', function (t) {
})
})
-test('ls-collaborators w/ scope', function (t) {
+test('ls-collaborators w/scope', function (t) {
var serverCollaborators = {
'myorg:myteam': 'write',
'myorg:anotherteam': 'read'
@@ -212,6 +256,30 @@ test('ls-collaborators w/ scope', function (t) {
})
})
+test('ls-collaborators w/o scope', function (t) {
+ var serverCollaborators = {
+ 'myorg:myteam': 'write',
+ 'myorg:anotherteam': 'read'
+ }
+ var clientCollaborators = {
+ 'myorg:myteam': 'read-write',
+ 'myorg:anotherteam': 'read-only'
+ }
+ var uri = '/-/package/bar/collaborators?format=cli&user=zkat'
+ server.expect('GET', uri, function (req, res) {
+ t.equal(req.method, 'GET')
+ res.statusCode = 200
+ res.json(serverCollaborators)
+ })
+ var params = Object.create(UNSCOPED)
+ params.user = 'zkat'
+ client.access('ls-collaborators', URI, params, function (error, data) {
+ t.ifError(error, 'no errors')
+ t.same(data, clientCollaborators)
+ t.end()
+ })
+})
+
test('access command base validation', function (t) {
t.throws(function () {
client.access(undefined, URI, PARAMS, nop)
@@ -242,7 +310,7 @@ test('access command base validation', function (t) {
client.access(cmd, URI, PARAMS, undefined)
}, 'callback is required')
if (contains([
- 'public', 'restricted', 'grant', 'revoke', 'ls-collaborators'
+ 'public', 'restricted'
], cmd)) {
t.throws(function () {
var params = Object.create(PARAMS)
@@ -253,7 +321,7 @@ test('access command base validation', function (t) {
var params = Object.create(PARAMS)
params.package = 'underscore'
client.access(cmd, URI, params, nop)
- }, 'only scopes packages are allowed')
+ }, 'only scoped packages are allowed')
}
if (contains(['grant', 'revoke', 'ls-packages'], cmd)) {
t.throws(function () {
diff --git a/deps/npm/node_modules/npm-registry-client/test/fixtures/@npm/npm-registry-client/cache.json b/deps/npm/node_modules/npm-registry-client/test/fixtures/@npm/npm-registry-client/cache.json
deleted file mode 100644
index 4561db502b1..00000000000
--- a/deps/npm/node_modules/npm-registry-client/test/fixtures/@npm/npm-registry-client/cache.json
+++ /dev/null
@@ -1 +0,0 @@
-{"_id":"@npm%2fnpm-registry-client","_rev":"213-0a1049cf56172b7d9a1184742c6477b9","name":"@npm/npm-registry-client","description":"Client for the npm registry","dist-tags":{"latest":"2.0.4","v2.0":"2.0.3"},"versions":{"0.0.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"@npm%2fnpm-registry-client@0.0.1","_engineSupported":true,"_npmVersion":"1.1.24","_nodeVersion":"v0.7.10-pre","_defaultsLoaded":true,"dist":{"shasum":"693a08f6d2faea22bbd2bf412508a63d3e6229a7","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.1.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"@npm%2fnpm-registry-client@0.0.2","_engineSupported":true,"_npmVersion":"1.1.24","_nodeVersion":"v0.7.10-pre","_defaultsLoaded":true,"dist":{"shasum":"b48c0ec5563c6a6fdc253454fc56d2c60c5a26f4","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.2.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"@npm%2fnpm-registry-client@0.0.3","_engineSupported":true,"_npmVersion":"1.1.24","_nodeVersion":"v0.7.10-pre","_defaultsLoaded":true,"dist":{"shasum":"ccc0254c2d59e3ea9b9050e2b16edef78df1a1e8","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.3.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"@npm%2fnpm-registry-client@0.0.4","_engineSupported":true,"_npmVersion":"1.1.25","_nodeVersion":"v0.7.10-pre","_defaultsLoaded":true,"dist":{"shasum":"faabd25ef477521c74ac21e0f4cf3a2f66d18fb3","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.4.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.5","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_id":"@npm%2fnpm-registry-client@0.0.5","dist":{"shasum":"85219810c9d89ae8d28ea766e7cf74efbd9f1e52","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.5.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"The code that npm uses to talk to the registry","version":"0.0.6","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_id":"@npm%2fnpm-registry-client@0.0.6","dist":{"shasum":"cc6533b3b41df65e6e9db2601fbbf1a509a7e94c","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.6.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.7":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"The code that npm uses to talk to the registry","version":"0.0.7","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"engines":{"node":"*"},"_id":"@npm%2fnpm-registry-client@0.0.7","dist":{"shasum":"0cee1d1c61f1c8e483774fe1f7bbb81c4f394a3a","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.7.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.8":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.8","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.0.8","dist":{"shasum":"1b7411c3f7310ec2a96b055b00e7ca606e47bd07","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.8.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.9":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.9","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.0.9","dist":{"shasum":"6d5bfde431559ac9e2e52a7db85f5839b874f022","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.9.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.10":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.10","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.0.10","dist":{"shasum":"0c8b6a4615bce82aa6cc04a0d1f7dc89921f7a38","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.10.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.11":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.0.11","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.0.11","dist":{"shasum":"afab40be5bed1faa946d8e1827844698f2ec1db7","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.0.11.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.1.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.1.0","dist":{"shasum":"1077d6bbb5e432450239dc6622a59474953ffbea","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.1.0.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.1.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.1.1","dist":{"shasum":"759765361d09b715270f59cf50f10908e4e9c5fc","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.1.1.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.1.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.1.2","dist":{"shasum":"541ce93abb3d35f5c325545c718dd3bbeaaa9ff0","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.1.2.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.1.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.1.3","dist":{"shasum":"e9a40d7031e8f809af5fd85aa9aac979e17efc97","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.1.3.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.1.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.1.4","dist":{"shasum":"b211485b046191a1085362376530316f0cab0420","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.1.4.tgz"},"_npmVersion":"1.1.48","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.0","dist":{"shasum":"6508a4b4d96f31057d5200ca5779531bafd2b840","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.0.tgz"},"_npmVersion":"1.1.49","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"node-uuid":"~1.3.3","request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.1","dist":{"shasum":"1bc8c4576c368cd88253d8a52daf40c55b89bb1a","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.1.tgz"},"_npmVersion":"1.1.49","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.5","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.5","dist":{"shasum":"2f55d675dfb977403b1ad0d96874c1d30e8058d7","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.5.tgz"},"_npmVersion":"1.1.51","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.6","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.6","dist":{"shasum":"f05df6695360360ad220e6e13a6a7bace7165fbe","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.6.tgz"},"_npmVersion":"1.1.56","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.7":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.7","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.0.14","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.7","dist":{"shasum":"867bad8854cae82ed89ee3b7f1d391af59491671","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.7.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.8":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.8","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.6","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.8","dist":{"shasum":"ef194cdb70f1ea03a576cff2c97392fa96e36563","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.8.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.9":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.9","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.9","dist":{"shasum":"3cec10431dfed1594adaf99c50f482ee56ecf9e4","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.9.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.10":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.10","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2.0.1","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.10","dist":{"shasum":"1e69726dae0944e78562fd77243f839c6a2ced1e","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.10.tgz"},"_npmVersion":"1.1.64","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.11":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.11","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.11","dist":{"shasum":"d92f33c297eb1bbd57fd597c3d8f5f7e9340a0b5","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.11.tgz"},"_npmVersion":"1.1.70","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.12":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.12","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.1.8","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.12","dist":{"shasum":"3bfb6fc0e4b131d665580cd1481c341fe521bfd3","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.12.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.13":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.13","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.13","dist":{"shasum":"e03f2a4340065511b7184a3e2862cd5d459ef027","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.13.tgz"},"_from":".","_npmVersion":"1.2.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.14":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.14","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.14","dist":{"shasum":"186874a7790417a340d582b1cd4a7c338087ee12","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.14.tgz"},"_from":".","_npmVersion":"1.2.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.15":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.15","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.15","dist":{"shasum":"f71f32b7185855f1f8b7a5ef49e49d2357c2c552","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.15.tgz"},"_from":".","_npmVersion":"1.2.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.16":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.16","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.16","dist":{"shasum":"3331323b5050fc5afdf77c3a35913c16f3e43964","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.16.tgz"},"_from":".","_npmVersion":"1.2.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.17":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.17","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.17","dist":{"shasum":"1df2bbecac6751f5d9600fb43722aef96d956773","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.17.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.18":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.18","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.9.202","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.18","dist":{"shasum":"198c8d15ed9b1ed546faf6e431eb63a6b18193ad","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.18.tgz"},"_from":".","_npmVersion":"1.2.13","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.19":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.19","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.16","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.19","dist":{"shasum":"106da826f0d2007f6e081f2b68fb6f26fa951b20","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.19.tgz"},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.20":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.20","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.16","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","_id":"@npm%2fnpm-registry-client@0.2.20","dist":{"shasum":"3fff194331e26660be2cf8ebf45ddf7d36add5f6","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.20.tgz"},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.21":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.21","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.16","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.21","dist":{"shasum":"d85dd32525f193925c46ff9eb0e0f529dfd1b254","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.21.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.22":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.22","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"~2.20.0","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.22","dist":{"shasum":"caa22ff40a1ccd632a660b8b80c333c8f92d5a17","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.22.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.23":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.23","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.20.0","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.23","dist":{"shasum":"a320ab2b1d048b4f7b88e40bd86974ca322b4c24","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.23.tgz"},"_from":".","_npmVersion":"1.2.19","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.24":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.24","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.20.0","graceful-fs":"~1.2.0","semver":"~1.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.24","dist":{"shasum":"e12f644338619319ee7f233363a1714a87f3c72d","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.24.tgz"},"_from":".","_npmVersion":"1.2.22","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.25":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.25","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.20.0","graceful-fs":"~1.2.0","semver":"~2.0.5","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.25","dist":{"shasum":"c2caeb1dcf937d6fcc4a187765d401f5e2f54027","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.25.tgz"},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.26":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.26","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.20.0","graceful-fs":"~1.2.0","semver":"~2.0.5","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.26","dist":{"shasum":"4c5a2b3de946e383032f10fa497d0c15ee5f4c60","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.26.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.27":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.27","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.20.0","graceful-fs":"~2.0.0","semver":"~2.0.5","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.15","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.27","dist":{"shasum":"8f338189d32769267886a07ad7b7fd2267446adf","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.27.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.28":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.28","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"~2.1.0","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"_id":"@npm%2fnpm-registry-client@0.2.28","dist":{"shasum":"959141fc0180d7b1ad089e87015a8a2142a8bffc","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.28.tgz"},"_from":".","_npmVersion":"1.3.6","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.29":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.29","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.2.29","dist":{"shasum":"66ff2766f0c61d41e8a6139d3692d8833002c686","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.29.tgz"},"_from":".","_npmVersion":"1.3.12","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.30":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.30","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.2.30","dist":{"shasum":"f01cae5c51aa0a1c5dc2516cbad3ebde068d3eaa","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.30.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.31":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.2.31","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.2.31","dist":{"shasum":"24a23e24e43246677cb485f8391829e9536563d4","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.2.31.tgz"},"_from":".","_npmVersion":"1.3.17","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.0","dist":{"shasum":"66eab02a69be67f232ac14023eddfb8308c2eccd","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.0.tgz"},"_from":".","_npmVersion":"1.3.18","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.1","dist":{"shasum":"16dba07cc304442edcece378218672d0a1258ef8","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.1.tgz"},"_from":".","_npmVersion":"1.3.18","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.2","dist":{"shasum":"ea3060bd0a87fb1d97b87433b50f38f7272b1686","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.2.tgz"},"_from":".","_npmVersion":"1.3.20","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.3","dist":{"shasum":"da08bb681fb24aa5c988ca71f8c10f27f09daf4a","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.3.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.4","dist":{"shasum":"25d771771590b1ca39277aea4506af234c5f4342","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.4.tgz"},"_from":".","_npmVersion":"1.3.25","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.5","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","couch-login":"~0.1.18","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.5","dist":{"shasum":"98ba1ac851a3939a3fb9917c28fa8da522dc635f","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.5.tgz"},"_from":".","_npmVersion":"1.3.25","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.3.6","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.3.6","dist":{"shasum":"c48a2a03643769acc49672860f7920ec6bffac6e","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.3.6.tgz"},"_from":".","_npmVersion":"1.3.26","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.0","dist":{"shasum":"30d0c178b7f2e54183a6a3fc9fe4071eb10290bf","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.0.tgz"},"_from":".","_npmVersion":"1.3.26","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.1","dist":{"shasum":"9c49b3e44558e2072158fb085be8a083c5f83537","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.1.tgz"},"_from":".","_npmVersion":"1.4.0","_npmUser":{"name":"npm-www","email":"npm@npmjs.com"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.2","dist":{"shasum":"d9568a9413bee14951201ce73f3b3992ec6658c0","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.2.tgz"},"_from":".","_npmVersion":"1.4.1","_npmUser":{"name":"npm-www","email":"npm@npmjs.com"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.3","dist":{"shasum":"aa188fc5067158e991a57f4697c54994108f5389","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.3.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.4","dist":{"shasum":"f9dbc383a49069d8c7f67755a3ff6e424aff584f","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.4.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.5","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.5","dist":{"shasum":"7d6fdca46139470715f9477ddb5ad3e770d4de7b","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.5.tgz"},"_from":".","_npmVersion":"1.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.6","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.6","_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"657f69a79543fc4cc264c3b2de958bd15f7140fe","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.6.tgz"},"directories":{}},"0.4.7":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.7","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.7","dist":{"shasum":"f4369b59890da7882527eb7c427dd95d43707afb","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.7.tgz"},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.8":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.8","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.8","_shasum":"a6685a161033101be6064b7af887ab440e8695d0","_from":".","_npmVersion":"1.4.8","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"a6685a161033101be6064b7af887ab440e8695d0","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.8.tgz"},"directories":{}},"0.4.9":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.9","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.9","_shasum":"304d3d4726a58e33d8cc965afdc9ed70b996580c","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"304d3d4726a58e33d8cc965afdc9ed70b996580c","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.9.tgz"},"directories":{}},"0.4.10":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.10","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"^2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.10","_shasum":"ab7bf1be3ba07d769eaf74dee3c9347e02283116","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"ab7bf1be3ba07d769eaf74dee3c9347e02283116","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.10.tgz"},"directories":{}},"0.4.11":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.11","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"2 >=2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.11","_shasum":"032e9b6b050ed052ee9441841a945a184ea6bc33","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"032e9b6b050ed052ee9441841a945a184ea6bc33","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.11.tgz"},"directories":{}},"0.4.12":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"0.4.12","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"request":"2 >=2.25.0","graceful-fs":"~2.0.0","semver":"2 >=2.2.1","slide":"~1.1.3","chownr":"0","mkdirp":"~0.3.3","rimraf":"~2","retry":"0.6.0","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@0.4.12","_shasum":"34303422f6a3da93ca3a387a2650d707c8595b99","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"34303422f6a3da93ca3a387a2650d707c8595b99","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-0.4.12.tgz"},"directories":{}},"1.0.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"1.0.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"~2.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@1.0.0","_shasum":"2a6f9dfdce5f8ebf4b9af4dbfd738384d25014e5","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"2a6f9dfdce5f8ebf4b9af4dbfd738384d25014e5","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-1.0.0.tgz"},"directories":{}},"1.0.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"1.0.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"~2.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"98b1278c230cf6c159f189e2f8c69daffa727ab8","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@1.0.1","_shasum":"c5f6a87d285f2005a35d3f67d9c724bce551b0f1","_from":".","_npmVersion":"1.4.13","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"c5f6a87d285f2005a35d3f67d9c724bce551b0f1","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-1.0.1.tgz"},"directories":{}},"2.0.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"2.0.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"~2.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"47a98069b6a34e751cbd5b84ce92858cae5abe70","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@2.0.0","_shasum":"88810dac2d534c0df1d905c79e723392fcfc791a","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"88810dac2d534c0df1d905c79e723392fcfc791a","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-2.0.0.tgz"},"directories":{}},"2.0.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"2.0.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"123e40131f83f7265f66ecd2a558cce44a3aea86","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@2.0.1","_shasum":"611c7cb7c8f7ff22be2ebc6398423b5de10db0e2","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"611c7cb7c8f7ff22be2ebc6398423b5de10db0e2","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-2.0.1.tgz"},"directories":{}},"2.0.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"2.0.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"6ecc311c9dd4890f2d9b6bae60447070a3321e12","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@2.0.2","_shasum":"a82b000354c7f830114fb18444764bc477d5740f","_from":".","_npmVersion":"1.4.15","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"a82b000354c7f830114fb18444764bc477d5740f","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-2.0.2.tgz"},"directories":{}},"3.0.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.0","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","normalize-package-data":"^0.4.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"6bb1aec1e85fa82ee075bd997d6fb9f2dbb7f643","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.0","_shasum":"4febc5cdb274e9fa06bc3008910e3fa1ec007994","_from":".","_npmVersion":"1.5.0-pre","_npmUser":{"name":"othiym23","email":"ogd@aoaioxxysz.net"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"4febc5cdb274e9fa06bc3008910e3fa1ec007994","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.0.tgz"},"directories":{}},"3.0.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.1","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","normalize-package-data":"^0.4.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"fe8382dde609ea1e3580fcdc5bc3d0bba119cfc6","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.1","_shasum":"5f3ee362ce5c237cfb798fce22c77875fc1a63c2","_from":".","_npmVersion":"1.5.0-alpha-1","_npmUser":{"name":"othiym23","email":"ogd@aoaioxxysz.net"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"5f3ee362ce5c237cfb798fce22c77875fc1a63c2","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.1.tgz"},"directories":{}},"2.0.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"2.0.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"2578fb9a807d77417554ba235ba8fac39405e832","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@2.0.3","_shasum":"93dad3d9a162c99404badb71739c622c0f3b9a72","_from":".","_npmVersion":"1.5.0-alpha-1","_npmUser":{"name":"othiym23","email":"ogd@aoaioxxysz.net"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"93dad3d9a162c99404badb71739c622c0f3b9a72","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-2.0.3.tgz"},"directories":{}},"3.0.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.2","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","normalize-package-data":"^0.4.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"15343019160ace0b9874cf0ec186b3425dbc7301","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.2","_shasum":"5dd0910157ce55f4286a1871d39f9a2128cd3c99","_from":".","_npmVersion":"1.5.0-alpha-2","_npmUser":{"name":"othiym23","email":"ogd@aoaioxxysz.net"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"5dd0910157ce55f4286a1871d39f9a2128cd3c99","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.2.tgz"},"directories":{}},"3.0.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.3","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.3.3","normalize-package-data":"^0.4.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1 || 3.x","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"b18a780d1185f27c06c27812147b83aba0d4a2f5","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.3","_shasum":"2377dc1cf69b4d374b3a95fb7feba8c804d8cb30","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"2377dc1cf69b4d374b3a95fb7feba8c804d8cb30","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.3.tgz"},"directories":{}},"3.0.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"~0.5.0","normalize-package-data":"^0.4.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1 || 3.x","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"54900fe4b2eb5b99ee6dfe173f145732fdfae80e","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.4","_shasum":"d4a177d1f25615cfaef9b6844fa366ffbf5f578a","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"d4a177d1f25615cfaef9b6844fa366ffbf5f578a","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.4.tgz"},"directories":{}},"3.0.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.5","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"0.5","normalize-package-data":"0.4","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"2","semver":"2 >=2.2.1 || 3.x","slide":"^1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"BSD","gitHead":"635db1654346bc86473df7b39626601425f46177","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.5","_shasum":"cdabaefa399b81ac8a86a48718aefd80e7b19ff3","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"cdabaefa399b81ac8a86a48718aefd80e7b19ff3","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.5.tgz"},"directories":{}},"3.0.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"3.0.6","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"^0.5.0","normalize-package-data":"0.4","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"2","semver":"2 >=2.2.1 || 3.x","slide":"^1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"ISC","gitHead":"eba30fadd724ed5cad1aec95ac3ee907a59b7317","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@3.0.6","_shasum":"14a17d9a60ed2a80b04edcbc596dbce0d96540ee","_from":".","_npmVersion":"1.4.22","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"14a17d9a60ed2a80b04edcbc596dbce0d96540ee","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-3.0.6.tgz"},"directories":{}},"2.0.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"name":"@npm/npm-registry-client","description":"Client for the npm registry","version":"2.0.4","repository":{"url":"git://github.com/isaacs/npm-registry-client"},"main":"index.js","scripts":{"test":"tap test/*.js"},"dependencies":{"chownr":"0","graceful-fs":"^3.0.0","mkdirp":"^0.5.0","npm-cache-filename":"^1.0.0","request":"2 >=2.25.0","retry":"0.6.0","rimraf":"~2","semver":"2 >=2.2.1","slide":"~1.1.3","npmlog":""},"devDependencies":{"tap":""},"optionalDependencies":{"npmlog":""},"license":"ISC","gitHead":"a10f621d9cdc813b9d3092a14b661f65bfa6d40d","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"homepage":"https://github.com/isaacs/npm-registry-client","_id":"@npm%2fnpm-registry-client@2.0.4","_shasum":"528e08900d7655c12096d1637d1c3a7a5b451019","_from":".","_npmVersion":"1.4.22","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"dist":{"shasum":"528e08900d7655c12096d1637d1c3a7a5b451019","tarball":"http://registry.npmjs.org/@npm%2fnpm-registry-client/-/@npm%2fnpm-registry-client-2.0.4.tgz"},"directories":{}}},"readme":"# npm-registry-client\u000a\u000aThe code that npm uses to talk to the registry.\u000a\u000aIt handles all the caching and HTTP calls.\u000a\u000a## Usage\u000a\u000a```javascript\u000avar RegClient = require('npm-registry-client')\u000avar client = new RegClient(config)\u000avar uri = \"npm://registry.npmjs.org/npm\"\u000avar options = {timeout: 1000}\u000a\u000aclient.get(uri, options, function (error, data, raw, res) {\u000a // error is an error if there was a problem.\u000a // data is the parsed data object\u000a // raw is the json string\u000a // res is the response from couch\u000a})\u000a```\u000a\u000a# Registry URLs\u000a\u000aThe registry calls take either a full URL pointing to a resource in the\u000aregistry, or a base URL for the registry as a whole (for the base URL, any path\u000awill be ignored). In addition to `http` and `https`, `npm` URLs are allowed.\u000a`npm` URLs are `https` URLs with the additional restrictions that they will\u000aalways include authorization credentials, and the response is always registry\u000ametadata (and not tarballs or other attachments).\u000a\u000a# Configuration\u000a\u000aThis program is designed to work with\u000a[npmconf](https://npmjs.org/package/npmconf), but you can also pass in\u000aa plain-jane object with the appropriate configs, and it'll shim it\u000afor you. Any configuration thingie that has get/set/del methods will\u000aalso be accepted.\u000a\u000a* `cache` **Required** {String} Path to the cache folder\u000a* `always-auth` {Boolean} Auth even for GET requests.\u000a* `auth` {String} A base64-encoded `username:password`\u000a* `email` {String} User's email address\u000a* `tag` {String} The default tag to use when publishing new packages.\u000a Default = `\"latest\"`\u000a* `ca` {String} Cerficate signing authority certificates to trust.\u000a* `cert` {String} Client certificate (PEM encoded). Enable access\u000a to servers that require client certificates\u000a* `key` {String} Private key (PEM encoded) for client certificate 'cert'\u000a* `strict-ssl` {Boolean} Whether or not to be strict with SSL\u000a certificates. Default = `true`\u000a* `user-agent` {String} User agent header to send. Default =\u000a `\"node/{process.version} {process.platform} {process.arch}\"`\u000a* `log` {Object} The logger to use. Defaults to `require(\"npmlog\")` if\u000a that works, otherwise logs are disabled.\u000a* `fetch-retries` {Number} Number of times to retry on GET failures.\u000a Default=2\u000a* `fetch-retry-factor` {Number} `factor` setting for `node-retry`. Default=10\u000a* `fetch-retry-mintimeout` {Number} `minTimeout` setting for `node-retry`.\u000a Default=10000 (10 seconds)\u000a* `fetch-retry-maxtimeout` {Number} `maxTimeout` setting for `node-retry`.\u000a Default=60000 (60 seconds)\u000a* `proxy` {URL} The url to proxy requests through.\u000a* `https-proxy` {URL} The url to proxy https requests through.\u000a Defaults to be the same as `proxy` if unset.\u000a* `_auth` {String} The base64-encoded authorization header.\u000a* `username` `_password` {String} Username/password to use to generate\u000a `_auth` if not supplied.\u000a* `_token` {Object} A token for use with\u000a [couch-login](https://npmjs.org/package/couch-login)\u000a\u000a# client.request(method, uri, options, cb)\u000a\u000a* `method` {String} HTTP method\u000a* `uri` {String} URI pointing to the resource to request\u000a* `options` {Object} Object containing optional per-request properties.\u000a * `what` {Stream | Buffer | String | Object} The request body. Objects\u000a that are not Buffers or Streams are encoded as JSON.\u000a * `etag` {String} The cached ETag\u000a * `follow` {Boolean} Follow 302/301 responses (defaults to true)\u000a* `cb` {Function}\u000a * `error` {Error | null}\u000a * `data` {Object} the parsed data object\u000a * `raw` {String} the json\u000a * `res` {Response Object} response from couch\u000a\u000aMake a request to the registry. All the other methods are wrappers around\u000a`request`.\u000a\u000a# client.adduser(base, username, password, email, cb)\u000a\u000a* `base` {String} Base registry URL\u000a* `username` {String}\u000a* `password` {String}\u000a* `email` {String}\u000a* `cb` {Function}\u000a\u000aAdd a user account to the registry, or verify the credentials.\u000a\u000a# client.deprecate(uri, version, message, cb)\u000a\u000a* `uri` {String} Full registry URI for the deprecated package\u000a* `version` {String} Semver version range\u000a* `message` {String} The message to use as a deprecation warning\u000a* `cb` {Function}\u000a\u000aDeprecate a version of a package in the registry.\u000a\u000a# client.bugs(uri, cb)\u000a\u000a* `uri` {String} Full registry URI for the package\u000a* `cb` {Function}\u000a\u000aGet the url for bugs of a package\u000a\u000a# client.get(uri, options, cb)\u000a\u000a* `uri` {String} The complete registry URI to fetch\u000a* `options` {Object} Object containing optional per-request properties.\u000a * `timeout` {Number} Duration before the request times out.\u000a * `follow` {Boolean} Follow 302/301 responses (defaults to true)\u000a * `staleOk` {Boolean} If there's cached data available, then return that\u000a to the callback quickly, and update the cache the background.\u000a\u000aFetches data from the registry via a GET request, saving it in the cache folder\u000awith the ETag.\u000a\u000a# client.publish(uri, data, tarball, cb)\u000a\u000a* `uri` {String} The registry URI to publish to\u000a* `data` {Object} Package data\u000a* `tarball` {String | Stream} Filename or stream of the package tarball\u000a* `cb` {Function}\u000a\u000aPublish a package to the registry.\u000a\u000aNote that this does not create the tarball from a folder. However, it can\u000aaccept a gzipped tar stream or a filename to a tarball.\u000a\u000a# client.star(uri, starred, cb)\u000a\u000a* `uri` {String} The complete registry URI to star\u000a* `starred` {Boolean} True to star the package, false to unstar it.\u000a* `cb` {Function}\u000a\u000aStar or unstar a package.\u000a\u000aNote that the user does not have to be the package owner to star or unstar a\u000apackage, though other writes do require that the user be the package owner.\u000a\u000a# client.stars(base, username, cb)\u000a\u000a* `base` {String} The base URL for the registry\u000a* `username` {String} Name of user to fetch starred packages for.\u000a* `cb` {Function}\u000a\u000aView your own or another user's starred packages.\u000a\u000a# client.tag(uri, version, tag, cb)\u000a\u000a* `uri` {String} The complete registry URI to tag\u000a* `version` {String} Version to tag\u000a* `tag` {String} Tag name to apply\u000a* `cb` {Function}\u000a\u000aMark a version in the `dist-tags` hash, so that `pkg@tag` will fetch the\u000aspecified version.\u000a\u000a# client.unpublish(uri, [ver], cb)\u000a\u000a* `uri` {String} The complete registry URI to unpublish\u000a* `ver` {String} version to unpublish. Leave blank to unpublish all\u000a versions.\u000a* `cb` {Function}\u000a\u000aRemove a version of a package (or all versions) from the registry. When the\u000alast version us unpublished, the entire document is removed from the database.\u000a\u000a# client.upload(uri, file, [etag], [nofollow], cb)\u000a\u000a* `uri` {String} The complete registry URI to upload to\u000a* `file` {String | Stream} Either the filename or a readable stream\u000a* `etag` {String} Cache ETag\u000a* `nofollow` {Boolean} Do not follow 301/302 responses\u000a* `cb` {Function}\u000a\u000aUpload an attachment. Mostly used by `client.publish()`.\u000a","maintainers":[{"name":"isaacs","email":"i@izs.me"},{"name":"othiym23","email":"ogd@aoaioxxysz.net"}],"time":{"modified":"2014-07-31T21:59:52.896Z","created":"2012-06-07T04:43:36.581Z","0.0.1":"2012-06-07T04:43:38.123Z","0.0.2":"2012-06-07T05:35:05.937Z","0.0.3":"2012-06-09T00:55:25.861Z","0.0.4":"2012-06-11T03:53:26.548Z","0.0.5":"2012-06-11T23:48:11.235Z","0.0.6":"2012-06-17T06:23:27.320Z","0.0.7":"2012-06-18T19:19:38.315Z","0.0.8":"2012-06-28T20:40:20.563Z","0.0.9":"2012-07-10T03:28:04.651Z","0.0.10":"2012-07-11T17:03:45.151Z","0.0.11":"2012-07-17T14:06:37.489Z","0.1.0":"2012-07-23T18:17:38.007Z","0.1.1":"2012-07-23T21:21:28.196Z","0.1.2":"2012-07-24T06:14:12.831Z","0.1.3":"2012-08-07T02:02:20.564Z","0.1.4":"2012-08-15T03:04:52.822Z","0.1.5":"2012-08-17T21:59:33.310Z","0.2.0":"2012-08-17T22:00:18.081Z","0.2.1":"2012-08-17T22:07:28.827Z","0.2.2":"2012-08-17T22:37:24.352Z","0.2.3":"2012-08-19T19:16:44.808Z","0.2.4":"2012-08-19T19:18:51.792Z","0.2.5":"2012-08-20T16:54:50.794Z","0.2.6":"2012-08-22T00:25:04.766Z","0.2.7":"2012-08-27T19:07:34.829Z","0.2.8":"2012-10-02T19:53:50.661Z","0.2.9":"2012-10-03T22:09:50.766Z","0.2.10":"2012-10-25T14:55:54.216Z","0.2.11":"2012-12-21T16:26:38.094Z","0.2.12":"2013-01-18T22:22:41.668Z","0.2.13":"2013-02-06T00:16:35.939Z","0.2.14":"2013-02-10T02:44:02.764Z","0.2.15":"2013-02-11T19:18:55.678Z","0.2.16":"2013-02-15T17:09:03.249Z","0.2.17":"2013-02-16T03:47:13.898Z","0.2.18":"2013-03-06T22:09:23.536Z","0.2.19":"2013-03-20T06:27:39.128Z","0.2.20":"2013-03-28T00:43:07.558Z","0.2.21":"2013-04-29T15:46:54.094Z","0.2.22":"2013-04-29T15:51:02.178Z","0.2.23":"2013-05-11T00:28:14.198Z","0.2.24":"2013-05-24T21:27:50.693Z","0.2.25":"2013-06-20T15:36:46.277Z","0.2.26":"2013-07-06T17:12:54.670Z","0.2.27":"2013-07-11T07:14:45.740Z","0.2.28":"2013-08-02T20:27:41.732Z","0.2.29":"2013-10-28T18:23:24.477Z","0.2.30":"2013-11-18T23:12:00.540Z","0.2.31":"2013-12-16T08:36:43.044Z","0.3.0":"2013-12-17T07:03:10.699Z","0.3.1":"2013-12-17T16:53:27.867Z","0.3.2":"2013-12-17T22:25:14.882Z","0.3.3":"2013-12-21T16:07:06.773Z","0.3.4":"2014-01-29T15:24:05.163Z","0.3.5":"2014-01-31T01:53:19.656Z","0.3.6":"2014-02-07T00:17:21.362Z","0.4.0":"2014-02-13T01:17:18.973Z","0.4.1":"2014-02-13T23:47:37.892Z","0.4.2":"2014-02-14T00:29:13.086Z","0.4.3":"2014-02-16T03:40:54.640Z","0.4.4":"2014-02-16T03:41:48.856Z","0.4.5":"2014-03-12T05:09:17.474Z","0.4.6":"2014-03-29T19:44:15.041Z","0.4.7":"2014-04-02T19:41:07.149Z","0.4.8":"2014-05-01T22:24:54.980Z","0.4.9":"2014-05-12T21:52:55.127Z","0.4.10":"2014-05-13T16:44:29.801Z","0.4.11":"2014-05-13T20:33:04.738Z","0.4.12":"2014-05-14T06:14:22.842Z","1.0.0":"2014-05-14T23:04:37.188Z","1.0.1":"2014-06-03T00:55:54.448Z","2.0.0":"2014-06-06T04:23:46.579Z","2.0.1":"2014-06-06T06:25:14.419Z","2.0.2":"2014-06-14T00:33:10.205Z","3.0.0":"2014-07-02T00:30:29.154Z","3.0.1":"2014-07-14T23:29:05.057Z","2.0.3":"2014-07-15T00:09:36.043Z","3.0.2":"2014-07-17T06:30:02.659Z","3.0.3":"2014-07-23T21:20:42.406Z","3.0.4":"2014-07-25T00:27:26.007Z","3.0.5":"2014-07-25T00:28:48.007Z","3.0.6":"2014-07-31T21:57:49.043Z","2.0.4":"2014-07-31T21:59:52.896Z"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"repository":{"url":"git://github.com/isaacs/npm-registry-client"},"users":{"fgribreau":true,"fengmk2":true},"readmeFilename":"README.md","homepage":"https://github.com/isaacs/npm-registry-client","bugs":{"url":"https://github.com/isaacs/npm-registry-client/issues"},"license":"ISC","_attachments":{}}
diff --git a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/cache.json b/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/cache.json
deleted file mode 100644
index 01da3002763..00000000000
--- a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/cache.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.3","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.3","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"47ac53683daf832bfa952e1774417da47817ae42","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.3.3.tgz"},"readme":" __ \n /\\ \\ __ \n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____ \n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\ \n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/ \n \\ \\____/ \n \\/___/\n \nUnderscore.js is a utility-belt library for JavaScript that provides \nsupport for the usual functional suspects (each, map, reduce, filter...) \nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://documentcloud.github.com/underscore/\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}} \ No newline at end of file
diff --git a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/package.tgz b/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/package.tgz
deleted file mode 100644
index 19da9baa7fb..00000000000
--- a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/1.3.3/package.tgz
+++ /dev/null
Binary files differ
diff --git a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/cache.json b/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/cache.json
deleted file mode 100644
index d899f11922a..00000000000
--- a/deps/npm/node_modules/npm-registry-client/test/fixtures/underscore/cache.json
+++ /dev/null
@@ -1 +0,0 @@
-{"_id":"underscore","_rev":"72-47f2986bfd8e8b55068b204588bbf484","name":"underscore","description":"JavaScript's functional programming helper library.","dist-tags":{"latest":"1.3.3","stable":"1.3.3"},"versions":{"1.0.3":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.0.3","_id":"underscore@1.0.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.0.3.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.0.4":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.0.4","_id":"underscore@1.0.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.0.4.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.0":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.0","_id":"underscore@1.1.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.0.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.1":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.1","_id":"underscore@1.1.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.1.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.2":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.2","_id":"underscore@1.1.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.2.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.3":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.3","_id":"underscore@1.1.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.8-1","_nodeVersion":"v0.2.5","dist":{"tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.3.tgz"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.4":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore.js","version":"1.1.4","_id":"underscore@1.1.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.9","_nodeVersion":"v0.5.0-pre","dist":{"shasum":"9e82274902865625b3a6d4c315a38ffd80047dae","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.4.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.1.5":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.5","_id":"underscore@1.1.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.16","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"23601d62c75619998b2f0db24938102793336a56","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.5.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.6":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.6","_id":"underscore@1.1.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.18","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"6868da1bdd72d75285be0b4e50f228e70d001a2c","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.6.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.7":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.7","devDependencies":{},"_id":"underscore@1.1.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"40bab84bad19d230096e8d6ef628bff055d83db0","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz"},"scripts":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.0","_npmJsonOpts":{"file":"/Users/jashkenas/.npm/underscore/1.2.0/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"underscore@1.2.0","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"b32ce32c8c118caa8031c10b54c7f65ab3b557fd","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.2.0.tgz"},"scripts":{},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"directories":{}},"1.2.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.1","_npmJsonOpts":{"file":"/Users/jashkenas/.npm/underscore/1.2.1/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"underscore@1.2.1","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"fc5c6b0765673d92a2d4ac8b4dc0aa88702e2bd4","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.2.1.tgz"},"scripts":{},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"directories":{}},"1.2.2":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.2","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.2","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.0","_defaultsLoaded":true,"dist":{"shasum":"74dd40e9face84e724eb2edae945b8aedc233ba3","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.2.2.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.3":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.3","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.3","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.0","_defaultsLoaded":true,"dist":{"shasum":"11b874da70f4683d7d48bba2b44be1e600d2f6cf","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.2.3.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.4":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.4","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.4","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"e8da6241aa06f64df2473bb2590b8c17c84c3c7e","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.2.4.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.0","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.0","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"253b2d79b7bb67943ced0fc744eb18267963ede8","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.3.0.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.1","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.1","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"6cb8aad0e77eb5dbbfb54b22bcd8697309cf9641","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.3.1.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.2":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.2","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.2","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"1b4e455089ab1d1d38ab6794ffe6cf08f764394a","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.3.2.tgz"},"readme":" __ \n /\\ \\ __ \n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____ \n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\ \n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/ \n \\ \\____/ \n \\/___/\n \nUnderscore.js is a utility-belt library for JavaScript that provides \nsupport for the usual functional suspects (each, map, reduce, filter...) \nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://documentcloud.github.com/underscore/\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.3":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.3","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.3","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"47ac53683daf832bfa952e1774417da47817ae42","tarball":"http://registry.npmjs.org/underscore/-/underscore-1.3.3.tgz"},"readme":" __ \n /\\ \\ __ \n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____ \n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\ \n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/ \n \\ \\____/ \n \\/___/\n \nUnderscore.js is a utility-belt library for JavaScript that provides \nsupport for the usual functional suspects (each, map, reduce, filter...) \nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://documentcloud.github.com/underscore/\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}}},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"time":{"1.0.3":"2011-12-07T15:12:18.045Z","1.0.4":"2011-12-07T15:12:18.045Z","1.1.0":"2011-12-07T15:12:18.045Z","1.1.1":"2011-12-07T15:12:18.045Z","1.1.2":"2011-12-07T15:12:18.045Z","1.1.3":"2011-12-07T15:12:18.045Z","1.1.4":"2011-12-07T15:12:18.045Z","1.1.5":"2011-12-07T15:12:18.045Z","1.1.6":"2011-12-07T15:12:18.045Z","1.1.7":"2011-12-07T15:12:18.045Z","1.2.0":"2011-12-07T15:12:18.045Z","1.2.1":"2011-12-07T15:12:18.045Z","1.2.2":"2011-11-14T20:28:47.115Z","1.2.3":"2011-12-07T15:12:18.045Z","1.2.4":"2012-01-09T17:23:14.818Z","1.3.0":"2012-01-11T16:41:38.459Z","1.3.1":"2012-01-23T22:57:36.474Z","1.3.2":"2012-04-09T18:38:14.345Z","1.3.3":"2012-04-10T14:43:48.089Z"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"users":{"vesln":true,"mvolkmann":true,"lancehunt":true,"mikl":true,"linus":true,"vasc":true,"bat":true,"dmalam":true,"mbrevoort":true,"danielr":true,"rsimoes":true,"thlorenz":true}} \ No newline at end of file
diff --git a/deps/npm/node_modules/npmlog/.travis.yml b/deps/npm/node_modules/npmlog/.travis.yml
new file mode 100644
index 00000000000..e76e1ac81ff
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/.travis.yml
@@ -0,0 +1,14 @@
+language: node_js
+sudo: false
+node_js:
+ - "5"
+ - "4"
+ - iojs
+ - "0.12"
+ - "0.10"
+ - "0.8"
+before_install:
+ - "npm install -g npm"
+script: "npm test"
+notifications:
+ slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
diff --git a/deps/npm/node_modules/npmlog/log.js b/deps/npm/node_modules/npmlog/log.js
index 8bf6422b6cf..d70004d2ec2 100644
--- a/deps/npm/node_modules/npmlog/log.js
+++ b/deps/npm/node_modules/npmlog/log.js
@@ -245,3 +245,6 @@ log.addLevel('http', 3000, { fg: 'green', bg: 'black' })
log.addLevel('warn', 4000, { fg: 'black', bg: 'yellow' }, 'WARN')
log.addLevel('error', 5000, { fg: 'red', bg: 'black' }, 'ERR!')
log.addLevel('silent', Infinity)
+
+// allow 'error' prefix
+log.on('error', function(){})
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/README.md
index fb9eb0a7d1e..ca0a8cd773d 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/README.md
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/README.md
@@ -30,6 +30,11 @@ gauge.hide()
Constructs a new gauge. Gauges are drawn on a single line, and are not drawn
if the current terminal isn't a tty.
+If you resize your terminal in a way that can be detected then the gauge
+will be drawn at the new size. As a general rule, growing your terminal will
+be clean, but shrinking your terminal will result in cruft as we don't have
+enough information to know where what we wrote previously is now located.
+
The **options** object can have the following properties, all of which are
optional:
@@ -117,7 +122,7 @@ will be turned into the gauge line. The default template is:
```javascript
[
- {type: "name", separated: true, maxLength: 25, minWidth: 25, align: "left"},
+ {type: "name", separated: true, maxLength: 25, minLength: 25, align: "left"},
{type: "spinner", separated: true},
{type: "startgroup"},
{type: "completionbar"},
@@ -131,7 +136,7 @@ be be included verbatum in the output.
If the template element is an object, it can have the following keys:
* *type* can be:
- * `name` – The most recent name passed to `show`; if this is in response to a
+ * `name` – The most recent name passed to `show`; if this is in response to a
`pulse` then the name passed to `pulse` will be appended along with the
subsection property from the theme.
* `spinner` – If you've ever called `pulse` this will be one of the characters
@@ -148,7 +153,7 @@ If the template element is an object, it can have the following keys:
will be padded according to the *align* value.
* *align* – (Default: left) Possible values "left", "right" and "center". Works
as you'd expect from word processors.
-* *length* – Provides a single value for both *minLength* and *maxLength*. If both
+* *length* – Provides a single value for both *minLength* and *maxLength*. If both
*length* and *minLength or *maxLength* are specifed then the latter take precedence.
### Tracking Completion
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
index edceb703094..e0907b510a8 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/index.js
@@ -1,6 +1,5 @@
"use strict"
var os = require("os")
-var child_process = require("child_process")
var hasUnicode = module.exports = function () {
// Supported Win32 platforms (>XP) support unicode in the console, though
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
index fd552a9e409..6430bb74a47 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/has-unicode/package.json
@@ -1,6 +1,6 @@
{
"name": "has-unicode",
- "version": "1.0.0",
+ "version": "1.0.1",
"description": "Try to guess if your terminal supports unicode",
"main": "index.js",
"scripts": {
@@ -27,27 +27,27 @@
"require-inject": "^1.1.1",
"tap": "^0.4.13"
},
- "gitHead": "a8c3dcf3be5f0c8f8e26a3e7ffea7da24344a006",
- "_id": "has-unicode@1.0.0",
- "_shasum": "bac5c44e064c2ffc3b8fcbd8c71afe08f9afc8cc",
+ "gitHead": "d4ad300c67b25c197582e42e936ea928f7935d01",
+ "_id": "has-unicode@1.0.1",
+ "_shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
"_from": "has-unicode@>=1.0.0 <2.0.0",
- "_npmVersion": "2.1.11",
- "_nodeVersion": "0.10.33",
+ "_npmVersion": "3.3.6",
+ "_nodeVersion": "4.1.1",
"_npmUser": {
"name": "iarna",
"email": "me@re-becca.org"
},
+ "dist": {
+ "shasum": "c46fceea053eb8ec789bffbba25fca52dfdcf38e",
+ "tarball": "http://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz"
+ },
"maintainers": [
{
"name": "iarna",
"email": "me@re-becca.org"
}
],
- "dist": {
- "shasum": "bac5c44e064c2ffc3b8fcbd8c71afe08f9afc8cc",
- "tarball": "http://registry.npmjs.org/has-unicode/-/has-unicode-1.0.0.tgz"
- },
"directories": {},
- "_resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-1.0.0.tgz",
+ "_resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-1.0.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
index 9b4891cd8c6..456d23ddf0c 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/README.md
@@ -1,4 +1,4 @@
-# lodash.pad v3.1.0
+# lodash.pad v3.1.1
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.pad` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
@@ -17,4 +17,4 @@ In Node.js/io.js:
var pad = require('lodash.pad');
```
-See the [documentation](https://lodash.com/docs#pad) or [package source](https://github.com/lodash/lodash/blob/3.1.0-npm-packages/lodash.pad) for more details.
+See the [documentation](https://lodash.com/docs#pad) or [package source](https://github.com/lodash/lodash/blob/3.1.1-npm-packages/lodash.pad) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
index d08251ba593..a29ccea9ca1 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/index.js
@@ -1,23 +1,21 @@
/**
- * lodash 3.1.0 (Custom Build) <https://lodash.com/>
+ * lodash 3.1.1 (Custom Build) <https://lodash.com/>
* Build: `lodash modern modularize exports="npm" -o ./`
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.8.2 <http://underscorejs.org/LICENSE>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Available under MIT license <https://lodash.com/license>
*/
var baseToString = require('lodash._basetostring'),
createPadding = require('lodash._createpadding');
-/** Native method references. */
-var ceil = Math.ceil,
- floor = Math.floor;
-
/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
+var nativeCeil = Math.ceil,
+ nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
/**
- * Pads `string` on the left and right sides if it is shorter than `length`.
+ * Pads `string` on the left and right sides if it's shorter than `length`.
* Padding characters are truncated if they can't be evenly divided by `length`.
*
* @static
@@ -47,8 +45,8 @@ function pad(string, length, chars) {
return string;
}
var mid = (length - strLength) / 2,
- leftLength = floor(mid),
- rightLength = ceil(mid);
+ leftLength = nativeFloor(mid),
+ rightLength = nativeCeil(mid);
chars = createPadding('', rightLength, chars);
return chars.slice(0, leftLength) + string + chars;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..f592f32e198
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
index 6f028c0cc62..c18ed47167a 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.pad/package.json
@@ -1,6 +1,6 @@
{
"name": "lodash.pad",
- "version": "3.1.0",
+ "version": "3.1.1",
"description": "The modern build of lodash’s `_.pad` as a module.",
"homepage": "https://lodash.com/",
"icon": "https://lodash.com/icon.svg",
@@ -57,11 +57,11 @@
"bugs": {
"url": "https://github.com/lodash/lodash/issues"
},
- "_id": "lodash.pad@3.1.0",
- "_shasum": "9f18b1f3749a95e197b5ff2ae752ea9851ada965",
+ "_id": "lodash.pad@3.1.1",
+ "_shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
"_from": "lodash.pad@>=3.0.0 <4.0.0",
- "_npmVersion": "2.7.3",
- "_nodeVersion": "0.12.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
"_npmUser": {
"name": "jdalton",
"email": "john.david.dalton@gmail.com"
@@ -89,10 +89,10 @@
}
],
"dist": {
- "shasum": "9f18b1f3749a95e197b5ff2ae752ea9851ada965",
- "tarball": "http://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.0.tgz"
+ "shasum": "2e078ebc33b331d2ba34bf8732af129fd5c04624",
+ "tarball": "http://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.0.tgz",
+ "_resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-3.1.1.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..f592f32e198
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padleft/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md
new file mode 100644
index 00000000000..f81145e6ebe
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/README.md
@@ -0,0 +1,20 @@
+# lodash._basetostring v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `baseToString` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._basetostring
+```
+
+In Node.js/io.js:
+
+```js
+var baseToString = require('lodash._basetostring');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash._basetostring) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js
new file mode 100644
index 00000000000..db8ecc9fdd0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/index.js
@@ -0,0 +1,22 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+
+/**
+ * Converts `value` to a string if it's not one. An empty string is returned
+ * for `null` or `undefined` values.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ return value == null ? '' : (value + '');
+}
+
+module.exports = baseToString;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json
new file mode 100644
index 00000000000..f592f32e198
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._basetostring/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "lodash._basetostring",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s internal `baseToString` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._basetostring@3.0.1",
+ "_shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "_from": "lodash._basetostring@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "d1861d877f824a52f669832dcaf3ee15566a07d5",
+ "tarball": "http://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md
new file mode 100644
index 00000000000..f9c9411c704
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/README.md
@@ -0,0 +1,20 @@
+# lodash._createpadding v3.6.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createPadding` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash._createpadding
+```
+
+In Node.js/io.js:
+
+```js
+var createPadding = require('lodash._createpadding');
+```
+
+See the [package source](https://github.com/lodash/lodash/blob/3.6.1-npm-packages/lodash._createpadding) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js
new file mode 100644
index 00000000000..3541a8aae32
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/index.js
@@ -0,0 +1,37 @@
+/**
+ * lodash 3.6.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var repeat = require('lodash.repeat');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Creates the padding required for `string` based on the given `length`.
+ * The `chars` string is truncated if the number of characters exceeds `length`.
+ *
+ * @private
+ * @param {string} string The string to create padding for.
+ * @param {number} [length=0] The padding length.
+ * @param {string} [chars=' '] The string used as padding.
+ * @returns {string} Returns the pad for `string`.
+ */
+function createPadding(string, length, chars) {
+ var strLength = string.length;
+ length = +length;
+
+ if (strLength >= length || !nativeIsFinite(length)) {
+ return '';
+ }
+ var padLength = length - strLength;
+ chars = chars == null ? ' ' : (chars + '');
+ return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
+}
+
+module.exports = createPadding;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
new file mode 100644
index 00000000000..9cd87e5dcef
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
new file mode 100644
index 00000000000..dec571a333a
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/README.md
@@ -0,0 +1,20 @@
+# lodash.repeat v3.0.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.repeat` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash.repeat
+```
+
+In Node.js/io.js:
+
+```js
+var repeat = require('lodash.repeat');
+```
+
+See the [documentation](https://lodash.com/docs#repeat) or [package source](https://github.com/lodash/lodash/blob/3.0.1-npm-packages/lodash.repeat) for more details.
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
new file mode 100644
index 00000000000..367913f56e0
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/index.js
@@ -0,0 +1,55 @@
+/**
+ * lodash 3.0.1 (Custom Build) <https://lodash.com/>
+ * Build: `lodash modern modularize exports="npm" -o ./`
+ * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <https://lodash.com/license>
+ */
+var baseToString = require('lodash._basetostring');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeFloor = Math.floor,
+ nativeIsFinite = global.isFinite;
+
+/**
+ * Repeats the given string `n` times.
+ *
+ * @static
+ * @memberOf _
+ * @category String
+ * @param {string} [string=''] The string to repeat.
+ * @param {number} [n=0] The number of times to repeat the string.
+ * @returns {string} Returns the repeated string.
+ * @example
+ *
+ * _.repeat('*', 3);
+ * // => '***'
+ *
+ * _.repeat('abc', 2);
+ * // => 'abcabc'
+ *
+ * _.repeat('abc', 0);
+ * // => ''
+ */
+function repeat(string, n) {
+ var result = '';
+ string = baseToString(string);
+ n = +n;
+ if (n < 1 || !string || !nativeIsFinite(n)) {
+ return result;
+ }
+ // Leverage the exponentiation by squaring algorithm for a faster repeat.
+ // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
+ do {
+ if (n % 2) {
+ result += string;
+ }
+ n = nativeFloor(n / 2);
+ string += string;
+ } while (n);
+
+ return result;
+}
+
+module.exports = repeat;
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
new file mode 100644
index 00000000000..f941138c4bf
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/node_modules/lodash.repeat/package.json
@@ -0,0 +1,97 @@
+{
+ "name": "lodash.repeat",
+ "version": "3.0.1",
+ "description": "The modern build of lodash’s `_.repeat` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "keywords": [
+ "lodash",
+ "lodash-modularized",
+ "stdlib",
+ "util"
+ ],
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash._basetostring": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash.repeat@3.0.1",
+ "_shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "_from": "lodash.repeat@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "f4b98dc7ef67256ce61e7874e1865edb208e0edf",
+ "tarball": "http://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-3.0.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json
new file mode 100644
index 00000000000..376b174bee4
--- /dev/null
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/node_modules/lodash.padright/node_modules/lodash._createpadding/package.json
@@ -0,0 +1,91 @@
+{
+ "name": "lodash._createpadding",
+ "version": "3.6.1",
+ "description": "The modern build of lodash’s internal `createPadding` as a module.",
+ "homepage": "https://lodash.com/",
+ "icon": "https://lodash.com/icon.svg",
+ "license": "MIT",
+ "author": {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ "contributors": [
+ {
+ "name": "John-David Dalton",
+ "email": "john.david.dalton@gmail.com",
+ "url": "http://allyoucanleet.com/"
+ },
+ {
+ "name": "Benjamin Tan",
+ "email": "demoneaux@gmail.com",
+ "url": "https://d10.github.io/"
+ },
+ {
+ "name": "Blaine Bublitz",
+ "email": "blaine@iceddev.com",
+ "url": "http://www.iceddev.com/"
+ },
+ {
+ "name": "Kit Cambridge",
+ "email": "github@kitcambridge.be",
+ "url": "http://kitcambridge.be/"
+ },
+ {
+ "name": "Mathias Bynens",
+ "email": "mathias@qiwi.be",
+ "url": "https://mathiasbynens.be/"
+ }
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lodash/lodash.git"
+ },
+ "scripts": {
+ "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
+ },
+ "dependencies": {
+ "lodash.repeat": "^3.0.0"
+ },
+ "bugs": {
+ "url": "https://github.com/lodash/lodash/issues"
+ },
+ "_id": "lodash._createpadding@3.6.1",
+ "_shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "_from": "lodash._createpadding@>=3.0.0 <4.0.0",
+ "_npmVersion": "2.12.0",
+ "_nodeVersion": "0.12.5",
+ "_npmUser": {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ "maintainers": [
+ {
+ "name": "jdalton",
+ "email": "john.david.dalton@gmail.com"
+ },
+ {
+ "name": "d10",
+ "email": "demoneaux@gmail.com"
+ },
+ {
+ "name": "kitcambridge",
+ "email": "github@kitcambridge.be"
+ },
+ {
+ "name": "mathias",
+ "email": "mathias@qiwi.be"
+ },
+ {
+ "name": "phated",
+ "email": "blaine@iceddev.com"
+ }
+ ],
+ "dist": {
+ "shasum": "4907b438595adc54ee8935527a6c424c02c81a87",
+ "tarball": "http://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz"
+ },
+ "directories": {},
+ "_resolved": "https://registry.npmjs.org/lodash._createpadding/-/lodash._createpadding-3.6.1.tgz",
+ "readme": "ERROR: No README data found!"
+}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/package.json b/deps/npm/node_modules/npmlog/node_modules/gauge/package.json
index 227173e6401..d16cc33df97 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/package.json
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/package.json
@@ -1,6 +1,6 @@
{
"name": "gauge",
- "version": "1.2.0",
+ "version": "1.2.2",
"description": "A terminal based horizontal guage",
"main": "progress-bar.js",
"scripts": {
@@ -34,27 +34,27 @@
"devDependencies": {
"tap": "^0.4.13"
},
- "gitHead": "db15c35374816b3fc3b9e1e54866f31ed7f4a733",
- "_id": "gauge@1.2.0",
- "_shasum": "3094ab1285633f799814388fc8f2de67b4c012c5",
+ "gitHead": "9f7eeeeed3b74a70f30b721d570435f6ffbc0168",
+ "_id": "gauge@1.2.2",
+ "_shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
"_from": "gauge@>=1.2.0 <1.3.0",
- "_npmVersion": "2.6.0",
- "_nodeVersion": "1.1.0",
+ "_npmVersion": "3.1.0",
+ "_nodeVersion": "0.10.38",
"_npmUser": {
"name": "iarna",
"email": "me@re-becca.org"
},
+ "dist": {
+ "shasum": "05b6730a19a8fcad3c340a142f0945222a3f815b",
+ "tarball": "http://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz"
+ },
"maintainers": [
{
"name": "iarna",
"email": "me@re-becca.org"
}
],
- "dist": {
- "shasum": "3094ab1285633f799814388fc8f2de67b4c012c5",
- "tarball": "http://registry.npmjs.org/gauge/-/gauge-1.2.0.tgz"
- },
"directories": {},
- "_resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.0.tgz",
+ "_resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.2.tgz",
"readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js b/deps/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js
index 39dbf2ac43d..16bdadc5103 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js
@@ -11,8 +11,10 @@ function isTTY() {
return process.stderr.isTTY
}
function getWritableTTYColumns() {
- // One less than the actual as writing to the final column wraps the line
- return process.stderr.columns - 1
+ // Writing to the final column wraps the line
+ // We have to use stdout here, because Node's magic SIGWINCH handler only
+ // updates process.stdout, not process.stderr
+ return process.stdout.columns - 1
}
var ProgressBar = module.exports = function (options, cursor) {
@@ -39,6 +41,13 @@ var ProgressBar = module.exports = function (options, cursor) {
this.lastCompleted = 0
this.spun = 0
this.last = new Date(0)
+
+ var self = this
+ this._handleSizeChange = function () {
+ if (!self.showing) return
+ self.hide()
+ self.show()
+ }
}
ProgressBar.prototype = {}
@@ -68,6 +77,14 @@ ProgressBar.prototype.setTemplate = function(template) {
this.template = template
}
+ProgressBar.prototype._enableResizeEvents = function() {
+ process.stdout.on('resize', this._handleSizeChange)
+}
+
+ProgressBar.prototype._disableResizeEvents = function() {
+ process.stdout.removeListener('resize', this._handleSizeChange)
+}
+
ProgressBar.prototype.disable = function() {
this.hide()
this.disabled = true
diff --git a/deps/npm/node_modules/npmlog/node_modules/gauge/test/progress-bar.js b/deps/npm/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
index 8e2a5ad6438..39939269f5b 100644
--- a/deps/npm/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
+++ b/deps/npm/node_modules/npmlog/node_modules/gauge/test/progress-bar.js
@@ -70,7 +70,7 @@ test("hide", function (t) {
test("renderTemplate", function (t) {
t.plan(16)
- process.stderr.columns = 11
+ process.stdout.columns = 11
var result = bar.renderTemplate(ProgressBar.ascii,[{type: "name"}],{name: "NAME"})
t.is(result, "NAME", "name substitution")
var result = bar.renderTemplate(ProgressBar.ascii,[{type: "completionbar"}],{completed: 0})
@@ -108,7 +108,7 @@ test("renderTemplate", function (t) {
test("show & pulse", function (t) {
t.plan(23)
- process.stderr.columns = 16
+ process.stdout.columns = 16
cursor = []
process.stderr.isTTY = false
bar.template[0].length = 6
@@ -146,3 +146,31 @@ test("show & pulse", function (t) {
[ 'write', 'S -> P | |----|\n' ],
[ 'show' ] ])
})
+
+test("window resizing", function (t) {
+ t.plan(16)
+ process.stderr.isTTY = true
+ process.stdout.columns = 32
+ bar.show("NAME", 0.1)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "32 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME / |##------------------|\n' ],
+ [ 'show' ] ])
+
+ process.stdout.columns = 16
+ bar.show("NAME", 0.5)
+ cursor = []
+ bar.last = new Date(0)
+ bar.pulse()
+ isOutput(t, "16 columns",
+ [ [ 'up', 1 ],
+ [ 'hide' ],
+ [ 'horizontalAbsolute', 0 ],
+ [ 'write', 'NAME - |##--|\n' ],
+ [ 'show' ] ]);
+});
diff --git a/deps/npm/node_modules/npmlog/package.json b/deps/npm/node_modules/npmlog/package.json
index 1613546d9f1..40c1bc43ee7 100644
--- a/deps/npm/node_modules/npmlog/package.json
+++ b/deps/npm/node_modules/npmlog/package.json
@@ -6,10 +6,10 @@
},
"name": "npmlog",
"description": "logger for npm",
- "version": "1.2.1",
+ "version": "2.0.0",
"repository": {
"type": "git",
- "url": "git://github.com/isaacs/npmlog.git"
+ "url": "git+https://github.com/npm/npmlog.git"
},
"main": "log.js",
"scripts": {
@@ -21,38 +21,17 @@
"gauge": "~1.2.0"
},
"devDependencies": {
- "tap": ""
+ "tap": "~2.2.0"
},
"license": "ISC",
- "gitHead": "4e1a73a567036064ded425a7d48c863d53550b4f",
+ "readme": "# npmlog\n\nThe logger util that npm uses.\n\nThis logger is very basic. It does the logging for npm. It supports\ncustom levels and colored output.\n\nBy default, logs are written to stderr. If you want to send log messages\nto outputs other than streams, then you can change the `log.stream`\nmember, or you can just listen to the events that it emits, and do\nwhatever you want with them.\n\n# Basic Usage\n\n```\nvar log = require('npmlog')\n\n// additional stuff ---------------------------+\n// message ----------+ |\n// prefix ----+ | |\n// level -+ | | |\n// v v v v\n log.info('fyi', 'I have a kitty cat: %j', myKittyCat)\n```\n\n## log.level\n\n* {String}\n\nThe level to display logs at. Any logs at or above this level will be\ndisplayed. The special level `silent` will prevent anything from being\ndisplayed ever.\n\n## log.record\n\n* {Array}\n\nAn array of all the log messages that have been entered.\n\n## log.maxRecordSize\n\n* {Number}\n\nThe maximum number of records to keep. If log.record gets bigger than\n10% over this value, then it is sliced down to 90% of this value.\n\nThe reason for the 10% window is so that it doesn't have to resize a\nlarge array on every log entry.\n\n## log.prefixStyle\n\n* {Object}\n\nA style object that specifies how prefixes are styled. (See below)\n\n## log.headingStyle\n\n* {Object}\n\nA style object that specifies how the heading is styled. (See below)\n\n## log.heading\n\n* {String} Default: \"\"\n\nIf set, a heading that is printed at the start of every line.\n\n## log.stream\n\n* {Stream} Default: `process.stderr`\n\nThe stream where output is written.\n\n## log.enableColor()\n\nForce colors to be used on all messages, regardless of the output\nstream.\n\n## log.disableColor()\n\nDisable colors on all messages.\n\n## log.enableProgress()\n\nEnable the display of log activity spinner and progress bar\n\n## log.disableProgress()\n\nDisable the display of a progress bar\n\n## log.enableUnicode()\n\nForce the unicode theme to be used for the progress bar.\n\n## log.disableUnicode()\n\nDisable the use of unicode in the progress bar.\n\n## log.setGaugeTemplate(template)\n\nOverrides the default gauge template.\n\n## log.pause()\n\nStop emitting messages to the stream, but do not drop them.\n\n## log.resume()\n\nEmit all buffered messages that were written while paused.\n\n## log.log(level, prefix, message, ...)\n\n* `level` {String} The level to emit the message at\n* `prefix` {String} A string prefix. Set to \"\" to skip.\n* `message...` Arguments to `util.format`\n\nEmit a log message at the specified level.\n\n## log\\[level](prefix, message, ...)\n\nFor example,\n\n* log.silly(prefix, message, ...)\n* log.verbose(prefix, message, ...)\n* log.info(prefix, message, ...)\n* log.http(prefix, message, ...)\n* log.warn(prefix, message, ...)\n* log.error(prefix, message, ...)\n\nLike `log.log(level, prefix, message, ...)`. In this way, each level is\ngiven a shorthand, so you can do `log.info(prefix, message)`.\n\n## log.addLevel(level, n, style, disp)\n\n* `level` {String} Level indicator\n* `n` {Number} The numeric level\n* `style` {Object} Object with fg, bg, inverse, etc.\n* `disp` {String} Optional replacement for `level` in the output.\n\nSets up a new level with a shorthand function and so forth.\n\nNote that if the number is `Infinity`, then setting the level to that\nwill cause all log messages to be suppressed. If the number is\n`-Infinity`, then the only way to show it is to enable all log messages.\n\n## log.newItem(name, todo, weight)\n\n* `name` {String} Optional; progress item name.\n* `todo` {Number} Optional; total amount of work to be done. Default 0.\n* `weight` {Number} Optional; the weight of this item relative to others. Default 1.\n\nThis adds a new `are-we-there-yet` item tracker to the progress tracker. The\nobject returned has the `log[level]` methods but is otherwise an\n`are-we-there-yet` `Tracker` object.\n\n## log.newStream(name, todo, weight)\n\nThis adds a new `are-we-there-yet` stream tracker to the progress tracker. The\nobject returned has the `log[level]` methods but is otherwise an\n`are-we-there-yet` `TrackerStream` object.\n\n## log.newGroup(name, weight)\n\nThis adds a new `are-we-there-yet` tracker group to the progress tracker. The\nobject returned has the `log[level]` methods but is otherwise an\n`are-we-there-yet` `TrackerGroup` object.\n\n# Events\n\nEvents are all emitted with the message object.\n\n* `log` Emitted for all messages\n* `log.<level>` Emitted for all messages with the `<level>` level.\n* `<prefix>` Messages with prefixes also emit their prefix as an event.\n\n# Style Objects\n\nStyle objects can have the following fields:\n\n* `fg` {String} Color for the foreground text\n* `bg` {String} Color for the background\n* `bold`, `inverse`, `underline` {Boolean} Set the associated property\n* `bell` {Boolean} Make a noise (This is pretty annoying, probably.)\n\n# Message Objects\n\nEvery log event is emitted with a message object, and the `log.record`\nlist contains all of them that have been created. They have the\nfollowing fields:\n\n* `id` {Number}\n* `level` {String}\n* `prefix` {String}\n* `message` {String} Result of `util.format()`\n* `messageRaw` {Array} Arguments to `util.format()`\n",
+ "readmeFilename": "README.md",
+ "gitHead": "6eaa3f8eec672bb7b56a4df9b55dbfff3b9c6a71",
"bugs": {
- "url": "https://github.com/isaacs/npmlog/issues"
+ "url": "https://github.com/npm/npmlog/issues"
},
- "homepage": "https://github.com/isaacs/npmlog#readme",
- "_id": "npmlog@1.2.1",
- "_shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
- "_from": "npmlog@>=1.2.1 <1.3.0",
- "_npmVersion": "2.10.0",
- "_nodeVersion": "2.0.1",
- "_npmUser": {
- "name": "isaacs",
- "email": "isaacs@npmjs.com"
- },
- "dist": {
- "shasum": "28e7be619609b53f7ad1dd300a10d64d716268b6",
- "tarball": "http://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz"
- },
- "maintainers": [
- {
- "name": "isaacs",
- "email": "i@izs.me"
- },
- {
- "name": "iarna",
- "email": "me@re-becca.org"
- }
- ],
- "directories": {},
- "_resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz",
- "readme": "ERROR: No README data found!"
+ "homepage": "https://github.com/npm/npmlog#readme",
+ "_id": "npmlog@2.0.0",
+ "_shasum": "4076c200a3dda51133e6f3cf052130105f78bbdf",
+ "_from": "npmlog@>=2.0.0 <2.1.0"
}
diff --git a/deps/npm/node_modules/npmlog/test/basic.js b/deps/npm/node_modules/npmlog/test/basic.js
index 1afcabd1c6b..1887d3a2a8c 100644
--- a/deps/npm/node_modules/npmlog/test/basic.js
+++ b/deps/npm/node_modules/npmlog/test/basic.js
@@ -24,6 +24,7 @@ var resultExpect =
'\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m and maybe a stack.\n',
'\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u001b[31m\u001b[40mERR!\u001b[0m \u001b[0m\u001b[35m404\u001b[0m \n',
'\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u0007noise\u001b[0m\u001b[35m\u001b[0m LOUD NOISES\n',
+ '\u001b[0m\u001b[37m\u001b[40mnpm\u001b[0m \u001b[0m\u0007noise\u001b[0m \u001b[0m\u001b[35merror\u001b[0m erroring\n',
'\u001b[0m' ]
var logPrefixEventsExpect =
@@ -161,7 +162,12 @@ var logEventsExpect =
level: 'noise',
prefix: false,
message: 'LOUD NOISES',
- messageRaw: [ 'LOUD NOISES' ] } ]
+ messageRaw: [ 'LOUD NOISES' ] },
+ { id: 23,
+ level: 'noise',
+ prefix: 'error',
+ message: 'erroring',
+ messageRaw: [ 'erroring' ] } ]
var Stream = require('stream').Stream
var s = new Stream()
@@ -217,6 +223,7 @@ tap.test('basic', function (t) {
'and maybe a stack.\n')
log.addLevel('noise', 10000, {beep: true})
log.noise(false, 'LOUD NOISES')
+ log.noise('error', 'erroring')
t.deepEqual(result.join('').trim(), resultExpect.join('').trim(), 'result')
t.deepEqual(log.record, logEventsExpect, 'record')
diff --git a/deps/npm/node_modules/read-package-json/README.md b/deps/npm/node_modules/read-package-json/README.md
index d497722a435..05ba112ccbe 100644
--- a/deps/npm/node_modules/read-package-json/README.md
+++ b/deps/npm/node_modules/read-package-json/README.md
@@ -105,15 +105,6 @@ If a bindings.gyp file exists, and there is not already a
`scripts.install` field, then the `scripts.install` field will be set to
`node-gyp rebuild`.
-### `wscript`
-
-If a wscript file exists, and there is not already a `scripts.install`
-field, then the `scripts.install` field will be set to `node-waf clean ;
-node-waf configure build`.
-
-Note that the `bindings.gyp` file supercedes this, since node-waf has
-been deprecated in favor of node-gyp.
-
### `index.js`
If the json file does not exist, but there is a `index.js` file
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.editorconfig b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.editorconfig
deleted file mode 100644
index 8de2a35e3a2..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.editorconfig
+++ /dev/null
@@ -1,19 +0,0 @@
-root = true
-
-[*]
-charset = utf-8
-end_of_line = lf
-trim_trailing_whitespace = true
-insert_final_newline = true
-
-[{.,}*.{js,json,json5,yml,yaml}]
-indent_style = space
-indent_size = 2
-
-[*.md]
-indent_style = space
-indent_size = 4
-trim_trailing_whitespace = false
-
-[Makefile]
-indent_style = tab
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.npmignore b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.npmignore
index b561496c91d..5ae40150eea 100644
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.npmignore
+++ b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/.npmignore
@@ -1,6 +1,9 @@
package.json
node_modules
-test/external
+test
+benchmark
+docs
examples
+/.editorconfig
/.eslint*
/.travis.yml
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/benchmark.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/benchmark.js
deleted file mode 100755
index 28a6aad75ad..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/benchmark.js
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/usr/bin/env node
-
-var Benchmark = require('benchmark')
-var YAML = require('js-yaml')
-var JJU = require('../')
-var JSON5 = require('json5')
-var suite = new Benchmark.Suite
-
-var sample
-sample = require('fs').readFileSync(__dirname + '/../package.yaml')
-sample = YAML.safeLoad(sample)
-sample = JSON.stringify(sample)
-
-var functions = {
- 'JSON': function(x) { JSON.parse(x) },
- 'JSON5': function(x) { JSON5.parse(x) },
- 'JJU': function(x) { JJU.parse(x) },
- 'JS-YAML': function(x) { YAML.safeLoad(x) },
-}
-
-for (var name in functions) {
- with ({ fn: functions[name] }) {
- suite.add(name, {
- onCycle: function onCycle(event) {
- process.stdout.write('\r\033[2K - ' + event.target)
- },
- fn: function () {
- fn(sample)
- },
- })
- }
-}
-
-console.log()
-suite.on('cycle', function(event) {
- console.log('\r\033[2K + ' + String(event.target))
-})
-.run()
-
-process.on('exit', function() { console.log() })
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/package.json b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/package.json
deleted file mode 100644
index 7f0dcf08b72..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/benchmark/package.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "name": "benchmarks",
- "private": true,
- "dependencies": {
- "json5": "*",
- "js-yaml": "*",
- "benchmark": "*"
- }
-}
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/Grammar.md b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/Grammar.md
deleted file mode 100644
index eb7c8bc667f..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/Grammar.md
+++ /dev/null
@@ -1,219 +0,0 @@
-
-JSON5 grammar expressed in EBNF form.
-
-PS: I don't know what is appropriate syntax highlighter for this, so I'm using "modula2" because why not. I also inserted <ZWSP> after backslash to preserve syntax highlighting, this character has nothing to do with actual JSON5 syntax and should be ignored.
-
-```modula2
-json5_text = expression_with_whitespace
-
-expression_with_whitespace = [white_space] , expression , [white_space]
-
-expression = literal
- | array_literal
- | object_literal
-
-literal = null_literal
- | boolean_literal
- | signed_numeric_literal
- | string_literal
-
-null_literal = 'null'
-
-boolean_literal = 'true'
- | 'false'
-
-(* Source Characters *)
-
-source_character = .
- (* any Unicode code unit *)
-
-line_terminator = <LF>
- | <CR>
- | <LS>
- | <PS>
-
-line_terminator_sequence = <LF>
- | <CR>
- | <LS>
- | <PS>
- | <CR> , <LF>
-
-white_space = white_space_element
- | white_space , white_space_element
-
-white_space_element = white_space_character
- | comment
-
-white_space_character = <TAB>
- | <VT>
- | <FF>
- | <SP>
- | <NBSP>
- | <BOM>
- | <USP>
-
-comment = multi_line_comment
- | single_line_comment
-
-multi_line_comment = '/*' , [multi_line_comment_chars] , '*/'
-
-multi_line_comment_chars = (source_character - '*') , [multi_line_comment_chars]
- | '*' , [post_asterisk_comment_chars]
-
-post_asterisk_comment_chars = (source_character - ('*' | '/')) , [multi_line_comment_chars]
- | '*' , [post_asterisk_comment_chars]
-
-single_line_comment = '//' , [single_line_comment_chars]
-
-single_line_comment_chars = single_line_comment_char , single_line_comment_chars
-
-single_line_comment_char = source_character - line_terminator
-
-(* Character classes *)
-
-decimal_digit = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
-
-non_zero_digit = decimal_digit - '0'
-
-hex_digit = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'a'
- | 'b' | 'c' | 'd' | 'e' | 'f' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F'
-
-ascii_letter = ascii_letter_lowercase
- | ascii_letter_uppercase
-
-ascii_letter_lowercase = 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i'
- | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r'
- | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z'
-
-ascii_letter_uppercase = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I'
- | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R'
- | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z'
-
-(* Numeric Literals *)
-
-signed_numeric_literal = '-' , numeric_literal
- | '+' , numeric_literal
- | numeric_literal
-
-numeric_literal = decimal_literal
- | hex_integer_literal
- | non_finite_literal
-
-non_finite_literal = 'Infinity'
- | 'NaN'
-
-decimal_literal = decimal_integer_literal , '.' , [decimal_digits] , [exponent_part]
- | '.' , decimal_digits , [exponent_part]
- | decimal_integer_literal , [exponent_part]
-
-decimal_integer_literal = '0'
- | non_zero_digit , [decimal_digits]
-
-decimal_digits = decimal_digit
- | decimal_digits , decimal_digit
-
-exponent_part = exponent_indicator , signed_integer
-
-exponent_indicator = 'e' | 'E'
-
-signed_integer = decimal_digits
- | '+' , decimal_digits
- | '-' , decimal_digits
-
-hex_integer_literal = '0x' , hex_digit
- | '0X' , hex_digit
- | hex_integer_literal , hex_digit
-
-(* String Literals *)
-
-string_literal = '"' , [double_string_characters] , '"'
- | "'" , [single_string_characters] , "'"
-
-double_string_characters = double_string_character , [double_string_characters]
-
-single_string_characters = single_string_character , [single_string_characters]
-
-double_string_character = source_character - ('"' | '\​' | line_terminator)
- | '\​' , escape_sequence
- | line_continuation
-
-single_string_character = source_character - ("'" | '\​' | line_terminator)
- | '\​' , escape_sequence
- | line_continuation
-
-line_continuation = '\​' , line_terminator_sequence
-
-escape_sequence = character_escape_sequence
- | '0'
- | hex_escape_sequence
- | unicode_escape_sequence
-
-character_escape_sequence = single_escape_character
- | non_escape_character
-
-single_escape_character = '"' | "'" | '\​' | 'b' | 'f' | 'n' | 'r' | 't' | 'v'
-
-non_escape_character = source_character - (escape_character | line_terminator)
-
-escape_character = single_escape_character
- | decimal_digit
- | 'x'
- | 'u'
-
-hex_escape_sequence = 'x' , hex_digit , hex_digit
-
-unicode_escape_sequence = 'u' , hex_digit , hex_digit , hex_digit , hex_digit
-
-(* Array Literals *)
-
-array_literal = '[' , [white_space] , ']'
- | '[' , [white_space] , element_list , ']'
- | '[' , [white_space] , element_list , ',' , [white_space] , ']'
-
-element_list = expression , [white_space]
- | element_list , ',' , [white_space] , expression , [white_space]
-
-(* Object Literals *)
-
-object_literal = '{' , [white_space] , '}'
- | '{' , [white_space] , property_name_and_value_list , '}'
- | '{' , [white_space] , property_name_and_value_list , ',' , '}'
-
-property_name_and_value_list = property_assignment , [white_space]
- | property_name_and_value_list , [white_space] , ',' , [white_space] , property_assignment , [white_space]
-
-property_assignment = property_name , [white_space] , ':' , [white_space] , expression
-
-property_name = identifier_name
- | string_literal
- | numeric_literal
-
-identifier_name = identifier_start
- | identifier_name , identifier_part
-
-identifier_start = unicode_letter
- | '$'
- | '_'
- | '\​' , unicode_escape_sequence
-
-identifier_part = identifier_start
- | unicode_combining_mark
- | unicode_digit
- | unicode_connector_punctuation
- | <ZWNJ>
- | <ZWJ>
-
-unicode_letter = ascii_letter
- (* + any character in the Unicode categories "Uppercase letter (Lu)", "Lowercase letter (Ll)", "Titlecase letter (Lt)", "Modifier letter (Lm)", "Other letter (Lo)", or "Letter number (Nl)" *)
-
-unicode_combining_mark =
- (* + any character in the Unicode categories "Non-spacing mark (Mn)" or "Combining spacing mark (Mc)" *)
-
-unicode_digit = decimal_digit
- (* + any character in the Unicode category "Decimal number (Nd)" *)
-
-unicode_connector_punctuation =
- (* + any character in the Unicode category "Connector punctuation (Pc)" *)
-
-
-```
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/JSON5.md b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/JSON5.md
deleted file mode 100644
index bbe18a3d8ce..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/docs/JSON5.md
+++ /dev/null
@@ -1,50 +0,0 @@
-## JSON5 syntax
-
-We support slighly modified version of JSON5, see https://groups.google.com/forum/#!topic/json5/3DjClVYI6Wg
-
-I started from ES5 specification and added a set of additional restrictions on top of ES5 spec. So I'd expect my implementation to be much closer to javascript. It's no longer an extension of json, but a reduction of ecmascript, which was my original intent.
-
-This JSON5 version is a subset of ES5 language, specification is here:
-
-http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf
-
-This is a language that defines data structures only, so following notes/restrictions are applied:
-
-- Literals (NullLiteral, BooleanLiteral, NumericLiteral, StringLiteral) are allowed.
-- Compatibility syntax is not supported, which means octal literals are forbidden.
-- ArrayLiterals and allowed, but instead of AssignmentExpressions you can only use other allowed Literals, ArrayLiterals and ObjectLiterals. Elisions are currently not supported.
-- ObjectLiterals and allowed, but instead of AssignmentExpressions you can only use other allowed Literals, ArrayLiterals and ObjectLiterals. Setters and getters are forbidden.
-- All other primary expressions ("this", Identifier, Expression) are forbidden.
-- Two unary expressions ('-' and '+') allowed before NumericLiterals.
-- Any data that has a number type can be represented, including +0, -0, +Infinity, -Infinity and NaN.
-- "undefined" is forbidden, use null instead if applicable.
-- Comments and whitespace are defined according to spec.
-
-Main authority here is ES5 spec, so strict backward JSON compatibility is not guaranteed.
-
-
-If you're unsure whether a behaviour of this library is a bug or not, you can run this test:
-
-```javascript
-JSON5.parse(String(something))
-```
-
-Should always be equal to:
-
-```javascript
-eval('(function(){return ('+String(something)+'\n)\n})()')
-```
-
-If `something` meets all rules above. Parens and newlines in the example above are carefully placed so comments and another newlines will work properly, so don't look so impressed about that.
-
-
-## Weirdness of JSON5
-
-These are the parts that I don't particulary like, but see no good way to fix:
-
- - no elisions, `[,,,] -> [null,null,null]`
- - `[Object], [Circular]` aren't parsed
- - no way of nicely representing multiline strings
- - unicode property names are way to hard to implement
- - Date and other custom objects
- - incompatible with YAML (at least comments)
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.json b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.json
index ed34885e268..6e66208d9e1 100644
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.json
+++ b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.json
@@ -1,6 +1,6 @@
{
"name": "jju",
- "version": "1.2.0",
+ "version": "1.2.1",
"description": "a set of utilities to work with JSON / JSON5 documents",
"author": {
"name": "Alex Kocharin",
@@ -8,7 +8,7 @@
},
"repository": {
"type": "git",
- "url": "git://github.com/rlidwka/jju.git"
+ "url": "git://github.com/rlidwka/jju"
},
"bugs": {
"url": "https://github.com/rlidwka/jju/issues"
@@ -37,12 +37,12 @@
"type": "WTFPL",
"url": "http://www.wtfpl.net/txt/copying/"
},
- "gitHead": "6f1b2a8321cb0dfcffc50378b3632853cf529671",
- "_id": "jju@1.2.0",
- "_shasum": "add5b586fec853b44929d78bf94864ab577c02e9",
+ "gitHead": "8b079c1d03af527ab28a47c7b714d6f888abc53d",
+ "_id": "jju@1.2.1",
+ "_shasum": "edf6ec20d5d668c80c2c00cea63f8a9422a4b528",
"_from": "jju@>=1.1.0 <2.0.0",
"_npmVersion": "2.0.1",
- "_nodeVersion": "1.1.1",
+ "_nodeVersion": "2.2.1",
"_npmUser": {
"name": "rlidwka",
"email": "alex@kocharin.ru"
@@ -54,10 +54,9 @@
}
],
"dist": {
- "shasum": "add5b586fec853b44929d78bf94864ab577c02e9",
- "tarball": "http://registry.npmjs.org/jju/-/jju-1.2.0.tgz"
+ "shasum": "edf6ec20d5d668c80c2c00cea63f8a9422a4b528",
+ "tarball": "http://registry.npmjs.org/jju/-/jju-1.2.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/jju/-/jju-1.2.0.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/jju/-/jju-1.2.1.tgz"
}
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.yaml
index cab7b5d0bca..19283ecc9dc 100644
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.yaml
+++ b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/package.yaml
@@ -3,7 +3,7 @@
# "jju" stands for "json/json5 utils"
name: jju
-version: 1.2.0
+version: 1.2.1
description: a set of utilities to work with JSON / JSON5 documents
author:
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/portable-json5-tests.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/portable-json5-tests.yaml
deleted file mode 100644
index 5bf6ac38fe1..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/portable-json5-tests.yaml
+++ /dev/null
@@ -1,916 +0,0 @@
-# vi:set ts=2 sts=2 sw=2 et:
-#
-# Copyright (c) JD 2456730 Alex Kocharin <alex@kocharin.ru>
-#
-# Permission to use, copy, modify, and/or distribute this software for any
-# purpose with or without fee is hereby granted, provided that the above
-# copyright notice and this permission notice appear in all copies.
-#
-# The original file is available here:
-# https://github.com/rlidwka/jju/tree/master/test/portable-json5-tests.yaml
-#
-# ----------------------------------------------------------------------------
-#
-# Portable JSON5 test suite.
-#
-# This file contains an actual YAML data and it may include fancy syntax.
-# If your platform does not support YAML, you might wish to pre-process it
-# using a generic YAML parser.
-#
-
-%YAML 1.2
----
-#
-# "input" is an arbitrary JSON5 you have to parse
-# "output" is a normalized JSON you have to compare your result with,
-# or !error (null) if your input should result in parser error
-#
-# Types of tests:
-#
-# - basic - Tests that every JSON5 parser should pass.
-#
-# - advanced - Tests that bring close compatibility with javascript. Not
-# strictly required, but nice to have for completeness.
-#
-# - extra - Extra test cases you can follow at your discretion.
-#
-# Questionable features like elisions go to extra. All valid javascript, but
-# invalid json5 also goes to extra. Feel free to ignore this section if you
-# want to. Thus, eval(input) is a complete json5 parser, that should pass all
-# basic and advanced tests.
-#
-
-# Basic types in minimal form
-# ---------------------------
-
-type-no-data:
- type: extra
- output: !error
- input: ''
-
-type-null:
- type: basic
- output: null
- input: >
- null
-
-# undefined is not supported,
-# null should be used instead
-type-no-undefined:
- type: extra
- output: !error
- input: >
- undefined
-
-type-no-raw:
- type: extra
- output: !error
- input: >
- foobar
-
-type-bool-true:
- type: basic
- output: true
- input: >
- true
-
-type-bool-false:
- type: basic
- output: false
- input: >
- false
-
-type-number:
- type: basic
- output: 0
- input: >
- 0
-
-type-string:
- type: basic
- output: ""
- input: >
- ""
-
-type-object:
- type: basic
- output: {}
- input: >
- {}
-
-type-array:
- type: basic
- output: []
- input: >
- []
-
-# Numbers: special
-# ----------------
-
-# note: it's hard to test this
-# just add `1/x < 0` check in your code somewhere
-num-negative-zero:
- type: extra
- output: -0.0
- input: >
- -0
-
-num-nan:
- type: basic
- output: .nan
- input: >
- NaN
-
-num-signed-nan:
- type: basic
- output: .nan
- input: >
- +NaN
-
-num-positive-inf:
- type: basic
- output: +.inf
- input: >
- Infinity
-
-num-negative-inf:
- type: basic
- output: -.inf
- input: >
- -Infinity
-
-num-inf-exact-case:
- type: extra
- output: !error
- input: >
- INFINITY
-
-# Numbers: hexadecimal
-# --------------------
-
-num-hex-zero:
- type: basic
- output: 0
- input: >
- 0x0
-
-num-cut-hex:
- type: basic
- output: !error
- input: >
- 0x
-
-num-all-hex:
- type: basic
- output: 12841684683518
- input: >
- 0xBADF00DCAFE
-
-num-mixed-case:
- type: basic
- output: 3735928559
- input: >
- 0xDeAdBEef
-
-num-signed-hex:
- type: advanced
- output: 31
- input: >
- +0x1F
-
-num-negative-hex:
- type: advanced
- output: -31
- input: >
- -0x1f
-
-num-bad-hex:
- type: advanced
- output: !error
- input: >
- 0xBADxF00D
-
-num-no-hex-float:
- type: advanced
- output: !error
- input: >
- 0x12.345
-
-# this is not actually an exponent :)
-num-hex-exponent:
- type: advanced
- output: 4836
- input: >
- 0x0012e4
-
-# Numbers: octal
-# --------------
-
-# Octals are primarily used in config files
-# to set up a file mask (like 0777)
-#
-# Note: they will have 0o12345 syntax instead
-# of 012345 in the ES6, so we'll need to switch
-# as well in the future
-
-num-octal:
- type: extra
- output: 342391
- input: >
- 01234567
-
-num-octal-zeroes:
- type: extra
- output: -24000
- input: >
- -000000056700
-
-num-bad-octal:
- type: extra
- output: !error
- input: >
- 012345678
-
-num-no-octal-float:
- type: extra
- output: !error
- input: >
- 012.345
-
-num-no-octal-exp:
- type: extra
- output: !error
- input: >
- 0123e4
-
-# Numbers: floating point
-# -----------------------
-
-num-float:
- type: basic
- output: 123.456
- input: >
- 123.456
-
-num-signed-foat:
- type: basic
- output: -0.00098765
- input: >
- -0.00098765
-
-num-omit-trailing-mantissa:
- type: basic
- output: 1234000
- input: >
- 1234.e3
-
-num-omit-leading-mantissa:
- type: advanced
- output: -123.4
- input: >
- -.1234e3
-
-num-bad-float:
- type: advanced
- output: !error
- input: >
- 0.12.345
-
-num-bad-sum:
- type: extra
- output: !error
- input: >
- 0.12+345
-
-num-uc-exp:
- type: advanced
- output: -1230000
- input: >
- -123E+4
-
-num-float-exp:
- type: basic
- output: 123000
- input: >
- 0.0123e7
-
-num-bad-exp:
- type: extra
- output: !error
- input: >
- 123e7.3
-
-num-bad-char:
- type: extra
- output: !error
- input: >
- 123a456
-
-num-no-exp:
- type: advanced
- output: !error
- input: >
- 123e
-
-num-zero-exp:
- type: advanced
- output: -0.0
- input: >
- -.00e-0
-
-num-dec-base-signed-exp:
- type: advanced
- output: 0.00000123
- input: >
- 1230000E-012
-
-# String: quotes
-# --------------
-
-string-double-quotes:
- type: basic
- output: foobar
- input: >
- "foobar"
-
-string-single-quotes:
- type: basic
- output: foobar
- input: >
- 'foobar'
-
-string-open:
- type: basic
- output: !error
- input: >
- "\\\\\\\\\\\\\"
-
-string-not-open:
- type: basic
- output: "\\\\\\\\\\\\\\"
- input: >
- "\\\\\\\\\\\\\\"
-
-string-continuation:
- type: advanced
- output: " foo bar "
- input: >
- " foo \
- bar \
- "
-
-string-win-continuation:
- type: advanced
- output: "foobar"
- input: "'foo\\\r\nbar'"
-
-string-win-reverse-continuation:
- type: advanced
- output: !error
- input: "'foo\\\n\rbar'"
-
-string-unicode-continuation:
- type: advanced
- output: "foobarbaz"
- input: "'foo\\\u2028bar\\\u2029baz'"
-
-string-multi-bad-continuation:
- type: advanced
- output: !error
- input: >
- foo\
-
- bar
-
-string-bad-ending:
- type: basic
- output: !error
- input: "'foo\rbar'"
-
-string-bad-ending-2028:
- type: advanced
- output: !error
- input: "'foo\u2028bar'"
-
-string-bad-ending-2029:
- type: advanced
- output: !error
- input: "'foo\u2029bar'"
-
-string-literal-unicode:
- type: advanced
- output: "foo\uFEFF\u2030bar\u1234"
- input: "'foo\uFEFF\u2030bar\u1234'"
-
-string-control-char:
- type: advanced
- output: "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0b\x0c\x0e\x0f"
- input: "'\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0b\x0c\x0e\x0f'"
-
-# String: escape sequences
-# ------------------------
-
-string-octal-escape:
- type: extra
- output: "\x1b[1;32mhi\x1b[m??"
- input: >
- '\033[1;32mhi\033[m\077\077'
-
-string-octal-two-digits:
- type: extra
- output: "\n\x1c\x2e\x07890\x01"
- input: >
- '\12\34\56\78\90\1'
-
-string-octal-three-digits:
- type: extra
- output: "\n34.78\xff 0"
- input: >
- '\01234\5678\377\400'
-
-string-hex-escape:
- type: extra
- output: "\x01\x23\xab\xcd\xef"
- input: >
- "\x01\x23\xab\xCd\xEF"
-
-# \0 is *not* an octal escape sequence,
-# and is allowed even in strict mode
-string-zero-point:
- type: basic
- output: "\0"
- input: >
- '\0'
-
-string-escape-double-quotes:
- type: basic
- output: "\"''"
- input: >
- "\"'\'"
-
-string-escape-single-quotes:
- type: basic
- output: " '\"\" "
- input: >
- ' \'"\" '
-
-string-escape-json-chars:
- type: basic
- output: "\\\/\b\f\n\r\t"
- input: >
- "\\\/\b\f\n\r\t"
-
-# this character was left out of
-# json spec for whatever reason
-string-escape-slash-v:
- type: basic
- output: "\v"
- input: >
- "\v"
-
-string-unicode-escape:
- type: basic
- output: "\u0000\uffffx\ufeff\u1234\u9f6a\u2028\uabcd"
- input: >
- "\u0000\uFFFFx\uFeFf\u1234\u9F6a\u2028\uabcd"
-
-string-arbitrary-escape:
- type: advanced
- output: "X12Uqwe\r\tyiopasd\fghjklzc\u000b\b\nm9 "
- input: >
- '\X12\U\q\w\e\r\t\y\i\o\p\a\s\d\f\g\h\j\k\l\z\c\v\b\n\m\9\ '
-
-string-bad-unicode:
- type: advanced
- output: !error
- input: >
- '\uEFGH'
-
-string-incomplete-unicode:
- type: advanced
- output: !error
- input: >
- '\u$'
-
-string-bad-hex:
- type: advanced
- output: !error
- input: >
- '\xFG'
-
-string-incomplete-hex:
- type: advanced
- output: !error
- input: >
- '\x$'
-
-# Object literals
-# ---------------
-
-object-nested:
- type: basic
- output: {q:{'w':{"e":[1]}}}
- input: |
- {q:{'w':{"e":[1]}}}
-
-object-trailing-comma:
- type: basic
- output: {foo: 'bar'}
- input: |
- {foo: 'bar',}
-
-object-leading-comma-style:
- type: basic
- output: {q: 1,w: 2,e: 3}
- input: |
- { q: 1
- , w: 2
- , e: 3
- }
-
-object-incomplete:
- type: basic
- output: !error
- input: |
- {q:1,w:2,{}
-
-object-isnt-array:
- type: basic
- output: !error
- input: |
- {1,2}
-
-object-no-single-comma:
- type: basic
- output: !error
- input: |
- {,}
-
-object-no-elisions:
- type: basic
- output: !error
- input: |
- {q:1,,w:2}
-
-# Objects: keys
-# -------------
-
-object-singlequoted:
- type: basic
- output: {q: 1,w: 2,e: 3}
- input: |
- {'q':1,'w':2,'e':3}
-
-object-doublequoted:
- type: basic
- output: {q: 1,w: 2,e: 3}
- input: |
- {"q":1,"w":2,"e":3}
-
-object-unquoted:
- type: basic
- output: {$FOO_bar123: 'baz'}
- input: >
- {$FOO_bar123: 'baz'}
-
-object-no-first-digit:
- type: advanced
- output: !error
- input: >
- {123foo: bar}
-
-object-unquoted-unicode:
- type: advanced
- output: {"\u1f04\u03bb\u03c6\u03b1": baz}
- input: "{\u1f04\u03bb\u03c6\u03b1:'baz'}"
-
-object-unicode-escape-key:
- type: advanced
- output: {foo: 'bar', "\u1f04\u03bb\u03c6\u03b1": baz, "qwe\u1f04rty": quux}
- input: |
- {foo:'bar', \u1f04\u03bb\u03c6\u03b1:'baz', qwe\u1f04rty: "quux"}
-
-object-no-raw-literal:
- type: extra
- output: !error
- input: |
- {foo: bar}
-
-object-bad-literal:
- type: advanced
- output: !error
- input: |
- {foo-bar: 123}
-
-object-no-space-in-key:
- type: advanced
- output: !error
- input: |
- {foo bar: 123}
-
-object-no-comment-in-key:
- type: advanced
- output: !error
- input: |
- {foo/*bar*/baz: 123}
-
-object-float-keys:
- type: advanced
- output: {'1': 'one', '3.1415': 'pi'}
- input: |
- {1:'one', 3.1415:'pi'}
-
-object-no-negative:
- type: advanced
- output: !error
- input: |
- {-5: 123}
-
-object-exponent-keys:
- type: advanced
- output: {'1': 'exp', '1000': 'pos', '0.001': 'neg'}
- input: |
- {1e0: 'exp', 1e+3: 'pos', 1e-3: 'neg'}
-
-object-octal-keys:
- type: extra
- output: {'668': 1}
- input: |
- {01234: 1}
-
-object-hex-keys:
- type: advanced
- output: {'51966': 1}
- input: |
- {0xCAFE: 1}
-
-object-null-keys:
- type: basic
- output: {'null': null}
- input: |
- {null: null}
-
-object-no-array-keys:
- type: extra
- output: !error
- input: |
- {[]: 123}
-
-object-no-empty-keys:
- type: basic
- output: !error
- input: |
- {: 123}
-
-object-empty-string-key:
- type: basic
- output: {s: {'': 1}, m: {'': 2}}
- input: |
- {s: {'': 1}, m: {"": 2}}
-
-object-bad-unicode-space:
- type: advanced
- output: !error
- input: |
- { \u0020foobar: 123 }
-
-object-bad-unicode-dash:
- type: advanced
- output: !error
- input: |
- { foo\u002dbar: 123}
-
-object-incomplete-unicode-sequence:
- type: advanced
- output: !error
- input: |
- { foo\u12f: 123 }
-
-object-double-escape:
- type: advanced
- output: !error
- input: |
- { foo\\u1234bar: 123 }
-
-object-we-arent-es3:
- type: basic
- output: {new: 1, delete: 2, throw: 3}
- input: |
- {new: 1, delete: 2, throw: 3}
-
-object-last-digits:
- type: basic
- output: {$123e2: 1, abc123: 2}
- input: |
- {$123e2: 1, abc123: 2}
-
-object-unicode-in-string:
- type: advanced
- output: {"\uff13qwe": 123}
- input: |
- {"\uff13qwe": 123}
-
-object-unicode-esc-in-string:
- type: advanced
- output: {"\\uff13qwe": 123}
- input: |
- {"\\uff13qwe": 123}
-
-object-unicode-digits-first-esc:
- type: advanced
- output: !error
- input: |
- {\uff13qwe: 123}
-
-object-unicode-digits-first-lit:
- type: advanced
- output: !error
- input: "{\uff13qwe: 123}"
-
-object-unicode-weirdness-esc:
- type: advanced
- output: {"digit\uff13": 1, "comb\u094F": 2, "punct\u2040": 3, "zwnj\u200C": 4}
- input: |
- {digit\uff13: 1, comb\u094F: 2, punct\u2040: 3, zwnj\u200C: 4}
-
-object-unicode-weirdness-lit:
- type: advanced
- output: {"digit\uff13": 1, "comb\u094F": 2, "punct\u2040": 3, "zwnj\u200C": 4}
- input: "{digit\uff13: 1, comb\u094F: 2, punct\u2040: 3, zwnj\u200C: 4}"
-
-# Array literals
-# --------------
-
-array-all-types:
- type: basic
- output: [1.2,"3,4",{},[],null,+.inf]
- input: |
- [1.2,"3,4",{},[],null,Infinity]
-
-array-trailing-comma:
- type: basic
- output: [1,2,3,4]
- input: |
- [1,2,3,4,]
-
-array-leading-comma-style:
- type: basic
- output: [quux,foo,bar,baz]
- input: |
- [ 'quux'
- , 'foo'
- , 'bar'
- , 'baz'
- ]
-
-array-incomplete:
- type: basic
- output: !error
- input: |
- [1,2,3,[]
-
-array-nested:
- type: basic
- output: [[[[[[]]]]],[[],[]]]
- input: |
- [[[[[[/*[]*/]]]]],[[],[]]]
-
-array-isnt-object:
- type: extra
- output: !error
- input: |
- [1:2]
-
-array-no-single-comma:
- type: extra
- output: !error
- input: |
- [,]
-
-array-no-elisions:
- type: extra
- output: !error
- input: |
- [1,,2,3]
-
-# Comments
-# --------
-
-comment-single:
- type: basic
- output: foobar
- input: |
- // blahblah
- "foobar"
- // another one
-
-comment-multi:
- type: basic
- output: foobar
- input: |
- /*
- * 123
- */
- "foobar"
- /**/
-
-comment-single-newlines:
- type: advanced
- output: [ 123, 456, 789 ]
- input: "[// foo\r123,// bar\u2028456,// baz\u2029789]"
-
-comment-inside:
- type: advanced
- output: [123, '// foo', '/* bar']
- input: >
- [
- /*
- " // */ 123, // ",
- "// foo",
- '/* bar',
- ]
-
-comment-in-token:
- type: advanced
- output: !error
- input:
- 123/*comment*/456
-
-comment-java-style:
- type: basic
- output: 123
- input:
- /*****************/
- 123
- /****************/
-
-comment-object:
- type: basic
- output: {q: 123}
- input: /**/{/**/q/**/:/**/123/**/,/**/}//
-
-# Whitespace
-# ----------
-
-ws-no-whitespace:
- type: basic
- output: {"foo":bar,bar:["qwe",null,[],{}],"baz":123}
- input: '{foo:"bar","bar":["qwe",null,[],{}],"baz":123}'
-
-ws-allow-prefix:
- type: basic
- output: 123
- input: " \t123"
-
-ws-unicode-spaces:
- type: advanced
- output: { foo : 123 }
- input: "
- \u0020\u00A0\uFEFF
- {
- \x09\x0A\x0B\x0C\x0D\u1680\u180E
- foo
- \u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A
- :
- \u2028\u2029\u202F\u205F\u3000
- 123
- \uFEFF
- }"
-
-ws-unicode-newlines:
- type: advanced
- output: [ 123, 456 ]
- input: "
- [
- \u000D
- 123,
- \u2028
- 456,
- \u2029
- ]
- "
-
-# Multiple tokens
-# ---------------
-
-multi-string-nospace:
- type: basic
- output: !error
- input: '"foo""bar"'
-
-multi-string:
- type: basic
- output: !error
- input: '"foo" "bar"'
-
-# note: valid javascript
-multi-array:
- type: extra
- output: !error
- input: '[0] [0]'
-
-multi-object:
- type: basic
- output: !error
- input: '{} {}'
-...
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_analyze.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_analyze.js
deleted file mode 100644
index 2a24e01eac2..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_analyze.js
+++ /dev/null
@@ -1,53 +0,0 @@
-var _assert = require('assert')
-var analyze = require('../').analyze
-
-function addTest(a, b) {
- if (typeof(describe) === 'function') {
- it('test_analyze: ' + a + ' == ' + b, function() {
- _assert.equal(a, b)
- })
- } else {
- _assert.equal(a, b)
- }
-}
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces()))
-addTest(t.has_whitespace, false)
-addTest(t.has_comments, false)
-addTest(t.has_newlines, false)
-addTest(t.newline, '\n')
-addTest(t.quote, '"')
-addTest(t.quote_keys, true)
-addTest(t.indent, '')
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces(), null, 2))
-addTest(t.has_whitespace, true)
-addTest(t.has_comments, false)
-addTest(t.has_newlines, true)
-addTest(t.newline, '\n')
-addTest(t.quote, '"')
-addTest(t.quote_keys, true)
-addTest(t.indent, ' ')
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces(), null, 3))
-addTest(t.indent, ' ')
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces(), null, '\t'))
-addTest(t.indent, '\t')
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces(), null, 3).replace(/\n/g, '\r\n'))
-addTest(t.indent, ' ')
-addTest(t.newline, '\r\n')
-
-var t = analyze(JSON.stringify(require('os').networkInterfaces()).replace(/"/g, "'"))
-addTest(t.quote, "'")
-addTest(t.quote_keys, true)
-
-var t = analyze("{foo:'bar', 'bar':\"baz\", 'baz':\"quux\"}")
-addTest(t.quote, "'")
-addTest(t.quote_keys, false)
-
-var t = analyze("{foo:'bar', \"bar\":'baz', \"baz\":\"quux\"}")
-addTest(t.quote, '"')
-addTest(t.quote_keys, false)
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_document.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_document.js
deleted file mode 100644
index 5f1ef2aaf6a..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_document.js
+++ /dev/null
@@ -1,214 +0,0 @@
-var assert = require('assert')
-var create = require('../lib/document').Document
-var jju = require('..')
-
-var str = '{ x\r\n:\n1, y: {"..z.": 123, t: null, s:"123", a:[ 1,2,{x:3},] }}\n'
-var d = create(str)
-assert.equal(d + '', str)
-assert.deepEqual(d.get(''), {x:1,y:{'..z.':123,t:null,s:'123',a:[1,2,{x:3}]}})
-assert.deepEqual(d.get('x'), 1)
-assert.deepEqual(d.get('x.x'), undefined)
-assert.deepEqual(d.get('x.x.x.x'), undefined)
-assert.strictEqual(d.get('y.x'), undefined)
-assert.deepEqual(d.get('y.s'), '123')
-assert.strictEqual(d.get('y.t'), null)
-assert.strictEqual(d.get('y.t.x'), undefined)
-assert.equal(d.has(''), true)
-assert.equal(d.has('x'), true)
-assert.equal(d.has('x.x'), false)
-assert.equal(d.has('x.x.x.x'), false)
-assert.equal(d.has('y.x'), false)
-assert.equal(d.has('y'), true)
-assert.equal(d.has('y.s'), true)
-assert.equal(d.has('y.t'), true)
-assert.equal(d.has('a'), false)
-
-// arrays
-assert.deepEqual(d.get('y.a'), [1,2,{x:3}])
-assert.deepEqual(d.get('y.a.0'), 1)
-assert.deepEqual(d.get('y.a.2.x'), 3)
-assert.deepEqual(d.get('y.a.10'), undefined)
-assert.deepEqual(d.has('y.a.0'), true)
-assert.deepEqual(d.has('y.a.10'), false)
-assert.deepEqual(d.get('y.a.2'), {x:3})
-assert.deepEqual(d.get('y.a.-1'), undefined)
-
-// controversial
-assert.strictEqual(d.get('y.s.0'), undefined)
-assert.equal(d.has('y.s.0'), false)
-
-// paths
-assert.deepEqual(d.get([]), {x:1,y:{'..z.':123,t:null,s:'123',a:[1,2,{x:3}]}})
-assert.strictEqual(d.has([]), true)
-assert.strictEqual(d.get(['y','..z.']), 123)
-assert.strictEqual(d.has(['y','..z.']), true)
-assert.deepEqual(d.get(['y','a',2,'x']), 3)
-assert.deepEqual(create('[1]').set(0, 4).get(''), [4])
-assert.deepEqual(create('[1]').set(1, 4).get(''), [1,4])
-assert.deepEqual(create('[1]').has(0), true)
-assert.deepEqual(create('[1]').has(1), false)
-assert.deepEqual(create('[1]').get(0), 1)
-
-// invalid paths
-assert.throws(function() { create('[1]').set(null, 4) }, /invalid path type/i)
-assert.throws(function() { create('[1]').set({}, 4) }, /invalid path type/i)
-assert.throws(function() { create('[1]').set(/./, 4) }, /invalid path type/i)
-assert.throws(function() { create('[1]').set(function(){}, 4) }, /invalid path type/i)
-assert.throws(function() { create('[1]').set(false, 4) }, /invalid path type/i)
-assert.throws(function() { create('[1]').set(undefined, 4) }, /invalid path type/i)
-
-// set root
-assert.strictEqual(create(str).set('', 4).get(''), 4)
-assert.strictEqual(create(str).set('', null).get(''), null)
-assert.strictEqual(create(str).set('', {x:4}).get('x'), 4)
-assert.deepEqual(create(str).set('', [1,2,3]).get(''), [1,2,3])
-assert.strictEqual(create('1').set('', 4).get(''), 4)
-assert.strictEqual(create('null').set('', 4).get(''), 4)
-assert.strictEqual(create('[]').set('', 4).get(''), 4)
-assert.strictEqual(create('{}').set('', 4).get(''), 4)
-
-// set 1st level
-assert.deepEqual(create('{}').set('x', 4).get('x'), 4)
-assert.deepEqual(create('{a:{b:[]}}').set('a.b.0', 4).get('a'), {b:[4]})
-//assert.deepEqual(create('1').set('x', 4).get('x'), 4)
-//assert.deepEqual(create('null').set('x', 4).get('x'), 4)
-
-// array: boundaries
-assert.strictEqual(create('[]').set('0', 4).get('0'), 4)
-assert.strictEqual(create('[1,2,3]').set('2', 4).get('2'), 4)
-assert.strictEqual(create('[1,2,3]').set('3', 4).get('3'), 4)
-
-// various error cases
-assert.throws(function() { create('1').set('x', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('null').set('x', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('[]').set('x', 4) }, /set key .* of an array/)
-assert.throws(function() { create('""').set('x', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('{}').set('x.x.x', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('1').set('1', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('null').set('1', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('""').set('1', 4) }, /set key .* of an non-object/)
-assert.throws(function() { create('[]').set('-1', 4) }, /set key .* of an array/)
-assert.throws(function() { create('[]').set('1', 4) }, /set key .* out of bounds/)
-assert.throws(function() { create('[1,2,3]').set('4', 4) }, /set key .* out of bounds/)
-assert.throws(function() { create('{a:{b:[]}}').set('a.b.x', 4) }, /set key .* of an array/)
-
-// unsetting stuff
-assert.throws(function() { create('[]').unset('') }, /can't remove root document/)
-
-// arrays: handling spaces correctly
-assert.equal(create("[]").set(0,{})+"", '[{}]')
-assert.equal(create("[0]").set(1,{})+"", '[0,{}]')
-assert.equal(create("[0,]").set(1,{})+"", '[0,{},]')
-assert.equal(create("[ ]").set(0,{})+"", '[{} ]')
-assert.equal(create("[ 0 , ]").set(1,{})+"", '[ 0 , {}, ]')
-assert.equal(create("[ 0 ]").set(1,{})+"", '[ 0, {} ]')
-assert.equal(create("{}").set('y',{})+"", '{"y":{}}')
-assert.equal(create("{x:1}").set('y',{})+"", '{x:1,y:{}}')
-assert.equal(create("{x:1,}").set('y',{})+"", '{x:1,y:{},}')
-assert.equal(create("{ }").set('y',{})+"", '{"y":{} }')
-assert.equal(create("{ x:1 , }").set('y',{})+"", '{ x:1 , y:{}, }')
-assert.equal(create("{ x:1 }").set('y',{})+"", '{ x:1, y:{} }')
-
-// deleting elements
-assert.throws(function() { create('[]').unset('0') }, /unset key .* out of bounds/)
-assert.throws(function() { create('[1,2]').unset('2') }, /unset key .* out of bounds/)
-assert.throws(function() { create('[1,2,3]').unset('0') }, /in the middle of an array/)
-
-// CommonJS assert spec is "awesome"
-assert.deepEqual(create('[1,2]').unset('1').get(''), [1])
-assert.deepEqual(create('[1,2]').unset('1').get('').length, 1)
-assert.deepEqual(create('[1,2,3]').unset('2').unset('1').get(''), [1])
-assert.deepEqual(create('[1,2,3]').unset('2').unset('1').get('').length, 1)
-assert.deepEqual(create('[1]').unset('0').get(''), [])
-assert.deepEqual(create('[1]').unset('0').get('').length, 0)
-
-assert.deepEqual(create('{x:{y:"z"}, z:4}').unset('x').get(''), {z:4})
-assert.throws(function() { create('[1,2]').unset('') }, /root/)
-
-// getting crazy
-//assert.deepEqual(create(str).set('a.b.c.d.e', 1).get('a'), {b:{c:{d:{e:1}}}})
-
-// update: arrays
-assert.deepEqual(create("[1]").update([2,3])+"", '[2,3]')
-assert.deepEqual(create("[1]").update([2,3,4])+"", '[2,3,4]')
-assert.deepEqual(create("[]").update([2])+"", '[2]')
-assert.deepEqual(create("[2]").update([])+"", '[]')
-assert.deepEqual(create("[2,3,4]").update([2,3])+"", '[2,3]')
-assert.deepEqual(create("[2,3,4]").update([])+"", '[]')
-assert.deepEqual(create("[]").update([2,3,4])+"", '[2,3,4]')
-assert.deepEqual(create(" /*zz*/ [ 2 , 3 , 4 ] /*xx*/ ").update([])+"", ' /*zz*/ [ ] /*xx*/ ')
-assert.deepEqual(create(" /*zz*/ [ ] /*xx*/ ").update([2,3,4])+"", ' /*zz*/ [2,3,4 ] /*xx*/ ')
-
-// update: objects
-assert.deepEqual(create("{x:1}").update({x:1,y:2,z:3})+"", '{x:1,y:2,z:3}')
-assert.deepEqual(create("{x:1}").update({x:2,z:3,t:4})+"", '{x:2,z:3,t:4}')
-assert.deepEqual(create("{}").update({x:1,y:2})+"", '{"x":1,"y":2}')
-assert.deepEqual(create("{x:1}").update({})+"", '{}')
-assert.deepEqual(create("{x:1,y:2}").update({x:1})+"", '{x:1}')
-assert.deepEqual(create(" /*zz*/ { x /*a*/ : /*b*/ 2 , y:3 , z //\n: 4 } /*xx*/ ").update({})+"", ' /*zz*/ { } /*xx*/ ')
-assert.deepEqual(create(" /*zz*/ { } /*xx*/ ").update({x: 2, y: 3, z: 4})+"", ' /*zz*/ {"x":2,"y":3,"z":4 } /*xx*/ ')
-
-// remove trailing comma
-assert.deepEqual(create("{x:1,}").update({})+"", '{}')
-assert.deepEqual(create("[0,]").update([])+"", '[]')
-assert.deepEqual(create("[0 /*z*/ , /*z*/]").update([])+"", '[ /*z*/]')
-
-// mode
-assert.equal(create('{"test":123}', {mode:'json'}).update({q:1,w:2})+'', '{"q":1,"w":2}')
-
-assert.equal(create('{1:2}').update({ a: 1, b: [1,2], c: 3})+'', '{a:1,b:[1,2],c:3}')
-
-// undef
-//assert.throws(function(){ jju.update(undefined, undefined) }, /root doc/)
-assert.equal(jju.update(undefined, undefined), '')
-assert.equal(jju.update(undefined, 42), '42')
-assert.equal(jju.update(undefined, {x: 5}), '{"x":5}')
-
-/*
- * real test
- */
-var upd = { name: 'yapm',
- version: '0.6.0',
- description: 'npm wrapper allowing to use package.yaml instead of package.json',
- author: { name: 'Alex Kocharin', email: 'alex@kocharin.ru' },
- keywords:
- [ 'package manager',
- 'modules',
- 'install',
- 'package.yaml',
- 'package.json5',
- 'yaml',
- 'json5',
- 'npm' ],
- preferGlobal: true,
- homepage: 'https://npmjs.org/doc/',
- repository: { type: 'git', url: 'https://github.com/rlidwka/yapm' },
- bugs: { url: 'http://github.com/rlidwka/yapm/issues' },
- main: './yapm.js',
- bin: { yapm: './yapm.js' },
- dependencies: { npm: '*', 'js-yaml': '*', through: '*', 'json5-utils': '*' },
- devDependencies: { async: '*' },
- optionalDependencies: { 'yaml-update': '*' },
- test_nonascii: 'тест' }
-
-assert.deepEqual(create(create('{"garbage":"garbage"}').update(upd)).get(''), upd)
-assert.deepEqual(JSON.parse(create('{"garbage":"garbage"}', {mode:'json',legacy:true}).update(upd)), upd)
-
-//console.log(create('{"garbage":"garbage"}').update(upd)+'')
-
-//assert.deepEqual(create(" [ ] //").set(0,{})+"" [ ,{}] //
-
-
-//node -e 'console.log(require("./document").Document("{}").set("",[1,2,3])+"")'[1, 2, 3]
-
-//alex@elu:~/json5-utils/lib$ node -e 'console.log(require("./document").Document("[]").set("0",[1,2,3]).get(""))'
-//[ [ 1, 2, 3 ] ]
-
-
-/*assert.equal(create('"test"').get(''), 'test')
-assert.equal(create('"test"').get([]), 'test')
-assert.equal(create('"test"').get(false), 'test')
-assert.equal(create(undefined).get(''), undefined)
-
-//assert.equal(create('"test"').set('', 'foo').toString(), '"foo"')
-*/
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_errors.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_errors.js
deleted file mode 100644
index 8b2cdb7dcbd..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_errors.js
+++ /dev/null
@@ -1,56 +0,0 @@
-var assert = require('assert')
-var parse = require('../').parse
-
-function addTest(arg, row, col, errRegExp) {
- var fn = function() {
- try {
- parse(arg)
- } catch(err) {
- if (row !== undefined) assert.equal(err.row, row, 'wrong row: ' + err.row)
- if (col !== undefined) assert.equal(err.column, col, 'wrong column: ' + err.column)
- if (errRegExp) assert(errRegExp.exec(err.message))
- return
- }
- throw Error("no error")
- }
-
- if (typeof(describe) === 'function') {
- it('test_errors: ' + JSON.stringify(arg), fn)
- } else {
- fn()
- }
-}
-
-// semicolon will be unexpected, so it indicates an error position
-addTest(';', 1, 1)
-addTest('\n\n\n;', 4, 1)
-addTest('\r\n;', 2, 1)
-addTest('\n\r;', 3, 1)
-addTest('\n\u2028;', 3, 1)
-addTest('\n\u2029;', 3, 1)
-addTest('[\n1\n,\n;', 4, 1)
-addTest('{\n;', 2, 1)
-addTest('{\n1\n:\n;', 4, 1)
-addTest('.e3', 1, 3, /"\.e3"/)
-
-// line continuations
-addTest('["\\\n",\n;', 3, 1)
-addTest('["\\\r\n",\n;', 3, 1)
-addTest('["\\\u2028",\n;', 3, 1)
-addTest('["\\\u2029",\n;', 3, 1)
-
-// bareword rewind
-addTest('nulz', 1, 1)
-
-// no data
-addTest(' ', 1, 3, /No data.*whitespace/)
-addTest('blah', 1, 1, /Unexpected token 'b'/)
-addTest('', 1, 1, /No data.*empty input/)
-
-try {
- parse('{{{{{{{{{')
-} catch(err) {
- var x = err.stack.match(/parseObject/g)
- assert(!x || x.length < 2, "shouldn't blow up the stack with internal calls")
-}
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_parse.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_parse.js
deleted file mode 100644
index d33e61ee7e3..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_parse.js
+++ /dev/null
@@ -1,171 +0,0 @@
-var assert = require('assert')
-var parse = require('../').parse
-
-function addTest(arg, bulk) {
- function fn_json5() {
- //console.log('testing: ', arg)
- try {
- var x = parse(arg)
- } catch(err) {
- x = 'fail'
- }
- try {
- var z = eval('(function(){"use strict"\nreturn ('+String(arg)+'\n)\n})()')
- } catch(err) {
- z = 'fail'
- }
- assert.deepEqual(x, z)
- }
-
- function fn_strict() {
- //console.log('testing: ', arg)
- try {
- var x = parse(arg, {mode: 'json'})
- } catch(err) {
- x = 'fail'
- }
- try {
- var z = JSON.parse(arg)
- } catch(err) {
- z = 'fail'
- }
- assert.deepEqual(x, z)
- }
-
- if (typeof(describe) === 'function' && !bulk) {
- it('test_parse_json5: ' + JSON.stringify(arg), fn_json5)
- it('test_parse_strict: ' + JSON.stringify(arg), fn_strict)
- } else {
- fn_json5()
- fn_strict()
- }
-}
-
-addTest('"\\uaaaa\\u0000\\uFFFF\\uFaAb"')
-addTest(' "\\xaa\\x00\xFF\xFa\0\0" ')
-addTest('"\\\'\\"\\b\\f\\t\\n\\r\\v"')
-addTest('"\\q\\w\\e\\r\\t\\y\\\\i\\o\\p\\[\\/\\\\"')
-addTest('"\\\n\\\r\n\\\n"')
-addTest('\'\\\n\\\r\n\\\n\'')
-addTest(' null')
-addTest('true ')
-addTest('false')
-addTest(' Infinity ')
-addTest('+Infinity')
-addTest('[]')
-addTest('[ 0xA2, 0X024324AaBf]')
-addTest('-0x12')
-addTest(' [1,2,3,4,5]')
-addTest('[1,2,3,4,5,] ')
-addTest('[1e-13]')
-addTest('[null, true, false]')
-addTest(' [1,2,"3,4,",5,]')
-addTest('[ 1,\n2,"3,4," \r\n,\n5,]')
-addTest('[ 1 , 2 , 3 , 4 , 5 , ]')
-addTest('{} ')
-addTest('{"2":1,"3":null,}')
-addTest('{ "2 " : 1 , "3":null , }')
-addTest('{ \"2\" : 25e245 , \"3\": 23 }')
-addTest('{"2":1,"3":nul,}')
-addTest('{:1,"3":nul,}')
-addTest('[1,2] // ssssssssss 3,4,5,] ')
-addTest('[1,2 , // ssssssssss \n//xxx\n3,4,5,] ')
-addTest('[1,2 /* ssssssssss 3,4,*/ /* */ , 5 ] ')
-addTest('[1,2 /* ssssssssss 3,4,*/ /* * , 5 ] ')
-addTest('{"3":1,"3":,}')
-addTest('{ чйуач:1, щцкшчлм : 4,}')
-addTest('{ qef-:1 }')
-addTest('{ $$$:1 , ___: 3}')
-addTest('{3:1,2:1}')
-addTest('{3.4e3:1}')
-addTest('{-3e3:1}')
-addTest('{+3e3:1}')
-addTest('{.3e3:1}')
-
-for (var i=0; i<200; i++) {
- addTest('"' + String.fromCharCode(i) + '"', true)
-}
-
-// strict JSON test cases
-addTest('"\\xaa"')
-addTest('"\\0"')
-addTest('"\0"')
-addTest('"\\v"')
-addTest('{null: 123}')
-addTest("{'null': 123}")
-
-assert.throws(function() {
- parse('0o')
-})
-
-assert.strictEqual(parse('01234567'), 342391)
-assert.strictEqual(parse('0o1234567'), 342391)
-
-// undef
-assert.strictEqual(parse(undefined), undefined)
-
-// whitespaces
-addTest('[1,\r\n2,\r3,\n]')
-'\u0020\u00A0\uFEFF\x09\x0A\x0B\x0C\x0D\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000'.split('').forEach(function(x) {
- addTest(x+'[1,'+x+'2]'+x)
- addTest('"'+x+'"'+x)
-})
-'\u000A\u000D\u2028\u2029'.split('').forEach(function(x) {
- addTest(x+'[1,'+x+'2]'+x)
- addTest('"\\'+x+'"'+x)
-})
-
-/* weird ES6 stuff, not working
-
-if (process.version > 'v0.11.7') {
- assert(Array.isArray(parse('{__proto__:[]}').__proto__))
- assert.equal(parse('{__proto__:{xxx:5}}').xxx, undefined)
- assert.equal(parse('{__proto__:{xxx:5}}').__proto__.xxx, 5)
-
- var o1 = parse('{"__proto__":[]}')
- assert.deepEqual([], o1.__proto__)
- assert.deepEqual(["__proto__"], Object.keys(o1))
- assert.deepEqual([], Object.getOwnPropertyDescriptor(o1, "__proto__").value)
- assert.deepEqual(["__proto__"], Object.getOwnPropertyNames(o1))
- assert(o1.hasOwnProperty("__proto__"))
- assert(Object.prototype.isPrototypeOf(o1))
-
- // Parse a non-object value as __proto__.
- var o2 = JSON.parse('{"__proto__":5}')
- assert.deepEqual(5, o2.__proto__)
- assert.deepEqual(["__proto__"], Object.keys(o2))
- assert.deepEqual(5, Object.getOwnPropertyDescriptor(o2, "__proto__").value)
- assert.deepEqual(["__proto__"], Object.getOwnPropertyNames(o2))
- assert(o2.hasOwnProperty("__proto__"))
- assert(Object.prototype.isPrototypeOf(o2))
-}*/
-
-assert.throws(parse.bind(null, "{-1:42}"))
-
-for (var i=0; i<100; i++) {
- var str = '-01.e'.split('')
-
- var rnd = [1,2,3,4,5].map(function(x) {
- x = ~~(Math.random()*str.length)
- return str[x]
- }).join('')
-
- try {
- var x = parse(rnd)
- } catch(err) {
- x = 'fail'
- }
- try {
- var y = JSON.parse(rnd)
- } catch(err) {
- y = 'fail'
- }
- try {
- var z = eval(rnd)
- } catch(err) {
- z = 'fail'
- }
- //console.log(rnd, x, y, z)
- if (x !== y && x !== z) throw 'ERROR'
-}
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_portable.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_portable.js
deleted file mode 100644
index 0143e7d8e5b..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_portable.js
+++ /dev/null
@@ -1,60 +0,0 @@
-var assert = require('assert')
-var FS = require('fs')
-var YAML = require('js-yaml')
-var jju = require('../')
-
-function addTest(name, fn) {
- if (typeof(describe) === 'function') {
- it(name, fn)
- } else {
- fn()
- }
-}
-
-var schema = YAML.Schema.create([
- new YAML.Type('!error', {
- kind: 'scalar',
- resolve: function (state) {
- //state.result = null
- return true
- },
- })
-])
-
-var tests = YAML.safeLoad(FS.readFileSync(__dirname + '/portable-json5-tests.yaml', 'utf8'), {
- schema: schema
-})
-
-if (!Object.is) {
- Object.defineProperty(Object, 'is', {
- value: function(x, y) {
- if (x === y) {
- return x !== 0 || 1 / x === 1 / y;
- }
- return x !== x && y !== y;
- },
- configurable: true,
- enumerable: false,
- writable: true,
- })
-}
-
-for (var k in tests) {
- ;(function(k) {
- addTest(k, function() {
- try {
- var result = jju.parse(tests[k].input)
- } catch(err) {
- result = null
- }
-
- // need deepStrictEqual
- if (typeof(result) === 'object') {
- assert.deepEqual(result, tests[k].output)
- } else {
- assert(Object.is(result, tests[k].output), String(result) + ' == ' + tests[k].output)
- }
- })
- })(k)
-}
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_stringify.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_stringify.js
deleted file mode 100644
index c97e38e93c1..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_stringify.js
+++ /dev/null
@@ -1,89 +0,0 @@
-var assert = require('assert')
-var parse = require('../').parse
-var stringify = require('../').stringify
-
-function deepEqual(x, y) {
- if (Number.isNaN(x)) {
- return assert(Number.isNaN(y))
- }
- assert.deepEqual(x, y)
-}
-
-function addTest(arg, arg2, arg3) {
- function fn() {
- deepEqual(parse(stringify(arg)), arg2 === undefined ? arg : arg2)
- if (arg !== undefined) deepEqual(JSON.parse(stringify(arg, {mode: 'json', indent: false})), (arg3 === undefined ? (arg2 === undefined ? arg : arg2) : arg3))
- }
-
- if (typeof(describe) === 'function') {
- it('test_stringify: ' + JSON.stringify(arg), fn)
- } else {
- fn()
- }
-}
-
-addTest(0)
-addTest(-0)
-addTest(NaN, undefined, null)
-addTest(Infinity, undefined, null)
-addTest(-Infinity, undefined, null)
-addTest(123)
-addTest(19508130958019385.135135)
-addTest(-2e123)
-addTest(null)
-addTest(undefined)
-addTest([])
-addTest([,,,,,,,], [null,null,null,null,null,null,null])
-addTest([undefined,null,1,2,3,], [null,null,1,2,3])
-addTest([[[[]]],[[]]])
-addTest({})
-addTest({1:2,3:4})
-addTest({1:{1:{1:{1:4}}}, 3:4})
-addTest({1:undefined, 3:undefined}, {})
-addTest(new Number(4), 4)
-addTest(new Boolean(true), true)
-addTest(new String('xqefxef'), 'xqefxef')
-addTest(new Boolean(), false)
-
-var r='';for (var i=0; i<5000; i++) {r+=String.fromCharCode(i)}
-addTest(r)
-
-assert.equal("[1, 2, 3]", stringify([1, 2, 3], {indent: 1}))
-assert.equal("[1, 2, 3]", stringify([1, 2, 3], {indent: 2}))
-
-var oddball = Object(42)
-oddball.__proto__ = { __proto__: null }
-assert.equal('{}', stringify(oddball))
-
-/* this WILL throw
-var falseNum = Object("37")
-falseNum.__proto__ = Number.prototype
-assert.equal("{0: '3', 1: '7'}", stringify(falseNum))*/
-
-assert.equal(stringify(Infinity), 'Infinity')
-assert.equal(stringify(Infinity, {mode: 'json'}), 'null')
-assert.equal(stringify(NaN), 'NaN')
-assert.equal(stringify(NaN, {mode: 'json'}), 'null')
-assert.equal(stringify(-0), '-0')
-
-assert.equal(stringify('test', null), "'test'")
-
-var array = [""]
-var expected = "''"
-for (var i = 0; i < 1000; i++) {
- array.push("")
- expected = "''," + expected
-}
-expected = '[' + expected + ']'
-assert.equal(expected, stringify(array, {indent: false}))
-
-assert.strictEqual(stringify([1,2,3], function(){}), undefined)
-
-// don't stringify prototype
-assert.equal('{a: 1}', stringify({a:1,__proto__:{b:2}}))
-
-// sort keys tests
-assert.equal('{a: 1, b: 2, z: 3}', stringify({b:2,a:1,z:3}, {sort_keys: 1}))
-assert.equal('{a: 1, b: {a: 2, b: 5, c: 1}, z: 3}', stringify({b:{c:1,a:2,b:5},a:1,z:3}, {sort_keys: 1}))
-assert.equal('{a: [3, 5, 1], b: 2, z: 3}', stringify({b:2,a:[3,5,1],z:3}, {sort_keys: 1}))
-assert.equal('{b: 2, a: 1, z: 3}', stringify({b:2,a:1,z:3}, {sort_keys: 0}))
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_tokenize.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_tokenize.js
deleted file mode 100644
index 64fb7ec93d9..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_tokenize.js
+++ /dev/null
@@ -1,99 +0,0 @@
-var assert = require('assert')
-var parse = require('../').parse
-
-function tokenize(arg) {
- var result = []
- parse(arg, {_tokenize: function(smth) {
- result.push(smth)
- }})
- assert.deepEqual(result.map(function(x){return x.raw}).join(''), arg)
- return result
-}
-
-function addTest(x, exp) {
- function fn(){assert.deepEqual(tokenize(x), exp)}
-
- if (typeof(describe) === 'function') {
- it('test_tokenize: ' + JSON.stringify(x), fn)
- } else {
- fn()
- }
-}
-
-addTest('123', [ { raw: '123', value: 123, type: 'literal', stack: [] }])
-
-addTest(' /* zz */\r\n true /* zz */\n',
-[ { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '/* zz */', type: 'comment', stack: [] },
- { raw: '\r\n', type: 'newline', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: 'true', type: 'literal', value: true, stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '/* zz */', type: 'comment', stack: [] },
- { raw: '\n', type: 'newline', stack: [] } ])
-
-addTest('{q:123, w : /*zz*/\n\r 345 } ',
-[ { raw: '{', type: 'separator', stack: [] },
- { raw: 'q', type: 'key', value: 'q', stack: [] },
- { raw: ':', type: 'separator', stack: [] },
- { raw: '123', type: 'literal', value: 123, stack: ['q'] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: 'w', type: 'key', value: 'w', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: ':', type: 'separator', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '/*zz*/', type: 'comment', stack: [] },
- { raw: '\n', type: 'newline', stack: [] },
- { raw: '\r', type: 'newline', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '345', type: 'literal', value: 345, stack: ['w'] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '}', type: 'separator', stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] } ])
-
-addTest('null /* */// xxx\n//xxx',
-[ { raw: 'null', type: 'literal', value: null, stack: [] },
- { raw: ' ', type: 'whitespace', stack: [] },
- { raw: '/* */', type: 'comment', stack: [] },
- { raw: '// xxx', type: 'comment', stack: [] },
- { raw: '\n', type: 'newline', stack: [] },
- { raw: '//xxx', type: 'comment', stack: [] } ])
-
-addTest('[1,2,[[],[1]],{},{1:2},{q:{q:{}}},]',
-[ { raw: '[', type: 'separator', stack: [] },
- { raw: '1', type: 'literal', value: 1, stack: [0] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: '2', type: 'literal', value: 2, stack: [1] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: '[', type: 'separator', stack: [2] },
- { raw: '[', type: 'separator', stack: [2,0] },
- { raw: ']', type: 'separator', stack: [2,0] },
- { raw: ',', type: 'separator', stack: [2] },
- { raw: '[', type: 'separator', stack: [2,1] },
- { raw: '1', type: 'literal', value: 1, stack: [2,1,0] },
- { raw: ']', type: 'separator', stack: [2,1] },
- { raw: ']', type: 'separator', stack: [2] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: '{', type: 'separator', stack: [3] },
- { raw: '}', type: 'separator', stack: [3] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: '{', type: 'separator', stack: [4] },
- { raw: '1', type: 'key', value: 1, stack: [4] },
- { raw: ':', type: 'separator', stack: [4] },
- { raw: '2', type: 'literal', value: 2, stack: [4,'1'] },
- { raw: '}', type: 'separator', stack: [4] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: '{', type: 'separator', stack: [5] },
- { raw: 'q', type: 'key', value: 'q', stack: [5] },
- { raw: ':', type: 'separator', stack: [5] },
- { raw: '{', type: 'separator', stack: [5,'q'] },
- { raw: 'q', type: 'key', value: 'q', stack: [5,'q'] },
- { raw: ':', type: 'separator', stack: [5,'q'] },
- { raw: '{', type: 'separator', stack: [5,'q','q'] },
- { raw: '}', type: 'separator', stack: [5,'q','q'] },
- { raw: '}', type: 'separator', stack: [5,'q'] },
- { raw: '}', type: 'separator', stack: [5] },
- { raw: ',', type: 'separator', stack: [] },
- { raw: ']', type: 'separator', stack: [] } ])
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_updates.js b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_updates.js
deleted file mode 100644
index b7482519a91..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/test_updates.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var assert = require('assert')
-var FS = require('fs')
-var YAML = require('js-yaml')
-var jju = require('../')
-
-function addTest(name, fn) {
- if (typeof(describe) === 'function') {
- it(name, fn)
- } else {
- fn()
- }
-}
-
-FS.readdirSync(__dirname + '/update').filter(function(file) {
- return file.match(/^[^\.].*\.yaml$/)
-}).forEach(function(file) {
- addTest('update: ' + file, function() {
- var test = YAML.load(FS.readFileSync(__dirname + '/update/' + file, 'utf8'))
- assert.strictEqual(test.test(jju, test.input), test.output)
- })
-})
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/author.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/author.yaml
deleted file mode 100644
index 4b08bb61b49..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/author.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-input: |
- { "name": "just-a-demo",
- "version": "0.1.2",
- "description": "blahblahblah",
- "main": "test.js",
- "scripts": { "test": "echo \"Error: no test specified\" && exit 1" },
- "author": "John Doe <whoever@google.com>",
- "license": "BSD-2-Clause" }
-
-output: |
- { "name": "just-a-demo",
- "version": "0.1.2",
- "description": "blahblahblah",
- "main": "test.js",
- "scripts": { "test": "echo \"Error: no test specified\" && exit 1" },
- "author": {
- "name": "John Doe",
- "email": "whoever@google.com"
- },
- "license": "BSD-2-Clause" }
-
-test: !!js/function |
- function(jju, input) {
- obj = jju.parse(input)
- obj.author = {
- name: 'John Doe',
- email: 'whoever@google.com',
- }
- return jju.update(input, obj)
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/deep-object.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/deep-object.yaml
deleted file mode 100644
index e0795a37874..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/deep-object.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-input: |
- {
- "foo": {
- "bar": {
- "baz": {
- "quux": "4"
- }
- }
- }
- }
-
-output: |
- {
- "foo": {
- "bar": {
- "baz": {
- "quux": "4"
- },
- "qwe": {
- "rty": {
- "aaa": {
- "bbb": 1
- }
- }
- }
- }
- }
- }
-
-test: !!js/function |
- function(jju, input) {
- obj = jju.parse(input)
- obj.foo.bar.qwe = {rty: {aaa: {bbb: 1}}}
- return jju.update(input, obj, {mode:'json'})
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/delete.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/delete.yaml
deleted file mode 100644
index b964715d37b..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/delete.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-input: |
- {
- "name": "test",
- "version": "0.0.0",
- "dependencies": {
- "foo": "1.2.x",
- "bar": ">= 1"
- },
- "bundleDependencies": [
- "foo",
- "bar"
- ],
- "license": "BSD-2-Clause"
- }
-
-output: |
- {
- "name": "test",
- "version": "0.0.0",
- "dependencies": {
- "foo": "1.2.x"
- },
- "bundleDependencies": [
- "foo"
- ],
- "license": "BSD-2-Clause"
- }
-
-test: !!js/function |
- function(jju, input) {
- obj = jju.parse(input)
- obj.bundleDependencies.pop()
- delete obj.dependencies.bar
- return jju.update(input, obj, {mode:'json'})
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-array.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-array.yaml
deleted file mode 100644
index c5b9dd952d1..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-array.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-input: |
- {
- "name": "test",
- "version": "0.0.0",
- "bundleDependencies": [
- "foo",
- "bar"
- ],
- "license": "BSD-2-Clause"
- }
-
-output: |
- {
- "name": "test",
- "version": "0.0.0",
- "bundleDependencies": [
- "foo",
- "bar",
- "baz",
- "quux"
- ],
- "license": "BSD-2-Clause"
- }
-
-test: !!js/function |
- function(jju, input) {
- obj = jju.parse(input)
- obj.bundleDependencies.push('baz')
- obj.bundleDependencies.push('quux')
- return jju.update(input, obj, {mode:'json'})
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-object.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-object.yaml
deleted file mode 100644
index 93878675b7a..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/norm-object.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-input: |
- {
- "name": "test",
- "version": "0.0.0",
- "dependencies": {
- "foobar": "*",
- "bazquux": ">= 1.1.1"
- },
- "license": "BSD-2-Clause"
- }
-
-output: |
- {
- "name": "test",
- "version": "0.0.0",
- "dependencies": {
- "foobar": "*",
- "bazquux": ">= 1.1.1",
- "whatever": "1.2.x",
- "qwerty": "1"
- },
- "license": "BSD-2-Clause"
- }
-
-test: !!js/function |
- function(jju, input) {
- obj = jju.parse(input)
- obj.dependencies.whatever = '1.2.x'
- obj.dependencies.qwerty = '1'
- return jju.update(input, obj, {mode:'json'})
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/npm-array-bin.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/npm-array-bin.yaml
deleted file mode 100644
index 35e1639bfda..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/npm-array-bin.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-input: |
- { "name":"npm-test-array-bin"
- , "version":"1.2.5"
- , "bin": [ "bin/array-bin" ]
- , "scripts": { "test": "node test.js" } }
-
-# less than ideal, I know...
-output: |
- { "name":"npm-test-array-bin"
- , "version":"1.2.5"
- , "bin": {"array-bin":"bin/array-bin"}
- , "scripts": { "test": "node test.js" }, "readme": "just an npm test\n", "readmeFilename": "README", "description": "just an npm test", "_id": "npm-test-array-bin@1.2.5", "dist": {"shasum":"9c426a1bd55e98718ab4ddcc01fa57ea83c649f1"}, "_from": "npm-test-array-bin/" }
-
-test: !!js/function |
- function(jju, input) {
- obj =
- { name: 'npm-test-array-bin',
- version: '1.2.5',
- bin: { 'array-bin': 'bin/array-bin' },
- scripts: { test: 'node test.js' },
- readme: 'just an npm test\n',
- readmeFilename: 'README',
- description: 'just an npm test',
- _id: 'npm-test-array-bin@1.2.5',
- dist: { shasum: '9c426a1bd55e98718ab4ddcc01fa57ea83c649f1' },
- _from: 'npm-test-array-bin/' }
- return jju.update(input, obj)
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/pkg-json5.yaml b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/pkg-json5.yaml
deleted file mode 100644
index 21a5c6eb141..00000000000
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/node_modules/jju/test/update/pkg-json5.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-input: |
- // vim:syntax=javascript
- {
- name: 'yapm',
- version: '1.1.0-1325', // upstream npm@1.3.25
- description: 'A package manager for node (npm fork)',
- }
-
-output: |
- // vim:syntax=javascript
- {
- name: 'yapm',
- version: '1.1.0-1325', // upstream npm@1.3.25
- description: 'A package manager for node (npm fork)',
- _id: 'yapm@1.1.0-1325',
- dist: {
- shasum: 'd5aa31c1ad00c1e7e57e07cea1b22c1806a47111',
- },
- _from: './zzz',
- }
-
-test: !!js/function |
- function(jju, input) {
- var upd = {
- "name": "yapm",
- "version": "1.1.0-1325",
- "description": "A package manager for node (npm fork)",
- "_id": "yapm@1.1.0-1325",
- "dist": {
- "shasum": "d5aa31c1ad00c1e7e57e07cea1b22c1806a47111"
- },
- "_from": "./zzz"
- }
- return jju.update(input, upd)
- }
-
diff --git a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/package.json b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/package.json
index 2a5a98fc32a..99d79f71a3e 100644
--- a/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/package.json
+++ b/deps/npm/node_modules/read-package-json/node_modules/json-parse-helpfulerror/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "git+https://github.com/smikes/json-parse-helpfulerror.git"
+ "url": "https://github.com/smikes/json-parse-helpfulerror.git"
},
"keywords": [
"json",
@@ -56,6 +56,5 @@
"tarball": "http://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz"
}
diff --git a/deps/npm/node_modules/read-package-json/package.json b/deps/npm/node_modules/read-package-json/package.json
index 17113419c0a..5c8a150a5db 100644
--- a/deps/npm/node_modules/read-package-json/package.json
+++ b/deps/npm/node_modules/read-package-json/package.json
@@ -1,6 +1,6 @@
{
"name": "read-package-json",
- "version": "2.0.1",
+ "version": "2.0.2",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
@@ -9,7 +9,7 @@
"description": "The thing npm uses to read package.json files with semantics and defaults and validation",
"repository": {
"type": "git",
- "url": "git://github.com/isaacs/read-package-json.git"
+ "url": "git+https://github.com/npm/read-package-json.git"
},
"main": "read-json.js",
"scripts": {
@@ -22,21 +22,21 @@
"graceful-fs": "^4.1.2"
},
"devDependencies": {
- "standard": "^3.3.1",
+ "standard": "^5.3.1",
"tap": "^1.2.0"
},
"optionalDependencies": {
"graceful-fs": "^4.1.2"
},
"license": "ISC",
- "readme": "# read-package-json\n\nThis is the thing that npm uses to read package.json files. It\nvalidates some stuff, and loads some default things.\n\nIt keeps a cache of the files you've read, so that you don't end\nup reading the same package.json file multiple times.\n\nNote that if you just want to see what's literally in the package.json\nfile, you can usually do `var data = require('some-module/package.json')`.\n\nThis module is basically only needed by npm, but it's handy to see what\nnpm will see when it looks at your package.\n\n## Usage\n\n```javascript\nvar readJson = require('read-package-json')\n\n// readJson(filename, [logFunction=noop], [strict=false], cb)\nreadJson('/path/to/package.json', console.error, false, function (er, data) {\n if (er) {\n console.error(\"There was an error reading the file\")\n return\n }\n\n console.error('the package data is', data)\n});\n```\n\n## readJson(file, [logFn = noop], [strict = false], cb)\n\n* `file` {String} The path to the package.json file\n* `logFn` {Function} Function to handle logging. Defaults to a noop.\n* `strict` {Boolean} True to enforce SemVer 2.0 version strings, and\n other strict requirements.\n* `cb` {Function} Gets called with `(er, data)`, as is The Node Way.\n\nReads the JSON file and does the things.\n\n## `package.json` Fields\n\nSee `man 5 package.json` or `npm help json`.\n\n## readJson.log\n\nBy default this is a reference to the `npmlog` module. But if that\nmodule can't be found, then it'll be set to just a dummy thing that does\nnothing.\n\nReplace with your own `{log,warn,error}` object for fun loggy time.\n\n## readJson.extras(file, data, cb)\n\nRun all the extra stuff relative to the file, with the parsed data.\n\nModifies the data as it does stuff. Calls the cb when it's done.\n\n## readJson.extraSet = [fn, fn, ...]\n\nArray of functions that are called by `extras`. Each one receives the\narguments `fn(file, data, cb)` and is expected to call `cb(er, data)`\nwhen done or when an error occurs.\n\nOrder is indeterminate, so each function should be completely\nindependent.\n\nMix and match!\n\n## readJson.cache\n\nThe `lru-cache` object that readJson uses to not read the same file over\nand over again. See\n[lru-cache](https://github.com/isaacs/node-lru-cache) for details.\n\n## Other Relevant Files Besides `package.json`\n\nSome other files have an effect on the resulting data object, in the\nfollowing ways:\n\n### `README?(.*)`\n\nIf there is a `README` or `README.*` file present, then npm will attach\na `readme` field to the data with the contents of this file.\n\nOwing to the fact that roughly 100% of existing node modules have\nMarkdown README files, it will generally be assumed to be Markdown,\nregardless of the extension. Please plan accordingly.\n\n### `server.js`\n\nIf there is a `server.js` file, and there is not already a\n`scripts.start` field, then `scripts.start` will be set to `node\nserver.js`.\n\n### `AUTHORS`\n\nIf there is not already a `contributors` field, then the `contributors`\nfield will be set to the contents of the `AUTHORS` file, split by lines,\nand parsed.\n\n### `bindings.gyp`\n\nIf a bindings.gyp file exists, and there is not already a\n`scripts.install` field, then the `scripts.install` field will be set to\n`node-gyp rebuild`.\n\n### `wscript`\n\nIf a wscript file exists, and there is not already a `scripts.install`\nfield, then the `scripts.install` field will be set to `node-waf clean ;\nnode-waf configure build`.\n\nNote that the `bindings.gyp` file supercedes this, since node-waf has\nbeen deprecated in favor of node-gyp.\n\n### `index.js`\n\nIf the json file does not exist, but there is a `index.js` file\npresent instead, and that file has a package comment, then it will try\nto parse the package comment, and use that as the data instead.\n\nA package comment looks like this:\n\n```javascript\n/**package\n * { \"name\": \"my-bare-module\"\n * , \"version\": \"1.2.3\"\n * , \"description\": \"etc....\" }\n **/\n\n// or...\n\n/**package\n{ \"name\": \"my-bare-module\"\n, \"version\": \"1.2.3\"\n, \"description\": \"etc....\" }\n**/\n```\n\nThe important thing is that it starts with `/**package`, and ends with\n`**/`. If the package.json file exists, then the index.js is not\nparsed.\n\n### `{directories.man}/*.[0-9]`\n\nIf there is not already a `man` field defined as an array of files or a\nsingle file, and\nthere is a `directories.man` field defined, then that directory will\nbe searched for manpages.\n\nAny valid manpages found in that directory will be assigned to the `man`\narray, and installed in the appropriate man directory at package install\ntime, when installed globally on a Unix system.\n\n### `{directories.bin}/*`\n\nIf there is not already a `bin` field defined as a string filename or a\nhash of `<name> : <filename>` pairs, then the `directories.bin`\ndirectory will be searched and all the files within it will be linked as\nexecutables at install time.\n\nWhen installing locally, npm links bins into `node_modules/.bin`, which\nis in the `PATH` environ when npm runs scripts. When\ninstalling globally, they are linked into `{prefix}/bin`, which is\npresumably in the `PATH` environment variable.\n",
+ "readme": "# read-package-json\n\nThis is the thing that npm uses to read package.json files. It\nvalidates some stuff, and loads some default things.\n\nIt keeps a cache of the files you've read, so that you don't end\nup reading the same package.json file multiple times.\n\nNote that if you just want to see what's literally in the package.json\nfile, you can usually do `var data = require('some-module/package.json')`.\n\nThis module is basically only needed by npm, but it's handy to see what\nnpm will see when it looks at your package.\n\n## Usage\n\n```javascript\nvar readJson = require('read-package-json')\n\n// readJson(filename, [logFunction=noop], [strict=false], cb)\nreadJson('/path/to/package.json', console.error, false, function (er, data) {\n if (er) {\n console.error(\"There was an error reading the file\")\n return\n }\n\n console.error('the package data is', data)\n});\n```\n\n## readJson(file, [logFn = noop], [strict = false], cb)\n\n* `file` {String} The path to the package.json file\n* `logFn` {Function} Function to handle logging. Defaults to a noop.\n* `strict` {Boolean} True to enforce SemVer 2.0 version strings, and\n other strict requirements.\n* `cb` {Function} Gets called with `(er, data)`, as is The Node Way.\n\nReads the JSON file and does the things.\n\n## `package.json` Fields\n\nSee `man 5 package.json` or `npm help json`.\n\n## readJson.log\n\nBy default this is a reference to the `npmlog` module. But if that\nmodule can't be found, then it'll be set to just a dummy thing that does\nnothing.\n\nReplace with your own `{log,warn,error}` object for fun loggy time.\n\n## readJson.extras(file, data, cb)\n\nRun all the extra stuff relative to the file, with the parsed data.\n\nModifies the data as it does stuff. Calls the cb when it's done.\n\n## readJson.extraSet = [fn, fn, ...]\n\nArray of functions that are called by `extras`. Each one receives the\narguments `fn(file, data, cb)` and is expected to call `cb(er, data)`\nwhen done or when an error occurs.\n\nOrder is indeterminate, so each function should be completely\nindependent.\n\nMix and match!\n\n## readJson.cache\n\nThe `lru-cache` object that readJson uses to not read the same file over\nand over again. See\n[lru-cache](https://github.com/isaacs/node-lru-cache) for details.\n\n## Other Relevant Files Besides `package.json`\n\nSome other files have an effect on the resulting data object, in the\nfollowing ways:\n\n### `README?(.*)`\n\nIf there is a `README` or `README.*` file present, then npm will attach\na `readme` field to the data with the contents of this file.\n\nOwing to the fact that roughly 100% of existing node modules have\nMarkdown README files, it will generally be assumed to be Markdown,\nregardless of the extension. Please plan accordingly.\n\n### `server.js`\n\nIf there is a `server.js` file, and there is not already a\n`scripts.start` field, then `scripts.start` will be set to `node\nserver.js`.\n\n### `AUTHORS`\n\nIf there is not already a `contributors` field, then the `contributors`\nfield will be set to the contents of the `AUTHORS` file, split by lines,\nand parsed.\n\n### `bindings.gyp`\n\nIf a bindings.gyp file exists, and there is not already a\n`scripts.install` field, then the `scripts.install` field will be set to\n`node-gyp rebuild`.\n\n### `index.js`\n\nIf the json file does not exist, but there is a `index.js` file\npresent instead, and that file has a package comment, then it will try\nto parse the package comment, and use that as the data instead.\n\nA package comment looks like this:\n\n```javascript\n/**package\n * { \"name\": \"my-bare-module\"\n * , \"version\": \"1.2.3\"\n * , \"description\": \"etc....\" }\n **/\n\n// or...\n\n/**package\n{ \"name\": \"my-bare-module\"\n, \"version\": \"1.2.3\"\n, \"description\": \"etc....\" }\n**/\n```\n\nThe important thing is that it starts with `/**package`, and ends with\n`**/`. If the package.json file exists, then the index.js is not\nparsed.\n\n### `{directories.man}/*.[0-9]`\n\nIf there is not already a `man` field defined as an array of files or a\nsingle file, and\nthere is a `directories.man` field defined, then that directory will\nbe searched for manpages.\n\nAny valid manpages found in that directory will be assigned to the `man`\narray, and installed in the appropriate man directory at package install\ntime, when installed globally on a Unix system.\n\n### `{directories.bin}/*`\n\nIf there is not already a `bin` field defined as a string filename or a\nhash of `<name> : <filename>` pairs, then the `directories.bin`\ndirectory will be searched and all the files within it will be linked as\nexecutables at install time.\n\nWhen installing locally, npm links bins into `node_modules/.bin`, which\nis in the `PATH` environ when npm runs scripts. When\ninstalling globally, they are linked into `{prefix}/bin`, which is\npresumably in the `PATH` environment variable.\n",
"readmeFilename": "README.md",
- "gitHead": "d4f9f52c823750e7f2a7b9069bc56b9fd3a0ee96",
+ "gitHead": "0c51e0a836de1a6eaa0d4ce1a8692162598d1276",
"bugs": {
- "url": "https://github.com/isaacs/read-package-json/issues"
+ "url": "https://github.com/npm/read-package-json/issues"
},
- "homepage": "https://github.com/isaacs/read-package-json#readme",
- "_id": "read-package-json@2.0.1",
- "_shasum": "b822abfc2c4f0abfe7f52de6448be4560b6e7053",
- "_from": "read-package-json@2.0.1"
+ "homepage": "https://github.com/npm/read-package-json#readme",
+ "_id": "read-package-json@2.0.2",
+ "_shasum": "fba055da32caef82e8eff08fc0cac78fc1d027cd",
+ "_from": "read-package-json@>=2.0.2 <2.1.0"
}
diff --git a/deps/npm/node_modules/read-package-json/test/readmes.js b/deps/npm/node_modules/read-package-json/test/readmes.js
index c74cafb9250..bd891772134 100644
--- a/deps/npm/node_modules/read-package-json/test/readmes.js
+++ b/deps/npm/node_modules/read-package-json/test/readmes.js
@@ -5,7 +5,6 @@ var p = path.resolve(__dirname, 'fixtures/readmes/package.json')
var readJson = require('../')
-var expect = {}
var expect = {
'name': 'readmes',
'version': '99.999.999999999',
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js
deleted file mode 100644
index 4906755bc93..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-module.exports = function () {
- return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;
-};
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json
deleted file mode 100644
index e076e463143..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "name": "ansi-regex",
- "version": "2.0.0",
- "description": "Regular expression for matching ANSI escape codes",
- "license": "MIT",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/sindresorhus/ansi-regex.git"
- },
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "maintainers": [
- {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- {
- "name": "Joshua Appelman",
- "email": "jappelman@xebia.com",
- "url": "jbnicolai.com"
- }
- ],
- "engines": {
- "node": ">=0.10.0"
- },
- "scripts": {
- "test": "mocha test/test.js",
- "view-supported": "node test/viewCodes.js"
- },
- "files": [
- "index.js"
- ],
- "keywords": [
- "ansi",
- "styles",
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "cli",
- "string",
- "tty",
- "escape",
- "formatting",
- "rgb",
- "256",
- "shell",
- "xterm",
- "command-line",
- "text",
- "regex",
- "regexp",
- "re",
- "match",
- "test",
- "find",
- "pattern"
- ],
- "devDependencies": {
- "mocha": "*"
- },
- "readme": "# ansi-regex [![Build Status](https://travis-ci.org/sindresorhus/ansi-regex.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-regex)\n\n> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)\n\n\n## Install\n\n```\n$ npm install --save ansi-regex\n```\n\n\n## Usage\n\n```js\nvar ansiRegex = require('ansi-regex');\n\nansiRegex().test('\\u001b[4mcake\\u001b[0m');\n//=> true\n\nansiRegex().test('cake');\n//=> false\n\n'\\u001b[4mcake\\u001b[0m'.match(ansiRegex());\n//=> ['\\u001b[4m', '\\u001b[0m']\n```\n\n\n## License\n\nMIT © [Sindre Sorhus](http://sindresorhus.com)\n",
- "readmeFilename": "readme.md",
- "bugs": {
- "url": "https://github.com/sindresorhus/ansi-regex/issues"
- },
- "homepage": "https://github.com/sindresorhus/ansi-regex#readme",
- "_id": "ansi-regex@2.0.0",
- "_shasum": "c5061b6e0ef8a81775e50f5d66151bf6bf371107",
- "_resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz",
- "_from": "ansi-regex@>=2.0.0 <3.0.0"
-}
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md
deleted file mode 100644
index 1a4894ec111..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# ansi-regex [![Build Status](https://travis-ci.org/sindresorhus/ansi-regex.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-regex)
-
-> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)
-
-
-## Install
-
-```
-$ npm install --save ansi-regex
-```
-
-
-## Usage
-
-```js
-var ansiRegex = require('ansi-regex');
-
-ansiRegex().test('\u001b[4mcake\u001b[0m');
-//=> true
-
-ansiRegex().test('cake');
-//=> false
-
-'\u001b[4mcake\u001b[0m'.match(ansiRegex());
-//=> ['\u001b[4m', '\u001b[0m']
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/index.js b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/index.js
deleted file mode 100644
index 099480fbfc5..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/index.js
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-var ansiRegex = require('ansi-regex')();
-
-module.exports = function (str) {
- return typeof str === 'string' ? str.replace(ansiRegex, '') : str;
-};
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/license b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/license
deleted file mode 100644
index 654d0bfe943..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/license
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/index.js b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/index.js
deleted file mode 100644
index 4906755bc93..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/index.js
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-module.exports = function () {
- return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;
-};
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/license b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/license
deleted file mode 100644
index 654d0bfe943..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/license
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json
deleted file mode 100644
index e076e463143..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "name": "ansi-regex",
- "version": "2.0.0",
- "description": "Regular expression for matching ANSI escape codes",
- "license": "MIT",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/sindresorhus/ansi-regex.git"
- },
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "maintainers": [
- {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- {
- "name": "Joshua Appelman",
- "email": "jappelman@xebia.com",
- "url": "jbnicolai.com"
- }
- ],
- "engines": {
- "node": ">=0.10.0"
- },
- "scripts": {
- "test": "mocha test/test.js",
- "view-supported": "node test/viewCodes.js"
- },
- "files": [
- "index.js"
- ],
- "keywords": [
- "ansi",
- "styles",
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "cli",
- "string",
- "tty",
- "escape",
- "formatting",
- "rgb",
- "256",
- "shell",
- "xterm",
- "command-line",
- "text",
- "regex",
- "regexp",
- "re",
- "match",
- "test",
- "find",
- "pattern"
- ],
- "devDependencies": {
- "mocha": "*"
- },
- "readme": "# ansi-regex [![Build Status](https://travis-ci.org/sindresorhus/ansi-regex.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-regex)\n\n> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)\n\n\n## Install\n\n```\n$ npm install --save ansi-regex\n```\n\n\n## Usage\n\n```js\nvar ansiRegex = require('ansi-regex');\n\nansiRegex().test('\\u001b[4mcake\\u001b[0m');\n//=> true\n\nansiRegex().test('cake');\n//=> false\n\n'\\u001b[4mcake\\u001b[0m'.match(ansiRegex());\n//=> ['\\u001b[4m', '\\u001b[0m']\n```\n\n\n## License\n\nMIT © [Sindre Sorhus](http://sindresorhus.com)\n",
- "readmeFilename": "readme.md",
- "bugs": {
- "url": "https://github.com/sindresorhus/ansi-regex/issues"
- },
- "homepage": "https://github.com/sindresorhus/ansi-regex#readme",
- "_id": "ansi-regex@2.0.0",
- "_shasum": "c5061b6e0ef8a81775e50f5d66151bf6bf371107",
- "_resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz",
- "_from": "ansi-regex@>=2.0.0 <3.0.0"
-}
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/readme.md b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/readme.md
deleted file mode 100644
index 1a4894ec111..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/readme.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# ansi-regex [![Build Status](https://travis-ci.org/sindresorhus/ansi-regex.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-regex)
-
-> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)
-
-
-## Install
-
-```
-$ npm install --save ansi-regex
-```
-
-
-## Usage
-
-```js
-var ansiRegex = require('ansi-regex');
-
-ansiRegex().test('\u001b[4mcake\u001b[0m');
-//=> true
-
-ansiRegex().test('cake');
-//=> false
-
-'\u001b[4mcake\u001b[0m'.match(ansiRegex());
-//=> ['\u001b[4m', '\u001b[0m']
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/package.json b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/package.json
deleted file mode 100644
index 9aa433e1d53..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/package.json
+++ /dev/null
@@ -1,76 +0,0 @@
-{
- "name": "strip-ansi",
- "version": "3.0.0",
- "description": "Strip ANSI escape codes",
- "license": "MIT",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/sindresorhus/strip-ansi.git"
- },
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "maintainers": [
- {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- {
- "name": "Joshua Appelman",
- "email": "jappelman@xebia.com",
- "url": "jbnicolai.com"
- }
- ],
- "engines": {
- "node": ">=0.10.0"
- },
- "scripts": {
- "test": "node test.js"
- },
- "files": [
- "index.js"
- ],
- "keywords": [
- "strip",
- "trim",
- "remove",
- "ansi",
- "styles",
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "string",
- "tty",
- "escape",
- "formatting",
- "rgb",
- "256",
- "shell",
- "xterm",
- "log",
- "logging",
- "command-line",
- "text"
- ],
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "devDependencies": {
- "ava": "0.0.4"
- },
- "readme": "# strip-ansi [![Build Status](https://travis-ci.org/sindresorhus/strip-ansi.svg?branch=master)](https://travis-ci.org/sindresorhus/strip-ansi)\n\n> Strip [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)\n\n\n## Install\n\n```\n$ npm install --save strip-ansi\n```\n\n\n## Usage\n\n```js\nvar stripAnsi = require('strip-ansi');\n\nstripAnsi('\\u001b[4mcake\\u001b[0m');\n//=> 'cake'\n```\n\n\n## Related\n\n- [strip-ansi-cli](https://github.com/sindresorhus/strip-ansi-cli) - CLI for this module\n- [has-ansi](https://github.com/sindresorhus/has-ansi) - Check if a string has ANSI escape codes\n- [ansi-regex](https://github.com/sindresorhus/ansi-regex) - Regular expression for matching ANSI escape codes\n- [chalk](https://github.com/sindresorhus/chalk) - Terminal string styling done right\n\n\n## License\n\nMIT © [Sindre Sorhus](http://sindresorhus.com)\n",
- "readmeFilename": "readme.md",
- "bugs": {
- "url": "https://github.com/sindresorhus/strip-ansi/issues"
- },
- "homepage": "https://github.com/sindresorhus/strip-ansi#readme",
- "_id": "strip-ansi@3.0.0",
- "_shasum": "7510b665567ca914ccb5d7e072763ac968be3724",
- "_resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.0.tgz",
- "_from": "strip-ansi@>=3.0.0 <4.0.0"
-}
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/readme.md b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/readme.md
deleted file mode 100644
index 76091512df5..00000000000
--- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/chalk/node_modules/strip-ansi/readme.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# strip-ansi [![Build Status](https://travis-ci.org/sindresorhus/strip-ansi.svg?branch=master)](https://travis-ci.org/sindresorhus/strip-ansi)
-
-> Strip [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)
-
-
-## Install
-
-```
-$ npm install --save strip-ansi
-```
-
-
-## Usage
-
-```js
-var stripAnsi = require('strip-ansi');
-
-stripAnsi('\u001b[4mcake\u001b[0m');
-//=> 'cake'
-```
-
-
-## Related
-
-- [strip-ansi-cli](https://github.com/sindresorhus/strip-ansi-cli) - CLI for this module
-- [has-ansi](https://github.com/sindresorhus/has-ansi) - Check if a string has ANSI escape codes
-- [ansi-regex](https://github.com/sindresorhus/ansi-regex) - Regular expression for matching ANSI escape codes
-- [chalk](https://github.com/sindresorhus/chalk) - Terminal string styling done right
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/deps/npm/node_modules/request/node_modules/qs/README.md b/deps/npm/node_modules/request/node_modules/qs/README.md
new file mode 100644
index 00000000000..3c61db31a22
--- /dev/null
+++ b/deps/npm/node_modules/request/node_modules/qs/README.md
@@ -0,0 +1,331 @@
+# qs
+
+A querystring parsing and stringifying library with some added security.
+
+[![Build Status](https://secure.travis-ci.org/hapijs/qs.svg)](http://travis-ci.org/hapijs/qs)
+
+Lead Maintainer: [Nathan LaFreniere](https://github.com/nlf)
+
+The **qs** module was originally created and maintained by [TJ Holowaychuk](https://github.com/visionmedia/node-querystring).
+
+## Usage
+
+```javascript
+var Qs = require('qs');
+
+var obj = Qs.parse('a=c'); // { a: 'c' }
+var str = Qs.stringify(obj); // 'a=c'
+```
+
+### Parsing Objects
+
+```javascript
+Qs.parse(string, [options]);
+```
+
+**qs** allows you to create nested objects within your query strings, by surrounding the name of sub-keys with square brackets `[]`.
+For example, the string `'foo[bar]=baz'` converts to:
+
+```javascript
+{
+ foo: {
+ bar: 'baz'
+ }
+}
+```
+
+When using the `plainObjects` option the parsed value is returned as a plain object, created via `Object.create(null)` and as such you should be aware that prototype methods will not exist on it and a user may set those names to whatever value they like:
+
+```javascript
+Qs.parse('a.hasOwnProperty=b', { plainObjects: true });
+// { a: { hasOwnProperty: 'b' } }
+```
+
+By default parameters that would overwrite properties on the object prototype are ignored, if you wish to keep the data from those fields either use `plainObjects` as mentioned above, or set `allowPrototypes` to `true` which will allow user input to overwrite those properties. *WARNING* It is generally a bad idea to enable this option as it can cause problems when attempting to use the properties that have been overwritten. Always be careful with this option.
+
+```javascript
+Qs.parse('a.hasOwnProperty=b', { allowPrototypes: true });
+// { a: { hasOwnProperty: 'b' } }
+```
+
+URI encoded strings work too:
+
+```javascript
+Qs.parse('a%5Bb%5D=c');
+// { a: { b: 'c' } }
+```
+
+You can also nest your objects, like `'foo[bar][baz]=foobarbaz'`:
+
+```javascript
+{
+ foo: {
+ bar: {
+ baz: 'foobarbaz'
+ }
+ }
+}
+```
+
+By default, when nesting objects **qs** will only parse up to 5 children deep. This means if you attempt to parse a string like
+`'a[b][c][d][e][f][g][h][i]=j'` your resulting object will be:
+
+```javascript
+{
+ a: {
+ b: {
+ c: {
+ d: {
+ e: {
+ f: {
+ '[g][h][i]': 'j'
+ }
+ }
+ }
+ }
+ }
+ }
+}
+```
+
+This depth can be overridden by passing a `depth` option to `Qs.parse(string, [options])`:
+
+```javascript
+Qs.parse('a[b][c][d][e][f][g][h][i]=j', { depth: 1 });
+// { a: { b: { '[c][d][e][f][g][h][i]': 'j' } } }
+```
+
+The depth limit helps mitigate abuse when **qs** is used to parse user input, and it is recommended to keep it a reasonably small number.
+
+For similar reasons, by default **qs** will only parse up to 1000 parameters. This can be overridden by passing a `parameterLimit` option:
+
+```javascript
+Qs.parse('a=b&c=d', { parameterLimit: 1 });
+// { a: 'b' }
+```
+
+An optional delimiter can also be passed:
+
+```javascript
+Qs.parse('a=b;c=d', { delimiter: ';' });
+// { a: 'b', c: 'd' }
+```
+
+Delimiters can be a regular expression too:
+
+```javascript
+Qs.parse('a=b;c=d,e=f', { delimiter: /[;,]/ });
+// { a: 'b', c: 'd', e: 'f' }
+```
+
+Option `allowDots` can be used to enable dot notation:
+
+```javascript
+Qs.parse('a.b=c', { allowDots: true });
+// { a: { b: 'c' } }
+```
+
+### Parsing Arrays
+
+**qs** can also parse arrays using a similar `[]` notation:
+
+```javascript
+Qs.parse('a[]=b&a[]=c');
+// { a: ['b', 'c'] }
+```
+
+You may specify an index as well:
+
+```javascript
+Qs.parse('a[1]=c&a[0]=b');
+// { a: ['b', 'c'] }
+```
+
+Note that the only difference between an index in an array and a key in an object is that the value between the brackets must be a number
+to create an array. When creating arrays with specific indices, **qs** will compact a sparse array to only the existing values preserving
+their order:
+
+```javascript
+Qs.parse('a[1]=b&a[15]=c');
+// { a: ['b', 'c'] }
+```
+
+Note that an empty string is also a value, and will be preserved:
+
+```javascript
+Qs.parse('a[]=&a[]=b');
+// { a: ['', 'b'] }
+Qs.parse('a[0]=b&a[1]=&a[2]=c');
+// { a: ['b', '', 'c'] }
+```
+
+**qs** will also limit specifying indices in an array to a maximum index of `20`. Any array members with an index of greater than `20` will
+instead be converted to an object with the index as the key:
+
+```javascript
+Qs.parse('a[100]=b');
+// { a: { '100': 'b' } }
+```
+
+This limit can be overridden by passing an `arrayLimit` option:
+
+```javascript
+Qs.parse('a[1]=b', { arrayLimit: 0 });
+// { a: { '1': 'b' } }
+```
+
+To disable array parsing entirely, set `parseArrays` to `false`.
+
+```javascript
+Qs.parse('a[]=b', { parseArrays: false });
+// { a: { '0': 'b' } }
+```
+
+If you mix notations, **qs** will merge the two items into an object:
+
+```javascript
+Qs.parse('a[0]=b&a[b]=c');
+// { a: { '0': 'b', b: 'c' } }
+```
+
+You can also create arrays of objects:
+
+```javascript
+Qs.parse('a[][b]=c');
+// { a: [{ b: 'c' }] }
+```
+
+### Stringifying
+
+```javascript
+Qs.stringify(object, [options]);
+```
+
+When stringifying, **qs** by default URI encodes output. Objects are stringified as you would expect:
+
+```javascript
+Qs.stringify({ a: 'b' });
+// 'a=b'
+Qs.stringify({ a: { b: 'c' } });
+// 'a%5Bb%5D=c'
+```
+
+This encoding can be disabled by setting the `encode` option to `false`:
+
+```javascript
+Qs.stringify({ a: { b: 'c' } }, { encode: false });
+// 'a[b]=c'
+```
+
+Examples beyond this point will be shown as though the output is not URI encoded for clarity. Please note that the return values in these cases *will* be URI encoded during real usage.
+
+When arrays are stringified, by default they are given explicit indices:
+
+```javascript
+Qs.stringify({ a: ['b', 'c', 'd'] });
+// 'a[0]=b&a[1]=c&a[2]=d'
+```
+
+You may override this by setting the `indices` option to `false`:
+
+```javascript
+Qs.stringify({ a: ['b', 'c', 'd'] }, { indices: false });
+// 'a=b&a=c&a=d'
+```
+
+You may use the `arrayFormat` option to specify the format of the output array
+
+```javascript
+Qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' })
+// 'a[0]=b&a[1]=c'
+Qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' })
+// 'a[]=b&a[]=c'
+Qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' })
+// 'a=b&a=c'
+```
+
+Empty strings and null values will omit the value, but the equals sign (=) remains in place:
+
+```javascript
+Qs.stringify({ a: '' });
+// 'a='
+```
+
+Properties that are set to `undefined` will be omitted entirely:
+
+```javascript
+Qs.stringify({ a: null, b: undefined });
+// 'a='
+```
+
+The delimiter may be overridden with stringify as well:
+
+```javascript
+Qs.stringify({ a: 'b', c: 'd' }, { delimiter: ';' });
+// 'a=b;c=d'
+```
+
+Finally, you can use the `filter` option to restrict which keys will be included in the stringified output.
+If you pass a function, it will be called for each key to obtain the replacement value. Otherwise, if you
+pass an array, it will be used to select properties and array indices for stringification:
+
+```javascript
+function filterFunc(prefix, value) {
+ if (prefix == 'b') {
+ // Return an `undefined` value to omit a property.
+ return;
+ }
+ if (prefix == 'e[f]') {
+ return value.getTime();
+ }
+ if (prefix == 'e[g][0]') {
+ return value * 2;
+ }
+ return value;
+}
+Qs.stringify({ a: 'b', c: 'd', e: { f: new Date(123), g: [2] } }, { filter: filterFunc })
+// 'a=b&c=d&e[f]=123&e[g][0]=4'
+Qs.stringify({ a: 'b', c: 'd', e: 'f' }, { filter: ['a', 'e'] })
+// 'a=b&e=f'
+Qs.stringify({ a: ['b', 'c', 'd'], e: 'f' }, { filter: ['a', 0, 2] })
+// 'a[0]=b&a[2]=d'
+```
+
+### Handling of `null` values
+
+By default, `null` values are treated like empty strings:
+
+```javascript
+Qs.stringify({ a: null, b: '' });
+// 'a=&b='
+```
+
+Parsing does not distinguish between parameters with and without equal signs. Both are converted to empty strings.
+
+```javascript
+Qs.parse('a&b=')
+// { a: '', b: '' }
+```
+
+To distinguish between `null` values and empty strings use the `strictNullHandling` flag. In the result string the `null`
+values have no `=` sign:
+
+```javascript
+Qs.stringify({ a: null, b: '' }, { strictNullHandling: true });
+// 'a&b='
+```
+
+To parse values without `=` back to `null` use the `strictNullHandling` flag:
+
+```javascript
+Qs.parse('a&b=', { strictNullHandling: true });
+// { a: null, b: '' }
+
+```
+
+To completely skip rendering keys with `null` values, use the `skipNulls` flag:
+
+```javascript
+qs.stringify({ a: 'b', c: null}, { skipNulls: true })
+// 'a=b'
+```
diff --git a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/LICENSE b/deps/npm/node_modules/spdx-license-ids/LICENSE
index 68a49daad8f..68a49daad8f 100644
--- a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/LICENSE
+++ b/deps/npm/node_modules/spdx-license-ids/LICENSE
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/README.md b/deps/npm/node_modules/spdx-license-ids/README.md
index 92523532b24..92523532b24 100755
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/README.md
+++ b/deps/npm/node_modules/spdx-license-ids/README.md
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/package.json b/deps/npm/node_modules/spdx-license-ids/package.json
index 62c5c37ba96..7e10134cf70 100644
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/package.json
+++ b/deps/npm/node_modules/spdx-license-ids/package.json
@@ -1,6 +1,6 @@
{
"name": "spdx-license-ids",
- "version": "1.0.2",
+ "version": "1.1.0",
"description": "A list of SPDX license identifiers",
"repository": {
"type": "git",
@@ -42,22 +42,21 @@
"eslint": "^0.24.0",
"got": "^3.3.0",
"istanbul": "^0.3.17",
- "istanbul-coveralls": "^1.0.3",
"require-bower-files": "^2.0.0",
"rimraf": "^2.4.1",
"stringify-object": "^2.2.0",
"tape": "^4.0.0"
},
- "gitHead": "df183ecdf1738f77b1e8e41f686ee56206a40693",
+ "gitHead": "769b83e3335426bd45f70b58b194b79e1d6c0583",
"bugs": {
"url": "https://github.com/shinnn/spdx-license-ids/issues"
},
"homepage": "https://github.com/shinnn/spdx-license-ids#readme",
- "_id": "spdx-license-ids@1.0.2",
- "_shasum": "0674e9c9a230f980016b5b073a10aa165701677c",
- "_from": "spdx-license-ids@>=1.0.0 <2.0.0",
- "_npmVersion": "2.12.1",
- "_nodeVersion": "2.3.3",
+ "_id": "spdx-license-ids@1.1.0",
+ "_shasum": "28694acdf39fe27de45143fff81f21f6c66d44ac",
+ "_from": "spdx-license-ids@1.1.0",
+ "_npmVersion": "3.3.8",
+ "_nodeVersion": "4.2.1",
"_npmUser": {
"name": "shinnn",
"email": "snnskwtnb@gmail.com"
@@ -69,9 +68,10 @@
}
],
"dist": {
- "shasum": "0674e9c9a230f980016b5b073a10aa165701677c",
- "tarball": "http://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz"
+ "shasum": "28694acdf39fe27de45143fff81f21f6c66d44ac",
+ "tarball": "http://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.1.0.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz"
+ "_resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.1.0.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/spdx-license-ids.json b/deps/npm/node_modules/spdx-license-ids/spdx-license-ids.json
index 2a4a78f549f..6aa3ec4e2c0 100644
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/spdx-license-ids.json
+++ b/deps/npm/node_modules/spdx-license-ids/spdx-license-ids.json
@@ -45,6 +45,7 @@
"BSD-4-Clause",
"BSD-Protection",
"BSD-3-Clause-Attribution",
+ "0BSD",
"BSD-4-Clause-UC",
"bzip2-1.0.5",
"bzip2-1.0.6",
@@ -52,6 +53,7 @@
"CECILL-1.0",
"CECILL-1.1",
"CECILL-2.0",
+ "CECILL-2.1",
"CECILL-B",
"CECILL-C",
"ClArtistic",
@@ -98,6 +100,7 @@
"CC-BY-SA-4.0",
"CC0-1.0",
"Crossword",
+ "CrystalStacker",
"CUA-OPL-1.0",
"Cube",
"D-FSL-1.0",
@@ -154,6 +157,7 @@
"IJG",
"Intel-ACPI",
"Intel",
+ "Interbase-1.0",
"IPA",
"ISC",
"JasPer-2.0",
@@ -251,6 +255,7 @@
"Saxpath",
"SCEA",
"SWL",
+ "Sendmail",
"SGI-B-1.0",
"SGI-B-1.1",
"SGI-B-2.0",
diff --git a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/README.md b/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/README.md
deleted file mode 100755
index 7ea6092d6cb..00000000000
--- a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/README.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# spdx-license-ids
-
-A list of [SPDX license](http://spdx.org/licenses/) identifiers
-
-[**Download JSON**](https://raw.githubusercontent.com/shinnn/spdx-license-ids/master/spdx-license-ids.json)
-
-## Use as a JavaScript Library
-
-[![NPM version](https://img.shields.io/npm/v/spdx-license-ids.svg)](https://www.npmjs.org/package/spdx-license-ids)
-[![Bower version](https://img.shields.io/bower/v/spdx-license-ids.svg)](https://github.com/shinnn/spdx-license-ids/releases)
-[![Build Status](https://travis-ci.org/shinnn/spdx-license-ids.svg?branch=master)](https://travis-ci.org/shinnn/spdx-license-ids)
-[![Coverage Status](https://img.shields.io/coveralls/shinnn/spdx-license-ids.svg)](https://coveralls.io/r/shinnn/spdx-license-ids)
-[![devDependency Status](https://david-dm.org/shinnn/spdx-license-ids/dev-status.svg)](https://david-dm.org/shinnn/spdx-license-ids#info=devDependencies)
-
-### Installation
-
-#### Package managers
-
-##### [npm](https://www.npmjs.com/)
-
-```sh
-npm install spdx-license-ids
-```
-
-##### [bower](http://bower.io/)
-
-```sh
-bower install spdx-license-ids
-```
-
-##### [Duo](http://duojs.org/)
-
-```javascript
-var spdxLicenseIds = require('shinnn/spdx-license-ids');
-```
-
-#### Standalone
-
-[Download the script file directly.](https://raw.githubusercontent.com/shinnn/spdx-license-ids/master/spdx-license-ids-browser.js)
-
-### API
-
-#### spdxLicenseIds
-
-Type: `Array` of `String`
-
-It returns an array of SPDX license identifiers.
-
-```javascript
-var spdxLicenseIds = require('spdx-license-ids'); //=> ['Glide', 'Abstyles', 'AFL-1.1', ... ]
-```
-
-## License
-
-[The Unlicense](./LICENSE).
diff --git a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/package.json b/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/package.json
deleted file mode 100644
index e6e341b111d..00000000000
--- a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/package.json
+++ /dev/null
@@ -1,78 +0,0 @@
-{
- "name": "spdx-license-ids",
- "version": "1.0.1",
- "description": "A list of SPDX license identifiers",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/shinnn/spdx-license-ids.git"
- },
- "author": {
- "name": "Shinnosuke Watanabe",
- "url": "https://github.com/shinnn"
- },
- "scripts": {
- "build": "node --harmony_arrow_functions build.js",
- "lint": "eslint --config node_modules/@shinnn/eslintrc/rc.json --ignore-path .gitignore .",
- "pretest": "${npm_package_scripts_build} && ${npm_package_scripts_lint}",
- "test": "node --harmony_arrow_functions test.js",
- "coverage": "node --harmony_arrow_functions node_modules/.bin/istanbul cover test.js",
- "coveralls": "${npm_package_scripts_coverage} && istanbul-coveralls"
- },
- "license": "Unlicense",
- "main": "spdx-license-ids.json",
- "files": [
- "spdx-license-ids.json"
- ],
- "keywords": [
- "spdx",
- "license",
- "licenses",
- "id",
- "identifier",
- "identifiers",
- "json",
- "array",
- "oss",
- "browser",
- "client-side"
- ],
- "devDependencies": {
- "@shinnn/eslintrc": "^1.0.0",
- "each-async": "^1.1.1",
- "eslint": "^0.21.2",
- "got": "^3.2.0",
- "istanbul": "^0.3.14",
- "istanbul-coveralls": "^1.0.2",
- "require-bower-files": "^2.0.0",
- "rm-rf": "^0.1.0",
- "stringify-object": "^2.0.0",
- "tape": "^4.0.0"
- },
- "gitHead": "05c7466fcd62c8642006ef354c95064fcade3a03",
- "bugs": {
- "url": "https://github.com/shinnn/spdx-license-ids/issues"
- },
- "homepage": "https://github.com/shinnn/spdx-license-ids#readme",
- "_id": "spdx-license-ids@1.0.1",
- "_shasum": "8f7d365fbeb056f82d21d0c0e9c1ebbd676e6af4",
- "_from": "spdx-license-ids@>=1.0.0 <2.0.0",
- "_npmVersion": "2.10.1",
- "_nodeVersion": "2.0.2",
- "_npmUser": {
- "name": "shinnn",
- "email": "snnskwtnb@gmail.com"
- },
- "maintainers": [
- {
- "name": "shinnn",
- "email": "snnskwtnb@gmail.com"
- }
- ],
- "dist": {
- "shasum": "8f7d365fbeb056f82d21d0c0e9c1ebbd676e6af4",
- "tarball": "http://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.1.tgz"
- },
- "directories": {},
- "_resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.1.tgz",
- "readme": "ERROR: No README data found!"
-}
diff --git a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/spdx-license-ids.json b/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/spdx-license-ids.json
deleted file mode 100644
index 3c5bdfcd0fc..00000000000
--- a/deps/npm/node_modules/spdx/node_modules/spdx-license-ids/spdx-license-ids.json
+++ /dev/null
@@ -1,296 +0,0 @@
-[
- "Glide",
- "Abstyles",
- "AFL-1.1",
- "AFL-1.2",
- "AFL-2.0",
- "AFL-2.1",
- "AFL-3.0",
- "AMPAS",
- "APL-1.0",
- "Adobe-Glyph",
- "APAFML",
- "Adobe-2006",
- "AGPL-1.0",
- "Afmparse",
- "Aladdin",
- "ADSL",
- "AMDPLPA",
- "ANTLR-PD",
- "Apache-1.0",
- "Apache-1.1",
- "Apache-2.0",
- "AML",
- "APSL-1.0",
- "APSL-1.1",
- "APSL-1.2",
- "APSL-2.0",
- "Artistic-1.0",
- "Artistic-1.0-Perl",
- "Artistic-1.0-cl8",
- "Artistic-2.0",
- "AAL",
- "Bahyph",
- "Barr",
- "Beerware",
- "BitTorrent-1.0",
- "BitTorrent-1.1",
- "BSL-1.0",
- "Borceux",
- "BSD-2-Clause",
- "BSD-2-Clause-FreeBSD",
- "BSD-2-Clause-NetBSD",
- "BSD-3-Clause",
- "BSD-3-Clause-Clear",
- "BSD-4-Clause",
- "BSD-Protection",
- "BSD-3-Clause-Attribution",
- "BSD-4-Clause-UC",
- "bzip2-1.0.5",
- "bzip2-1.0.6",
- "Caldera",
- "CECILL-1.0",
- "CECILL-1.1",
- "CECILL-2.0",
- "CECILL-B",
- "CECILL-C",
- "ClArtistic",
- "MIT-CMU",
- "CNRI-Python",
- "CNRI-Python-GPL-Compatible",
- "CPOL-1.02",
- "CDDL-1.0",
- "CDDL-1.1",
- "CPAL-1.0",
- "CPL-1.0",
- "CATOSL-1.1",
- "Condor-1.1",
- "CC-BY-1.0",
- "CC-BY-2.0",
- "CC-BY-2.5",
- "CC-BY-3.0",
- "CC-BY-4.0",
- "CC-BY-ND-1.0",
- "CC-BY-ND-2.0",
- "CC-BY-ND-2.5",
- "CC-BY-ND-3.0",
- "CC-BY-ND-4.0",
- "CC-BY-NC-1.0",
- "CC-BY-NC-2.0",
- "CC-BY-NC-2.5",
- "CC-BY-NC-3.0",
- "CC-BY-NC-4.0",
- "CC-BY-NC-ND-1.0",
- "CC-BY-NC-ND-2.0",
- "CC-BY-NC-ND-2.5",
- "CC-BY-NC-ND-3.0",
- "CC-BY-NC-ND-4.0",
- "CC-BY-NC-SA-1.0",
- "CC-BY-NC-SA-2.0",
- "CC-BY-NC-SA-2.5",
- "CC-BY-NC-SA-3.0",
- "CC-BY-NC-SA-4.0",
- "CC-BY-SA-1.0",
- "CC-BY-SA-2.0",
- "CC-BY-SA-2.5",
- "CC-BY-SA-3.0",
- "CC-BY-SA-4.0",
- "CC0-1.0",
- "Crossword",
- "CUA-OPL-1.0",
- "Cube",
- "D-FSL-1.0",
- "diffmark",
- "WTFPL",
- "DOC",
- "Dotseqn",
- "DSDP",
- "dvipdfm",
- "EPL-1.0",
- "ECL-1.0",
- "ECL-2.0",
- "eGenix",
- "EFL-1.0",
- "EFL-2.0",
- "MIT-advertising",
- "MIT-enna",
- "Entessa",
- "ErlPL-1.1",
- "EUDatagrid",
- "EUPL-1.0",
- "EUPL-1.1",
- "Eurosym",
- "Fair",
- "MIT-feh",
- "Frameworx-1.0",
- "FreeImage",
- "FTL",
- "FSFUL",
- "FSFULLR",
- "Giftware",
- "GL2PS",
- "Glulxe",
- "AGPL-3.0",
- "GFDL-1.1",
- "GFDL-1.2",
- "GFDL-1.3",
- "GPL-1.0",
- "GPL-2.0",
- "GPL-3.0",
- "LGPL-2.1",
- "LGPL-3.0",
- "LGPL-2.0",
- "gnuplot",
- "gSOAP-1.3b",
- "HaskellReport",
- "HPND",
- "IBM-pibs",
- "IPL-1.0",
- "ImageMagick",
- "iMatix",
- "Imlib2",
- "IJG",
- "Intel-ACPI",
- "Intel",
- "IPA",
- "ISC",
- "JasPer-2.0",
- "JSON",
- "LPPL-1.3a",
- "LPPL-1.0",
- "LPPL-1.1",
- "LPPL-1.2",
- "LPPL-1.3c",
- "Latex2e",
- "BSD-3-Clause-LBNL",
- "Leptonica",
- "Libpng",
- "libtiff",
- "LPL-1.02",
- "LPL-1.0",
- "MakeIndex",
- "MTLL",
- "MS-PL",
- "MS-RL",
- "MirOS",
- "MITNFA",
- "MIT",
- "Motosoto",
- "MPL-1.0",
- "MPL-1.1",
- "MPL-2.0",
- "MPL-2.0-no-copyleft-exception",
- "mpich2",
- "Multics",
- "Mup",
- "NASA-1.3",
- "Naumen",
- "NBPL-1.0",
- "NetCDF",
- "NGPL",
- "NOSL",
- "NPL-1.0",
- "NPL-1.1",
- "Newsletr",
- "NLPL",
- "Nokia",
- "NPOSL-3.0",
- "Noweb",
- "NRL",
- "NTP",
- "Nunit",
- "OCLC-2.0",
- "ODbL-1.0",
- "PDDL-1.0",
- "OGTSL",
- "OLDAP-2.2.2",
- "OLDAP-1.1",
- "OLDAP-1.2",
- "OLDAP-1.3",
- "OLDAP-1.4",
- "OLDAP-2.0",
- "OLDAP-2.0.1",
- "OLDAP-2.1",
- "OLDAP-2.2",
- "OLDAP-2.2.1",
- "OLDAP-2.3",
- "OLDAP-2.4",
- "OLDAP-2.5",
- "OLDAP-2.6",
- "OLDAP-2.7",
- "OLDAP-2.8",
- "OML",
- "OPL-1.0",
- "OSL-1.0",
- "OSL-1.1",
- "OSL-2.0",
- "OSL-2.1",
- "OSL-3.0",
- "OpenSSL",
- "PHP-3.0",
- "PHP-3.01",
- "Plexus",
- "PostgreSQL",
- "psfrag",
- "psutils",
- "Python-2.0",
- "QPL-1.0",
- "Qhull",
- "Rdisc",
- "RPSL-1.0",
- "RPL-1.1",
- "RPL-1.5",
- "RHeCos-1.1",
- "RSCPL",
- "Ruby",
- "SAX-PD",
- "Saxpath",
- "SCEA",
- "SWL",
- "SGI-B-1.0",
- "SGI-B-1.1",
- "SGI-B-2.0",
- "OFL-1.0",
- "OFL-1.1",
- "SimPL-2.0",
- "Sleepycat",
- "SNIA",
- "SMLNJ",
- "SugarCRM-1.1.3",
- "SISSL",
- "SISSL-1.2",
- "SPL-1.0",
- "Watcom-1.0",
- "TCL",
- "Unlicense",
- "TMate",
- "TORQUE-1.1",
- "TOSL",
- "Unicode-TOU",
- "NCSA",
- "Vim",
- "VOSTROM",
- "VSL-1.0",
- "W3C",
- "W3C-19980720",
- "Wsuipa",
- "Xnet",
- "X11",
- "Xerox",
- "XFree86-1.1",
- "xinetd",
- "xpp",
- "XSkat",
- "YPL-1.0",
- "YPL-1.1",
- "Zed",
- "Zend-2.0",
- "Zimbra-1.3",
- "Zimbra-1.4",
- "Zlib",
- "zlib-acknowledgement",
- "ZPL-1.1",
- "ZPL-2.0",
- "ZPL-2.1",
- "ICU"
-]
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js b/deps/npm/node_modules/strip-ansi/index.js
index 099480fbfc5..099480fbfc5 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js
+++ b/deps/npm/node_modules/strip-ansi/index.js
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/license b/deps/npm/node_modules/strip-ansi/license
index 654d0bfe943..654d0bfe943 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/node_modules/ansi-regex/license
+++ b/deps/npm/node_modules/strip-ansi/license
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json b/deps/npm/node_modules/strip-ansi/package.json
index 2871d037908..f9809beee8d 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json
+++ b/deps/npm/node_modules/strip-ansi/package.json
@@ -68,7 +68,7 @@
"homepage": "https://github.com/sindresorhus/strip-ansi",
"_id": "strip-ansi@3.0.0",
"_shasum": "7510b665567ca914ccb5d7e072763ac968be3724",
- "_from": "strip-ansi@>=3.0.0 <4.0.0",
+ "_from": "strip-ansi@3.0.0",
"_npmVersion": "2.11.2",
"_nodeVersion": "0.12.5",
"_npmUser": {
diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/readme.md b/deps/npm/node_modules/strip-ansi/readme.md
index 76091512df5..76091512df5 100644
--- a/deps/npm/node_modules/columnify/node_modules/strip-ansi/readme.md
+++ b/deps/npm/node_modules/strip-ansi/readme.md
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/LICENSE b/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/LICENSE
deleted file mode 100644
index 68a49daad8f..00000000000
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-correct/node_modules/spdx-license-ids/LICENSE
+++ /dev/null
@@ -1,24 +0,0 @@
-This is free and unencumbered software released into the public domain.
-
-Anyone is free to copy, modify, publish, use, compile, sell, or
-distribute this software, either in source code form or as a compiled
-binary, for any purpose, commercial or non-commercial, and by any
-means.
-
-In jurisdictions that recognize copyright laws, the author or authors
-of this software dedicate any and all copyright interest in the
-software to the public domain. We make this dedication for the benefit
-of the public at large and to the detriment of our heirs and
-successors. We intend this dedication to be an overt act of
-relinquishment in perpetuity of all present and future rights to this
-software under copyright law.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-For more information, please refer to <http://unlicense.org/>
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/LICENSE b/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/LICENSE
deleted file mode 100644
index 68a49daad8f..00000000000
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/LICENSE
+++ /dev/null
@@ -1,24 +0,0 @@
-This is free and unencumbered software released into the public domain.
-
-Anyone is free to copy, modify, publish, use, compile, sell, or
-distribute this software, either in source code form or as a compiled
-binary, for any purpose, commercial or non-commercial, and by any
-means.
-
-In jurisdictions that recognize copyright laws, the author or authors
-of this software dedicate any and all copyright interest in the
-software to the public domain. We make this dedication for the benefit
-of the public at large and to the detriment of our heirs and
-successors. We intend this dedication to be an overt act of
-relinquishment in perpetuity of all present and future rights to this
-software under copyright law.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-For more information, please refer to <http://unlicense.org/>
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/README.md b/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/README.md
deleted file mode 100755
index 92523532b24..00000000000
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/README.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# spdx-license-ids
-
-A list of [SPDX license](https://spdx.org/licenses/) identifiers
-
-[**Download JSON**](https://raw.githubusercontent.com/shinnn/spdx-license-ids/master/spdx-license-ids.json)
-
-## Use as a JavaScript Library
-
-[![NPM version](https://img.shields.io/npm/v/spdx-license-ids.svg)](https://www.npmjs.org/package/spdx-license-ids)
-[![Bower version](https://img.shields.io/bower/v/spdx-license-ids.svg)](https://github.com/shinnn/spdx-license-ids/releases)
-[![Build Status](https://travis-ci.org/shinnn/spdx-license-ids.svg?branch=master)](https://travis-ci.org/shinnn/spdx-license-ids)
-[![Coverage Status](https://img.shields.io/coveralls/shinnn/spdx-license-ids.svg)](https://coveralls.io/r/shinnn/spdx-license-ids)
-[![devDependency Status](https://david-dm.org/shinnn/spdx-license-ids/dev-status.svg)](https://david-dm.org/shinnn/spdx-license-ids#info=devDependencies)
-
-### Installation
-
-#### Package managers
-
-##### [npm](https://www.npmjs.com/)
-
-```sh
-npm install spdx-license-ids
-```
-
-##### [bower](http://bower.io/)
-
-```sh
-bower install spdx-license-ids
-```
-
-##### [Duo](http://duojs.org/)
-
-```javascript
-const spdxLicenseIds = require('shinnn/spdx-license-ids');
-```
-
-#### Standalone
-
-[Download the script file directly.](https://raw.githubusercontent.com/shinnn/spdx-license-ids/master/spdx-license-ids-browser.js)
-
-### API
-
-#### spdxLicenseIds
-
-Type: `Array` of `String`
-
-It returns an array of SPDX license identifiers.
-
-```javascript
-const spdxLicenseIds = require('spdx-license-ids'); //=> ['Glide', 'Abstyles', 'AFL-1.1', ... ]
-```
-
-## License
-
-[The Unlicense](./LICENSE).
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/package.json b/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/package.json
deleted file mode 100644
index 62c5c37ba96..00000000000
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/package.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "name": "spdx-license-ids",
- "version": "1.0.2",
- "description": "A list of SPDX license identifiers",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/shinnn/spdx-license-ids.git"
- },
- "author": {
- "name": "Shinnosuke Watanabe",
- "url": "https://github.com/shinnn"
- },
- "scripts": {
- "build": "node --harmony_arrow_functions build.js",
- "lint": "eslint --config node_modules/@shinnn/eslintrc/rc.json --ignore-path .gitignore .",
- "pretest": "${npm_package_scripts_build} && ${npm_package_scripts_lint}",
- "test": "node --harmony_arrow_functions test.js",
- "coverage": "node --harmony_arrow_functions node_modules/.bin/istanbul cover test.js",
- "coveralls": "${npm_package_scripts_coverage} && istanbul-coveralls"
- },
- "license": "Unlicense",
- "main": "spdx-license-ids.json",
- "files": [
- "spdx-license-ids.json"
- ],
- "keywords": [
- "spdx",
- "license",
- "licenses",
- "id",
- "identifier",
- "identifiers",
- "json",
- "array",
- "oss",
- "browser",
- "client-side"
- ],
- "devDependencies": {
- "@shinnn/eslintrc": "^1.0.0",
- "each-async": "^1.1.1",
- "eslint": "^0.24.0",
- "got": "^3.3.0",
- "istanbul": "^0.3.17",
- "istanbul-coveralls": "^1.0.3",
- "require-bower-files": "^2.0.0",
- "rimraf": "^2.4.1",
- "stringify-object": "^2.2.0",
- "tape": "^4.0.0"
- },
- "gitHead": "df183ecdf1738f77b1e8e41f686ee56206a40693",
- "bugs": {
- "url": "https://github.com/shinnn/spdx-license-ids/issues"
- },
- "homepage": "https://github.com/shinnn/spdx-license-ids#readme",
- "_id": "spdx-license-ids@1.0.2",
- "_shasum": "0674e9c9a230f980016b5b073a10aa165701677c",
- "_from": "spdx-license-ids@>=1.0.0 <2.0.0",
- "_npmVersion": "2.12.1",
- "_nodeVersion": "2.3.3",
- "_npmUser": {
- "name": "shinnn",
- "email": "snnskwtnb@gmail.com"
- },
- "maintainers": [
- {
- "name": "shinnn",
- "email": "snnskwtnb@gmail.com"
- }
- ],
- "dist": {
- "shasum": "0674e9c9a230f980016b5b073a10aa165701677c",
- "tarball": "http://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz"
- },
- "directories": {},
- "_resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz"
-}
diff --git a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/spdx-license-ids.json b/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/spdx-license-ids.json
deleted file mode 100644
index 2a4a78f549f..00000000000
--- a/deps/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse/node_modules/spdx-license-ids/spdx-license-ids.json
+++ /dev/null
@@ -1,303 +0,0 @@
-[
- "Glide",
- "Abstyles",
- "AFL-1.1",
- "AFL-1.2",
- "AFL-2.0",
- "AFL-2.1",
- "AFL-3.0",
- "AMPAS",
- "APL-1.0",
- "Adobe-Glyph",
- "APAFML",
- "Adobe-2006",
- "AGPL-1.0",
- "Afmparse",
- "Aladdin",
- "ADSL",
- "AMDPLPA",
- "ANTLR-PD",
- "Apache-1.0",
- "Apache-1.1",
- "Apache-2.0",
- "AML",
- "APSL-1.0",
- "APSL-1.1",
- "APSL-1.2",
- "APSL-2.0",
- "Artistic-1.0",
- "Artistic-1.0-Perl",
- "Artistic-1.0-cl8",
- "Artistic-2.0",
- "AAL",
- "Bahyph",
- "Barr",
- "Beerware",
- "BitTorrent-1.0",
- "BitTorrent-1.1",
- "BSL-1.0",
- "Borceux",
- "BSD-2-Clause",
- "BSD-2-Clause-FreeBSD",
- "BSD-2-Clause-NetBSD",
- "BSD-3-Clause",
- "BSD-3-Clause-Clear",
- "BSD-4-Clause",
- "BSD-Protection",
- "BSD-3-Clause-Attribution",
- "BSD-4-Clause-UC",
- "bzip2-1.0.5",
- "bzip2-1.0.6",
- "Caldera",
- "CECILL-1.0",
- "CECILL-1.1",
- "CECILL-2.0",
- "CECILL-B",
- "CECILL-C",
- "ClArtistic",
- "MIT-CMU",
- "CNRI-Jython",
- "CNRI-Python",
- "CNRI-Python-GPL-Compatible",
- "CPOL-1.02",
- "CDDL-1.0",
- "CDDL-1.1",
- "CPAL-1.0",
- "CPL-1.0",
- "CATOSL-1.1",
- "Condor-1.1",
- "CC-BY-1.0",
- "CC-BY-2.0",
- "CC-BY-2.5",
- "CC-BY-3.0",
- "CC-BY-4.0",
- "CC-BY-ND-1.0",
- "CC-BY-ND-2.0",
- "CC-BY-ND-2.5",
- "CC-BY-ND-3.0",
- "CC-BY-ND-4.0",
- "CC-BY-NC-1.0",
- "CC-BY-NC-2.0",
- "CC-BY-NC-2.5",
- "CC-BY-NC-3.0",
- "CC-BY-NC-4.0",
- "CC-BY-NC-ND-1.0",
- "CC-BY-NC-ND-2.0",
- "CC-BY-NC-ND-2.5",
- "CC-BY-NC-ND-3.0",
- "CC-BY-NC-ND-4.0",
- "CC-BY-NC-SA-1.0",
- "CC-BY-NC-SA-2.0",
- "CC-BY-NC-SA-2.5",
- "CC-BY-NC-SA-3.0",
- "CC-BY-NC-SA-4.0",
- "CC-BY-SA-1.0",
- "CC-BY-SA-2.0",
- "CC-BY-SA-2.5",
- "CC-BY-SA-3.0",
- "CC-BY-SA-4.0",
- "CC0-1.0",
- "Crossword",
- "CUA-OPL-1.0",
- "Cube",
- "D-FSL-1.0",
- "diffmark",
- "WTFPL",
- "DOC",
- "Dotseqn",
- "DSDP",
- "dvipdfm",
- "EPL-1.0",
- "ECL-1.0",
- "ECL-2.0",
- "eGenix",
- "EFL-1.0",
- "EFL-2.0",
- "MIT-advertising",
- "MIT-enna",
- "Entessa",
- "ErlPL-1.1",
- "EUDatagrid",
- "EUPL-1.0",
- "EUPL-1.1",
- "Eurosym",
- "Fair",
- "MIT-feh",
- "Frameworx-1.0",
- "FreeImage",
- "FTL",
- "FSFUL",
- "FSFULLR",
- "Giftware",
- "GL2PS",
- "Glulxe",
- "AGPL-3.0",
- "GFDL-1.1",
- "GFDL-1.2",
- "GFDL-1.3",
- "GPL-1.0",
- "GPL-2.0",
- "GPL-3.0",
- "LGPL-2.1",
- "LGPL-3.0",
- "LGPL-2.0",
- "gnuplot",
- "gSOAP-1.3b",
- "HaskellReport",
- "HPND",
- "IBM-pibs",
- "IPL-1.0",
- "ICU",
- "ImageMagick",
- "iMatix",
- "Imlib2",
- "IJG",
- "Intel-ACPI",
- "Intel",
- "IPA",
- "ISC",
- "JasPer-2.0",
- "JSON",
- "LPPL-1.3a",
- "LPPL-1.0",
- "LPPL-1.1",
- "LPPL-1.2",
- "LPPL-1.3c",
- "Latex2e",
- "BSD-3-Clause-LBNL",
- "Leptonica",
- "LGPLLR",
- "Libpng",
- "libtiff",
- "LPL-1.02",
- "LPL-1.0",
- "MakeIndex",
- "MTLL",
- "MS-PL",
- "MS-RL",
- "MirOS",
- "MITNFA",
- "MIT",
- "Motosoto",
- "MPL-1.0",
- "MPL-1.1",
- "MPL-2.0",
- "MPL-2.0-no-copyleft-exception",
- "mpich2",
- "Multics",
- "Mup",
- "NASA-1.3",
- "Naumen",
- "NBPL-1.0",
- "NetCDF",
- "NGPL",
- "NOSL",
- "NPL-1.0",
- "NPL-1.1",
- "Newsletr",
- "NLPL",
- "Nokia",
- "NPOSL-3.0",
- "Noweb",
- "NRL",
- "NTP",
- "Nunit",
- "OCLC-2.0",
- "ODbL-1.0",
- "PDDL-1.0",
- "OGTSL",
- "OLDAP-2.2.2",
- "OLDAP-1.1",
- "OLDAP-1.2",
- "OLDAP-1.3",
- "OLDAP-1.4",
- "OLDAP-2.0",
- "OLDAP-2.0.1",
- "OLDAP-2.1",
- "OLDAP-2.2",
- "OLDAP-2.2.1",
- "OLDAP-2.3",
- "OLDAP-2.4",
- "OLDAP-2.5",
- "OLDAP-2.6",
- "OLDAP-2.7",
- "OLDAP-2.8",
- "OML",
- "OPL-1.0",
- "OSL-1.0",
- "OSL-1.1",
- "OSL-2.0",
- "OSL-2.1",
- "OSL-3.0",
- "OpenSSL",
- "PHP-3.0",
- "PHP-3.01",
- "Plexus",
- "PostgreSQL",
- "psfrag",
- "psutils",
- "Python-2.0",
- "QPL-1.0",
- "Qhull",
- "Rdisc",
- "RPSL-1.0",
- "RPL-1.1",
- "RPL-1.5",
- "RHeCos-1.1",
- "RSCPL",
- "RSA-MD",
- "Ruby",
- "SAX-PD",
- "Saxpath",
- "SCEA",
- "SWL",
- "SGI-B-1.0",
- "SGI-B-1.1",
- "SGI-B-2.0",
- "OFL-1.0",
- "OFL-1.1",
- "SimPL-2.0",
- "Sleepycat",
- "SNIA",
- "Spencer-86",
- "Spencer-94",
- "Spencer-99",
- "SMLNJ",
- "SugarCRM-1.1.3",
- "SISSL",
- "SISSL-1.2",
- "SPL-1.0",
- "Watcom-1.0",
- "TCL",
- "Unlicense",
- "TMate",
- "TORQUE-1.1",
- "TOSL",
- "Unicode-TOU",
- "UPL-1.0",
- "NCSA",
- "Vim",
- "VOSTROM",
- "VSL-1.0",
- "W3C-19980720",
- "W3C",
- "Wsuipa",
- "Xnet",
- "X11",
- "Xerox",
- "XFree86-1.1",
- "xinetd",
- "xpp",
- "XSkat",
- "YPL-1.0",
- "YPL-1.1",
- "Zed",
- "Zend-2.0",
- "Zimbra-1.3",
- "Zimbra-1.4",
- "Zlib",
- "zlib-acknowledgement",
- "ZPL-1.1",
- "ZPL-2.0",
- "ZPL-2.1"
-]
diff --git a/deps/npm/package.json b/deps/npm/package.json
index 1bc589a029c..fe047bc5623 100644
--- a/deps/npm/package.json
+++ b/deps/npm/package.json
@@ -1,5 +1,5 @@
{
- "version": "2.14.9",
+ "version": "2.14.12",
"name": "npm",
"description": "a package manager for JavaScript",
"keywords": [
@@ -48,7 +48,7 @@
"fs-vacuum": "~1.2.7",
"fs-write-stream-atomic": "~1.0.4",
"fstream": "~1.0.8",
- "fstream-npm": "~1.0.5",
+ "fstream-npm": "~1.0.7",
"github-url-from-git": "~1.4.0",
"github-url-from-username-repo": "~1.0.2",
"glob": "~5.0.15",
@@ -63,22 +63,22 @@
"minimatch": "~3.0.0",
"mkdirp": "~0.5.1",
"node-gyp": "~3.0.3",
- "nopt": "~3.0.4",
+ "nopt": "~3.0.6",
"normalize-git-url": "~3.0.1",
- "normalize-package-data": "~2.3.4",
+ "normalize-package-data": "~2.3.5",
"npm-cache-filename": "~1.0.2",
"npm-install-checks": "~1.0.6",
- "npm-package-arg": "~4.0.2",
- "npm-registry-client": "~7.0.7",
+ "npm-package-arg": "~4.1.0",
+ "npm-registry-client": "~7.0.8",
"npm-user-validate": "~0.1.2",
- "npmlog": "~1.2.1",
+ "npmlog": "~2.0.0",
"once": "~1.3.2",
"opener": "~1.4.1",
"osenv": "~0.1.3",
"path-is-inside": "~1.0.0",
"read": "~1.0.7",
"read-installed": "~4.0.3",
- "read-package-json": "~2.0.1",
+ "read-package-json": "~2.0.2",
"readable-stream": "~1.1.13",
"realize-package-specifier": "~3.0.1",
"request": "~2.65.0",
@@ -102,6 +102,7 @@
"bundleDependencies": [
"abbrev",
"ansi",
+ "ansi-regex",
"ansicolors",
"ansistyles",
"archy",
@@ -159,6 +160,8 @@
"slide",
"sorted-object",
"spdx",
+ "spdx-license-ids",
+ "strip-ansi",
"tar",
"text-table",
"uid-number",
@@ -173,10 +176,10 @@
"deep-equal": "~1.0.1",
"marked": "~0.3.3",
"marked-man": "~0.1.5",
- "nock": "~2.16.0",
+ "nock": "~1.9.0",
"npm-registry-couchapp": "~2.6.7",
"npm-registry-mock": "~1.0.0",
- "require-inject": "~1.2.0",
+ "require-inject": "~1.3.0",
"sprintf-js": "~1.0.2",
"tap": "~2.2.0"
},
diff --git a/deps/npm/test/fixtures/config/userconfig-with-gc b/deps/npm/test/fixtures/config/userconfig-with-gc
index 7268fcb3c61..62ad80be113 100644
--- a/deps/npm/test/fixtures/config/userconfig-with-gc
+++ b/deps/npm/test/fixtures/config/userconfig-with-gc
@@ -1,4 +1,4 @@
-globalconfig=/Users/ogd/Documents/projects/npm/npm/test/fixtures/config/globalconfig
+globalconfig=/Users/zkat/Documents/code/npm/test/fixtures/config/globalconfig
email=i@izs.me
env-thing=asdf
init.author.name=Isaac Z. Schlueter
diff --git a/deps/npm/test/tap/access.js b/deps/npm/test/tap/access.js
index c72ea5c8986..41d2c93607e 100644
--- a/deps/npm/test/tap/access.js
+++ b/deps/npm/test/tap/access.js
@@ -15,10 +15,6 @@ var scoped = {
version: '1.1.1'
}
-var body = {
- access: 'public'
-}
-
test('setup', function (t) {
mkdirp(pkg, function (er) {
t.ifError(er, pkg + ' made successfully')
@@ -61,6 +57,48 @@ test('npm access public on current package', function (t) {
})
})
+test('npm access public when no package passed and no package.json', function (t) {
+ // need to simulate a missing package.json
+ var missing = path.join(__dirname, 'access-public-missing-guard')
+ mkdirp.sync(path.join(missing, 'node_modules'))
+
+ common.npm([
+ 'access',
+ 'public',
+ '--registry', common.registry
+ ], {
+ cwd: missing
+ },
+ function (er, code, stdout, stderr) {
+ t.ifError(er, 'npm access')
+ t.match(stderr, /no package name passed to command and no package.json found/)
+ rimraf.sync(missing)
+ t.end()
+ })
+})
+
+test('npm access public when no package passed and invalid package.json', function (t) {
+ // need to simulate a missing package.json
+ var invalid = path.join(__dirname, 'access-public-invalid-package')
+ mkdirp.sync(path.join(invalid, 'node_modules'))
+ // it's hard to force `read-package-json` to break w/o ENOENT, but this will do it
+ fs.writeFileSync(path.join(invalid, 'package.json'), '{\n')
+
+ common.npm([
+ 'access',
+ 'public',
+ '--registry', common.registry
+ ], {
+ cwd: invalid
+ },
+ function (er, code, stdout, stderr) {
+ t.ifError(er, 'npm access')
+ t.match(stderr, /Failed to parse json/)
+ rimraf.sync(invalid)
+ t.end()
+ })
+})
+
test('npm access restricted on current package', function (t) {
server.post('/-/package/%40scoped%2Fpkg/access', JSON.stringify({
access: 'restricted'
@@ -214,6 +252,33 @@ test('npm access revoke', function (t) {
)
})
+test('npm access ls-packages with no team', function (t) {
+ var serverPackages = {
+ '@foo/bar': 'write',
+ '@foo/util': 'read'
+ }
+ var clientPackages = {
+ '@foo/bar': 'read-write',
+ '@foo/util': 'read-only'
+ }
+ server.get(
+ '/-/org/username/package?format=cli'
+ ).reply(200, serverPackages)
+ common.npm(
+ [
+ 'access',
+ 'ls-packages',
+ '--registry', common.registry
+ ],
+ { cwd: pkg },
+ function (er, code, stdout, stderr) {
+ t.ifError(er, 'npm access ls-packages')
+ t.same(JSON.parse(stdout), clientPackages)
+ t.end()
+ }
+ )
+})
+
test('npm access ls-packages on team', function (t) {
var serverPackages = {
'@foo/bar': 'write',
@@ -301,6 +366,42 @@ test('npm access ls-packages on user', function (t) {
)
})
+test('npm access ls-packages with no package specified or package.json', function (t) {
+ // need to simulate a missing package.json
+ var missing = path.join(__dirname, 'access-missing-guard')
+ mkdirp.sync(path.join(missing, 'node_modules'))
+
+ var serverPackages = {
+ '@foo/bar': 'write',
+ '@foo/util': 'read'
+ }
+ var clientPackages = {
+ '@foo/bar': 'read-write',
+ '@foo/util': 'read-only'
+ }
+ server.get(
+ '/-/org/myorg/package?format=cli'
+ ).reply(404, {error: 'nope'})
+ server.get(
+ '/-/user/myorg/package?format=cli'
+ ).reply(200, serverPackages)
+ common.npm(
+ [
+ 'access',
+ 'ls-packages',
+ 'myorg',
+ '--registry', common.registry
+ ],
+ { cwd: missing },
+ function (er, code, stdout, stderr) {
+ t.ifError(er, 'npm access ls-packages')
+ t.same(JSON.parse(stdout), clientPackages)
+ rimraf.sync(missing)
+ t.end()
+ }
+ )
+})
+
test('npm access ls-collaborators on current', function (t) {
var serverCollaborators = {
'myorg:myteam': 'write',
@@ -385,7 +486,6 @@ test('npm access ls-collaborators on current w/user filter', function (t) {
)
})
-
test('npm access edit', function (t) {
common.npm(
[