Skip to content

Commit

Permalink
deps: upgrade to npm 2.14.16
Browse files Browse the repository at this point in the history
PR-URL: #4960
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
  • Loading branch information
zkat committed Feb 1, 2016
1 parent fcb8cae commit fc446ba
Show file tree
Hide file tree
Showing 160 changed files with 996 additions and 705 deletions.
3 changes: 2 additions & 1 deletion deps/npm/.travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
language: node_js
sudo: false
node_js:
- "5"
- "4"
Expand All @@ -11,7 +12,7 @@ env:
before_install:
- "npm config set spin false"
- "npm install -g npm/npm#2.x"
- "sudo mkdir -p /var/run/couchdb"
- "mkdir -p /var/run/couchdb"
script: "npm run-script test-all"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
9 changes: 9 additions & 0 deletions deps/npm/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -329,3 +329,12 @@ ekmartin <mail@ekmartin.com>
Rafał Pocztarski <r.pocztarski@gmail.com>
Ashley Williams <ashley666ashley@gmail.com>
Mark Reeder <mreeder@uber.com>
Tiago Rodrigues <tmcrodrigues@gmail.com>
Chris Rebert <github@chrisrebert.com>
Jeff McMahan <jeffrey.lee.mcmahan@gmail.com>
Scott Addie <tobias.addie@gmail.com>
Julian Simioni <julian@simioni.org>
Jimb Esser <jimb@yahoo-inc.com>
Hal Henke <halhenke@gmail.com>
Alexis Campailla <alexis@janeasystems.com>
Beau Gunderson <beau@beaugunderson.com>
121 changes: 121 additions & 0 deletions deps/npm/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,124 @@
### v2.14.16 (2016-01-21):

Good to see you all again! It's been a while since we had an LTS release, and
the team continues to work hard to both get the issue tracker under control, and
get our test suite to be awesome and reliable.

This is also the first LTS release of this year.

We're gonna have an interesting time -- most of our focus this year will be
around stability and maintainability of the CLI, so you might actually end up
seeing a number of updates even over here, just for the sake of making sure
we're stable, that bugs get fixed, and tests have proper coverage.

What better way to start this effort, then, than getting Travis tests green, fix
a few things here and there, and tweak a bunch of documentation? 😁

#### FIX ALL THE BUGS AND TWEAK ALL THE THINGS

