diff --git a/deps/npm/.eslintrc b/deps/npm/.eslintrc index b54e30fd2a..3c262a61a1 100644 --- a/deps/npm/.eslintrc +++ b/deps/npm/.eslintrc @@ -10,6 +10,7 @@ "curly": 0, "no-underscore-dangle": 0, "no-lonely-if": 1, + "no-shadow": 0, "no-unused-vars": [2, {"vars" : "all", "args" : "after-used"}], "no-mixed-requires": 0, "space-infix-ops": 0, diff --git a/deps/npm/.travis.yml b/deps/npm/.travis.yml index c540f6559e..3ed21bf417 100644 --- a/deps/npm/.travis.yml +++ b/deps/npm/.travis.yml @@ -1,11 +1,15 @@ language: node_js node_js: - - "0.11" + - iojs + - "0.12" - "0.10" + - "0.8" env: - DEPLOY_VERSION=testing before_install: - "npm config set spin false" - - "npm install -g npm@^2" + - "npm install -g npm@~2" - "sudo mkdir -p /var/run/couchdb" script: "npm run-script test-all" +notifications: + slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8 diff --git a/deps/npm/CHANGELOG.md b/deps/npm/CHANGELOG.md index 248de8908d..e041290e08 100644 --- a/deps/npm/CHANGELOG.md +++ b/deps/npm/CHANGELOG.md @@ -1,3 +1,50 @@ +### v2.6.0 (2015-02-12): + +#### A LONG-AWAITED GUEST + +* [`38c4825`](https://github.com/npm/npm/commit/38c48254d3d217b4babf5027cb39492be4052fc2) + [#5068](https://github.com/npm/npm/issues/5068) Add new logout command, and + make it do something useful on both bearer-based and basic-based authed + clients. ([@othiym23](https://github.com/othiym23)) +* [`4bf0f5d`](https://github.com/npm/npm/commit/4bf0f5d56c33649124b486e016ba4a620c105c1c) + `npm-registry-clieng@6.1.1`: Support new `logout` endpoint to invalidate + token for sessions. ([@othiym23](https://github.com/othiym23)) + +#### DEPRECATIONS + +* [`c8e08e6`](https://github.com/npm/npm/commit/c8e08e6d91f4016c80f572aac5a2080df0f78098) + [#6565](https://github.com/npm/npm/issues/6565) Warn that `peerDependency` + behavior is changing and add a note to the docs. + ([@othiym23](https://github.com/othiym23)) +* [`7c81a5f`](https://github.com/npm/npm/commit/7c81a5f5f058941f635a92f22641ea68e79b60db) + [#7171](https://github.com/npm/npm/issues/7171) Warn that `engineStrict` in + `package.json` will be going away in the next major version of npm (coming + soon!) ([@othiym23](https://github.com/othiym23)) + +#### BUG FIXES & TWEAKS + +* [`add5890`](https://github.com/npm/npm/commit/add5890ce447dabf120b907a85f715df1e065f44) + [#4668](https://github.com/npm/npm/issues/4668) `read-package-json@1.3.1`: + Warn when a `bin` symbolic link is a dangling reference. +* [`4b42071`](https://github.com/npm/npm/commit/4b420714dfb84338d85def78c30bd665e32d72c1) + `semver@4.3.0`: Add functions to extract parts of the version triple, fix a + typo. ([@isaacs](https://github.com/isaacs)) +* [`a9aff38`](https://github.com/npm/npm/commit/a9aff38719918486fc381d67ad3371c475632ff7) + Use full path for man pages as the symbolic link source, instead of just the + file name. ([@bengl](https://github.com/bengl)) +* [`6fd0fbd`](https://github.com/npm/npm/commit/6fd0fbd8a0347fd47cb7ee0064e0902a2f8a087c) + [#7233](https://github.com/npm/npm/issues/7233) Ensure `globalconfig` path + exists before trying to edit it. ([@ljharb](https://github.com/ljharb)) +* [`a0a2620`](https://github.com/npm/npm/commit/a0a262047647d9e2690cebe5a89e6a0dd33202bb) + `ini@1.3.3`: Allow embedded, quoted equals signs in ini field names. + ([@isaacs](https://github.com/isaacs)) + +Also typos and other documentation issues were addressed by +[@rutsky](https://github.com/rutsky), [@imurchie](https://github.com/imurchie), +[@marcin-wosinek](https://github.com/marcin-wosinek), +[@marr](https://github.com/marr), [@amZotti](https://github.com/amZotti), and +[@karlhorky](https://github.com/karlhorky). Thank you, everyone! + ### v2.5.1 (2015-02-06): This release doesn't look like much, but considerable effort went into ensuring diff --git a/deps/npm/README.md b/deps/npm/README.md index 0a4301e3b4..9ed084297a 100644 --- a/deps/npm/README.md +++ b/deps/npm/README.md @@ -173,7 +173,7 @@ npm, Inc. or the Node.js project. Data published to the npm registry is not part of npm itself, and is the sole property of the publisher. While every effort is made to -ensure accountability, there is absolutely no guarantee, warrantee, or +ensure accountability, there is absolutely no guarantee, warranty, or assertion expressed or implied as to the quality, fitness for a specific purpose, or lack of malice in any given npm package. diff --git a/deps/npm/doc/cli/npm-dist-tag.md b/deps/npm/doc/cli/npm-dist-tag.md index b8eabe7157..f8e4566ca7 100644 --- a/deps/npm/doc/cli/npm-dist-tag.md +++ b/deps/npm/doc/cli/npm-dist-tag.md @@ -20,7 +20,7 @@ Add, remove, and enumerate distribution tags on a package: * ls: Show all of the dist-tags for a package, defaulting to the package in - the curren prefix. + the current prefix. A tag can be used when installing packages as a reference to a version instead of using a specific version number: diff --git a/deps/npm/doc/cli/npm-link.md b/deps/npm/doc/cli/npm-link.md index 786ad815dc..a48fb97785 100644 --- a/deps/npm/doc/cli/npm-link.md +++ b/deps/npm/doc/cli/npm-link.md @@ -38,7 +38,7 @@ For example: npm link redis # link-install the package Now, any changes to ~/projects/node-redis will be reflected in -~/projects/node-bloggy/node_modules/redis/ +~/projects/node-bloggy/node_modules/node-redis/ You may also shortcut the two steps in one. For example, to do the above use-case in a shorter way: @@ -49,7 +49,7 @@ above use-case in a shorter way: The second line is the equivalent of doing: (cd ../node-redis; npm link) - npm link redis + npm link node-redis That is, it first creates a global link, and then links the global installation target into your project's `node_modules` folder. diff --git a/deps/npm/doc/cli/npm-logout.md b/deps/npm/doc/cli/npm-logout.md new file mode 100644 index 0000000000..867953c024 --- /dev/null +++ b/deps/npm/doc/cli/npm-logout.md @@ -0,0 +1,50 @@ +npm-logout(1) -- Log out of the registry +======================================== + +## SYNOPSIS + + npm logout [--registry=url] [--scope=@orgname] + +## DESCRIPTION + +When logged into a registry that supports token-based authentication, tell the +server to end this token's session. This will invalidate the token everywhere +you're using it, not just for the current environment. + +When logged into a legacy registry that uses username and password authentication, this will +clear the credentials in your user configuration. In this case, it will _only_ affect +the current environment. + +If `--scope` is provided, this will find the credentials for the registry +connected to that scope, if set. + +## CONFIGURATION + +### registry + +Default: http://registry.npmjs.org/ + +The base URL of the npm package registry. If `scope` is also specified, +it takes precedence. + +### scope + +Default: none + +If specified, the user and login credentials given will be associated +with the specified scope. See `npm-scope(7)`. You can use both at the same time, +e.g. + + npm adduser --registry=http://myregistry.example.com --scope=@myco + +This will set a registry for the given scope and login or create a user for +that registry at the same time. + +## SEE ALSO + +* npm-adduser(1) +* npm-registry(7) +* npm-config(1) +* npm-config(7) +* npmrc(5) +* npm-whoami(1) diff --git a/deps/npm/doc/files/package.json.md b/deps/npm/doc/files/package.json.md index 933c23a64a..3f29a8c35c 100644 --- a/deps/npm/doc/files/package.json.md +++ b/deps/npm/doc/files/package.json.md @@ -75,7 +75,7 @@ with your package. It should look like this: - { "url" : "http://github.com/owner/project/issues" + { "url" : "https://github.com/owner/project/issues" , "email" : "project@hostname.com" } @@ -219,7 +219,7 @@ will create entries for `man foo` and `man 2 foo` The CommonJS [Packages](http://wiki.commonjs.org/wiki/Packages/1.0) spec details a few ways that you can indicate the structure of your package using a `directories` -object. If you look at [npm's package.json](http://registry.npmjs.org/npm/latest), +object. If you look at [npm's package.json](https://registry.npmjs.org/npm/latest), you'll see that it has directories for doc, lib, and man. In the future, this information may be used in other creative ways. @@ -260,18 +260,23 @@ Do it like this: "repository" : { "type" : "git" - , "url" : "http://github.com/npm/npm.git" + , "url" : "https://github.com/npm/npm.git" } "repository" : { "type" : "svn" - , "url" : "http://v8.googlecode.com/svn/trunk/" + , "url" : "https://v8.googlecode.com/svn/trunk/" } The URL should be a publicly available (perhaps read-only) url that can be handed directly to a VCS program without any modification. It should not be a url to an html project page that you put in your browser. It's for computers. +For GitHub repositories you can use the same shortcut syntax you use for `npm +install`: + + "repository": "npm/npm" + ## scripts The "scripts" property is a dictionary containing script commands that are run @@ -459,13 +464,19 @@ For example: } This ensures your package `tea-latte` can be installed *along* with the second -major version of the host package `tea` only. The host package is automatically -installed if needed. `npm install tea-latte` could possibly yield the following -dependency graph: +major version of the host package `tea` only. `npm install tea-latte` could +possibly yield the following dependency graph: ├── tea-latte@1.3.5 └── tea@2.2.0 +**NOTE: npm versions 1 and 2 will automatically install `peerDependencies` if +they are not explicitly depended upon higher in the dependency tree. In the +next major version of npm (npm@3), this will no longer be the case. You will +receive a warning that the peerDependency is not installed instead.** The +behavior in npms 1 & 2 was frequently confusing and could easily put you into +dependency hell, a situation that npm is designed to avoid as much as possible. + Trying to install another plugin with a conflicting requirement will cause an error. For this reason, make sure your plugin requirement is as broad as possible, and not to lock it down to specific patch versions. @@ -534,6 +545,8 @@ field is advisory only. ## engineStrict +**NOTE: This feature is deprecated and will be removed in npm 3.0.0.** + If you are sure that your module will *definitely not* run properly on versions of Node/npm other than those specified in the `engines` object, then you can set `"engineStrict": true` in your package.json file. @@ -542,8 +555,7 @@ This will override the user's `engine-strict` config setting. Please do not do this unless you are really very very sure. If your engines object is something overly restrictive, you can quite easily and inadvertently lock yourself into obscurity and prevent your users from -updating to new versions of Node. Consider this choice carefully. If -people abuse it, it will be removed in a future version of npm. +updating to new versions of Node. Consider this choice carefully. ## os diff --git a/deps/npm/doc/misc/npm-index.md b/deps/npm/doc/misc/npm-index.md index 4cbfbdc8bc..8b9b69a48b 100644 --- a/deps/npm/doc/misc/npm-index.md +++ b/deps/npm/doc/misc/npm-index.md @@ -93,6 +93,10 @@ Install a package Symlink a package folder +### npm-logout(1) + +Log out of the registry + ### npm-ls(1) List installed packages diff --git a/deps/npm/doc/misc/semver.md b/deps/npm/doc/misc/semver.md index 3f9555db14..2bd5acc29b 100644 --- a/deps/npm/doc/misc/semver.md +++ b/deps/npm/doc/misc/semver.md @@ -106,7 +106,7 @@ similar risk on the *next* set of prerelease versions. The method `.inc` takes an additional `identifier` string argument that will append the value of the string as a prerelease identifier: -````javascript +```javascript > semver.inc('1.2.3', 'pre', 'beta') '1.2.4-beta.0' ``` @@ -248,6 +248,9 @@ strings that they parse. same as `prepatch`. It increments the patch version, then makes a prerelease. If the input version is already a prerelease it simply increments it. +* `major(v)`: Return the major version number. +* `minor(v)`: Return the minor version number. +* `patch(v)`: Return the patch version number. ### Comparison diff --git a/deps/npm/html/doc/README.html b/deps/npm/html/doc/README.html index ca7b622ca2..01390c2642 100644 --- a/deps/npm/html/doc/README.html +++ b/deps/npm/html/doc/README.html @@ -120,13 +120,13 @@ All rights reserved. See the included LICENSE file for more details.
npm, Inc. or the Node.js project.Data published to the npm registry is not part of npm itself, and is the sole property of the publisher. While every effort is made to -ensure accountability, there is absolutely no guarantee, warrantee, or +ensure accountability, there is absolutely no guarantee, warranty, or assertion expressed or implied as to the quality, fitness for a specific purpose, or lack of malice in any given npm package.
If you have a complaint about a package in the public npm registry, and cannot resolve it with the package owner, please email -support@npmjs.com and explain the situation.
+support@npmjs.com and explain the situation.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.
@@ -169,5 +169,5 @@ will no doubt tell you to put the output in a gist or email.npm.bin
property.
man 3 npm-<command>
for programmatic usage.
npm rebuild <pkg>
if you make any changes.
packages
parameter.
packages
parameter.
2.5.1
+2.6.0
This is the API documentation for npm.
To find documentation of the command line
@@ -109,5 +109,5 @@ method names. Use the npm.deref
method to find the real name.
package.json
in the current folder and use the name
package.json
file in its root.
ls: Show all of the dist-tags for a package, defaulting to the package in -the curren prefix.
+the current prefix.A tag can be used when installing packages as a reference to a version instead
@@ -76,4 +76,5 @@ begin with a number or the letter v
.
name
property.
"notepad"
on Windows.
Now, any changes to ~/projects/node-redis will be reflected in -~/projects/node-bloggy/node_modules/redis/
+~/projects/node-bloggy/node_modules/node-redis/You may also shortcut the two steps in one. For example, to do the above use-case in a shorter way:
cd ~/projects/node-bloggy # go into the dir of your main project
npm link ../node-redis # link the dir of your dependency
The second line is the equivalent of doing:
(cd ../node-redis; npm link)
-npm link redis
+npm link node-redis
That is, it first creates a global link, and then links the global
installation target into your project's node_modules
folder.
If your linked package is scoped (see npm-scope(7)
) your link command must
@@ -71,5 +71,5 @@ include that scope, e.g.
Log out of the registry
+npm logout [--registry=url] [--scope=@orgname]
+
When logged into a registry that supports token-based authentication, tell the +server to end this token's session. This will invalidate the token everywhere +you're using it, not just for the current environment.
+When logged into a legacy registry that uses username and password authentication, this will +clear the credentials in your user configuration. In this case, it will only affect +the current environment.
+If --scope
is provided, this will find the credentials for the registry
+connected to that scope, if set.
Default: http://registry.npmjs.org/
+The base URL of the npm package registry. If scope
is also specified,
+it takes precedence.
Default: none
+If specified, the user and login credentials given will be associated
+with the specified scope. See npm-scope(7)
. You can use both at the same time,
+e.g.
npm adduser --registry=http://myregistry.example.com --scope=@myco
+
This will set a registry for the given scope and login or create a user for +that registry at the same time.
+npm ls promzard
in npm's source tree will show:
-npm@2.5.1 /path/to/npm
+npm@2.6.0 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
It will print out extraneous, missing, and invalid packages.
@@ -85,5 +85,5 @@ project.
-
+
diff --git a/deps/npm/html/doc/cli/npm-outdated.html b/deps/npm/html/doc/cli/npm-outdated.html
index 1b1414d710..70fcc8319d 100644
--- a/deps/npm/html/doc/cli/npm-outdated.html
+++ b/deps/npm/html/doc/cli/npm-outdated.html
@@ -67,5 +67,5 @@ project.
-
+
diff --git a/deps/npm/html/doc/cli/npm-owner.html b/deps/npm/html/doc/cli/npm-owner.html
index 9d6e4541cc..2617a8d08b 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-pack.html b/deps/npm/html/doc/cli/npm-pack.html
index cf7fcaed9f..47817ba92e 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-prefix.html b/deps/npm/html/doc/cli/npm-prefix.html
index 98f44e133d..dcb47ecd26 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 -g
is also specified.
-
+
diff --git a/deps/npm/html/doc/cli/npm-prune.html b/deps/npm/html/doc/cli/npm-prune.html
index 247a291d78..7d00e2ae31 100644
--- a/deps/npm/html/doc/cli/npm-prune.html
+++ b/deps/npm/html/doc/cli/npm-prune.html
@@ -39,5 +39,5 @@ packages specified in your devDependencies
.
-
+
diff --git a/deps/npm/html/doc/cli/npm-publish.html b/deps/npm/html/doc/cli/npm-publish.html
index 23559cacd6..59f901ee13 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
-
+
diff --git a/deps/npm/html/doc/cli/npm-rebuild.html b/deps/npm/html/doc/cli/npm-rebuild.html
index bcf73eca7e..51c457e867 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-repo.html b/deps/npm/html/doc/cli/npm-repo.html
index 5eb88eae94..a5e17bf592 100644
--- a/deps/npm/html/doc/cli/npm-repo.html
+++ b/deps/npm/html/doc/cli/npm-repo.html
@@ -42,5 +42,5 @@ a package.json
in the current folder and use the name
-
+
diff --git a/deps/npm/html/doc/cli/npm-restart.html b/deps/npm/html/doc/cli/npm-restart.html
index 67b397552b..843b60d191 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
-
+
diff --git a/deps/npm/html/doc/cli/npm-rm.html b/deps/npm/html/doc/cli/npm-rm.html
index c832eee203..8f5cfb6bac 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-root.html b/deps/npm/html/doc/cli/npm-root.html
index c9df7b98fd..3c5c547d42 100644
--- a/deps/npm/html/doc/cli/npm-root.html
+++ b/deps/npm/html/doc/cli/npm-root.html
@@ -35,5 +35,5 @@
-
+
diff --git a/deps/npm/html/doc/cli/npm-run-script.html b/deps/npm/html/doc/cli/npm-run-script.html
index 716ad484a4..3afb91e507 100644
--- a/deps/npm/html/doc/cli/npm-run-script.html
+++ b/deps/npm/html/doc/cli/npm-run-script.html
@@ -50,5 +50,5 @@ and not to any pre or post script.
-
+
diff --git a/deps/npm/html/doc/cli/npm-search.html b/deps/npm/html/doc/cli/npm-search.html
index 88ad801bc6..18b3c9ce68 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-shrinkwrap.html b/deps/npm/html/doc/cli/npm-shrinkwrap.html
index 21c104f59b..318d2ff4f8 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-star.html b/deps/npm/html/doc/cli/npm-star.html
index 58c2c240c1..1da8eb977c 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-stars.html b/deps/npm/html/doc/cli/npm-stars.html
index 0ffb3f4d5e..40eb2cd1bf 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-start.html b/deps/npm/html/doc/cli/npm-start.html
index 330378cd81..9f9a42ef0f 100644
--- a/deps/npm/html/doc/cli/npm-start.html
+++ b/deps/npm/html/doc/cli/npm-start.html
@@ -34,5 +34,5 @@
-
+
diff --git a/deps/npm/html/doc/cli/npm-stop.html b/deps/npm/html/doc/cli/npm-stop.html
index ee69ec0304..ace8e69e98 100644
--- a/deps/npm/html/doc/cli/npm-stop.html
+++ b/deps/npm/html/doc/cli/npm-stop.html
@@ -34,5 +34,5 @@
-
+
diff --git a/deps/npm/html/doc/cli/npm-tag.html b/deps/npm/html/doc/cli/npm-tag.html
index d66caeebd3..9b8da589f8 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 v
.
-
+
diff --git a/deps/npm/html/doc/cli/npm-test.html b/deps/npm/html/doc/cli/npm-test.html
index 401a51304e..223f191853 100644
--- a/deps/npm/html/doc/cli/npm-test.html
+++ b/deps/npm/html/doc/cli/npm-test.html
@@ -37,5 +37,5 @@ true.
-
+
diff --git a/deps/npm/html/doc/cli/npm-uninstall.html b/deps/npm/html/doc/cli/npm-uninstall.html
index ef33583b31..d5549493d3 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
-
+
diff --git a/deps/npm/html/doc/cli/npm-unpublish.html b/deps/npm/html/doc/cli/npm-unpublish.html
index f31a4f03b8..5c9531367d 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-update.html b/deps/npm/html/doc/cli/npm-update.html
index 441c0b1a89..3a695cbd78 100644
--- a/deps/npm/html/doc/cli/npm-update.html
+++ b/deps/npm/html/doc/cli/npm-update.html
@@ -42,5 +42,5 @@ or local) will be updated.
-
+
diff --git a/deps/npm/html/doc/cli/npm-version.html b/deps/npm/html/doc/cli/npm-version.html
index bb0fe413ad..779e09060a 100644
--- a/deps/npm/html/doc/cli/npm-version.html
+++ b/deps/npm/html/doc/cli/npm-version.html
@@ -55,5 +55,5 @@ Enter passphrase:
-
+
diff --git a/deps/npm/html/doc/cli/npm-view.html b/deps/npm/html/doc/cli/npm-view.html
index 3fa8beb789..3fff860a20 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.
-
+
diff --git a/deps/npm/html/doc/cli/npm-whoami.html b/deps/npm/html/doc/cli/npm-whoami.html
index eb8274f960..39a5644bf3 100644
--- a/deps/npm/html/doc/cli/npm-whoami.html
+++ b/deps/npm/html/doc/cli/npm-whoami.html
@@ -33,5 +33,5 @@
-
+
diff --git a/deps/npm/html/doc/cli/npm.html b/deps/npm/html/doc/cli/npm.html
index 8651e98937..a34115c1c8 100644
--- a/deps/npm/html/doc/cli/npm.html
+++ b/deps/npm/html/doc/cli/npm.html
@@ -13,7 +13,7 @@
SYNOPSIS
npm <command> [args]
VERSION
-2.5.1
+2.6.0
DESCRIPTION
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 npm view npm contributors
.
the issues list or ask on the mailing list.
BUGS
When you find issues, please report them:
@@ -118,7 +118,7 @@ the issues list or ask on the mailing list.
web:
http://github.com/npm/npm/issues
email:
-npm-@googlegroups.com
+npm-@googlegroups.com
Be sure to include all of the output from the npm command that didn't work
as expected. The npm-debug.log
file is also helpful to provide.
@@ -128,7 +128,7 @@ will no doubt tell you to put the output in a gist or email.
Isaac Z. Schlueter ::
isaacs ::
@izs ::
-i@izs.me
+i@izs.me
SEE ALSO
- npm-help(1)
@@ -154,5 +154,5 @@ will no doubt tell you to put the output in a gist or email.
-
+
diff --git a/deps/npm/html/doc/files/npm-folders.html b/deps/npm/html/doc/files/npm-folders.html
index a8e58e4185..ce70aec266 100644
--- a/deps/npm/html/doc/files/npm-folders.html
+++ b/deps/npm/html/doc/files/npm-folders.html
@@ -184,5 +184,5 @@ cannot be found elsewhere. See
-
+
diff --git a/deps/npm/html/doc/files/npm-global.html b/deps/npm/html/doc/files/npm-global.html
index 202d7f4974..d4e9d92cd1 100644
--- a/deps/npm/html/doc/files/npm-global.html
+++ b/deps/npm/html/doc/files/npm-global.html
@@ -184,5 +184,5 @@ cannot be found elsewhere. See
-
+
diff --git a/deps/npm/html/doc/files/npm-json.html b/deps/npm/html/doc/files/npm-json.html
index b915f8482e..bbfa31d38a 100644
--- a/deps/npm/html/doc/files/npm-json.html
+++ b/deps/npm/html/doc/files/npm-json.html
@@ -63,7 +63,7 @@ been published somewhere else, and spit at you.
issues should be reported. These are helpful for people who encounter issues
with your package.
It should look like this:
-{ "url" : "http://github.com/owner/project/issues"
+{ "url" : "https://github.com/owner/project/issues"
, "email" : "project@hostname.com"
}
You can specify either one or both values. If you want to provide only a url,
@@ -161,7 +161,7 @@ compressed. The number dictates which man section the file is installed into.
directories
The CommonJS Packages spec details a
few ways that you can indicate the structure of your package using a directories
-object. If you look at npm's package.json,
+object. If you look at npm's package.json,
you'll see that it has directories for doc, lib, and man.
In the future, this information may be used in other creative ways.
directories.lib
@@ -186,17 +186,20 @@ command will be able to find you.
Do it like this:
"repository" :
{ "type" : "git"
- , "url" : "http://github.com/npm/npm.git"
+ , "url" : "https://github.com/npm/npm.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8.googlecode.com/svn/trunk/"
+ , "url" : "https://v8.googlecode.com/svn/trunk/"
}
The URL should be a publicly available (perhaps read-only) url that can be handed
directly to a VCS program without any modification. It should not be a url to an
html project page that you put in your browser. It's for computers.
-scripts
+For GitHub repositories you can use the same shortcut syntax you use for npm
+install
:
+"repository": "npm/npm"
+
scripts
The "scripts" property is a dictionary containing script commands that are run
at various times in the lifecycle of your package. The key is the lifecycle
event, and the value is the command to run at that point.
@@ -342,12 +345,17 @@ a specific interface, expected and specified by the host documentation.
}
}
This ensures your package tea-latte
can be installed along with the second
-major version of the host package tea
only. The host package is automatically
-installed if needed. npm install tea-latte
could possibly yield the following
-dependency graph:
+major version of the host package tea
only. npm install tea-latte
could
+possibly yield the following dependency graph:
├── tea-latte@1.3.5
└── tea@2.2.0
-
Trying to install another plugin with a conflicting requirement will cause an
+
NOTE: npm versions 1 and 2 will automatically install peerDependencies
if
+they are not explicitly depended upon higher in the dependency tree. In the
+next major version of npm (npm@3), this will no longer be the case. You will
+receive a warning that the peerDependency is not installed instead. The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible.
Trying to install another plugin with a conflicting requirement will cause an error. For this reason, make sure your plugin requirement is as broad as possible, and not to lock it down to specific patch versions.
Assuming the host complies with semver, only changes in @@ -396,6 +404,7 @@ are capable of properly installing your program. For example:
Note that, unless the user has set the engine-strict
config flag, this
field is advisory only.
NOTE: This feature is deprecated and will be removed in npm 3.0.0.
If you are sure that your module will definitely not run properly on
versions of Node/npm other than those specified in the engines
object,
then you can set "engineStrict": true
in your package.json file.
@@ -403,8 +412,7 @@ This will override the user's engine-strict
config setting.
Please do not do this unless you are really very very sure. If your engines object is something overly restrictive, you can quite easily and inadvertently lock yourself into obscurity and prevent your users from -updating to new versions of Node. Consider this choice carefully. If -people abuse it, it will be removed in a future version of npm.
+updating to new versions of Node. Consider this choice carefully.You can specify which operating systems your module will run on:
@@ -488,5 +496,5 @@ ignored.It should look like this:
-{ "url" : "http://github.com/owner/project/issues"
+{ "url" : "https://github.com/owner/project/issues"
, "email" : "project@hostname.com"
}
You can specify either one or both values. If you want to provide only a url,
@@ -161,7 +161,7 @@ compressed. The number dictates which man section the file is installed into.
directories
The CommonJS Packages spec details a
few ways that you can indicate the structure of your package using a directories
-object. If you look at npm's package.json,
+object. If you look at npm's package.json,
you'll see that it has directories for doc, lib, and man.
In the future, this information may be used in other creative ways.
directories.lib
@@ -186,17 +186,20 @@ command will be able to find you.
Do it like this:
"repository" :
{ "type" : "git"
- , "url" : "http://github.com/npm/npm.git"
+ , "url" : "https://github.com/npm/npm.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8.googlecode.com/svn/trunk/"
+ , "url" : "https://v8.googlecode.com/svn/trunk/"
}
The URL should be a publicly available (perhaps read-only) url that can be handed
directly to a VCS program without any modification. It should not be a url to an
html project page that you put in your browser. It's for computers.
-scripts
+For GitHub repositories you can use the same shortcut syntax you use for npm
+install
:
+"repository": "npm/npm"
+
scripts
The "scripts" property is a dictionary containing script commands that are run
at various times in the lifecycle of your package. The key is the lifecycle
event, and the value is the command to run at that point.
@@ -342,12 +345,17 @@ a specific interface, expected and specified by the host documentation.
}
}
This ensures your package tea-latte
can be installed along with the second
-major version of the host package tea
only. The host package is automatically
-installed if needed. npm install tea-latte
could possibly yield the following
-dependency graph:
tea
only. npm install tea-latte
could
+possibly yield the following dependency graph:
├── tea-latte@1.3.5
└── tea@2.2.0
-
Trying to install another plugin with a conflicting requirement will cause an +
NOTE: npm versions 1 and 2 will automatically install peerDependencies
if
+they are not explicitly depended upon higher in the dependency tree. In the
+next major version of npm (npm@3), this will no longer be the case. You will
+receive a warning that the peerDependency is not installed instead. The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible.
Trying to install another plugin with a conflicting requirement will cause an error. For this reason, make sure your plugin requirement is as broad as possible, and not to lock it down to specific patch versions.
Assuming the host complies with semver, only changes in @@ -396,6 +404,7 @@ are capable of properly installing your program. For example:
Note that, unless the user has set the engine-strict
config flag, this
field is advisory only.
NOTE: This feature is deprecated and will be removed in npm 3.0.0.
If you are sure that your module will definitely not run properly on
versions of Node/npm other than those specified in the engines
object,
then you can set "engineStrict": true
in your package.json file.
@@ -403,8 +412,7 @@ This will override the user's engine-strict
config setting.
Please do not do this unless you are really very very sure. If your engines object is something overly restrictive, you can quite easily and inadvertently lock yourself into obscurity and prevent your users from -updating to new versions of Node. Consider this choice carefully. If -people abuse it, it will be removed in a future version of npm.
+updating to new versions of Node. Consider this choice carefully.You can specify which operating systems your module will run on:
@@ -488,5 +496,5 @@ ignored.Install a package
Symlink a package folder
+Log out of the registry
List installed packages
npm owner ls <pkgname>
Don't squat on package names. Publish code or move out of the way.
@@ -51,12 +51,12 @@ Joe's appropriate course of action in each case is the same. owner (Bob).npm owner add
joe foo
to add Joe as an owner of the foo
package.To check if the registry is down, open up https://registry.npmjs.org/ in a web browser. This will also tell you if you are just unable to access the internet for some reason.
-If the registry IS down, let us know by emailing support@npmjs.com +
If the registry IS down, let us know by emailing support@npmjs.com or posting an issue at https://github.com/npm/npm/issues. If it's down for the world (and not just on your local network) then we're probably already being pinged about it.
@@ -307,5 +307,5 @@ good folks at npm, Inc.Install a package
Symlink a package folder
+Log out of the registry
List installed packages
The method .inc
takes an additional identifier
string argument that
will append the value of the string as a prerelease identifier:
> semver.inc('1.2.3', 'pre', 'beta')
+> semver.inc('1.2.3', 'pre', 'beta')
'1.2.4-beta.0'
command-line example:
@@ -219,6 +219,9 @@ prerelease. If the input version is already a prerelease it simply
increments it.
+major(v)
: Return the major version number.
+minor(v)
: Return the minor version number.
+patch(v)
: Return the patch version number.
Comparison
@@ -279,5 +282,5 @@ range, use the satisfies(version, range)
function.
-
+
diff --git a/deps/npm/html/partial/doc/README.html b/deps/npm/html/partial/doc/README.html
index 9dedc3b11b..5e1fcaa3fd 100644
--- a/deps/npm/html/partial/doc/README.html
+++ b/deps/npm/html/partial/doc/README.html
@@ -109,13 +109,13 @@ All rights reserved. See the included LICENSE file for more details.
npm, Inc. or the Node.js project.
Data published to the npm registry is not part of npm itself, and is
the sole property of the publisher. While every effort is made to
-ensure accountability, there is absolutely no guarantee, warrantee, or
+ensure accountability, there is absolutely no guarantee, warranty, or
assertion expressed or implied as to the quality, fitness for a
specific purpose, or lack of malice in any given npm package.
If you have a complaint about a package in the public npm registry,
and cannot resolve it with the package
owner, please email
-support@npmjs.com and explain the situation.
+support@npmjs.com and explain the situation.
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.
diff --git a/deps/npm/html/partial/doc/api/npm.html b/deps/npm/html/partial/doc/api/npm.html
index 207f251030..91a8ab88e7 100644
--- a/deps/npm/html/partial/doc/api/npm.html
+++ b/deps/npm/html/partial/doc/api/npm.html
@@ -12,7 +12,7 @@ npm.load([configObject, ]function (er, npm) {
npm.commands.install(["package"], cb)
})
2.5.1
+2.6.0
This is the API documentation for npm. To find documentation of the command line diff --git a/deps/npm/html/partial/doc/cli/npm-access.html b/deps/npm/html/partial/doc/cli/npm-access.html index d31d47066a..9d84e6db95 100644 --- a/deps/npm/html/partial/doc/cli/npm-access.html +++ b/deps/npm/html/partial/doc/cli/npm-access.html @@ -52,3 +52,4 @@ with an HTTP 402 status code (logically enough), unless you use
ls: Show all of the dist-tags for a package, defaulting to the package in -the curren prefix.
+the current prefix.A tag can be used when installing packages as a reference to a version instead
@@ -53,3 +53,4 @@ begin with a number or the letter v
.
Now, any changes to ~/projects/node-redis will be reflected in -~/projects/node-bloggy/node_modules/redis/
+~/projects/node-bloggy/node_modules/node-redis/You may also shortcut the two steps in one. For example, to do the above use-case in a shorter way:
cd ~/projects/node-bloggy # go into the dir of your main project
npm link ../node-redis # link the dir of your dependency
The second line is the equivalent of doing:
(cd ../node-redis; npm link)
-npm link redis
+npm link node-redis
That is, it first creates a global link, and then links the global
installation target into your project's node_modules
folder.
If your linked package is scoped (see npm-scope(7)
) your link command must
diff --git a/deps/npm/html/partial/doc/cli/npm-logout.html b/deps/npm/html/partial/doc/cli/npm-logout.html
new file mode 100644
index 0000000000..63c28a3d7c
--- /dev/null
+++ b/deps/npm/html/partial/doc/cli/npm-logout.html
@@ -0,0 +1,35 @@
+
Log out of the registry
+npm logout [--registry=url] [--scope=@orgname]
+
When logged into a registry that supports token-based authentication, tell the +server to end this token's session. This will invalidate the token everywhere +you're using it, not just for the current environment.
+When logged into a legacy registry that uses username and password authentication, this will +clear the credentials in your user configuration. In this case, it will only affect +the current environment.
+If --scope
is provided, this will find the credentials for the registry
+connected to that scope, if set.
Default: http://registry.npmjs.org/
+The base URL of the npm package registry. If scope
is also specified,
+it takes precedence.
Default: none
+If specified, the user and login credentials given will be associated
+with the specified scope. See npm-scope(7)
. You can use both at the same time,
+e.g.
npm adduser --registry=http://myregistry.example.com --scope=@myco
+
This will set a registry for the given scope and login or create a user for +that registry at the same time.
+npm ls promzard
in npm's source tree will show:
-npm@2.5.1 /path/to/npm
+npm@2.6.0 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
It will print out extraneous, missing, and invalid packages.
diff --git a/deps/npm/html/partial/doc/cli/npm.html b/deps/npm/html/partial/doc/cli/npm.html
index e8178c2462..17aa091a56 100644
--- a/deps/npm/html/partial/doc/cli/npm.html
+++ b/deps/npm/html/partial/doc/cli/npm.html
@@ -2,7 +2,7 @@
SYNOPSIS
npm <command> [args]
VERSION
-2.5.1
+2.6.0
DESCRIPTION
npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
@@ -99,7 +99,7 @@ easily by doing npm view npm contributors
.
the issues list or ask on the mailing list.
BUGS
When you find issues, please report them:
@@ -107,7 +107,7 @@ the issues list or ask on the mailing list.
web:
http://github.com/npm/npm/issues
email:
-npm-@googlegroups.com
+npm-@googlegroups.com
Be sure to include all of the output from the npm command that didn't work
as expected. The npm-debug.log
file is also helpful to provide.
@@ -117,7 +117,7 @@ will no doubt tell you to put the output in a gist or email.
Isaac Z. Schlueter ::
isaacs ::
@izs ::
-i@izs.me
+i@izs.me
SEE ALSO
- npm-help(1)
diff --git a/deps/npm/html/partial/doc/files/npm-json.html b/deps/npm/html/partial/doc/files/npm-json.html
index cc2b12a5ea..401d27aec8 100644
--- a/deps/npm/html/partial/doc/files/npm-json.html
+++ b/deps/npm/html/partial/doc/files/npm-json.html
@@ -52,7 +52,7 @@ been published somewhere else, and spit at you.
issues should be reported. These are helpful for people who encounter issues
with your package.
It should look like this:
-
{ "url" : "http://github.com/owner/project/issues"
+{ "url" : "https://github.com/owner/project/issues"
, "email" : "project@hostname.com"
}
You can specify either one or both values. If you want to provide only a url,
@@ -150,7 +150,7 @@ compressed. The number dictates which man section the file is installed into.
directories
The CommonJS Packages spec details a
few ways that you can indicate the structure of your package using a directories
-object. If you look at npm's package.json,
+object. If you look at npm's package.json,
you'll see that it has directories for doc, lib, and man.
In the future, this information may be used in other creative ways.
directories.lib
@@ -175,17 +175,20 @@ command will be able to find you.
Do it like this:
"repository" :
{ "type" : "git"
- , "url" : "http://github.com/npm/npm.git"
+ , "url" : "https://github.com/npm/npm.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8.googlecode.com/svn/trunk/"
+ , "url" : "https://v8.googlecode.com/svn/trunk/"
}
The URL should be a publicly available (perhaps read-only) url that can be handed
directly to a VCS program without any modification. It should not be a url to an
html project page that you put in your browser. It's for computers.
-scripts
+For GitHub repositories you can use the same shortcut syntax you use for npm
+install
:
+"repository": "npm/npm"
+
scripts
The "scripts" property is a dictionary containing script commands that are run
at various times in the lifecycle of your package. The key is the lifecycle
event, and the value is the command to run at that point.
@@ -331,12 +334,17 @@ a specific interface, expected and specified by the host documentation.
}
}
This ensures your package tea-latte
can be installed along with the second
-major version of the host package tea
only. The host package is automatically
-installed if needed. npm install tea-latte
could possibly yield the following
-dependency graph:
+major version of the host package tea
only. npm install tea-latte
could
+possibly yield the following dependency graph:
├── tea-latte@1.3.5
└── tea@2.2.0
-
Trying to install another plugin with a conflicting requirement will cause an
+
NOTE: npm versions 1 and 2 will automatically install peerDependencies
if
+they are not explicitly depended upon higher in the dependency tree. In the
+next major version of npm (npm@3), this will no longer be the case. You will
+receive a warning that the peerDependency is not installed instead. The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible.
Trying to install another plugin with a conflicting requirement will cause an error. For this reason, make sure your plugin requirement is as broad as possible, and not to lock it down to specific patch versions.
Assuming the host complies with semver, only changes in @@ -385,6 +393,7 @@ are capable of properly installing your program. For example:
Note that, unless the user has set the engine-strict
config flag, this
field is advisory only.
NOTE: This feature is deprecated and will be removed in npm 3.0.0.
If you are sure that your module will definitely not run properly on
versions of Node/npm other than those specified in the engines
object,
then you can set "engineStrict": true
in your package.json file.
@@ -392,8 +401,7 @@ This will override the user's engine-strict
config setting.
Please do not do this unless you are really very very sure. If your engines object is something overly restrictive, you can quite easily and inadvertently lock yourself into obscurity and prevent your users from -updating to new versions of Node. Consider this choice carefully. If -people abuse it, it will be removed in a future version of npm.
+updating to new versions of Node. Consider this choice carefully.You can specify which operating systems your module will run on:
diff --git a/deps/npm/html/partial/doc/files/package.json.html b/deps/npm/html/partial/doc/files/package.json.html index cc2b12a5ea..401d27aec8 100644 --- a/deps/npm/html/partial/doc/files/package.json.html +++ b/deps/npm/html/partial/doc/files/package.json.html @@ -52,7 +52,7 @@ been published somewhere else, and spit at you. issues should be reported. These are helpful for people who encounter issues with your package.It should look like this:
-{ "url" : "http://github.com/owner/project/issues"
+{ "url" : "https://github.com/owner/project/issues"
, "email" : "project@hostname.com"
}
You can specify either one or both values. If you want to provide only a url,
@@ -150,7 +150,7 @@ compressed. The number dictates which man section the file is installed into.
directories
The CommonJS Packages spec details a
few ways that you can indicate the structure of your package using a directories
-object. If you look at npm's package.json,
+object. If you look at npm's package.json,
you'll see that it has directories for doc, lib, and man.
In the future, this information may be used in other creative ways.
directories.lib
@@ -175,17 +175,20 @@ command will be able to find you.
Do it like this:
"repository" :
{ "type" : "git"
- , "url" : "http://github.com/npm/npm.git"
+ , "url" : "https://github.com/npm/npm.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8.googlecode.com/svn/trunk/"
+ , "url" : "https://v8.googlecode.com/svn/trunk/"
}
The URL should be a publicly available (perhaps read-only) url that can be handed
directly to a VCS program without any modification. It should not be a url to an
html project page that you put in your browser. It's for computers.
-scripts
+For GitHub repositories you can use the same shortcut syntax you use for npm
+install
:
+"repository": "npm/npm"
+
scripts
The "scripts" property is a dictionary containing script commands that are run
at various times in the lifecycle of your package. The key is the lifecycle
event, and the value is the command to run at that point.
@@ -331,12 +334,17 @@ a specific interface, expected and specified by the host documentation.
}
}
This ensures your package tea-latte
can be installed along with the second
-major version of the host package tea
only. The host package is automatically
-installed if needed. npm install tea-latte
could possibly yield the following
-dependency graph:
tea
only. npm install tea-latte
could
+possibly yield the following dependency graph:
├── tea-latte@1.3.5
└── tea@2.2.0
-
Trying to install another plugin with a conflicting requirement will cause an +
NOTE: npm versions 1 and 2 will automatically install peerDependencies
if
+they are not explicitly depended upon higher in the dependency tree. In the
+next major version of npm (npm@3), this will no longer be the case. You will
+receive a warning that the peerDependency is not installed instead. The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible.
Trying to install another plugin with a conflicting requirement will cause an error. For this reason, make sure your plugin requirement is as broad as possible, and not to lock it down to specific patch versions.
Assuming the host complies with semver, only changes in @@ -385,6 +393,7 @@ are capable of properly installing your program. For example:
Note that, unless the user has set the engine-strict
config flag, this
field is advisory only.
NOTE: This feature is deprecated and will be removed in npm 3.0.0.
If you are sure that your module will definitely not run properly on
versions of Node/npm other than those specified in the engines
object,
then you can set "engineStrict": true
in your package.json file.
@@ -392,8 +401,7 @@ This will override the user's engine-strict
config setting.
Please do not do this unless you are really very very sure. If your engines object is something overly restrictive, you can quite easily and inadvertently lock yourself into obscurity and prevent your users from -updating to new versions of Node. Consider this choice carefully. If -people abuse it, it will be removed in a future version of npm.
+updating to new versions of Node. Consider this choice carefully.You can specify which operating systems your module will run on:
diff --git a/deps/npm/html/partial/doc/index.html b/deps/npm/html/partial/doc/index.html index 2d23cb50cc..2048487ee2 100644 --- a/deps/npm/html/partial/doc/index.html +++ b/deps/npm/html/partial/doc/index.html @@ -45,6 +45,8 @@Install a package
Symlink a package folder
+Log out of the registry
List installed packages
npm owner ls <pkgname>
Don't squat on package names. Publish code or move out of the way.
@@ -40,12 +40,12 @@ Joe's appropriate course of action in each case is the same. owner (Bob).npm owner add
joe foo
to add Joe as an owner of the foo
package.To check if the registry is down, open up https://registry.npmjs.org/ in a web browser. This will also tell you if you are just unable to access the internet for some reason.
-If the registry IS down, let us know by emailing support@npmjs.com +
If the registry IS down, let us know by emailing support@npmjs.com or posting an issue at https://github.com/npm/npm/issues. If it's down for the world (and not just on your local network) then we're probably already being pinged about it.
diff --git a/deps/npm/html/partial/doc/misc/npm-index.html b/deps/npm/html/partial/doc/misc/npm-index.html index c42ca682cc..feeb5792cd 100644 --- a/deps/npm/html/partial/doc/misc/npm-index.html +++ b/deps/npm/html/partial/doc/misc/npm-index.html @@ -45,6 +45,8 @@Install a package
Symlink a package folder
+Log out of the registry
List installed packages
The method .inc
takes an additional identifier
string argument that
will append the value of the string as a prerelease identifier:
> semver.inc('1.2.3', 'pre', 'beta')
+> semver.inc('1.2.3', 'pre', 'beta')
'1.2.4-beta.0'
command-line example:
@@ -208,6 +208,9 @@ prerelease. If the input version is already a prerelease it simply
increments it.
+major(v)
: Return the major version number.
+minor(v)
: Return the minor version number.
+patch(v)
: Return the patch version number.
Comparison
diff --git a/deps/npm/lib/build.js b/deps/npm/lib/build.js
index 7477ba4579..47f1055967 100644
--- a/deps/npm/lib/build.js
+++ b/deps/npm/lib/build.js
@@ -239,8 +239,9 @@ function linkMans (pkg, folder, parent, gtop, cb) {
var stem = parseMan[1]
var sxn = parseMan[2]
var bn = path.basename(stem)
+ var manSrc = path.resolve(folder, man)
var manDest = path.join(manRoot, "man" + sxn, bn)
- linkIfExists(man, manDest, gtop && folder, cb)
+ linkIfExists(manSrc, manDest, gtop && folder, cb)
}, cb)
}
diff --git a/deps/npm/lib/cache/add-named.js b/deps/npm/lib/cache/add-named.js
index cb5a3fa8a6..08354dc75f 100644
--- a/deps/npm/lib/cache/add-named.js
+++ b/deps/npm/lib/cache/add-named.js
@@ -91,6 +91,11 @@ function engineFilter (data) {
Object.keys(data.versions || {}).forEach(function (v) {
var eng = data.versions[v].engines
if (!eng) return
+ if (data.versions[v].engineStrict) {
+ log.warn("deprecation", "Per-package engineStrict will no longer be used")
+ log.warn("deprecation", "in upcoming versions of npm. Use the config")
+ log.warn("deprecation", "setting `engine-strict` instead.")
+ }
if (!strict && !data.versions[v].engineStrict) return
if (eng.node && !semver.satisfies(nodev, eng.node, true)
|| eng.npm && !semver.satisfies(npmv, eng.npm, true)) {
diff --git a/deps/npm/lib/config/clear-credentials-by-uri.js b/deps/npm/lib/config/clear-credentials-by-uri.js
new file mode 100644
index 0000000000..88131f7adb
--- /dev/null
+++ b/deps/npm/lib/config/clear-credentials-by-uri.js
@@ -0,0 +1,16 @@
+var assert = require("assert")
+
+var toNerfDart = require("./nerf-dart.js")
+
+module.exports = clearCredentialsByURI
+
+function clearCredentialsByURI (uri) {
+ assert(uri && typeof uri === "string", "registry URL is required")
+
+ var nerfed = toNerfDart(uri)
+
+ this.del(nerfed + ":_authToken", "user")
+ this.del(nerfed + ":_password", "user")
+ this.del(nerfed + ":username", "user")
+ this.del(nerfed + ":email", "user")
+}
diff --git a/deps/npm/lib/config/core.js b/deps/npm/lib/config/core.js
index 59f7cf5568..97c17919d2 100644
--- a/deps/npm/lib/config/core.js
+++ b/deps/npm/lib/config/core.js
@@ -152,10 +152,17 @@ function load_(builtin, rc, cli, cb) {
// annoying humans and their expectations!
if (conf.get("prefix")) {
var etc = path.resolve(conf.get("prefix"), "etc")
- defaults.globalconfig = path.resolve(etc, "npmrc")
- defaults.globalignorefile = path.resolve(etc, "npmignore")
+ mkdirp(etc, function (err) {
+ defaults.globalconfig = path.resolve(etc, "npmrc")
+ defaults.globalignorefile = path.resolve(etc, "npmignore")
+ afterUserContinuation()
+ })
+ } else {
+ afterUserContinuation()
}
+ }
+ function afterUserContinuation() {
conf.addFile(conf.get("globalconfig"), "global")
// move the builtin into the conf stack now.
@@ -220,6 +227,7 @@ Conf.prototype.setUser = require("./set-user.js")
Conf.prototype.findPrefix = require("./find-prefix.js")
Conf.prototype.getCredentialsByURI = require("./get-credentials-by-uri.js")
Conf.prototype.setCredentialsByURI = require("./set-credentials-by-uri.js")
+Conf.prototype.clearCredentialsByURI = require("./clear-credentials-by-uri.js")
Conf.prototype.loadExtras = function(cb) {
this.setUser(function(er) {
diff --git a/deps/npm/lib/install.js b/deps/npm/lib/install.js
index 756d12ee36..87a5b0bb95 100644
--- a/deps/npm/lib/install.js
+++ b/deps/npm/lib/install.js
@@ -162,6 +162,12 @@ function install (args, cb_) {
peers.push(dep)
}
})
+ if (peers.length) {
+ log.warn("deprecation", "peerDependencies will no longer be")
+ log.warn("deprecation", "installed implicitly in the next major")
+ log.warn("deprecation", "version of npm (npm@3). You will need to")
+ log.warn("deprecation", "switch to depending on them explicitly.")
+ }
log.verbose("install", "where, peers", [where, peers])
var context = { family: {}
diff --git a/deps/npm/lib/logout.js b/deps/npm/lib/logout.js
new file mode 100644
index 0000000000..64635be4de
--- /dev/null
+++ b/deps/npm/lib/logout.js
@@ -0,0 +1,40 @@
+module.exports = logout
+
+var dezalgo = require("dezalgo")
+var log = require("npmlog")
+
+var npm = require("./npm.js")
+var mapToRegistry = require("./utils/map-to-registry.js")
+
+logout.usage = "npm logout [--registry] [--scope]"
+
+function logout (args, cb) {
+ npm.spinner.start()
+ cb = dezalgo(cb)
+
+ mapToRegistry("/", npm.config, function (err, uri, auth, normalized) {
+ if (err) return cb(err)
+
+ if (auth.token) {
+ log.verbose("logout", "clearing session token for", normalized)
+ npm.registry.logout(normalized, { auth: auth }, function (err) {
+ if (err) return cb(err)
+
+ npm.config.clearCredentialsByURI(normalized)
+ npm.spinner.stop()
+ npm.config.save("user", cb)
+ })
+ }
+ else if (auth.username || auth.password) {
+ log.verbose("logout", "clearing user credentials for", normalized)
+ npm.config.clearCredentialsByURI(normalized)
+ npm.spinner.stop()
+ npm.config.save("user", cb)
+ }
+ else {
+ cb(new Error(
+ "Not logged in to", normalized + ",", "so can't log out."
+ ))
+ }
+ })
+}
diff --git a/deps/npm/lib/npm.js b/deps/npm/lib/npm.js
index 8077e8ac99..25b7feab6a 100644
--- a/deps/npm/lib/npm.js
+++ b/deps/npm/lib/npm.js
@@ -110,6 +110,7 @@ var commandCache = {}
, "stars"
, "tag"
, "adduser"
+ , "logout"
, "unpublish"
, "owner"
, "access"
diff --git a/deps/npm/lib/outdated.js b/deps/npm/lib/outdated.js
index f69d81550a..9c0623ef12 100644
--- a/deps/npm/lib/outdated.js
+++ b/deps/npm/lib/outdated.js
@@ -41,6 +41,7 @@ function outdated (args, silent, cb) {
if (typeof cb !== "function") cb = silent, silent = false
var dir = path.resolve(npm.dir, "..")
outdated_(args, dir, {}, 0, function (er, list) {
+ if (!list) list = []
if (er || silent || list.length === 0) return cb(er, list)
if (npm.config.get("json")) {
console.log(makeJSON(list))
diff --git a/deps/npm/man/man1/npm-README.1 b/deps/npm/man/man1/npm-README.1
index 2d82982aef..aa6c29787a 100644
--- a/deps/npm/man/man1/npm-README.1
+++ b/deps/npm/man/man1/npm-README.1
@@ -192,7 +192,7 @@ npm, Inc\. or the Node\.js project\.
.P
Data published to the npm registry is not part of npm itself, and is
the sole property of the publisher\. While every effort is made to
-ensure accountability, there is absolutely no guarantee, warrantee, or
+ensure accountability, there is absolutely no guarantee, warranty, or
assertion expressed or implied as to the quality, fitness for a
specific purpose, or lack of malice in any given npm package\.
.P
diff --git a/deps/npm/man/man1/npm-access.1 b/deps/npm/man/man1/npm-access.1
index 307a337477..2ea011be60 100644
--- a/deps/npm/man/man1/npm-access.1
+++ b/deps/npm/man/man1/npm-access.1
@@ -75,3 +75,4 @@ npm help 7 config
npm help 7 registry
.RE
+
diff --git a/deps/npm/man/man1/npm-dist-tag.1 b/deps/npm/man/man1/npm-dist-tag.1
index c1a51834dc..28c3c3da4b 100644
--- a/deps/npm/man/man1/npm-dist-tag.1
+++ b/deps/npm/man/man1/npm-dist-tag.1
@@ -24,7 +24,7 @@ Clear a tag that is no longer in use from the package\.
.IP \(bu 2
ls:
Show all of the dist\-tags for a package, defaulting to the package in
-the curren prefix\.
+the current prefix\.
.RE
.P
@@ -92,3 +92,4 @@ npm apihelp tag
npm help 5 npmrc
.RE
+
diff --git a/deps/npm/man/man1/npm-link.1 b/deps/npm/man/man1/npm-link.1
index 9151b68c0e..6c4f04fb87 100644
--- a/deps/npm/man/man1/npm-link.1
+++ b/deps/npm/man/man1/npm-link.1
@@ -45,7 +45,7 @@ npm link redis # link\-install the package
.RE
.P
Now, any changes to ~/projects/node\-redis will be reflected in
-~/projects/node\-bloggy/node_modules/redis/
+~/projects/node\-bloggy/node_modules/node\-redis/
.P
You may also shortcut the two steps in one\. For example, to do the
above use\-case in a shorter way:
@@ -62,7 +62,7 @@ The second line is the equivalent of doing:
.RS 2
.nf
(cd \.\./node\-redis; npm link)
-npm link redis
+npm link node\-redis
.fi
.RE
.P
diff --git a/deps/npm/man/man1/npm-logout.1 b/deps/npm/man/man1/npm-logout.1
new file mode 100644
index 0000000000..9d56285ad3
--- /dev/null
+++ b/deps/npm/man/man1/npm-logout.1
@@ -0,0 +1,62 @@
+.TH "NPM\-LOGOUT" "1" "February 2015" "" ""
+.SH "NAME"
+\fBnpm-logout\fR \- Log out of the registry
+.SH SYNOPSIS
+.P
+.RS 2
+.nf
+npm logout [\-\-registry=url] [\-\-scope=@orgname]
+.fi
+.RE
+.SH DESCRIPTION
+.P
+When logged into a registry that supports token\-based authentication, tell the
+server to end this token's session\. This will invalidate the token everywhere
+you're using it, not just for the current environment\.
+.P
+When logged into a legacy registry that uses username and password authentication, this will
+clear the credentials in your user configuration\. In this case, it will \fIonly\fR affect
+the current environment\.
+.P
+If \fB\-\-scope\fR is provided, this will find the credentials for the registry
+connected to that scope, if set\.
+.SH CONFIGURATION
+.SS registry
+.P
+Default: http://registry\.npmjs\.org/
+.P
+The base URL of the npm package registry\. If \fBscope\fR is also specified,
+it takes precedence\.
+.SS scope
+.P
+Default: none
+.P
+If specified, the user and login credentials given will be associated
+with the specified scope\. See npm help 7 \fBnpm\-scope\fR\|\. You can use both at the same time,
+e\.g\.
+.P
+.RS 2
+.nf
+npm adduser \-\-registry=http://myregistry\.example\.com \-\-scope=@myco
+.fi
+.RE
+.P
+This will set a registry for the given scope and login or create a user for
+that registry at the same time\.
+.SH SEE ALSO
+.RS 0
+.IP \(bu 2
+npm help adduser
+.IP \(bu 2
+npm help 7 registry
+.IP \(bu 2
+npm help config
+.IP \(bu 2
+npm help 7 config
+.IP \(bu 2
+npm help 5 npmrc
+.IP \(bu 2
+npm help whoami
+
+.RE
+
diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1
index 4f2d713e2e..1c11de9e07 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\fR in npm's source tree will show:
.P
.RS 2
.nf
-npm@2.5.1 /path/to/npm
+npm@2.6.0 /path/to/npm
└─┬ init\-package\-json@0\.0\.4
└── promzard@0\.1\.5
.fi
diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1
index 6794269320..c51359e173 100644
--- a/deps/npm/man/man1/npm.1
+++ b/deps/npm/man/man1/npm.1
@@ -10,7 +10,7 @@ npm [args]
.RE
.SH VERSION
.P
-2.5.1
+2.6.0
.SH DESCRIPTION
.P
npm is the package manager for the Node JavaScript platform\. It puts
diff --git a/deps/npm/man/man3/npm.3 b/deps/npm/man/man3/npm.3
index 8fcfc1ebdc..7e86e410e2 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.5.1
+2.6.0
.SH DESCRIPTION
.P
This is the API documentation for npm\.
diff --git a/deps/npm/man/man5/npm-json.5 b/deps/npm/man/man5/npm-json.5
index e4a928569e..fcdfa167d5 100644
--- a/deps/npm/man/man5/npm-json.5
+++ b/deps/npm/man/man5/npm-json.5
@@ -77,7 +77,7 @@ It should look like this:
.P
.RS 2
.nf
-{ "url" : "http://github\.com/owner/project/issues"
+{ "url" : "https://github\.com/owner/project/issues"
, "email" : "project@hostname\.com"
}
.fi
@@ -251,7 +251,7 @@ will create entries for \fBman foo\fR and \fBman 2 foo\fR
.P
The CommonJS Packages \fIhttp://wiki\.commonjs\.org/wiki/Packages/1\.0\fR spec details a
few ways that you can indicate the structure of your package using a \fBdirectories\fR
-object\. If you look at npm's package\.json \fIhttp://registry\.npmjs\.org/npm/latest\fR,
+object\. If you look at npm's package\.json \fIhttps://registry\.npmjs\.org/npm/latest\fR,
you'll see that it has directories for doc, lib, and man\.
.P
In the future, this information may be used in other creative ways\.
@@ -288,12 +288,12 @@ Do it like this:
.nf
"repository" :
{ "type" : "git"
- , "url" : "http://github\.com/npm/npm\.git"
+ , "url" : "https://github\.com/npm/npm\.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8\.googlecode\.com/svn/trunk/"
+ , "url" : "https://v8\.googlecode\.com/svn/trunk/"
}
.fi
.RE
@@ -301,6 +301,15 @@ Do it like this:
The URL should be a publicly available (perhaps read\-only) url that can be handed
directly to a VCS program without any modification\. It should not be a url to an
html project page that you put in your browser\. It's for computers\.
+.P
+For GitHub repositories you can use the same shortcut syntax you use for \fBnpm
+install\fR:
+.P
+.RS 2
+.nf
+"repository": "npm/npm"
+.fi
+.RE
.SH scripts
.P
The "scripts" property is a dictionary containing script commands that are run
@@ -531,9 +540,8 @@ For example:
.RE
.P
This ensures your package \fBtea\-latte\fR can be installed \fIalong\fR with the second
-major version of the host package \fBtea\fR only\. The host package is automatically
-installed if needed\. \fBnpm install tea\-latte\fR could possibly yield the following
-dependency graph:
+major version of the host package \fBtea\fR only\. \fBnpm install tea\-latte\fR could
+possibly yield the following dependency graph:
.P
.RS 2
.nf
@@ -542,6 +550,13 @@ dependency graph:
.fi
.RE
.P
+\fBNOTE: npm versions 1 and 2 will automatically install \fBpeerDependencies\fR if
+they are not explicitly depended upon higher in the dependency tree\. In the
+next major version of npm (npm@3), this will no longer be the case\. You will
+receive a warning that the peerDependency is not installed instead\.\fR The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible\.
+.P
Trying to install another plugin with a conflicting requirement will cause an
error\. For this reason, make sure your plugin requirement is as broad as
possible, and not to lock it down to specific patch versions\.
@@ -618,6 +633,8 @@ Note that, unless the user has set the \fBengine\-strict\fR config flag, this
field is advisory only\.
.SH engineStrict
.P
+\fBNOTE: This feature is deprecated and will be removed in npm 3\.0\.0\.\fR
+.P
If you are sure that your module will \fIdefinitely not\fR run properly on
versions of Node/npm other than those specified in the \fBengines\fR object,
then you can set \fB"engineStrict": true\fR in your package\.json file\.
@@ -626,8 +643,7 @@ This will override the user's \fBengine\-strict\fR config setting\.
Please do not do this unless you are really very very sure\. If your
engines object is something overly restrictive, you can quite easily and
inadvertently lock yourself into obscurity and prevent your users from
-updating to new versions of Node\. Consider this choice carefully\. If
-people abuse it, it will be removed in a future version of npm\.
+updating to new versions of Node\. Consider this choice carefully\.
.SH os
.P
You can specify which operating systems your
diff --git a/deps/npm/man/man5/package.json.5 b/deps/npm/man/man5/package.json.5
index e4a928569e..fcdfa167d5 100644
--- a/deps/npm/man/man5/package.json.5
+++ b/deps/npm/man/man5/package.json.5
@@ -77,7 +77,7 @@ It should look like this:
.P
.RS 2
.nf
-{ "url" : "http://github\.com/owner/project/issues"
+{ "url" : "https://github\.com/owner/project/issues"
, "email" : "project@hostname\.com"
}
.fi
@@ -251,7 +251,7 @@ will create entries for \fBman foo\fR and \fBman 2 foo\fR
.P
The CommonJS Packages \fIhttp://wiki\.commonjs\.org/wiki/Packages/1\.0\fR spec details a
few ways that you can indicate the structure of your package using a \fBdirectories\fR
-object\. If you look at npm's package\.json \fIhttp://registry\.npmjs\.org/npm/latest\fR,
+object\. If you look at npm's package\.json \fIhttps://registry\.npmjs\.org/npm/latest\fR,
you'll see that it has directories for doc, lib, and man\.
.P
In the future, this information may be used in other creative ways\.
@@ -288,12 +288,12 @@ Do it like this:
.nf
"repository" :
{ "type" : "git"
- , "url" : "http://github\.com/npm/npm\.git"
+ , "url" : "https://github\.com/npm/npm\.git"
}
"repository" :
{ "type" : "svn"
- , "url" : "http://v8\.googlecode\.com/svn/trunk/"
+ , "url" : "https://v8\.googlecode\.com/svn/trunk/"
}
.fi
.RE
@@ -301,6 +301,15 @@ Do it like this:
The URL should be a publicly available (perhaps read\-only) url that can be handed
directly to a VCS program without any modification\. It should not be a url to an
html project page that you put in your browser\. It's for computers\.
+.P
+For GitHub repositories you can use the same shortcut syntax you use for \fBnpm
+install\fR:
+.P
+.RS 2
+.nf
+"repository": "npm/npm"
+.fi
+.RE
.SH scripts
.P
The "scripts" property is a dictionary containing script commands that are run
@@ -531,9 +540,8 @@ For example:
.RE
.P
This ensures your package \fBtea\-latte\fR can be installed \fIalong\fR with the second
-major version of the host package \fBtea\fR only\. The host package is automatically
-installed if needed\. \fBnpm install tea\-latte\fR could possibly yield the following
-dependency graph:
+major version of the host package \fBtea\fR only\. \fBnpm install tea\-latte\fR could
+possibly yield the following dependency graph:
.P
.RS 2
.nf
@@ -542,6 +550,13 @@ dependency graph:
.fi
.RE
.P
+\fBNOTE: npm versions 1 and 2 will automatically install \fBpeerDependencies\fR if
+they are not explicitly depended upon higher in the dependency tree\. In the
+next major version of npm (npm@3), this will no longer be the case\. You will
+receive a warning that the peerDependency is not installed instead\.\fR The
+behavior in npms 1 & 2 was frequently confusing and could easily put you into
+dependency hell, a situation that npm is designed to avoid as much as possible\.
+.P
Trying to install another plugin with a conflicting requirement will cause an
error\. For this reason, make sure your plugin requirement is as broad as
possible, and not to lock it down to specific patch versions\.
@@ -618,6 +633,8 @@ Note that, unless the user has set the \fBengine\-strict\fR config flag, this
field is advisory only\.
.SH engineStrict
.P
+\fBNOTE: This feature is deprecated and will be removed in npm 3\.0\.0\.\fR
+.P
If you are sure that your module will \fIdefinitely not\fR run properly on
versions of Node/npm other than those specified in the \fBengines\fR object,
then you can set \fB"engineStrict": true\fR in your package\.json file\.
@@ -626,8 +643,7 @@ This will override the user's \fBengine\-strict\fR config setting\.
Please do not do this unless you are really very very sure\. If your
engines object is something overly restrictive, you can quite easily and
inadvertently lock yourself into obscurity and prevent your users from
-updating to new versions of Node\. Consider this choice carefully\. If
-people abuse it, it will be removed in a future version of npm\.
+updating to new versions of Node\. Consider this choice carefully\.
.SH os
.P
You can specify which operating systems your
diff --git a/deps/npm/man/man7/npm-index.7 b/deps/npm/man/man7/npm-index.7
index f9c996fb78..c1491c918b 100644
--- a/deps/npm/man/man7/npm-index.7
+++ b/deps/npm/man/man7/npm-index.7
@@ -70,6 +70,9 @@ Install a package
.SS npm help link
.P
Symlink a package folder
+.SS npm help logout
+.P
+Log out of the registry
.SS npm help ls
.P
List installed packages
diff --git a/deps/npm/man/man7/semver.7 b/deps/npm/man/man7/semver.7
index de6a889185..d15e0de43e 100644
--- a/deps/npm/man/man7/semver.7
+++ b/deps/npm/man/man7/semver.7
@@ -311,6 +311,12 @@ prerelease\. If the input version is already a prerelease it simply
increments it\.
.RE
+.IP \(bu 2
+\fBmajor(v)\fR: Return the major version number\.
+.IP \(bu 2
+\fBminor(v)\fR: Return the minor version number\.
+.IP \(bu 2
+\fBpatch(v)\fR: Return the patch version number\.
.RE
.SS Comparison
diff --git a/deps/npm/node_modules/columnify/Readme.md b/deps/npm/node_modules/columnify/Readme.md
index d0deee1bb6..b2b846f366 100644
--- a/deps/npm/node_modules/columnify/Readme.md
+++ b/deps/npm/node_modules/columnify/Readme.md
@@ -175,11 +175,11 @@ console.log(columns)
#### Output:
```
-NAME DESCRIPTION VERSION
-mod1 some description which happens 0.0.1
- to be far larger than the max
-module-two another description larger 0.2.0
- than the max
+NAME DESCRIPTION VERSION
+mod1 some description which happens 0.0.1
+ to be far larger than the max
+module-two another description larger 0.2.0
+ than the max
```
#### Maximum Line Width
@@ -392,8 +392,8 @@ var columns = columnify([{
```
#### Output:
```
-*MODULE NAME* DESCRIPTION
-mod1 some description text.
+*MODULE NAME* DESCRIPTION
+mod1 some description text.
module-two some slightly longer description text.
```
diff --git a/deps/npm/node_modules/columnify/columnify.js b/deps/npm/node_modules/columnify/columnify.js
index 912ab84585..548efc679d 100644
--- a/deps/npm/node_modules/columnify/columnify.js
+++ b/deps/npm/node_modules/columnify/columnify.js
@@ -298,3 +298,4 @@ function toArray(items, columnNames) {
}
return rows;
}
+
diff --git a/deps/npm/node_modules/columnify/node_modules/wcwidth/node_modules/defaults/node_modules/clone/clone.js b/deps/npm/node_modules/columnify/node_modules/wcwidth/node_modules/defaults/node_modules/clone/clone.js
index 321ffa30f5..f8fa3159a7 100644
--- a/deps/npm/node_modules/columnify/node_modules/wcwidth/node_modules/defaults/node_modules/clone/clone.js
+++ b/deps/npm/node_modules/columnify/node_modules/wcwidth/node_modules/defaults/node_modules/clone/clone.js
@@ -114,7 +114,7 @@ function clone(parent, circular, depth, prototype) {
if (proto) {
attrs = Object.getOwnPropertyDescriptor(proto, i);
}
-
+
if (attrs && attrs.set == null) {
continue;
}
diff --git a/deps/npm/node_modules/ini/ini.js b/deps/npm/node_modules/ini/ini.js
index 1e232e7438..ddf5bd9cc6 100644
--- a/deps/npm/node_modules/ini/ini.js
+++ b/deps/npm/node_modules/ini/ini.js
@@ -145,7 +145,7 @@ function isQuoted (val) {
function safe (val) {
return ( typeof val !== "string"
- || val.match(/[\r\n]/)
+ || val.match(/[=\r\n]/)
|| val.match(/^\[/)
|| (val.length > 1
&& isQuoted(val))
diff --git a/deps/npm/node_modules/ini/package.json b/deps/npm/node_modules/ini/package.json
index a910b78861..5a1e10b81c 100644
--- a/deps/npm/node_modules/ini/package.json
+++ b/deps/npm/node_modules/ini/package.json
@@ -6,7 +6,7 @@
},
"name": "ini",
"description": "An ini encoder/decoder for node",
- "version": "1.3.2",
+ "version": "1.3.3",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/ini.git"
@@ -23,16 +23,16 @@
"tap": "~0.4.0"
},
"license": "ISC",
- "gitHead": "bbe4a8bb09afa58f724c04ce43a49037cabeadfb",
+ "gitHead": "566268f1fb8dd3c0f7d968091de7b7fb2b97b483",
"bugs": {
"url": "https://github.com/isaacs/ini/issues"
},
"homepage": "https://github.com/isaacs/ini",
- "_id": "ini@1.3.2",
- "_shasum": "9ebf4a44daf9d89acd07aab9f89a083d887f6dec",
- "_from": "ini@>=1.3.2 <1.4.0",
- "_npmVersion": "2.1.9",
- "_nodeVersion": "0.10.16",
+ "_id": "ini@1.3.3",
+ "_shasum": "c07e34aef1de06aff21d413b458e52b21533a11e",
+ "_from": "ini@>=1.3.1 <1.4.0",
+ "_npmVersion": "2.5.1",
+ "_nodeVersion": "1.1.0",
"_npmUser": {
"name": "isaacs",
"email": "i@izs.me"
@@ -44,9 +44,9 @@
}
],
"dist": {
- "shasum": "9ebf4a44daf9d89acd07aab9f89a083d887f6dec",
- "tarball": "http://registry.npmjs.org/ini/-/ini-1.3.2.tgz"
+ "shasum": "c07e34aef1de06aff21d413b458e52b21533a11e",
+ "tarball": "http://registry.npmjs.org/ini/-/ini-1.3.3.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/ini/-/ini-1.3.2.tgz"
+ "_resolved": "https://registry.npmjs.org/ini/-/ini-1.3.3.tgz"
}
diff --git a/deps/npm/node_modules/ini/test/fixtures/foo.ini b/deps/npm/node_modules/ini/test/fixtures/foo.ini
index 27555e9d82..fc2080f161 100644
--- a/deps/npm/node_modules/ini/test/fixtures/foo.ini
+++ b/deps/npm/node_modules/ini/test/fixtures/foo.ini
@@ -29,6 +29,8 @@ ar = this is included
br = cold
br = warm
+eq = "eq=eq"
+
; a section
[a]
av = a val
diff --git a/deps/npm/node_modules/ini/test/foo.js b/deps/npm/node_modules/ini/test/foo.js
index 9d34aa6fda..58102d1e72 100644
--- a/deps/npm/node_modules/ini/test/foo.js
+++ b/deps/npm/node_modules/ini/test/foo.js
@@ -18,6 +18,7 @@ var i = require("../")
+ 'ar[]=three\n'
+ 'ar[]=this is included\n'
+ 'br=warm\n'
+ + 'eq=\"eq=eq\"\n'
+ '\n'
+ '[a]\n'
+ 'av=a val\n'
@@ -43,6 +44,7 @@ var i = require("../")
'zr': ['deedee'],
'ar': ['one', 'three', 'this is included'],
'br': 'warm',
+ 'eq': 'eq=eq',
a:
{ av: 'a val',
e: '{ o: p, a: { av: a val, b: { c: { e: "this [value]" } } } }',
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/README.md b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/README.md
index fd4e03a897..f23049dc3b 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/README.md
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/README.md
@@ -1,6 +1,6 @@
# brace-expansion
-[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html),
+[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html),
as known from sh/bash, in JavaScript.
[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.png)](http://travis-ci.org/juliangruber/brace-expansion)
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/example.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/example.js
index 36cde4de5c..60ecfc74d4 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/example.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/example.js
@@ -5,3 +5,4 @@ console.log(expand('http://www.numericals.com/file{1..100..10}.txt'));
console.log(expand('http://www.letters.com/file{a..z..2}.txt'));
console.log(expand('mkdir /usr/local/src/bash/{old,new,dist,bugs}'));
console.log(expand('chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}'));
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.bak b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.bak
index ed35e15af3..71b53671d7 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.bak
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.bak
@@ -195,3 +195,4 @@ function expand(str, isTop) {
return expansions;
}
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.js
index f8d40f79ac..a23104e955 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/index.js
@@ -188,3 +188,4 @@ function expand(str, isTop) {
return expansions;
}
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
index dd2730cfde..fa5da71a6d 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
@@ -3,3 +3,4 @@ test:
@node_modules/.bin/tape test/*.js
.PHONY: test
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
index 9ce76f480a..c02ad348e6 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
@@ -2,3 +2,4 @@ var balanced = require('./');
console.log(balanced('{', '}', 'pre{in{nested}}post'));
console.log(balanced('{', '}', 'pre{first}between{second}post'));
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
index fd1132826a..e429121eab 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
@@ -7,3 +7,4 @@ test('empty option', function(t) {
]);
t.end();
});
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/nested.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
index 54d1e88f68..0862dc51f9 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
@@ -13,3 +13,4 @@ test('nested', function(t) {
]);
t.end();
});
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/order.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/order.js
index d5f62566c9..c00ad155fe 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/order.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/order.js
@@ -7,3 +7,4 @@ test('order', function(t) {
]);
t.end();
});
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/pad.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
index f830f7c466..e4158775f1 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
@@ -10,3 +10,4 @@ test('pad', function(t) {
]);
t.end();
});
+
diff --git a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
index 18ee665fb9..f73a9579ab 100644
--- a/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
+++ b/deps/npm/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
@@ -47,3 +47,4 @@ test('alphabetic sequences with step count', function(t) {
]);
t.end();
});
+
diff --git a/deps/npm/node_modules/node-gyp/addon.gypi b/deps/npm/node_modules/node-gyp/addon.gypi
index 63fefe3d16..0b81fab202 100644
--- a/deps/npm/node_modules/node-gyp/addon.gypi
+++ b/deps/npm/node_modules/node-gyp/addon.gypi
@@ -42,7 +42,7 @@
'-luuid.lib',
'-lodbc32.lib',
'-lDelayImp.lib',
- '-l"<(node_root_dir)/$(ConfigurationName)/iojs.lib"'
+ '-l"<(node_root_dir)/$(ConfigurationName)/node.lib"'
],
# warning C4251: 'node::ObjectWrap::handle_' : class 'v8::Persistent'
# needs to have dll-interface to be used by clients of class 'node::ObjectWrap'
diff --git a/deps/npm/node_modules/node-gyp/lib/build.js b/deps/npm/node_modules/node-gyp/lib/build.js
index 3d3c58785f..f3605902e9 100644
--- a/deps/npm/node_modules/node-gyp/lib/build.js
+++ b/deps/npm/node_modules/node-gyp/lib/build.js
@@ -173,7 +173,7 @@ function build (gyp, argv, callback) {
}
/**
- * Copies the iojs.lib file for the current target architecture into the
+ * Copies the node.lib file for the current target architecture into the
* current proper dev dir location.
*/
@@ -181,15 +181,15 @@ function build (gyp, argv, callback) {
if (!win || !copyDevLib) return doBuild()
var buildDir = path.resolve(nodeDir, buildType)
- , archNodeLibPath = path.resolve(nodeDir, arch, 'iojs.lib')
- , buildNodeLibPath = path.resolve(buildDir, 'iojs.lib')
+ , archNodeLibPath = path.resolve(nodeDir, arch, 'node.lib')
+ , buildNodeLibPath = path.resolve(buildDir, 'node.lib')
mkdirp(buildDir, function (err, isNew) {
if (err) return callback(err)
log.verbose('"' + buildType + '" dir needed to be created?', isNew)
var rs = fs.createReadStream(archNodeLibPath)
, ws = fs.createWriteStream(buildNodeLibPath)
- log.verbose('copying "iojs.lib" for ' + arch, buildNodeLibPath)
+ log.verbose('copying "node.lib" for ' + arch, buildNodeLibPath)
rs.pipe(ws)
rs.on('error', callback)
ws.on('error', callback)
diff --git a/deps/npm/node_modules/node-gyp/lib/install.js b/deps/npm/node_modules/node-gyp/lib/install.js
index 378fbfae47..6f72e6a93d 100644
--- a/deps/npm/node_modules/node-gyp/lib/install.js
+++ b/deps/npm/node_modules/node-gyp/lib/install.js
@@ -39,7 +39,7 @@ function install (gyp, argv, callback) {
}
}
- var distUrl = gyp.opts['dist-url'] || gyp.opts.disturl || 'https://iojs.org/dist'
+ var distUrl = gyp.opts['dist-url'] || gyp.opts.disturl || 'http://nodejs.org/dist'
// Determine which node dev files version we are installing
@@ -185,7 +185,7 @@ function install (gyp, argv, callback) {
// now download the node tarball
var tarPath = gyp.opts['tarball']
- var tarballUrl = tarPath ? tarPath : distUrl + '/v' + version + '/iojs-v' + version + '.tar.gz'
+ var tarballUrl = tarPath ? tarPath : distUrl + '/v' + version + '/node-v' + version + '.tar.gz'
, badDownload = false
, extractCount = 0
, gunzip = zlib.createGunzip()
@@ -267,7 +267,7 @@ function install (gyp, argv, callback) {
var async = 0
if (win) {
- // need to download iojs.lib
+ // need to download node.lib
async++
downloadNodeLib(deref)
}
@@ -295,8 +295,7 @@ function install (gyp, argv, callback) {
// check content shasums
for (var k in contentShasums) {
log.verbose('validating download checksum for ' + k, '(%s == %s)', contentShasums[k], expectShasums[k])
- // TODO(piscisaureus) re-enable checksum verification when the correct files are in place.
- if (false || contentShasums[k] !== expectShasums[k]) {
+ if (contentShasums[k] !== expectShasums[k]) {
cb(new Error(k + ' local checksum ' + contentShasums[k] + ' not match remote ' + expectShasums[k]))
return
}
@@ -344,36 +343,36 @@ function install (gyp, argv, callback) {
}
function downloadNodeLib (done) {
- log.verbose('on Windows; need to download `iojs.lib`...')
+ log.verbose('on Windows; need to download `node.lib`...')
var dir32 = path.resolve(devDir, 'ia32')
, dir64 = path.resolve(devDir, 'x64')
- , nodeLibPath32 = path.resolve(dir32, 'iojs.lib')
- , nodeLibPath64 = path.resolve(dir64, 'iojs.lib')
- , nodeLibUrl32 = distUrl + '/v' + version + '/win-x86/iojs.lib'
- , nodeLibUrl64 = distUrl + '/v' + version + '/win-x64/iojs.lib'
+ , nodeLibPath32 = path.resolve(dir32, 'node.lib')
+ , nodeLibPath64 = path.resolve(dir64, 'node.lib')
+ , nodeLibUrl32 = distUrl + '/v' + version + '/node.lib'
+ , nodeLibUrl64 = distUrl + '/v' + version + '/x64/node.lib'
- log.verbose('32-bit iojs.lib dir', dir32)
- log.verbose('64-bit iojs.lib dir', dir64)
- log.verbose('`iojs.lib` 32-bit url', nodeLibUrl32)
- log.verbose('`iojs.lib` 64-bit url', nodeLibUrl64)
+ log.verbose('32-bit node.lib dir', dir32)
+ log.verbose('64-bit node.lib dir', dir64)
+ log.verbose('`node.lib` 32-bit url', nodeLibUrl32)
+ log.verbose('`node.lib` 64-bit url', nodeLibUrl64)
var async = 2
mkdir(dir32, function (err) {
if (err) return done(err)
- log.verbose('streaming 32-bit iojs.lib to:', nodeLibPath32)
+ log.verbose('streaming 32-bit node.lib to:', nodeLibPath32)
var req = download(nodeLibUrl32)
if (!req) return
req.on('error', done)
req.on('response', function (res) {
if (res.statusCode !== 200) {
- done(new Error(res.statusCode + ' status code downloading 32-bit iojs.lib'))
+ done(new Error(res.statusCode + ' status code downloading 32-bit node.lib'))
return
}
getContentSha(res, function (_, checksum) {
- contentShasums['win-x86/iojs.lib'] = checksum
- log.verbose('content checksum', 'win-x86/iojs.lib', checksum)
+ contentShasums['node.lib'] = checksum
+ log.verbose('content checksum', 'node.lib', checksum)
})
var ws = fs.createWriteStream(nodeLibPath32)
@@ -386,20 +385,20 @@ function install (gyp, argv, callback) {
})
mkdir(dir64, function (err) {
if (err) return done(err)
- log.verbose('streaming 64-bit iojs.lib to:', nodeLibPath64)
+ log.verbose('streaming 64-bit node.lib to:', nodeLibPath64)
var req = download(nodeLibUrl64)
if (!req) return
req.on('error', done)
req.on('response', function (res) {
if (res.statusCode !== 200) {
- done(new Error(res.statusCode + ' status code downloading 64-bit iojs.lib'))
+ done(new Error(res.statusCode + ' status code downloading 64-bit node.lib'))
return
}
getContentSha(res, function (_, checksum) {
- contentShasums['win-x64/iojs.lib'] = checksum
- log.verbose('content checksum', 'win-x64/iojs.lib', checksum)
+ contentShasums['x64/node.lib'] = checksum
+ log.verbose('content checksum', 'x64/node.lib', checksum)
})
var ws = fs.createWriteStream(nodeLibPath64)
diff --git a/deps/npm/node_modules/node-gyp/node_modules/minimatch/node_modules/sigmund/test/basic.js b/deps/npm/node_modules/node-gyp/node_modules/minimatch/node_modules/sigmund/test/basic.js
index 6149a80239..50c53a13e9 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/minimatch/node_modules/sigmund/test/basic.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/minimatch/node_modules/sigmund/test/basic.js
@@ -21,3 +21,4 @@ test('basic', function (t) {
t.equal(sigmund(obj3), cycleHash)
t.end()
})
+
diff --git a/deps/npm/node_modules/node-gyp/node_modules/minimatch/test/brace-expand.js b/deps/npm/node_modules/node-gyp/node_modules/minimatch/test/brace-expand.js
index c3e19d9baf..e63d3f60c8 100644
--- a/deps/npm/node_modules/node-gyp/node_modules/minimatch/test/brace-expand.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/minimatch/test/brace-expand.js
@@ -36,3 +36,5 @@ tap.test("brace expansion", function (t) {
console.error("ending")
t.end()
})
+
+
diff --git a/deps/npm/node_modules/npm-registry-client/.travis.yml b/deps/npm/node_modules/npm-registry-client/.travis.yml
new file mode 100644
index 0000000000..686d9aecaf
--- /dev/null
+++ b/deps/npm/node_modules/npm-registry-client/.travis.yml
@@ -0,0 +1,10 @@
+language: node_js
+node_js:
+ - "0.12"
+ - "0.10"
+ - iojs
+before_install:
+ - "npm install -g npm@^2"
+script: "npm test"
+notifications:
+ slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
diff --git a/deps/npm/node_modules/npm-registry-client/lib/logout.js b/deps/npm/node_modules/npm-registry-client/lib/logout.js
new file mode 100644
index 0000000000..00964a4be7
--- /dev/null
+++ b/deps/npm/node_modules/npm-registry-client/lib/logout.js
@@ -0,0 +1,23 @@
+module.exports = logout
+
+var assert = require("assert")
+var url = require("url")
+
+function logout (uri, params, cb) {
+ assert(typeof uri === "string", "must pass registry URI to logout")
+ assert(params && typeof params === "object", "must pass params to logout")
+ assert(typeof cb === "function", "must pass callback to star")
+
+ var auth = params.auth
+ assert(auth && typeof auth === "object", "must pass auth to logout")
+ assert(typeof auth.token === "string", "can only log out for token auth")
+
+ uri = url.resolve(uri, "-/user/token/" + auth.token)
+ var options = {
+ method: "DELETE",
+ auth: auth
+ }
+
+ this.log.verbose("logout", "invalidating session token for user")
+ this.request(uri, options, cb)
+}
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/LICENSE b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/LICENSE
index 1e836b4760..99c130e1de 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/LICENSE
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/LICENSE
@@ -2,23 +2,23 @@ The MIT License
Copyright (c) 2013 Max Ogden
-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,
+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
+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
+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.
\ No newline at end of file
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/README.md b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/README.md
index 9e9b6eee9f..e46b823903 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/README.md
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/README.md
@@ -12,3 +12,4 @@ If you want to guarantee a stable streams base, regardless of what version of No
**readable-stream** comes in two major versions, v1.0.x and v1.1.x. The former tracks the Streams2 implementation in Node 0.10, including bug-fixes and minor improvements as they are added. The latter tracks Streams3 as it develops in Node 0.11; we will likely see a v1.2.x branch for Node 0.12.
**readable-stream** uses proper patch-level versioning so if you pin to `"~1.0.0"` you’ll get the latest Node 0.10 Streams2 implementation, including any fixes and minor non-breaking improvements. The patch-level versions of 1.0.x and 1.1.x should mirror the patch-level versions of Node-core releases. You should prefer the **1.0.x** releases for now and when you’re ready to start using Streams3, pin to `"~1.1.0"`
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/float.patch b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/float.patch
index 7abb6dc30b..b984607a41 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/float.patch
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/float.patch
@@ -3,36 +3,36 @@ index c5a741c..a2e0d8e 100644
--- a/lib/_stream_duplex.js
+++ b/lib/_stream_duplex.js
@@ -26,8 +26,8 @@
-
+
module.exports = Duplex;
var util = require('util');
-var Readable = require('_stream_readable');
-var Writable = require('_stream_writable');
+var Readable = require('./_stream_readable');
+var Writable = require('./_stream_writable');
-
+
util.inherits(Duplex, Readable);
-
+
diff --git a/lib/_stream_passthrough.js b/lib/_stream_passthrough.js
index a5e9864..330c247 100644
--- a/lib/_stream_passthrough.js
+++ b/lib/_stream_passthrough.js
@@ -25,7 +25,7 @@
-
+
module.exports = PassThrough;
-
+
-var Transform = require('_stream_transform');
+var Transform = require('./_stream_transform');
var util = require('util');
util.inherits(PassThrough, Transform);
-
+
diff --git a/lib/_stream_readable.js b/lib/_stream_readable.js
index 0c3fe3e..90a8298 100644
--- a/lib/_stream_readable.js
+++ b/lib/_stream_readable.js
@@ -23,10 +23,34 @@ module.exports = Readable;
Readable.ReadableState = ReadableState;
-
+
var EE = require('events').EventEmitter;
+if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
+ return emitter.listeners(type).length;
@@ -63,12 +63,12 @@ index 0c3fe3e..90a8298 100644
+} catch (er) {
+ debug = function() {};
+}
-
+
util.inherits(Readable, Stream);
-
+
@@ -380,7 +404,7 @@ function chunkInvalid(state, chunk) {
-
-
+
+
function onEofChunk(stream, state) {
- if (state.decoder && !state.ended) {
+ if (state.decoder && !state.ended && state.decoder.end) {
@@ -80,9 +80,9 @@ index b1f9fcc..b0caf57 100644
--- a/lib/_stream_transform.js
+++ b/lib/_stream_transform.js
@@ -64,8 +64,14 @@
-
+
module.exports = Transform;
-
+
-var Duplex = require('_stream_duplex');
+var Duplex = require('./_stream_duplex');
var util = require('util');
@@ -93,15 +93,15 @@ index b1f9fcc..b0caf57 100644
+ }
+}
util.inherits(Transform, Duplex);
-
-
+
+
diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js
index ba2e920..f49288b 100644
--- a/lib/_stream_writable.js
+++ b/lib/_stream_writable.js
@@ -27,6 +27,12 @@ module.exports = Writable;
Writable.WritableState = WritableState;
-
+
var util = require('util');
+if (!util.isUndefined) {
+ var utilIs = require('core-util-is');
@@ -110,7 +110,7 @@ index ba2e920..f49288b 100644
+ }
+}
var Stream = require('stream');
-
+
util.inherits(Writable, Stream);
@@ -119,7 +125,7 @@ function WritableState(options, stream) {
function Writable(options) {
@@ -119,29 +119,29 @@ index ba2e920..f49288b 100644
- if (!(this instanceof Writable) && !(this instanceof Stream.Duplex))
+ if (!(this instanceof Writable) && !(this instanceof require('./_stream_duplex')))
return new Writable(options);
-
+
this._writableState = new WritableState(options, this);
diff --git a/test/simple/test-stream-big-push.js b/test/simple/test-stream-big-push.js
index e3787e4..8cd2127 100644
--- a/test/simple/test-stream-big-push.js
+++ b/test/simple/test-stream-big-push.js
@@ -21,7 +21,7 @@
-
+
var common = require('../common');
var assert = require('assert');
-var stream = require('stream');
+var stream = require('../../');
var str = 'asdfasdfasdfasdfasdf';
-
+
var r = new stream.Readable({
diff --git a/test/simple/test-stream-end-paused.js b/test/simple/test-stream-end-paused.js
index bb73777..d40efc7 100644
--- a/test/simple/test-stream-end-paused.js
+++ b/test/simple/test-stream-end-paused.js
@@ -25,7 +25,7 @@ var gotEnd = false;
-
+
// Make sure we don't miss the end event for paused 0-length streams
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
var stream = new Readable();
@@ -154,13 +154,13 @@ index b46ee90..0be8366 100644
@@ -22,8 +22,8 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('_stream_readable');
-var Writable = require('_stream_writable');
+var Readable = require('../../lib/_stream_readable');
+var Writable = require('../../lib/_stream_writable');
var util = require('util');
-
+
util.inherits(TestReadable, Readable);
diff --git a/test/simple/test-stream-pipe-cleanup.js b/test/simple/test-stream-pipe-cleanup.js
deleted file mode 100644
@@ -295,12 +295,12 @@ index c5d724b..c7d6b7d 100644
--- a/test/simple/test-stream-pipe-error-handling.js
+++ b/test/simple/test-stream-pipe-error-handling.js
@@ -21,7 +21,7 @@
-
+
var common = require('../common');
var assert = require('assert');
-var Stream = require('stream').Stream;
+var Stream = require('../../').Stream;
-
+
(function testErrorListenerCatches() {
var source = new Stream();
diff --git a/test/simple/test-stream-pipe-event.js b/test/simple/test-stream-pipe-event.js
@@ -309,25 +309,25 @@ index cb9d5fe..56f8d61 100644
+++ b/test/simple/test-stream-pipe-event.js
@@ -20,7 +20,7 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
+
var common = require('../common');
-var stream = require('stream');
+var stream = require('../../');
var assert = require('assert');
var util = require('util');
-
+
diff --git a/test/simple/test-stream-push-order.js b/test/simple/test-stream-push-order.js
index f2e6ec2..a5c9bf9 100644
--- a/test/simple/test-stream-push-order.js
+++ b/test/simple/test-stream-push-order.js
@@ -20,7 +20,7 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
+
var common = require('../common.js');
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
var assert = require('assert');
-
+
var s = new Readable({
diff --git a/test/simple/test-stream-push-strings.js b/test/simple/test-stream-push-strings.js
index 06f43dc..1701a9a 100644
@@ -336,11 +336,11 @@ index 06f43dc..1701a9a 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
var util = require('util');
-
+
util.inherits(MyStream, Readable);
diff --git a/test/simple/test-stream-readable-event.js b/test/simple/test-stream-readable-event.js
index ba6a577..a8e6f7b 100644
@@ -349,10 +349,10 @@ index ba6a577..a8e6f7b 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
-
+
(function first() {
// First test, not reading when the readable is added.
diff --git a/test/simple/test-stream-readable-flow-recursion.js b/test/simple/test-stream-readable-flow-recursion.js
@@ -362,10 +362,10 @@ index 2891ad6..11689ba 100644
@@ -27,7 +27,7 @@ var assert = require('assert');
// more data continuously, but without triggering a nextTick
// warning or RangeError.
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
-
+
// throw an error if we trigger a nextTick warning.
process.throwDeprecation = true;
diff --git a/test/simple/test-stream-unshift-empty-chunk.js b/test/simple/test-stream-unshift-empty-chunk.js
@@ -373,12 +373,12 @@ index 0c96476..7827538 100644
--- a/test/simple/test-stream-unshift-empty-chunk.js
+++ b/test/simple/test-stream-unshift-empty-chunk.js
@@ -24,7 +24,7 @@ var assert = require('assert');
-
- // This test verifies that stream.unshift(Buffer(0)) or
+
+ // This test verifies that stream.unshift(Buffer(0)) or
// stream.unshift('') does not set state.reading=false.
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
-
+
var r = new Readable();
var nChunks = 10;
diff --git a/test/simple/test-stream-unshift-read-race.js b/test/simple/test-stream-unshift-read-race.js
@@ -388,14 +388,14 @@ index 83fd9fa..17c18aa 100644
@@ -29,7 +29,7 @@ var assert = require('assert');
// 3. push() after the EOF signaling null is an error.
// 4. _read() is not called after pushing the EOF null chunk.
-
+
-var stream = require('stream');
+var stream = require('../../');
var hwm = 10;
var r = stream.Readable({ highWaterMark: hwm });
var chunks = 10;
@@ -51,7 +51,14 @@ r._read = function(n) {
-
+
function push(fast) {
assert(!pushedNull, 'push() after null push');
- var c = pos >= data.length ? null : data.slice(pos, pos + n);
@@ -417,10 +417,10 @@ index 5b49e6e..b5321f3 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var stream = require('stream');
+var stream = require('../../');
-
+
var queue = [];
for (var decode = 0; decode < 2; decode++) {
diff --git a/test/simple/test-stream2-basic.js b/test/simple/test-stream2-basic.js
@@ -428,26 +428,26 @@ index 3814bf0..248c1be 100644
--- a/test/simple/test-stream2-basic.js
+++ b/test/simple/test-stream2-basic.js
@@ -21,7 +21,7 @@
-
-
+
+
var common = require('../common.js');
-var R = require('_stream_readable');
+var R = require('../../lib/_stream_readable');
var assert = require('assert');
-
+
var util = require('util');
diff --git a/test/simple/test-stream2-compatibility.js b/test/simple/test-stream2-compatibility.js
index 6cdd4e9..f0fa84b 100644
--- a/test/simple/test-stream2-compatibility.js
+++ b/test/simple/test-stream2-compatibility.js
@@ -21,7 +21,7 @@
-
-
+
+
var common = require('../common.js');
-var R = require('_stream_readable');
+var R = require('../../lib/_stream_readable');
var assert = require('assert');
-
+
var util = require('util');
diff --git a/test/simple/test-stream2-finish-pipe.js b/test/simple/test-stream2-finish-pipe.js
index 39b274f..006a19b 100644
@@ -455,12 +455,12 @@ index 39b274f..006a19b 100644
+++ b/test/simple/test-stream2-finish-pipe.js
@@ -20,7 +20,7 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
+
var common = require('../common.js');
-var stream = require('stream');
+var stream = require('../../');
var Buffer = require('buffer').Buffer;
-
+
var r = new stream.Readable();
diff --git a/test/simple/test-stream2-fs.js b/test/simple/test-stream2-fs.js
deleted file mode 100644
@@ -605,7 +605,7 @@ index 2fbfbca..667985b 100644
@@ -30,7 +30,7 @@ var PUSHSIZE = 20;
var PUSHCOUNT = 1000;
var HWM = 50;
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
var r = new Readable({
@@ -613,7 +613,7 @@ index 2fbfbca..667985b 100644
});
@@ -39,23 +39,23 @@ var rs = r._readableState;
r._read = push;
-
+
r.on('readable', function() {
- console.error('>> readable');
+ //console.error('>> readable');
@@ -624,7 +624,7 @@ index 2fbfbca..667985b 100644
- console.error(' < %j (%d remain)', ret && ret.length, rs.length);
+ //console.error(' < %j (%d remain)', ret && ret.length, rs.length);
} while (ret && ret.length === READSIZE);
-
+
- console.error('<< after read()',
- ret && ret.length,
- rs.needReadable,
@@ -634,24 +634,24 @@ index 2fbfbca..667985b 100644
+ // rs.needReadable,
+ // rs.length);
});
-
+
var endEmitted = false;
r.on('end', function() {
endEmitted = true;
- console.error('end');
+ //console.error('end');
});
-
+
var pushes = 0;
@@ -64,11 +64,11 @@ function push() {
return;
-
+
if (pushes++ === PUSHCOUNT) {
- console.error(' push(EOF)');
+ //console.error(' push(EOF)');
return r.push(null);
}
-
+
- console.error(' push #%d', pushes);
+ //console.error(' push #%d', pushes);
if (r.push(new Buffer(PUSHSIZE)))
@@ -662,27 +662,27 @@ index 3e6931d..ff47d89 100644
--- a/test/simple/test-stream2-objects.js
+++ b/test/simple/test-stream2-objects.js
@@ -21,8 +21,8 @@
-
-
+
+
var common = require('../common.js');
-var Readable = require('_stream_readable');
-var Writable = require('_stream_writable');
+var Readable = require('../../lib/_stream_readable');
+var Writable = require('../../lib/_stream_writable');
var assert = require('assert');
-
+
// tiny node-tap lookalike.
diff --git a/test/simple/test-stream2-pipe-error-handling.js b/test/simple/test-stream2-pipe-error-handling.js
index cf7531c..e3f3e4e 100644
--- a/test/simple/test-stream2-pipe-error-handling.js
+++ b/test/simple/test-stream2-pipe-error-handling.js
@@ -21,7 +21,7 @@
-
+
var common = require('../common');
var assert = require('assert');
-var stream = require('stream');
+var stream = require('../../');
-
+
(function testErrorListenerCatches() {
var count = 1000;
diff --git a/test/simple/test-stream2-pipe-error-once-listener.js b/test/simple/test-stream2-pipe-error-once-listener.js
@@ -691,12 +691,12 @@ index 5e8e3cb..53b2616 100755
+++ b/test/simple/test-stream2-pipe-error-once-listener.js
@@ -24,7 +24,7 @@ var common = require('../common.js');
var assert = require('assert');
-
+
var util = require('util');
-var stream = require('stream');
+var stream = require('../../');
-
-
+
+
var Read = function() {
diff --git a/test/simple/test-stream2-push.js b/test/simple/test-stream2-push.js
index b63edc3..eb2b0e9 100644
@@ -704,7 +704,7 @@ index b63edc3..eb2b0e9 100644
+++ b/test/simple/test-stream2-push.js
@@ -20,7 +20,7 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
+
var common = require('../common.js');
-var stream = require('stream');
+var stream = require('../../');
@@ -716,14 +716,14 @@ index e8a7305..9740a47 100644
--- a/test/simple/test-stream2-read-sync-stack.js
+++ b/test/simple/test-stream2-read-sync-stack.js
@@ -21,7 +21,7 @@
-
+
var common = require('../common');
var assert = require('assert');
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
var r = new Readable();
var N = 256 * 1024;
-
+
diff --git a/test/simple/test-stream2-readable-empty-buffer-no-eof.js b/test/simple/test-stream2-readable-empty-buffer-no-eof.js
index cd30178..4b1659d 100644
--- a/test/simple/test-stream2-readable-empty-buffer-no-eof.js
@@ -731,13 +731,13 @@ index cd30178..4b1659d 100644
@@ -22,10 +22,9 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('stream').Readable;
+var Readable = require('../../').Readable;
-
+
test1();
-test2();
-
+
function test1() {
var r = new Readable();
@@ -88,31 +87,3 @@ function test1() {
@@ -777,12 +777,12 @@ index 7c96ffe..04a96f5 100644
--- a/test/simple/test-stream2-readable-from-list.js
+++ b/test/simple/test-stream2-readable-from-list.js
@@ -21,7 +21,7 @@
-
+
var assert = require('assert');
var common = require('../common.js');
-var fromList = require('_stream_readable')._fromList;
+var fromList = require('../../lib/_stream_readable')._fromList;
-
+
// tiny node-tap lookalike.
var tests = [];
diff --git a/test/simple/test-stream2-readable-legacy-drain.js b/test/simple/test-stream2-readable-legacy-drain.js
@@ -792,23 +792,23 @@ index 675da8e..51fd3d5 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Stream = require('stream');
+var Stream = require('../../');
var Readable = Stream.Readable;
-
+
var r = new Readable();
diff --git a/test/simple/test-stream2-readable-non-empty-end.js b/test/simple/test-stream2-readable-non-empty-end.js
index 7314ae7..c971898 100644
--- a/test/simple/test-stream2-readable-non-empty-end.js
+++ b/test/simple/test-stream2-readable-non-empty-end.js
@@ -21,7 +21,7 @@
-
+
var assert = require('assert');
var common = require('../common.js');
-var Readable = require('_stream_readable');
+var Readable = require('../../lib/_stream_readable');
-
+
var len = 0;
var chunks = new Array(10);
diff --git a/test/simple/test-stream2-readable-wrap-empty.js b/test/simple/test-stream2-readable-wrap-empty.js
@@ -818,11 +818,11 @@ index 2e5cf25..fd8a3dc 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('_stream_readable');
+var Readable = require('../../lib/_stream_readable');
var EE = require('events').EventEmitter;
-
+
var oldStream = new EE();
diff --git a/test/simple/test-stream2-readable-wrap.js b/test/simple/test-stream2-readable-wrap.js
index 90eea01..6b177f7 100644
@@ -831,40 +831,40 @@ index 90eea01..6b177f7 100644
@@ -22,8 +22,8 @@
var common = require('../common');
var assert = require('assert');
-
+
-var Readable = require('_stream_readable');
-var Writable = require('_stream_writable');
+var Readable = require('../../lib/_stream_readable');
+var Writable = require('../../lib/_stream_writable');
var EE = require('events').EventEmitter;
-
+
var testRuns = 0, completedRuns = 0;
diff --git a/test/simple/test-stream2-set-encoding.js b/test/simple/test-stream2-set-encoding.js
index 5d2c32a..685531b 100644
--- a/test/simple/test-stream2-set-encoding.js
+++ b/test/simple/test-stream2-set-encoding.js
@@ -22,7 +22,7 @@
-
+
var common = require('../common.js');
var assert = require('assert');
-var R = require('_stream_readable');
+var R = require('../../lib/_stream_readable');
var util = require('util');
-
+
// tiny node-tap lookalike.
diff --git a/test/simple/test-stream2-transform.js b/test/simple/test-stream2-transform.js
index 9c9ddd8..a0cacc6 100644
--- a/test/simple/test-stream2-transform.js
+++ b/test/simple/test-stream2-transform.js
@@ -21,8 +21,8 @@
-
+
var assert = require('assert');
var common = require('../common.js');
-var PassThrough = require('_stream_passthrough');
-var Transform = require('_stream_transform');
+var PassThrough = require('../../').PassThrough;
+var Transform = require('../../').Transform;
-
+
// tiny node-tap lookalike.
var tests = [];
diff --git a/test/simple/test-stream2-unpipe-drain.js b/test/simple/test-stream2-unpipe-drain.js
@@ -872,41 +872,41 @@ index d66dc3c..365b327 100644
--- a/test/simple/test-stream2-unpipe-drain.js
+++ b/test/simple/test-stream2-unpipe-drain.js
@@ -22,7 +22,7 @@
-
+
var common = require('../common.js');
var assert = require('assert');
-var stream = require('stream');
+var stream = require('../../');
var crypto = require('crypto');
-
+
var util = require('util');
diff --git a/test/simple/test-stream2-unpipe-leak.js b/test/simple/test-stream2-unpipe-leak.js
index 99f8746..17c92ae 100644
--- a/test/simple/test-stream2-unpipe-leak.js
+++ b/test/simple/test-stream2-unpipe-leak.js
@@ -22,7 +22,7 @@
-
+
var common = require('../common.js');
var assert = require('assert');
-var stream = require('stream');
+var stream = require('../../');
-
+
var chunk = new Buffer('hallo');
-
+
diff --git a/test/simple/test-stream2-writable.js b/test/simple/test-stream2-writable.js
index 704100c..209c3a6 100644
--- a/test/simple/test-stream2-writable.js
+++ b/test/simple/test-stream2-writable.js
@@ -20,8 +20,8 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
+
var common = require('../common.js');
-var W = require('_stream_writable');
-var D = require('_stream_duplex');
+var W = require('../../').Writable;
+var D = require('../../').Duplex;
var assert = require('assert');
-
+
var util = require('util');
diff --git a/test/simple/test-stream3-pause-then-read.js b/test/simple/test-stream3-pause-then-read.js
index b91bde3..2f72c15 100644
@@ -915,8 +915,9 @@ index b91bde3..2f72c15 100644
@@ -22,7 +22,7 @@
var common = require('../common');
var assert = require('assert');
-
+
-var stream = require('stream');
+var stream = require('../../');
var Readable = stream.Readable;
var Writable = stream.Writable;
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js
index e1856ef094..ec58596aee 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js
@@ -206,3 +206,4 @@ module.exports = Array.isArray || function (arr) {
});
require.alias("isarray/index.js", "isarray/index.js");
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js
index e57dabdceb..425950f9fc 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js
@@ -11,7 +11,7 @@ test('u8a without globals', function (t) {
vm.runInNewContext(src, c);
var TA = c.module.exports;
var ua = new(TA.Uint8Array)(5);
-
+
t.equal(ua.length, 5);
ua[1] = 256 + 55;
t.equal(ua[1], 55);
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 487b5000b7..e6dda4e34a 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
@@ -63,7 +63,7 @@ var concat = require('concat-stream')
Return a `writable` stream that will fire `cb(data)` with all of the data that
was written to the stream. Data can be written to `writable` as strings,
-Buffers, arrays of byte integers, and Uint8Arrays.
+Buffers, arrays of byte integers, and Uint8Arrays.
By default `concat-stream` will give you back the same data type as the type of the first buffer written to the stream. Use `opts.encoding` to set what format `data` should be returned as, e.g. if you if you don't want to rely on the built-in type checking or for some other reason.
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/test/string.js b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/test/string.js
index b20d4dd577..218c522063 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/test/string.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/concat-stream/test/string.js
@@ -58,7 +58,7 @@ test('string from buffers with multibyte characters', function (t) {
var snowman = new Buffer('☃')
for (var i = 0; i < 8; i++) {
strings.write(snowman.slice(0, 1))
- strings.write(snowman.slice(1))
+ strings.write(snowman.slice(1))
}
strings.end()
})
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/README.md b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/README.md
index f1d799b173..ebf40a2ab2 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/README.md
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/README.md
@@ -79,3 +79,4 @@ eg, `npm/hosted-git-info`
Currently this supports Github, Bitbucket and Gitlab. Pull requests for
additional hosts welcome.
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/bitbucket.js b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/bitbucket.js
index 8712723145..089cb28190 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/bitbucket.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/bitbucket.js
@@ -21,3 +21,4 @@ test("fromUrl(bitbucket url)", function (t) {
t.end()
})
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gist.js b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gist.js
index 3081c3db42..a316048cb7 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gist.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gist.js
@@ -37,3 +37,4 @@ test("fromUrl(gist url)", function (t) {
t.end()
})
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/github.js b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/github.js
index 1b945d26c3..e551c45d7b 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/github.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/github.js
@@ -39,3 +39,4 @@ test("fromUrl(github url)", function (t) {
t.end()
})
+
diff --git a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gitlab.js b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gitlab.js
index 1b25d60c7d..1a4e07096c 100644
--- a/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gitlab.js
+++ b/deps/npm/node_modules/npm-registry-client/node_modules/npm-package-arg/node_modules/hosted-git-info/test/gitlab.js
@@ -22,3 +22,4 @@ test("fromUrl(gitlab url)", function (t) {
t.end()
})
+
diff --git a/deps/npm/node_modules/npm-registry-client/package.json b/deps/npm/node_modules/npm-registry-client/package.json
index 0cd832ad7d..35b1ea4608 100644
--- a/deps/npm/node_modules/npm-registry-client/package.json
+++ b/deps/npm/node_modules/npm-registry-client/package.json
@@ -6,7 +6,7 @@
},
"name": "npm-registry-client",
"description": "Client for the npm registry",
- "version": "6.0.7",
+ "version": "6.1.1",
"repository": {
"url": "git://github.com/isaacs/npm-registry-client"
},
@@ -40,12 +40,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 = \"npm://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//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": "8691eaf8ca1f4c8a4d16389da6e8f6d0a0042ed9",
+ "gitHead": "88399fa1ebc5473125466ffa940c5b7df9e693bc",
"bugs": {
"url": "https://github.com/isaacs/npm-registry-client/issues"
},
"homepage": "https://github.com/isaacs/npm-registry-client",
- "_id": "npm-registry-client@6.0.7",
- "_shasum": "c9f36f727f0b72f47a9ed11a539829770565e0fb",
- "_from": "npm-registry-client@>=6.0.7 <6.1.0"
+ "_id": "npm-registry-client@6.1.1",
+ "_shasum": "ffc74d9d85f3228fcd21a7eaad8a8ed134a5dddb",
+ "_from": "npm-registry-client@>=6.1.1 <6.2.0"
}
diff --git a/deps/npm/node_modules/npm-registry-client/test/logout.js b/deps/npm/node_modules/npm-registry-client/test/logout.js
new file mode 100644
index 0000000000..bbf1b8c095
--- /dev/null
+++ b/deps/npm/node_modules/npm-registry-client/test/logout.js
@@ -0,0 +1,74 @@
+var test = require("tap").test
+
+var server = require("./lib/server.js")
+var common = require("./lib/common.js")
+var client = common.freshClient()
+
+function nop () {}
+
+var URI = "http://localhost:1337/rewrite"
+var TOKEN = "b00b00feed"
+var PARAMS = {
+ auth: {
+ token: TOKEN
+ }
+}
+
+test("logout call contract", function (t) {
+ t.throws(function () {
+ client.logout(undefined, PARAMS, nop)
+ }, "requires a URI")
+
+ t.throws(function () {
+ client.logout([], PARAMS, nop)
+ }, "requires URI to be a string")
+
+ t.throws(function () {
+ client.logout(URI, undefined, nop)
+ }, "requires params object")
+
+ t.throws(function () {
+ client.logout(URI, "", nop)
+ }, "params must be object")
+
+ t.throws(function () {
+ client.logout(URI, PARAMS, undefined)
+ }, "requires callback")
+
+ t.throws(function () {
+ client.logout(URI, PARAMS, "callback")
+ }, "callback must be function")
+
+ t.throws(
+ function () {
+ var params = {
+ auth: {}
+ }
+ client.logout(URI, params, nop)
+ },
+ { name: "AssertionError", message: "can only log out for token auth" },
+ "auth must include token"
+ )
+
+ t.end()
+})
+
+test("log out from a token-based registry", function (t) {
+ server.expect("DELETE", "/-/user/token/" + TOKEN, function (req, res) {
+ t.equal(req.method, "DELETE")
+ t.equal(req.headers.authorization, "Bearer " + TOKEN, "request is authed")
+
+ res.json({message: "ok"})
+ })
+
+ client.logout(URI, PARAMS, function (er) {
+ t.ifError(er, "no errors")
+
+ t.end()
+ })
+})
+
+test("cleanup", function (t) {
+ server.close()
+ t.end()
+})
diff --git a/deps/npm/node_modules/npm-registry-client/test/request-gzip-content.js b/deps/npm/node_modules/npm-registry-client/test/request-gzip-content.js
index 497a6b8c0d..5f6a33daa3 100644
--- a/deps/npm/node_modules/npm-registry-client/test/request-gzip-content.js
+++ b/deps/npm/node_modules/npm-registry-client/test/request-gzip-content.js
@@ -40,7 +40,7 @@ zlib.gzip(JSON.stringify(pkg), function (err, pkgGzip) {
tap.test("request wrong gzip package content", function (t) {
// will retry 3 times
for (var i = 0; i < 3; i++) {
- server.expect("GET", "/some-package-gzip-error/1.2.3", function (req, res) {
+ server.expect("GET", "/some-package-gzip/1.2.3", function (req, res) {
res.statusCode = 200
res.setHeader("Content-Encoding", "gzip")
res.setHeader("Content-Type", "application/json")
diff --git a/deps/npm/node_modules/read-package-json/package.json b/deps/npm/node_modules/read-package-json/package.json
index 1fd2f674f7..3c2ff0ff80 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": "1.2.7",
+ "version": "1.3.1",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
@@ -30,15 +30,16 @@
"graceful-fs": "2 || 3"
},
"license": "ISC",
- "gitHead": "41d6696c527e32a1cb38ebf0b6fc91b489b0499c",
+ "gitHead": "59011e6b660cf0cc916646a08955c12a8f990174",
"bugs": {
"url": "https://github.com/isaacs/read-package-json/issues"
},
"homepage": "https://github.com/isaacs/read-package-json",
- "_id": "read-package-json@1.2.7",
- "_shasum": "f0b440c461a218f4dbf48b094e80fc65c5248502",
- "_from": "read-package-json@>=1.2.7-0 <1.3.0-0",
- "_npmVersion": "2.0.0-beta.0",
+ "_id": "read-package-json@1.3.1",
+ "_shasum": "5a965f9fc34b25ffa5e0d93b1d0fc063af6d10b0",
+ "_from": "read-package-json@1.3.1",
+ "_npmVersion": "2.5.1",
+ "_nodeVersion": "0.12.0",
"_npmUser": {
"name": "othiym23",
"email": "ogd@aoaioxxysz.net"
@@ -54,9 +55,9 @@
}
],
"dist": {
- "shasum": "f0b440c461a218f4dbf48b094e80fc65c5248502",
- "tarball": "http://registry.npmjs.org/read-package-json/-/read-package-json-1.2.7.tgz"
+ "shasum": "5a965f9fc34b25ffa5e0d93b1d0fc063af6d10b0",
+ "tarball": "http://registry.npmjs.org/read-package-json/-/read-package-json-1.3.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-1.2.7.tgz"
+ "_resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-1.3.1.tgz"
}
diff --git a/deps/npm/node_modules/read-package-json/read-json.js b/deps/npm/node_modules/read-package-json/read-json.js
index acb7d62d81..863f8e8e32 100644
--- a/deps/npm/node_modules/read-package-json/read-json.js
+++ b/deps/npm/node_modules/read-package-json/read-json.js
@@ -332,6 +332,31 @@ function githead_ (file, data, dir, head, cb) {
})
}
+/**
+ * Warn if the bin references don't point to anything. This might be better in
+ * normalize-package-data if it had access to the file path.
+ */
+function checkBinReferences_ (file, data, warn, cb) {
+ if (!(data.bin instanceof Object)) return cb()
+
+ var keys = Object.keys(data.bin)
+ var keysLeft = keys.length
+ if (!keysLeft) return cb()
+
+ function handleExists(relName, result) {
+ keysLeft--
+ if (!result) warn("No bin file found at " + relName)
+ if (!keysLeft) cb()
+ }
+
+ keys.forEach(function (key) {
+ var dirName = path.dirname(file)
+ var relName = data.bin[key]
+ var binPath = path.resolve(dirName, relName)
+ fs.exists(binPath, handleExists.bind(null, relName))
+ })
+}
+
function final (file, data, log, strict, cb) {
var pId = makePackageId(data)
function warn(msg) {
@@ -344,9 +369,11 @@ function final (file, data, log, strict, cb) {
catch (error) {
return cb(error)
}
- typoWarned[pId] = true
- readJson.cache.set(file, data)
- cb(null, data)
+ checkBinReferences_(file, data, warn, function () {
+ typoWarned[pId] = true
+ readJson.cache.set(file, data)
+ cb(null, data)
+ })
}
function makePackageId (data) {
diff --git a/deps/npm/node_modules/read-package-json/test/bin.js b/deps/npm/node_modules/read-package-json/test/bin.js
new file mode 100644
index 0000000000..2ed4ec5ca5
--- /dev/null
+++ b/deps/npm/node_modules/read-package-json/test/bin.js
@@ -0,0 +1,43 @@
+// vim: set softtabstop=16 shiftwidth=16:
+var tap = require("tap")
+var readJson = require("../")
+var path = require("path")
+var fs = require("fs")
+
+var createWarningCollector = function () {
+ var warn = function (msg) {
+ warn.warnings.push(arguments)
+ }
+ warn.warnings = []
+ return warn
+}
+
+tap.test("Bin test", function (t) {
+ var p = path.resolve(__dirname, "fixtures/bin.json")
+ var warn = createWarningCollector()
+ readJson(p, warn, function (er, data) {
+ t.equals(warn.warnings.length, 0)
+ t.deepEqual(data.bin, {"bin-test": "./bin/echo"})
+ t.end()
+ })
+})
+
+tap.test("Bad bin test", function (t) {
+ var p = path.resolve(__dirname, "fixtures/badbin.json")
+ var warn = createWarningCollector()
+ readJson(p, warn, function (er, data) {
+ t.equals(warn.warnings.length, 1)
+ t.equals(warn.warnings[0][2], "No bin file found at ./bin/typo")
+ t.end()
+ })
+})
+
+tap.test("Empty bin test", function (t) {
+ var p = path.resolve(__dirname, "fixtures/emptybin.json")
+ var warn = createWarningCollector()
+ readJson(p, warn, function (er, data) {
+ t.equals(warn.warnings.length, 0)
+ t.same(data.bin, {}, "no mapping to bin because object was empty")
+ t.end()
+ })
+})
diff --git a/deps/npm/node_modules/read-package-json/test/fixtures/badbin.json b/deps/npm/node_modules/read-package-json/test/fixtures/badbin.json
new file mode 100644
index 0000000000..06c57f43bc
--- /dev/null
+++ b/deps/npm/node_modules/read-package-json/test/fixtures/badbin.json
@@ -0,0 +1,11 @@
+{
+ "name": "badbin-test",
+ "description": "my desc",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/npm/read-package-json.git"
+ },
+ "version": "0.0.1",
+ "readme": "hello world",
+ "bin": "./bin/typo"
+}
diff --git a/deps/npm/node_modules/read-package-json/test/fixtures/bin.json b/deps/npm/node_modules/read-package-json/test/fixtures/bin.json
new file mode 100644
index 0000000000..d47a5270c6
--- /dev/null
+++ b/deps/npm/node_modules/read-package-json/test/fixtures/bin.json
@@ -0,0 +1,11 @@
+{
+ "name": "bin-test",
+ "description": "my desc",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/npm/read-package-json.git"
+ },
+ "version": "0.0.1",
+ "readme": "hello world",
+ "bin": "./bin/echo"
+}
diff --git a/deps/npm/node_modules/read-package-json/test/fixtures/bin/echo b/deps/npm/node_modules/read-package-json/test/fixtures/bin/echo
new file mode 100644
index 0000000000..aaed878509
--- /dev/null
+++ b/deps/npm/node_modules/read-package-json/test/fixtures/bin/echo
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+echo "Hello world"
\ No newline at end of file
diff --git a/deps/npm/node_modules/read-package-json/test/fixtures/emptybin.json b/deps/npm/node_modules/read-package-json/test/fixtures/emptybin.json
new file mode 100644
index 0000000000..ef926f04d3
--- /dev/null
+++ b/deps/npm/node_modules/read-package-json/test/fixtures/emptybin.json
@@ -0,0 +1,11 @@
+{
+ "name": "badbin-test",
+ "description": "my desc",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/npm/read-package-json.git"
+ },
+ "version": "0.0.1",
+ "readme": "hello world",
+ "bin": {}
+}
diff --git a/deps/npm/node_modules/request/lib/getProxyFromURI.js b/deps/npm/node_modules/request/lib/getProxyFromURI.js
index c2013a6e12..0e54767f54 100644
--- a/deps/npm/node_modules/request/lib/getProxyFromURI.js
+++ b/deps/npm/node_modules/request/lib/getProxyFromURI.js
@@ -49,7 +49,7 @@ function getProxyFromURI(uri) {
if (noProxy === '*') {
return null
}
-
+
// if the noProxy is not empty and the uri is found return null
if (noProxy !== '' && uriInNoProxy(uri, noProxy)) {
@@ -62,7 +62,7 @@ function getProxyFromURI(uri) {
return process.env.HTTP_PROXY ||
process.env.http_proxy || null
}
-
+
if (uri.protocol === 'https:') {
return process.env.HTTPS_PROXY ||
process.env.https_proxy ||
diff --git a/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/Makefile b/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/Makefile
index 2d7580746d..b4ff85a33b 100644
--- a/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/Makefile
+++ b/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/Makefile
@@ -4,3 +4,4 @@ test:
@./test/run.js
.PHONY: test
+
diff --git a/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/test/integration/test-delayed-http-upload.js b/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/test/integration/test-delayed-http-upload.js
index 787539606e..9ecad5b8ad 100644
--- a/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/test/integration/test-delayed-http-upload.js
+++ b/deps/npm/node_modules/request/node_modules/combined-stream/node_modules/delayed-stream/test/integration/test-delayed-http-upload.js
@@ -34,3 +34,5 @@ server.listen(common.PORT, function() {
});
});
});
+
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/.npmignore b/deps/npm/node_modules/request/node_modules/hawk/.npmignore
index ab108bf92f..70febc05e4 100644
--- a/deps/npm/node_modules/request/node_modules/hawk/.npmignore
+++ b/deps/npm/node_modules/request/node_modules/hawk/.npmignore
@@ -17,3 +17,4 @@ config.json
*/*/._*
coverage.*
lib-cov
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/.travis.yml b/deps/npm/node_modules/request/node_modules/hawk/.travis.yml
index 77795c6a9b..047f7e3d5e 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/.travis.yml
+++ b/deps/npm/node_modules/request/node_modules/hawk/.travis.yml
@@ -2,3 +2,4 @@ language: node_js
node_js:
- 0.10
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/node_modules/boom/lib/index.js b/deps/npm/node_modules/request/node_modules/hawk/node_modules/boom/lib/index.js
index e791a5d037..c34bf6a19a 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/node_modules/boom/lib/index.js
+++ b/deps/npm/node_modules/request/node_modules/hawk/node_modules/boom/lib/index.js
@@ -289,3 +289,4 @@ exports.badImplementation = function (message, data) {
err.isDeveloperError = true;
return err;
};
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.npmignore b/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.npmignore
index b0939eabe3..77ba16cb05 100644
--- a/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.npmignore
+++ b/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.npmignore
@@ -15,3 +15,4 @@ config.json
*/*/._*
coverage.*
lib-cov
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.travis.yml b/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.travis.yml
index 77795c6a9b..047f7e3d5e 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.travis.yml
+++ b/deps/npm/node_modules/request/node_modules/hawk/node_modules/cryptiles/.travis.yml
@@ -2,3 +2,4 @@ language: node_js
node_js:
- 0.10
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/.travis.yml b/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/.travis.yml
index 77795c6a9b..047f7e3d5e 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/.travis.yml
+++ b/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/.travis.yml
@@ -2,3 +2,4 @@ language: node_js
node_js:
- 0.10
+
diff --git a/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/README.md b/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/README.md
index 61f4478a77..a22fa06e97 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/README.md
+++ b/deps/npm/node_modules/request/node_modules/hawk/node_modules/hoek/README.md
@@ -499,7 +499,7 @@ nextFn();
console.log('Do this first');
// Results in:
-//
+//
// Do this first
// Do this later
```
diff --git a/deps/npm/node_modules/request/node_modules/hawk/test/uri.js b/deps/npm/node_modules/request/node_modules/hawk/test/uri.js
index b2173f5aa2..e64b0095b2 100755
--- a/deps/npm/node_modules/request/node_modules/hawk/test/uri.js
+++ b/deps/npm/node_modules/request/node_modules/hawk/test/uri.js
@@ -314,7 +314,7 @@ describe('Hawk', function () {
done();
});
});
-
+
it('should fail on expired access', function (done) {
var req = {
diff --git a/deps/npm/node_modules/request/node_modules/isstream/test.js b/deps/npm/node_modules/request/node_modules/isstream/test.js
index 881e70b309..8c950c55e6 100644
--- a/deps/npm/node_modules/request/node_modules/isstream/test.js
+++ b/deps/npm/node_modules/request/node_modules/isstream/test.js
@@ -163,3 +163,6 @@ testDuplex(true, 'ReadableStream11.PassThrough', new (ReadableStream11.PassThrou
})
})
+
+
+
diff --git a/deps/npm/node_modules/request/node_modules/node-uuid/LICENSE.md b/deps/npm/node_modules/request/node_modules/node-uuid/LICENSE.md
index a43093bf32..652609b37e 100644
--- a/deps/npm/node_modules/request/node_modules/node-uuid/LICENSE.md
+++ b/deps/npm/node_modules/request/node_modules/node-uuid/LICENSE.md
@@ -1,6 +1,6 @@
The MIT License (MIT)
-Copyright (c) 2010-2012 Robert Kieffer
+Copyright (c) 2010-2012 Robert Kieffer
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/deps/npm/node_modules/request/node_modules/qs/CHANGELOG.md b/deps/npm/node_modules/request/node_modules/qs/CHANGELOG.md
index c6214d5da7..f5ee8b4644 100644
--- a/deps/npm/node_modules/request/node_modules/qs/CHANGELOG.md
+++ b/deps/npm/node_modules/request/node_modules/qs/CHANGELOG.md
@@ -65,3 +65,4 @@
## [**1.0.2**](https://github.com/hapijs/qs/issues?milestone=2&state=closed)
- [**#5**](https://github.com/hapijs/qs/issues/5) array holes incorrectly copied into object on large index
+
diff --git a/deps/npm/node_modules/request/request.js b/deps/npm/node_modules/request/request.js
index 00665b918e..f43c8c6b5b 100644
--- a/deps/npm/node_modules/request/request.js
+++ b/deps/npm/node_modules/request/request.js
@@ -280,7 +280,7 @@ Request.prototype.setupTunnel = function () {
if (typeof self.proxy === 'string') {
self.proxy = url.parse(self.proxy)
}
-
+
if (!self.proxy || !self.tunnel) {
return false
}
@@ -296,7 +296,7 @@ Request.prototype.setupTunnel = function () {
self.proxyHeaders = constructProxyHeaderWhiteList(self.headers, proxyHeaderWhiteList)
self.proxyHeaders.host = constructProxyHost(self.uri)
proxyHeaderExclusiveList.forEach(self.removeHeader, self)
-
+
// Set Agent from Tunnel Data
var tunnelFn = getTunnelFn(self)
var tunnelOptions = constructTunnelOptions(self)
diff --git a/deps/npm/node_modules/semver/README.md b/deps/npm/node_modules/semver/README.md
index 1ec8089546..b5e35ff0b5 100644
--- a/deps/npm/node_modules/semver/README.md
+++ b/deps/npm/node_modules/semver/README.md
@@ -106,7 +106,7 @@ similar risk on the *next* set of prerelease versions.
The method `.inc` takes an additional `identifier` string argument that
will append the value of the string as a prerelease identifier:
-````javascript
+```javascript
> semver.inc('1.2.3', 'pre', 'beta')
'1.2.4-beta.0'
```
@@ -248,6 +248,9 @@ strings that they parse.
same as `prepatch`. It increments the patch version, then makes a
prerelease. If the input version is already a prerelease it simply
increments it.
+* `major(v)`: Return the major version number.
+* `minor(v)`: Return the minor version number.
+* `patch(v)`: Return the patch version number.
### Comparison
diff --git a/deps/npm/node_modules/semver/package.json b/deps/npm/node_modules/semver/package.json
index 51326d7a30..466de0e19a 100644
--- a/deps/npm/node_modules/semver/package.json
+++ b/deps/npm/node_modules/semver/package.json
@@ -1,6 +1,6 @@
{
"name": "semver",
- "version": "4.2.0",
+ "version": "4.3.0",
"description": "The semantic version parser used by npm.",
"main": "semver.js",
"browser": "semver.browser.js",
@@ -21,16 +21,16 @@
"bin": {
"semver": "./bin/semver"
},
- "gitHead": "f353d3337dd9bef990b6873e281342260b4e63ae",
+ "gitHead": "12c0304de19c3d01ae2524b70592e9c49a76ff9d",
"bugs": {
"url": "https://github.com/isaacs/node-semver/issues"
},
"homepage": "https://github.com/isaacs/node-semver",
- "_id": "semver@4.2.0",
- "_shasum": "a571fd4adbe974fe32bd9cb4c5e249606f498423",
- "_from": "semver@>=4.2.0 <4.3.0",
- "_npmVersion": "2.1.14",
- "_nodeVersion": "0.10.33",
+ "_id": "semver@4.3.0",
+ "_shasum": "3757ceed2b91afefe0ba2c3b6bda49c688b0257a",
+ "_from": "semver@>=4.3.0 <4.4.0",
+ "_npmVersion": "2.5.1",
+ "_nodeVersion": "1.1.0",
"_npmUser": {
"name": "isaacs",
"email": "i@izs.me"
@@ -46,10 +46,9 @@
}
],
"dist": {
- "shasum": "a571fd4adbe974fe32bd9cb4c5e249606f498423",
- "tarball": "http://registry.npmjs.org/semver/-/semver-4.2.0.tgz"
+ "shasum": "3757ceed2b91afefe0ba2c3b6bda49c688b0257a",
+ "tarball": "http://registry.npmjs.org/semver/-/semver-4.3.0.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/semver/-/semver-4.2.0.tgz",
- "readme": "ERROR: No README data found!"
+ "_resolved": "https://registry.npmjs.org/semver/-/semver-4.3.0.tgz"
}
diff --git a/deps/npm/node_modules/semver/semver.browser.js b/deps/npm/node_modules/semver/semver.browser.js
index 49d785650e..1ee7204222 100644
--- a/deps/npm/node_modules/semver/semver.browser.js
+++ b/deps/npm/node_modules/semver/semver.browser.js
@@ -505,6 +505,21 @@ function rcompareIdentifiers(a, b) {
return compareIdentifiers(b, a);
}
+exports.major = major;
+function major(a, loose) {
+ return new SemVer(a, loose).major;
+}
+
+exports.minor = minor;
+function minor(a, loose) {
+ return new SemVer(a, loose).minor;
+}
+
+exports.patch = patch;
+function patch(a, loose) {
+ return new SemVer(a, loose).patch;
+}
+
exports.compare = compare;
function compare(a, b, loose) {
return new SemVer(a, loose).compare(b);
diff --git a/deps/npm/node_modules/semver/semver.browser.js.gz b/deps/npm/node_modules/semver/semver.browser.js.gz
index c6b27c9ad3..4bd16d689c 100644
Binary files a/deps/npm/node_modules/semver/semver.browser.js.gz and b/deps/npm/node_modules/semver/semver.browser.js.gz differ
diff --git a/deps/npm/node_modules/semver/semver.js b/deps/npm/node_modules/semver/semver.js
index 026173eabc..544bc83123 100644
--- a/deps/npm/node_modules/semver/semver.js
+++ b/deps/npm/node_modules/semver/semver.js
@@ -515,6 +515,21 @@ function rcompareIdentifiers(a, b) {
return compareIdentifiers(b, a);
}
+exports.major = major;
+function major(a, loose) {
+ return new SemVer(a, loose).major;
+}
+
+exports.minor = minor;
+function minor(a, loose) {
+ return new SemVer(a, loose).minor;
+}
+
+exports.patch = patch;
+function patch(a, loose) {
+ return new SemVer(a, loose).patch;
+}
+
exports.compare = compare;
function compare(a, b, loose) {
return new SemVer(a, loose).compare(b);
diff --git a/deps/npm/node_modules/semver/semver.min.js b/deps/npm/node_modules/semver/semver.min.js
index 2f07e16ed3..6de8c73459 100644
--- a/deps/npm/node_modules/semver/semver.min.js
+++ b/deps/npm/node_modules/semver/semver.min.js
@@ -1 +1 @@
-(function(e){if(typeof module==="object"&&module.exports===e)e=module.exports=H;e.SEMVER_SPEC_VERSION="2.0.0";var r=e.re=[];var t=e.src=[];var n=0;var i=n++;t[i]="0|[1-9]\\d*";var s=n++;t[s]="[0-9]+";var a=n++;t[a]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var o=n++;t[o]="("+t[i]+")\\."+"("+t[i]+")\\."+"("+t[i]+")";var f=n++;t[f]="("+t[s]+")\\."+"("+t[s]+")\\."+"("+t[s]+")";var u=n++;t[u]="(?:"+t[i]+"|"+t[a]+")";var l=n++;t[l]="(?:"+t[s]+"|"+t[a]+")";var p=n++;t[p]="(?:-("+t[u]+"(?:\\."+t[u]+")*))";var c=n++;t[c]="(?:-?("+t[l]+"(?:\\."+t[l]+")*))";var h=n++;t[h]="[0-9A-Za-z-]+";var v=n++;t[v]="(?:\\+("+t[h]+"(?:\\."+t[h]+")*))";var m=n++;var g="v?"+t[o]+t[p]+"?"+t[v]+"?";t[m]="^"+g+"$";var w="[v=\\s]*"+t[f]+t[c]+"?"+t[v]+"?";var d=n++;t[d]="^"+w+"$";var y=n++;t[y]="((?:<|>)?=?)";var j=n++;t[j]=t[s]+"|x|X|\\*";var b=n++;t[b]=t[i]+"|x|X|\\*";var $=n++;t[$]="[v=\\s]*("+t[b]+")"+"(?:\\.("+t[b]+")"+"(?:\\.("+t[b]+")"+"(?:"+t[p]+")?"+t[v]+"?"+")?)?";var k=n++;t[k]="[v=\\s]*("+t[j]+")"+"(?:\\.("+t[j]+")"+"(?:\\.("+t[j]+")"+"(?:"+t[c]+")?"+t[v]+"?"+")?)?";var E=n++;t[E]="^"+t[y]+"\\s*"+t[$]+"$";var x=n++;t[x]="^"+t[y]+"\\s*"+t[k]+"$";var R=n++;t[R]="(?:~>?)";var S=n++;t[S]="(\\s*)"+t[R]+"\\s+";r[S]=new RegExp(t[S],"g");var V="$1~";var I=n++;t[I]="^"+t[R]+t[$]+"$";var T=n++;t[T]="^"+t[R]+t[k]+"$";var A=n++;t[A]="(?:\\^)";var C=n++;t[C]="(\\s*)"+t[A]+"\\s+";r[C]=new RegExp(t[C],"g");var M="$1^";var z=n++;t[z]="^"+t[A]+t[$]+"$";var N=n++;t[N]="^"+t[A]+t[k]+"$";var P=n++;t[P]="^"+t[y]+"\\s*("+w+")$|^$";var Z=n++;t[Z]="^"+t[y]+"\\s*("+g+")$|^$";var q=n++;t[q]="(\\s*)"+t[y]+"\\s*("+w+"|"+t[$]+")";r[q]=new RegExp(t[q],"g");var L="$1$2$3";var X=n++;t[X]="^\\s*("+t[$]+")"+"\\s+-\\s+"+"("+t[$]+")"+"\\s*$";var _=n++;t[_]="^\\s*("+t[k]+")"+"\\s+-\\s+"+"("+t[k]+")"+"\\s*$";var O=n++;t[O]="(<|>)?=?\\s*\\*";for(var B=0;B'};H.prototype.toString=function(){return this.version};H.prototype.compare=function(e){if(!(e instanceof H))e=new H(e,this.loose);return this.compareMain(e)||this.comparePre(e)};H.prototype.compareMain=function(e){if(!(e instanceof H))e=new H(e,this.loose);return U(this.major,e.major)||U(this.minor,e.minor)||U(this.patch,e.patch)};H.prototype.comparePre=function(e){if(!(e instanceof H))e=new H(e,this.loose);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;var r=0;do{var t=this.prerelease[r];var n=e.prerelease[r];if(t===undefined&&n===undefined)return 0;else if(n===undefined)return 1;else if(t===undefined)return-1;else if(t===n)continue;else return U(t,n)}while(++r)};H.prototype.inc=function(e,r){switch(e){case"premajor":this.prerelease.length=0;this.patch=0;this.minor=0;this.major++;this.inc("pre",r);break;case"preminor":this.prerelease.length=0;this.patch=0;this.minor++;this.inc("pre",r);break;case"prepatch":this.prerelease.length=0;this.inc("patch",r);this.inc("pre",r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",r);this.inc("pre",r);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0;this.patch=0;this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0;this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{var t=this.prerelease.length;while(--t>=0){if(typeof this.prerelease[t]==="number"){this.prerelease[t]++;t=-2}}if(t===-1)this.prerelease.push(0)}if(r){if(this.prerelease[0]===r){if(isNaN(this.prerelease[1]))this.prerelease=[r,0]}else this.prerelease=[r,0]}break;default:throw new Error("invalid increment argument: "+e)}this.format();return this};e.inc=J;function J(e,r,t,n){if(typeof t==="string"){n=t;t=undefined}try{return new H(e,t).inc(r,n).version}catch(i){return null}}e.diff=K;function K(e,r){if(ar(e,r)){return null}else{var t=D(e);var n=D(r);if(t.prerelease.length||n.prerelease.length){for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return"pre"+i}}}return"prerelease"}for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return i}}}}}e.compareIdentifiers=U;var Q=/^[0-9]+$/;function U(e,r){var t=Q.test(e);var n=Q.test(r);if(t&&n){e=+e;r=+r}return t&&!n?-1:n&&!t?1:er?1:0}e.rcompareIdentifiers=W;function W(e,r){return U(r,e)}e.compare=Y;function Y(e,r,t){return new H(e,t).compare(r)}e.compareLoose=er;function er(e,r){return Y(e,r,true)}e.rcompare=rr;function rr(e,r,t){return Y(r,e,t)}e.sort=tr;function tr(r,t){return r.sort(function(r,n){return e.compare(r,n,t)})}e.rsort=nr;function nr(r,t){return r.sort(function(r,n){return e.rcompare(r,n,t)})}e.gt=ir;function ir(e,r,t){return Y(e,r,t)>0}e.lt=sr;function sr(e,r,t){return Y(e,r,t)<0}e.eq=ar;function ar(e,r,t){return Y(e,r,t)===0}e.neq=or;function or(e,r,t){return Y(e,r,t)!==0}e.gte=fr;function fr(e,r,t){return Y(e,r,t)>=0}e.lte=ur;function ur(e,r,t){return Y(e,r,t)<=0}e.cmp=lr;function lr(e,r,t,n){var i;switch(r){case"===":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e===t;break;case"!==":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e!==t;break;case"":case"=":case"==":i=ar(e,t,n);break;case"!=":i=or(e,t,n);break;case">":i=ir(e,t,n);break;case">=":i=fr(e,t,n);break;case"<":i=sr(e,t,n);break;case"<=":i=ur(e,t,n);break;default:throw new TypeError("Invalid operator: "+r)}return i}e.Comparator=pr;function pr(e,r){if(e instanceof pr){if(e.loose===r)return e;else e=e.value}if(!(this instanceof pr))return new pr(e,r);this.loose=r;this.parse(e);if(this.semver===cr)this.value="";else this.value=this.operator+this.semver.version}var cr={};pr.prototype.parse=function(e){var t=this.loose?r[P]:r[Z];var n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=n[1];if(this.operator==="=")this.operator="";if(!n[2])this.semver=cr;else this.semver=new H(n[2],this.loose)};pr.prototype.inspect=function(){return''};pr.prototype.toString=function(){return this.value};pr.prototype.test=function(e){if(this.semver===cr)return true;if(typeof e==="string")e=new H(e,this.loose);return lr(e,this.operator,this.semver,this.loose)};e.Range=hr;function hr(e,r){if(e instanceof hr&&e.loose===r)return e;if(!(this instanceof hr))return new hr(e,r);this.loose=r;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}hr.prototype.inspect=function(){return''};hr.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};hr.prototype.toString=function(){return this.range};hr.prototype.parseRange=function(e){var t=this.loose;e=e.trim();var n=t?r[_]:r[X];e=e.replace(n,Er);e=e.replace(r[q],L);e=e.replace(r[S],V);e=e.replace(r[C],M);e=e.split(/\s+/).join(" ");var i=t?r[P]:r[Z];var s=e.split(" ").map(function(e){return mr(e,t)}).join(" ").split(/\s+/);if(this.loose){s=s.filter(function(e){return!!e.match(i)})}s=s.map(function(e){return new pr(e,t)});return s};e.toComparators=vr;function vr(e,r){return new hr(e,r).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function mr(e,r){e=yr(e,r);e=wr(e,r);e=br(e,r);e=kr(e,r);return e}function gr(e){return!e||e.toLowerCase()==="x"||e==="*"}function wr(e,r){return e.trim().split(/\s+/).map(function(e){return dr(e,r)}).join(" ")}function dr(e,t){var n=t?r[T]:r[I];return e.replace(n,function(e,r,t,n,i){var s;if(gr(r))s="";else if(gr(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(gr(n))s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else if(i){if(i.charAt(0)!=="-")i="-"+i;s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0";return s})}function yr(e,r){return e.trim().split(/\s+/).map(function(e){return jr(e,r)}).join(" ")}function jr(e,t){var n=t?r[N]:r[z];return e.replace(n,function(e,r,t,n,i){var s;if(gr(r))s="";else if(gr(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(gr(n)){if(r==="0")s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else s=">="+r+"."+t+".0 <"+(+r+1)+".0.0"}else if(i){if(i.charAt(0)!=="-")i="-"+i;if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+i+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+i+" <"+(+r+1)+".0.0"}else{if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+(+r+1)+".0.0"}return s})}function br(e,r){return e.split(/\s+/).map(function(e){return $r(e,r)}).join(" ")}function $r(e,t){e=e.trim();var n=t?r[x]:r[E];return e.replace(n,function(e,r,t,n,i,s){var a=gr(t);var o=a||gr(n);var f=o||gr(i);var u=f;if(r==="="&&u)r="";if(a){if(r===">"||r==="<"){e="<0.0.0"}else{e="*"}}else if(r&&u){if(o)n=0;if(f)i=0;if(r===">"){r=">=";if(o){t=+t+1;n=0;i=0}else if(f){n=+n+1;i=0}}else if(r==="<="){r="<";if(o)t=+t+1;else n=+n+1}e=r+t+"."+n+"."+i}else if(o){e=">="+t+".0.0 <"+(+t+1)+".0.0"}else if(f){e=">="+t+"."+n+".0 <"+t+"."+(+n+1)+".0"}return e})}function kr(e,t){return e.trim().replace(r[O],"")}function Er(e,r,t,n,i,s,a,o,f,u,l,p,c){if(gr(t))r="";else if(gr(n))r=">="+t+".0.0";else if(gr(i))r=">="+t+"."+n+".0";else r=">="+r;if(gr(f))o="";else if(gr(u))o="<"+(+f+1)+".0.0";else if(gr(l))o="<"+f+"."+(+u+1)+".0";else if(p)o="<="+f+"."+u+"."+l+"-"+p;else o="<="+o;return(r+" "+o).trim()}hr.prototype.test=function(e){if(!e)return false;if(typeof e==="string")e=new H(e,this.loose);for(var r=0;r0){var n=e[t].semver;if(n.major===r.major&&n.minor===r.minor&&n.patch===r.patch)return true}}return false}return true}e.satisfies=Rr;function Rr(e,r,t){try{r=new hr(r,t)}catch(n){return false}return r.test(e)}e.maxSatisfying=Sr;function Sr(e,r,t){return e.filter(function(e){return Rr(e,r,t)}).sort(function(e,r){return rr(e,r,t)})[0]||null}e.validRange=Vr;function Vr(e,r){try{return new hr(e,r).range||"*"}catch(t){return null}}e.ltr=Ir;function Ir(e,r,t){return Ar(e,r,"<",t)}e.gtr=Tr;function Tr(e,r,t){return Ar(e,r,">",t)}e.outside=Ar;function Ar(e,r,t,n){e=new H(e,n);r=new hr(r,n);var i,s,a,o,f;switch(t){case">":i=ir;s=ur;a=sr;o=">";f=">=";break;case"<":i=sr;s=fr;a=ir;o="<";f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Rr(e,r,n)){return false}for(var u=0;u)?=?)";var j=n++;t[j]=t[s]+"|x|X|\\*";var b=n++;t[b]=t[i]+"|x|X|\\*";var $=n++;t[$]="[v=\\s]*("+t[b]+")"+"(?:\\.("+t[b]+")"+"(?:\\.("+t[b]+")"+"(?:"+t[p]+")?"+t[v]+"?"+")?)?";var k=n++;t[k]="[v=\\s]*("+t[j]+")"+"(?:\\.("+t[j]+")"+"(?:\\.("+t[j]+")"+"(?:"+t[c]+")?"+t[v]+"?"+")?)?";var E=n++;t[E]="^"+t[y]+"\\s*"+t[$]+"$";var x=n++;t[x]="^"+t[y]+"\\s*"+t[k]+"$";var R=n++;t[R]="(?:~>?)";var S=n++;t[S]="(\\s*)"+t[R]+"\\s+";r[S]=new RegExp(t[S],"g");var V="$1~";var I=n++;t[I]="^"+t[R]+t[$]+"$";var T=n++;t[T]="^"+t[R]+t[k]+"$";var A=n++;t[A]="(?:\\^)";var C=n++;t[C]="(\\s*)"+t[A]+"\\s+";r[C]=new RegExp(t[C],"g");var M="$1^";var z=n++;t[z]="^"+t[A]+t[$]+"$";var N=n++;t[N]="^"+t[A]+t[k]+"$";var P=n++;t[P]="^"+t[y]+"\\s*("+w+")$|^$";var Z=n++;t[Z]="^"+t[y]+"\\s*("+g+")$|^$";var q=n++;t[q]="(\\s*)"+t[y]+"\\s*("+w+"|"+t[$]+")";r[q]=new RegExp(t[q],"g");var L="$1$2$3";var X=n++;t[X]="^\\s*("+t[$]+")"+"\\s+-\\s+"+"("+t[$]+")"+"\\s*$";var _=n++;t[_]="^\\s*("+t[k]+")"+"\\s+-\\s+"+"("+t[k]+")"+"\\s*$";var O=n++;t[O]="(<|>)?=?\\s*\\*";for(var B=0;B'};H.prototype.toString=function(){return this.version};H.prototype.compare=function(e){if(!(e instanceof H))e=new H(e,this.loose);return this.compareMain(e)||this.comparePre(e)};H.prototype.compareMain=function(e){if(!(e instanceof H))e=new H(e,this.loose);return U(this.major,e.major)||U(this.minor,e.minor)||U(this.patch,e.patch)};H.prototype.comparePre=function(e){if(!(e instanceof H))e=new H(e,this.loose);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;var r=0;do{var t=this.prerelease[r];var n=e.prerelease[r];if(t===undefined&&n===undefined)return 0;else if(n===undefined)return 1;else if(t===undefined)return-1;else if(t===n)continue;else return U(t,n)}while(++r)};H.prototype.inc=function(e,r){switch(e){case"premajor":this.prerelease.length=0;this.patch=0;this.minor=0;this.major++;this.inc("pre",r);break;case"preminor":this.prerelease.length=0;this.patch=0;this.minor++;this.inc("pre",r);break;case"prepatch":this.prerelease.length=0;this.inc("patch",r);this.inc("pre",r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",r);this.inc("pre",r);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0;this.patch=0;this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0;this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{var t=this.prerelease.length;while(--t>=0){if(typeof this.prerelease[t]==="number"){this.prerelease[t]++;t=-2}}if(t===-1)this.prerelease.push(0)}if(r){if(this.prerelease[0]===r){if(isNaN(this.prerelease[1]))this.prerelease=[r,0]}else this.prerelease=[r,0]}break;default:throw new Error("invalid increment argument: "+e)}this.format();return this};e.inc=J;function J(e,r,t,n){if(typeof t==="string"){n=t;t=undefined}try{return new H(e,t).inc(r,n).version}catch(i){return null}}e.diff=K;function K(e,r){if(ur(e,r)){return null}else{var t=D(e);var n=D(r);if(t.prerelease.length||n.prerelease.length){for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return"pre"+i}}}return"prerelease"}for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return i}}}}}e.compareIdentifiers=U;var Q=/^[0-9]+$/;function U(e,r){var t=Q.test(e);var n=Q.test(r);if(t&&n){e=+e;r=+r}return t&&!n?-1:n&&!t?1:er?1:0}e.rcompareIdentifiers=W;function W(e,r){return U(r,e)}e.major=Y;function Y(e,r){return new H(e,r).major}e.minor=er;function er(e,r){return new H(e,r).minor}e.patch=rr;function rr(e,r){return new H(e,r).patch}e.compare=tr;function tr(e,r,t){return new H(e,t).compare(r)}e.compareLoose=nr;function nr(e,r){return tr(e,r,true)}e.rcompare=ir;function ir(e,r,t){return tr(r,e,t)}e.sort=sr;function sr(r,t){return r.sort(function(r,n){return e.compare(r,n,t)})}e.rsort=ar;function ar(r,t){return r.sort(function(r,n){return e.rcompare(r,n,t)})}e.gt=or;function or(e,r,t){return tr(e,r,t)>0}e.lt=fr;function fr(e,r,t){return tr(e,r,t)<0}e.eq=ur;function ur(e,r,t){return tr(e,r,t)===0}e.neq=lr;function lr(e,r,t){return tr(e,r,t)!==0}e.gte=pr;function pr(e,r,t){return tr(e,r,t)>=0}e.lte=cr;function cr(e,r,t){return tr(e,r,t)<=0}e.cmp=hr;function hr(e,r,t,n){var i;switch(r){case"===":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e===t;break;case"!==":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e!==t;break;case"":case"=":case"==":i=ur(e,t,n);break;case"!=":i=lr(e,t,n);break;case">":i=or(e,t,n);break;case">=":i=pr(e,t,n);break;case"<":i=fr(e,t,n);break;case"<=":i=cr(e,t,n);break;default:throw new TypeError("Invalid operator: "+r)}return i}e.Comparator=vr;function vr(e,r){if(e instanceof vr){if(e.loose===r)return e;else e=e.value}if(!(this instanceof vr))return new vr(e,r);this.loose=r;this.parse(e);if(this.semver===mr)this.value="";else this.value=this.operator+this.semver.version}var mr={};vr.prototype.parse=function(e){var t=this.loose?r[P]:r[Z];var n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=n[1];if(this.operator==="=")this.operator="";if(!n[2])this.semver=mr;else this.semver=new H(n[2],this.loose)};vr.prototype.inspect=function(){return''};vr.prototype.toString=function(){return this.value};vr.prototype.test=function(e){if(this.semver===mr)return true;if(typeof e==="string")e=new H(e,this.loose);return hr(e,this.operator,this.semver,this.loose)};e.Range=gr;function gr(e,r){if(e instanceof gr&&e.loose===r)return e;if(!(this instanceof gr))return new gr(e,r);this.loose=r;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}gr.prototype.inspect=function(){return''};gr.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};gr.prototype.toString=function(){return this.range};gr.prototype.parseRange=function(e){var t=this.loose;e=e.trim();var n=t?r[_]:r[X];e=e.replace(n,Sr);e=e.replace(r[q],L);e=e.replace(r[S],V);e=e.replace(r[C],M);e=e.split(/\s+/).join(" ");var i=t?r[P]:r[Z];var s=e.split(" ").map(function(e){return dr(e,t)}).join(" ").split(/\s+/);if(this.loose){s=s.filter(function(e){return!!e.match(i)})}s=s.map(function(e){return new vr(e,t)});return s};e.toComparators=wr;function wr(e,r){return new gr(e,r).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function dr(e,r){e=$r(e,r);e=jr(e,r);e=Er(e,r);e=Rr(e,r);return e}function yr(e){return!e||e.toLowerCase()==="x"||e==="*"}function jr(e,r){return e.trim().split(/\s+/).map(function(e){return br(e,r)}).join(" ")}function br(e,t){var n=t?r[T]:r[I];return e.replace(n,function(e,r,t,n,i){var s;if(yr(r))s="";else if(yr(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(yr(n))s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else if(i){if(i.charAt(0)!=="-")i="-"+i;s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0";return s})}function $r(e,r){return e.trim().split(/\s+/).map(function(e){return kr(e,r)}).join(" ")}function kr(e,t){var n=t?r[N]:r[z];return e.replace(n,function(e,r,t,n,i){var s;if(yr(r))s="";else if(yr(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(yr(n)){if(r==="0")s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else s=">="+r+"."+t+".0 <"+(+r+1)+".0.0"}else if(i){if(i.charAt(0)!=="-")i="-"+i;if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+i+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+i+" <"+(+r+1)+".0.0"}else{if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+(+r+1)+".0.0"}return s})}function Er(e,r){return e.split(/\s+/).map(function(e){return xr(e,r)}).join(" ")}function xr(e,t){e=e.trim();var n=t?r[x]:r[E];return e.replace(n,function(e,r,t,n,i,s){var a=yr(t);var o=a||yr(n);var f=o||yr(i);var u=f;if(r==="="&&u)r="";if(a){if(r===">"||r==="<"){e="<0.0.0"}else{e="*"}}else if(r&&u){if(o)n=0;if(f)i=0;if(r===">"){r=">=";if(o){t=+t+1;n=0;i=0}else if(f){n=+n+1;i=0}}else if(r==="<="){r="<";if(o)t=+t+1;else n=+n+1}e=r+t+"."+n+"."+i}else if(o){e=">="+t+".0.0 <"+(+t+1)+".0.0"}else if(f){e=">="+t+"."+n+".0 <"+t+"."+(+n+1)+".0"}return e})}function Rr(e,t){return e.trim().replace(r[O],"")}function Sr(e,r,t,n,i,s,a,o,f,u,l,p,c){if(yr(t))r="";else if(yr(n))r=">="+t+".0.0";else if(yr(i))r=">="+t+"."+n+".0";else r=">="+r;if(yr(f))o="";else if(yr(u))o="<"+(+f+1)+".0.0";else if(yr(l))o="<"+f+"."+(+u+1)+".0";else if(p)o="<="+f+"."+u+"."+l+"-"+p;else o="<="+o;return(r+" "+o).trim()}gr.prototype.test=function(e){if(!e)return false;if(typeof e==="string")e=new H(e,this.loose);for(var r=0;r0){var n=e[t].semver;if(n.major===r.major&&n.minor===r.minor&&n.patch===r.patch)return true}}return false}return true}e.satisfies=Ir;function Ir(e,r,t){try{r=new gr(r,t)}catch(n){return false}return r.test(e)}e.maxSatisfying=Tr;function Tr(e,r,t){return e.filter(function(e){return Ir(e,r,t)}).sort(function(e,r){return ir(e,r,t)})[0]||null}e.validRange=Ar;function Ar(e,r){try{return new gr(e,r).range||"*"}catch(t){return null}}e.ltr=Cr;function Cr(e,r,t){return zr(e,r,"<",t)}e.gtr=Mr;function Mr(e,r,t){return zr(e,r,">",t)}e.outside=zr;function zr(e,r,t,n){e=new H(e,n);r=new gr(r,n);var i,s,a,o,f;switch(t){case">":i=or;s=cr;a=fr;o=">";f=">=";break;case"<":i=fr;s=pr;a=or;o="<";f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ir(e,r,n)){return false}for(var u=0;u
* index.js: initial rev
+
diff --git a/deps/npm/node_modules/umask/LICENSE b/deps/npm/node_modules/umask/LICENSE
index c3d2eb3550..e637724b3b 100644
--- a/deps/npm/node_modules/umask/LICENSE
+++ b/deps/npm/node_modules/umask/LICENSE
@@ -19,3 +19,4 @@ 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/umask/index.js b/deps/npm/node_modules/umask/index.js
index 724544c072..501c0e0c05 100644
--- a/deps/npm/node_modules/umask/index.js
+++ b/deps/npm/node_modules/umask/index.js
@@ -74,3 +74,4 @@ function fromString(val, cb) {
exports.toString = toString;
exports.fromString = fromString;
exports.validate = validate;
+
diff --git a/deps/npm/package.json b/deps/npm/package.json
index 07b74e0960..f6ed8a7389 100644
--- a/deps/npm/package.json
+++ b/deps/npm/package.json
@@ -1,5 +1,5 @@
{
- "version": "2.5.1",
+ "version": "2.6.0",
"name": "npm",
"description": "a package manager for JavaScript",
"keywords": [
@@ -57,7 +57,7 @@
"graceful-fs": "~3.0.5",
"inflight": "~1.0.4",
"inherits": "~2.0.1",
- "ini": "~1.3.2",
+ "ini": "~1.3.3",
"init-package-json": "~1.2.0",
"lockfile": "~1.0.0",
"lru-cache": "~2.5.0",
@@ -70,7 +70,7 @@
"npm-cache-filename": "~1.0.1",
"npm-install-checks": "~1.0.5",
"npm-package-arg": "~2.1.3",
- "npm-registry-client": "~6.0.7",
+ "npm-registry-client": "~6.1.1",
"npm-user-validate": "~0.1.1",
"npmlog": "~0.1.1",
"once": "~1.3.1",
@@ -79,13 +79,13 @@
"path-is-inside": "~1.0.0",
"read": "~1.0.4",
"read-installed": "~3.1.5",
- "read-package-json": "~1.2.7",
+ "read-package-json": "~1.3.1",
"readable-stream": "~1.0.33",
"realize-package-specifier": "~1.3.0",
"request": "~2.53.0",
"retry": "~0.6.1",
"rimraf": "~2.2.8",
- "semver": "~4.2.0",
+ "semver": "~4.3.0",
"sha": "~1.3.0",
"slide": "~1.1.6",
"sorted-object": "~1.0.0",
@@ -171,7 +171,8 @@
"npm-registry-couchapp": "~2.6.2",
"npm-registry-mock": "~1.0.0",
"require-inject": "~1.1.0",
- "tap": "~0.5.0"
+ "sprintf-js": "~1.0.2",
+ "tap": "~0.6.0"
},
"scripts": {
"test-legacy": "node ./test/run.js",
diff --git a/deps/npm/test/common-tap.js b/deps/npm/test/common-tap.js
index 7dcfc35cc8..4036708286 100644
--- a/deps/npm/test/common-tap.js
+++ b/deps/npm/test/common-tap.js
@@ -18,7 +18,7 @@ exports.npm = function (cmd, opts, cb) {
cmd = [bin].concat(cmd)
opts = opts || {}
- opts.env = opts.env ? opts.env : process.env
+ opts.env = opts.env || process.env
if (!opts.env.npm_config_cache) {
opts.env.npm_config_cache = npm_config_cache
}
diff --git a/deps/npm/test/fixtures/config/userconfig-with-gc b/deps/npm/test/fixtures/config/userconfig-with-gc
index 3e5d605f4e..7268fcb3c6 100644
--- a/deps/npm/test/fixtures/config/userconfig-with-gc
+++ b/deps/npm/test/fixtures/config/userconfig-with-gc
@@ -12,7 +12,7 @@ npm-www:nocache=1
sign-git-tag=false
message=v%s
strict-ssl=false
-_auth=dXNlcm5hbWU6cGFzc3dvcmQ=
+_auth="dXNlcm5hbWU6cGFzc3dvcmQ="
[_token]
AuthSession=yabba-dabba-doodle
diff --git a/deps/npm/test/tap/add-remote-git-fake-windows.js b/deps/npm/test/tap/add-remote-git-fake-windows.js
index 5de7cff7d0..3052477927 100644
--- a/deps/npm/test/tap/add-remote-git-fake-windows.js
+++ b/deps/npm/test/tap/add-remote-git-fake-windows.js
@@ -20,7 +20,9 @@ var git
test("setup", function (t) {
bootstrap()
setup(function (er, r) {
- t.ifError(er, "git started up successfully")
+ if (er) {
+ throw er
+ }
if (!er) {
daemon = r[r.length - 2]
@@ -66,11 +68,13 @@ var pjChild = JSON.stringify({
}, null, 2) + "\n"
function bootstrap () {
+ rimraf.sync(pkg)
mkdirp.sync(pkg)
fs.writeFileSync(resolve(pkg, "package.json"), pjParent)
}
function setup (cb) {
+ rimraf.sync(repo)
mkdirp.sync(repo)
fs.writeFileSync(resolve(repo, "package.json"), pjChild)
npm.load({ registry : common.registry, loglevel : "silent" }, function () {
diff --git a/deps/npm/test/tap/config-credentials.js b/deps/npm/test/tap/config-credentials.js
index c24bb7e1b2..1cb2a7eb41 100644
--- a/deps/npm/test/tap/config-credentials.js
+++ b/deps/npm/test/tap/config-credentials.js
@@ -28,6 +28,18 @@ test("trying to set credentials with no URI", function (t) {
})
})
+test("trying to clear credentials with no URI", function (t) {
+ npmconf.load(common.builtin, function (er, conf) {
+ t.ifError(er, "configuration loaded")
+
+ t.throws(function () {
+ conf.clearCredentialsByURI()
+ }, "enforced missing URI")
+
+ t.end()
+ })
+})
+
test("set with missing credentials object", function (t) {
npmconf.load(common.builtin, function (er, conf) {
t.ifError(er, "configuration loaded")
@@ -76,6 +88,24 @@ test("set with token", function (t) {
})
})
+test("clear with token", function (t) {
+ npmconf.load(common.builtin, function (er, conf) {
+ t.ifError(er, "configuration loaded")
+
+ t.doesNotThrow(function () {
+ conf.setCredentialsByURI(URI, {token : "simple-token"})
+ }, "needs only token")
+
+ t.doesNotThrow(function () {
+ conf.clearCredentialsByURI(URI)
+ }, "needs only URI")
+
+ t.notOk(conf.getCredentialsByURI(URI).token, "token all gone")
+
+ t.end()
+ })
+})
+
test("set with missing username", function (t) {
npmconf.load(common.builtin, function (er, conf) {
t.ifError(er, "configuration loaded")
@@ -157,6 +187,31 @@ test("set with old-style credentials", function (t) {
})
})
+test("clear with old-style credentials", function (t) {
+ npmconf.load(common.builtin, function (er, conf) {
+ t.ifError(er, "configuration loaded")
+
+ var credentials = {
+ username : "username",
+ password : "password",
+ email : "ogd@aoaioxxysz.net"
+ }
+
+ t.doesNotThrow(function () {
+ conf.setCredentialsByURI(URI, credentials)
+ }, "requires all of username, password, and email")
+
+ t.doesNotThrow(function () {
+ conf.clearCredentialsByURI(URI)
+ }, "clearing only required URI")
+
+ t.notOk(conf.getCredentialsByURI(URI).username, "username cleared")
+ t.notOk(conf.getCredentialsByURI(URI).password, "password cleared")
+
+ t.end()
+ })
+})
+
test("get old-style credentials for default registry", function (t) {
npmconf.load(common.builtin, function (er, conf) {
var actual = conf.getCredentialsByURI(conf.get("registry"))
diff --git a/deps/npm/test/tap/config-edit.js b/deps/npm/test/tap/config-edit.js
new file mode 100644
index 0000000000..97a54d2ece
--- /dev/null
+++ b/deps/npm/test/tap/config-edit.js
@@ -0,0 +1,72 @@
+var fs = require("fs")
+var path = require("path")
+
+var mkdirp = require("mkdirp")
+var rimraf = require("rimraf")
+var test = require("tap").test
+var common = require("../common-tap.js")
+
+var pkg = path.resolve(__dirname, "npm-global-edit")
+
+var editorSrc = function () {/*
+#!/usr/bin/env node
+var fs = require("fs")
+if (fs.existsSync(process.argv[2])) {
+ console.log("success")
+} else {
+ console.log("error")
+ process.exit(1)
+}
+*/}.toString().split("\n").slice(1, -1).join("\n")
+var editorPath = path.join(pkg, "editor")
+
+test("setup", function (t) {
+ cleanup(function (er) {
+ t.ifError(er, "old directory removed")
+
+ mkdirp(pkg, "0777", function (er) {
+ fs.writeFileSync(editorPath, editorSrc)
+ fs.chmodSync(editorPath, "0777")
+ t.ifError(er, "created package directory correctly")
+ t.end()
+ })
+ })
+})
+
+test("saving configs", function (t) {
+ var opts = {
+ cwd: pkg,
+ env: {
+ PATH: process.env.PATH,
+ EDITOR: editorPath
+ }
+ }
+ common.npm(
+ [
+ "config",
+ "--prefix", pkg,
+ "--global",
+ "edit"
+ ],
+ opts,
+ function (err, code, stdout, stderr) {
+ t.ifError(err, "command ran without issue")
+
+ t.equal(stderr, "", "got nothing on stderr")
+ t.equal(code, 0, "exit ok")
+ t.equal(stdout, "success\n", "got success message")
+ t.end()
+ }
+ )
+})
+
+test("cleanup", function (t) {
+ cleanup(function (er) {
+ t.ifError(er, "test directory removed OK")
+ t.end()
+ })
+})
+
+function cleanup (cb) {
+ rimraf(pkg, cb)
+}
diff --git a/deps/npm/test/tap/install-man.js b/deps/npm/test/tap/install-man.js
new file mode 100644
index 0000000000..70879d81f1
--- /dev/null
+++ b/deps/npm/test/tap/install-man.js
@@ -0,0 +1,75 @@
+var fs = require("fs")
+var resolve = require("path").resolve
+
+var osenv = require("osenv")
+var mkdirp = require("mkdirp")
+var rimraf = require("rimraf")
+var test = require("tap").test
+
+var common = require("../common-tap.js")
+
+var pkg = resolve(__dirname, "install-man")
+var target = resolve(__dirname, "install-man-target")
+
+var EXEC_OPTS = {
+ cwd: target
+}
+
+test("setup", function (t) {
+ setup()
+ t.pass("setup ran")
+ t.end()
+})
+
+test("install man page", function (t) {
+ common.npm(
+ [
+ "install",
+ "--prefix", target,
+ "--global",
+ pkg
+ ],
+ EXEC_OPTS,
+ function (err, code, stdout, stderr) {
+ t.ifError(err, "npm command ran from test")
+ t.equals(code, 0, "install exited with success (0)")
+ t.ok(stdout, "output indicating success")
+ t.ok(
+ fs.existsSync(resolve(target, "share", "man", "man1", "install-man.1")),
+ "man page link was created"
+ )
+
+ t.end()
+ }
+ )
+})
+
+test("clean", function (t) {
+ cleanup()
+ t.pass("cleaned up")
+ t.end()
+})
+
+var json = {
+ name : "install-man",
+ version : "1.2.3",
+ man : [ "./install-man.1" ]
+}
+
+function setup () {
+ cleanup()
+ mkdirp.sync(pkg)
+ // make sure it installs locally
+ mkdirp.sync(resolve(target, "node_modules"))
+ fs.writeFileSync(
+ resolve(pkg, "package.json"),
+ JSON.stringify(json, null, 2)+"\n"
+ )
+ fs.writeFileSync(resolve(pkg, "install-man.1"), "THIS IS A MANPAGE\n")
+}
+
+function cleanup () {
+ process.chdir(osenv.tmpdir())
+ rimraf.sync(pkg)
+ rimraf.sync(target)
+}
diff --git a/deps/npm/test/tap/logout.js b/deps/npm/test/tap/logout.js
new file mode 100644
index 0000000000..1d9392ad16
--- /dev/null
+++ b/deps/npm/test/tap/logout.js
@@ -0,0 +1,67 @@
+var fs = require("fs")
+var path = require("path")
+
+var mkdirp = require("mkdirp")
+var mr = require("npm-registry-mock")
+var rimraf = require("rimraf")
+var test = require("tap").test
+
+var common = require("../common-tap.js")
+
+var pkg = path.resolve(__dirname, "logout")
+var outfile = path.join(pkg, "_npmrc")
+var opts = { cwd: pkg }
+
+var contents = function () {/*
+foo=boo
+//localhost:1337/:_authToken=glarb
+*/}.toString().split("\n").slice(1, -1).join("\n")
+
+function mocks (server) {
+ server.delete("/-/user/token/glarb")
+ .reply(200, {})
+}
+
+test("setup", function (t) {
+ cleanup()
+ setup()
+ t.end()
+})
+
+test("npm logout", function (t) {
+ mr({ port: common.port, plugin: mocks }, function (err, s) {
+ if (err) throw err
+
+ common.npm(
+ [
+ "logout",
+ "--registry", common.registry,
+ "--loglevel", "silent",
+ "--userconfig", outfile
+ ],
+ opts,
+ function (err, code) {
+ t.ifError(err, "no error output")
+ t.notOk(code, "exited OK")
+
+ var config = fs.readFileSync(outfile, "utf8")
+ t.equal(config, "foo=boo\n", "creds gone")
+ s.close()
+ t.end()
+ })
+ })
+})
+
+test("cleanup", function (t) {
+ cleanup()
+ t.end()
+})
+
+function setup () {
+ mkdirp.sync(pkg)
+ fs.writeFileSync(outfile, contents)
+}
+
+function cleanup () {
+ rimraf.sync(pkg)
+}
diff --git a/deps/npm/test/tap/umask-lifecycle.js b/deps/npm/test/tap/umask-lifecycle.js
index a40eae44be..e4f91a2df6 100644
--- a/deps/npm/test/tap/umask-lifecycle.js
+++ b/deps/npm/test/tap/umask-lifecycle.js
@@ -3,6 +3,7 @@ var test = require("tap").test
var fs = require("fs")
var rimraf = require("rimraf")
var mkdirp = require("mkdirp")
+var sprintf = require("sprintf-js").sprintf
var common = require("../common-tap.js")
var pkg = path.resolve(__dirname, "umask-lifecycle")
@@ -12,14 +13,15 @@ var pj = JSON.stringify({
scripts: { umask: "$npm_execpath config get umask && echo \"$npm_config_umask\" && node -p 'process.umask()'" }
}, null, 2) + "\n"
+var umask = process.umask()
var expected = [
"",
"> x@1.2.3 umask "+path.join(__dirname, "umask-lifecycle"),
"> $npm_execpath config get umask && echo \"$npm_config_umask\" && node -p 'process.umask()'",
"",
- "0022",
- "0022",
- "18",
+ sprintf("%04o", umask),
+ sprintf("%04o", umask),
+ sprintf("%d", umask),
""
].join("\n")
@@ -32,7 +34,6 @@ test("setup", function (t) {
test("umask script", function (t) {
common.npm(["run", "umask"], {
- umask: 0022,
cwd: pkg,
env: {
PATH: process.env.PATH,
diff --git a/deps/npm/test/tap/version-git-not-clean.js b/deps/npm/test/tap/version-git-not-clean.js
index efca362407..1deae49f92 100644
--- a/deps/npm/test/tap/version-git-not-clean.js
+++ b/deps/npm/test/tap/version-git-not-clean.js
@@ -55,7 +55,8 @@ test("npm version with working directory not clean", function (t) {
t.fail("should fail on non-clean working directory")
}
else {
- t.equal(err.message, "Git working directory not clean.\nM package.json")
+ t.ok(err.message.match(/Git working directory not clean./))
+ t.ok(err.message.match(/M package.json/))
}
t.end()
})