* [`24b13fb`](https://github.com/npm/npm/commit/24b13fbc57d34db1d5b0a37bcca122c00deba978)
[#11158](https://github.com/npm/npm/pull/11158)
Fix custom node-gyp env var quoting on Windows.
([@orangemocha](https://github.com/orangemocha))
* [`e2503f2`](https://github.com/npm/npm/commit/e2503f2be40157b05a9c500ec3b5d16090ffee50)
[#11142](https://github.com/npm/npm/pull/11142)
Fix race condition with `correctMkdir` in the cache directory.
([@Jimbly](https://github.com/Jimbly))

* [`5c0e4c4`](https://github.com/npm/npm/commit/5c0e4c45a29d774ab729e86044377d4e5e424252)
[#10940](https://github.com/npm/npm/pull/10940)
Ignore failures replacing `package.json`. writeFileAtomic is not atomic in
Windows, it fails if the file is being accessed concurrently.
([@orangemocha](https://github.com/orangemocha))
* [`2c44d8d`](https://github.com/npm/npm/commit/2c44d8dc8c267d5e054d0175ce2f4750f0986463)
[#10903](https://github.com/npm/npm/pull/10903)
Add tests for `npm adduser --scope`.
([@ekmartin](https://github.com/ekmartin))
* [`4cb25d0`](https://github.com/npm/npm/commit/4cb25d0fed5c7792dfd1aec891380ecc1f8a5761)
[#10903](https://github.com/npm/npm/pull/10903)
Add a message informing users when they have been successfully logged in.
([@ekmartin](https://github.com/ekmartin))
* [`fe3ec6d`](https://github.com/npm/npm/commit/fe3ec6d6658262054c0c19c55373c21e84ab9f17)
[#10628](https://github.com/npm/npm/pull/10628)
Tell users how to open an issue with a package that has errored.
([@trodrigues](https://github.com/trodrigues))

#### DOCS DOCS DOCS

We got a TON of lovely documentation patches, too! Thanks all for submitting!

* [`22482a1`](https://github.com/npm/npm/commit/22482a1f22079d72c3f8ca55c2f0c153bdd024c0)
[#11188](https://github.com/npm/npm/pull/11188)
Briefly explain what's included when you publish.
([@beaugunderson](https://github.com/beaugunderson))
* [`fa47724`](https://github.com/npm/npm/commit/fa4772438df0c66a19309dd1c1a3ce43cbee5461)
[#11150](https://github.com/npm/npm/pull/11150)
Advise use of `--depth Infinity` instead of `--depth 9999` in `npm update`.
([@halhenke](https://github.com/halhenke))
* [`248ddfe`](https://github.com/npm/npm/commit/248ddfe8f7ddd3318e14bf61de41cab4a638c8a3)
[#11130](https://github.com/npm/npm/pull/11130)
Nuke "using npm programmatically" section from README. The programmatic npm
API is unsupported, and is not guaranteed not to break in non-major versions.
Removing this section so newcomers aren't encouraged to discover or use it.
([@ljharb](https://github.com/ljharb))
* [`ae9c452`](https://github.com/npm/npm/commit/ae9c4521222d60ab4a69c19fee5e361c62f41fae)
[#11128](https://github.com/npm/npm/pull/11128)
Add link to local paths section indocs for `package.json`.
([@orangejulius](https://github.com/orangejulius))
* [`663a8c6`](https://github.com/npm/npm/commit/663a8c6b4b1647f9b86c15ef32e30023edc8c060)
[#11044](https://github.com/npm/npm/pull/11044)
Update default value documentation for the color option in npm's config.
([@scottaddie](https://github.com/scottaddie))
* [`5c1dda0`](https://github.com/npm/npm/commit/5c1dda0d3a18b2954872dba33fbc696ff0700ffe)
[#11037](https://github.com/npm/npm/pull/11037)
Correct the name property max length constraint verbiage.
([@scottaddie](https://github.com/scottaddie))
* [`8288365`](https://github.com/npm/npm/commit/8288365d08e97fa3a5b0d31703c015a8be49e07f)
[#10990](https://github.com/npm/npm/pull/10990)
Update folder docs to reflect that process.installPrefix was removed as of
0.8.x.
([@jeffmcmahan](https://github.com/jeffmcmahan))
* [`61d63fa`](https://github.com/npm/npm/commit/61d63fa22c4f09742180c2de460a4ffb6c32738e)
[#10790](https://github.com/npm/npm/pull/10790)
Clarify that `npm install foo` is the same as `npm install foo@latest` now.
([@cvrebert](https://github.com/cvrebert))
* [`442c920`](https://github.com/npm/npm/commit/442c9207f375354c91d36df8711ba2d33e1c97f3)
[#10789](https://github.com/npm/npm/pull/10789)
Link over to `npm-dist-tag(1)` in `npm install` docs when they talk about the
`pkg@<tag>` syntax.
([@cvrebert](https://github.com/cvrebert))
* [`dca7a5e`](https://github.com/npm/npm/commit/dca7a5e2be3bfa306a870a123707d35c732406c0)
[#10788](https://github.com/npm/npm/pull/10788)
Link to tag docs in docs for `npm publish --tag`.
([@cvrebert](https://github.com/cvrebert))
* [`a72904e`](https://github.com/npm/npm/commit/a72904e8d4ab1d43ae8150fbe3f6468b0cbb1efd)
[#10787](https://github.com/npm/npm/pull/10787)
Explain why the `latest` tag matters.
([@cvrebert](https://github.com/cvrebert))
* [`9d0697a`](https://github.com/npm/npm/commit/9d0697a534046df7efda32170014041bbc1f4e7d)
[#10785](https://github.com/npm/npm/pull/10785)
Replace some quite marks in `npm dist-tag` docs for the sake of consistency.
([@cvrebert](https://github.com/cvrebert))

#### I REALLY LIKE GREEN. CAN YOU TELL?

So Travis is all green now on `npm@2`, thanks to the removal of nock and a few
other test suite tweaks. This is a fantastic step towards making sure we can all
have confidence in our test suite! 🎉

* [`64995be`](https://github.com/npm/npm/commit/64995be6d874356b15c136f9867302d805dfe1e9) [`75ab216`](https://github.com/npm/npm/commit/75ab2164cf79e28ac7f7ebe714f3c5aee99c6626) [`a9f6fe9`](https://github.com/npm/npm/commit/a9f6fe9dc558f17c4a7b9eb83329ac080f7df4b7) [`649c193`](https://github.com/npm/npm/commit/649c193adadf714c2819837f9372a29d724a5ec0) [`94cb05e`](https://github.com/npm/npm/commit/94cb05eaa9e5ad6675cf15c4ac0a44fbdde05900) [`6541690`](https://github.com/npm/npm/commit/65416907008061ac5a5f66b1630a57776803b526) [`255be6f`](https://github.com/npm/npm/commit/255be6f5bca9e3d216f3a5cbdf6714c6c9fcf132) [`9e84fa4`](https://github.com/npm/npm/commit/9e84fa43c49d04cf86ca1678e2a61412f5559cb9) [`8a587b0`](https://github.com/npm/npm/commit/8a587b0c1696ae7302891fa6355fc3e8670e00d3) [`bf812a5`](https://github.com/npm/npm/commit/bf812a54e497a573493346399798aa0b9373ac24)
[#10903](https://github.com/npm/npm/pull/10903)
Get rid of nock from tests, and get Travis green.
([@zkat](https://github.com/zkat) and [@iarna](https://github.com/iarna))
* [`70a5310`](https://github.com/npm/npm/commit/70a5310712c6666e753ca8f3bfff4a780ec6292d)
`npm-registry-couchapp@2.6.12`:
Better 0.8 compatibility, and ability to run in travis docker stuff. This
means the test suite should run a lot faster, too!
([@iarna](https://github.com/iarna))
* [`28fae39`](https://github.com/npm/npm/commit/28fae399212eda5554e6c0ffd8c9591144ab7b9d)
Get rid of sudo, for Travis!
([@zkat](https://github.com/zkat))

### v2.14.15 (2015-12-10):

Did you know that Bob Ross reached the rank of master sergeant in the US Air
Expand Down
46 changes: 0 additions & 46 deletions deps/npm/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,52 +138,6 @@ must remove them yourself manually if you want them gone. Note that
this means that future npm installs will not remember the settings that
you have chosen.

## Using npm Programmatically

Although npm can be used programmatically, its API is meant for use by the CLI
*only*, and no guarantees are made regarding its fitness for any other purpose.
If you want to use npm to reliably perform some task, the safest thing to do is
to invoke the desired `npm` command with appropriate arguments.

The semantic version of npm refers to the CLI itself, rather than the
underlying API. _The internal API is not guaranteed to remain stable even when
npm's version indicates no breaking changes have been made according to
semver._

If you _still_ would like to use npm programmatically, it's _possible_. The API
isn't very well documented, but it _is_ rather simple.

Eventually, npm will be just a thin CLI wrapper around the modules that it
depends on, but for now, there are some things that only the CLI can do. You
should try using one of npm's dependencies first, and only use the API if what
you're trying to do is only supported by npm itself.

```javascript
var npm = require("npm")
npm.load(myConfigObject, function (er) {
if (er) return handlError(er)
npm.commands.install(["some", "args"], function (er, data) {
if (er) return commandFailed(er)
// command succeeded, and data might have some info
})
npm.registry.log.on("log", function (message) { .... })
})
```

The `load` function takes an object hash of the command-line configs.
The various `npm.commands.<cmd>` functions take an **array** of
positional argument **strings**. The last argument to any
`npm.commands.<cmd>` function is a callback. Some commands take other
optional arguments. Read the source.

You cannot set configs individually for any single npm function at this
time. Since `npm` is a singleton, any call to `npm.config.set` will
change the value for *all* npm commands in that process.

See `./bin/npm-cli.js` for an example of pulling config values off of the
command line arguments using nopt. You may also want to check out `npm
help config` to learn about all the options you can set there.

## More Docs

Check out the [docs](https://docs.npmjs.com/),
Expand Down
10 changes: 5 additions & 5 deletions deps/npm/bin/node-gyp-bin/node-gyp.cmd
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
if not defined npm_config_node_gyp (
node "%~dp0\..\..\node_modules\node-gyp\bin\node-gyp.js" %*
) else (
node %npm_config_node_gyp% %*
)
if not defined npm_config_node_gyp (
node "%~dp0\..\..\node_modules\node-gyp\bin\node-gyp.js" %*
) else (
node "%npm_config_node_gyp%" %*
)
25 changes: 19 additions & 6 deletions deps/npm/doc/cli/npm-dist-tag.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,30 @@ When installing dependencies, a preferred tagged version may be specified:

This also applies to `npm dedupe`.

Publishing a package sets the "latest" tag to the published version unless the
Publishing a package sets the `latest` tag to the published version unless the
`--tag` option is used. For example, `npm publish --tag=beta`.

By default, `npm install <pkg>` (without any `@<version>` or `@<tag>`
specifier) installs the `latest` tag.

## PURPOSE

Tags can be used to provide an alias instead of version numbers. For
example, `npm` currently uses the tag "next" to identify the upcoming
version, and the tag "latest" to identify the current version.
Tags can be used to provide an alias instead of version numbers.

For example, a project might choose to have multiple streams of development
and use a different tag for each stream,
e.g., `stable`, `beta`, `dev`, `canary`.

By default, the `latest` tag is used by npm to identify the current version of
a package, and `npm install <pkg>` (without any `@<version>` or `@<tag>`
specifier) installs the `latest` tag. Typically, projects only use the `latest`
tag for stable release versions, and use other tags for unstable versions such
as prereleases.

The `next` tag is used by some projects to identify the upcoming version.

A project might choose to have multiple streams of development, e.g.,
"stable", "canary".
By default, other than `latest`, no tag has any special significance to npm
itself.

## CAVEATS

Expand Down
4 changes: 2 additions & 2 deletions deps/npm/doc/cli/npm-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ A `package` is:
* b) a gzipped tarball containing (a)
* c) a url that resolves to (b)
* d) a `<name>@<version>` that is published on the registry (see `npm-registry(7)`) with (c)
* e) a `<name>@<tag>` that points to (d)
* e) a `<name>@<tag>` (see `npm-dist-tag(1)`) that points to (d)
* f) a `<name>` that has a "latest" tag satisfying (e)
* g) a `<git remote url>` that resolves to (b)

Expand Down Expand Up @@ -76,7 +76,7 @@ after packing it up into a tarball (b).
* `npm install [@<scope>/]<name> [--save|--save-dev|--save-optional]`:

Do a `<name>@<tag>` install, where `<tag>` is the "tag" config. (See
`npm-config(7)`.)
`npm-config(7)`. The config's default value is `latest`.)

In most cases, this will install the latest version
of the module published on npm.
Expand Down
11 changes: 7 additions & 4 deletions deps/npm/doc/cli/npm-publish.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@ npm-publish(1) -- Publish a package

## DESCRIPTION

Publishes a package to the registry so that it can be installed by name. See
`npm-developers(7)` for details on what's included in the published package, as
well as details on how the package is built.
Publishes a package to the registry so that it can be installed by name. All
files in the package directory are included if no local `.gitignore` or
`.npmignore` file is present. See `npm-developers(7)` for full details on
what's included in the published package, as well as details on how the package
is built.

By default npm will publish to the public registry. This can be overridden by
specifying a different default registry or using a `npm-scope(7)` in the name
Expand All @@ -27,7 +29,8 @@ specifying a different default registry or using a `npm-scope(7)` in the name
* `[--tag <tag>]`
Registers the published package with the given tag, such that `npm install
<name>@<tag>` will install this version. By default, `npm publish` updates
and `npm install` installs the `latest` tag.
and `npm install` installs the `latest` tag. See `npm-dist-tag(1)` for
details about tags.

* `[--access <public|restricted>]`
Tells the registry whether this package should be published as public or
Expand Down
2 changes: 1 addition & 1 deletion deps/npm/doc/cli/npm-update.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ or local) will be updated.

As of `npm@2.6.1`, the `npm update` will only inspect top-level packages.
Prior versions of `npm` would also recursively inspect all dependencies.
To get the old behavior, use `npm --depth 9999 update`, but be warned that
To get the old behavior, use `npm --depth Infinity update`, but be warned that
simultaneous asynchronous update of all packages, including `npm` itself
and packages that `npm` depends on, often causes problems up to and including
the uninstallation of `npm` itself.
Expand Down
10 changes: 4 additions & 6 deletions deps/npm/doc/files/npm-folders.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,10 @@ This document will tell you what it puts where.
### prefix Configuration

The `prefix` config defaults to the location where node is installed.
On most systems, this is `/usr/local`, and most of the time is the same
as node's `process.installPrefix`.

On windows, this is the exact location of the node.exe binary. On Unix
systems, it's one level up, since node is typically installed at
`{prefix}/bin/node` rather than `{prefix}/node.exe`.
On most systems, this is `/usr/local`. On windows, this is the exact
location of the node.exe binary. On Unix systems, it's one level up,
since node is typically installed at `{prefix}/bin/node` rather than
`{prefix}/node.exe`.

When the `global` flag is set, npm installs things into this prefix.
When it is not set, it uses the root of the current package, or the
Expand Down
4 changes: 2 additions & 2 deletions deps/npm/doc/files/package.json.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ The name is what your thing is called.

Some rules:

* The name must be shorter than 214 characters. This includes the scope for
* The name must be less than or equal to 214 characters. This includes the scope for
scoped packages.
* The name can't start with a dot or an underscore.
* New packages must not have uppercase letters in the name.
Expand Down Expand Up @@ -410,7 +410,7 @@ See semver(7) for more details about specifying version ranges.
* `git...` See 'Git URLs as Dependencies' below
* `user/repo` See 'GitHub URLs' below
* `tag` A specific version tagged and published as `tag` See `npm-tag(1)`
* `path/path/path` See Local Paths below
* `path/path/path` See [Local Paths](#local-paths) below

For example, these are all valid:

Expand Down
2 changes: 1 addition & 1 deletion deps/npm/doc/misc/npm-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ A client certificate to pass when accessing the registry.

### color

* Default: true on Posix, false on Windows
* Default: true
* Type: Boolean or `"always"`

If false, never shows colors. If `"always"` then always shows colors.
Expand Down
Loading

2 comments on commit fc446ba

@orangemocha
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jasnell @thealphanerd please consider this commit (already in 4.x-staging) for inclusion in the next 4.x release. It contains a fix for a race condition during npm install on Windows that has proven fairly severe (npm/npm#9696). Thank you.

@MylesBorins
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orangemocha this is already in staging and will definitely be in the next no security release

Please sign in to comment.