Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upgrade npm to 3.7.1 #5097

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions deps/npm/.mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Cedric Nelson <[email protected]>
Charlie Robbins <[email protected]>
Dalmais Maxence <[email protected]>
Danila Gerasimov <[email protected]>
Dave Galbraith <[email protected]>
David Beitey <[email protected]>
Domenic Denicola <[email protected]>
Einar Otto Stangvik <[email protected]>
Expand Down
3 changes: 2 additions & 1 deletion deps/npm/.travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ env:
before_install:
- "npm config set spin false"
- "node . install -g ."
- "sudo mkdir -p /var/run/couchdb"
- "mkdir -p /var/run/couchdb"
sudo: false
script: "npm run-script test-all"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
7 changes: 7 additions & 0 deletions deps/npm/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -352,3 +352,10 @@ Jimb Esser <[email protected]>
Alexis Campailla <[email protected]>
Chris Chua <[email protected]>
Beau Gunderson <[email protected]>
Dave Galbraith <[email protected]>
s100 <[email protected]>
Sergey Simonchik <[email protected]>
Vanja Radovanović <[email protected]>
Jonathan Persson <[email protected]>
Vedat Mahir YILMAZ <[email protected]>
Samuel Reed <[email protected]>
164 changes: 164 additions & 0 deletions deps/npm/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,167 @@
### v3.7.1 (2016-02-01):

Super quick Monday patch on last week's release.

If you ever wondered why we release things to the `npm@next` tag for a week
before promoting them to `npm@latest`, this is it!

#### RELEASE TRAIN VINDICATED (again)

* [`adcaf04`](adcaf047811dcc475ab1984fc93fe34540fc03d7)
[#11349](https://github.com/npm/npm/issues/11349)
Revert last weeks change to use JSON clone instead of `lodash.cloneDeep`.
([@iarna](https://github.com/iarna))

### v3.7.0 (2016-01-20):

Hi all! This week brings us some important performance improvements,
support for git submodules(!) and a bunch of bug fixes.

#### PERFORMANCE

`gauge`, the module responsible for drawing `npm`'s progress bars, had an
embarrassing bug in its debounce implementation that resulted in it, on many
systems, actually being _slower_ than if it hadn't been debouncing. This was
due to it destroying and then creating a timer object any time it got an
update while waiting on its minimum update period to elapse. This only was
a measurable slowdown when sending thousands of updates a second, but
unfortunately parts of `npm`'s logging do exactly that. This has been patched
to eliminate that churn, and our testing shows the progress bar as being
eliminated as a source of slow down.

Meanwhile, `are-we-there-yet` is the module that tracks just how complete
our big asynchronous install process is. [@STRML](https://github.com/STRML)
spent some time auditing its source and made a few smaller performance
improvements to it. Most impactful was eliminating a bizarre bit of code
that was both binding to AND closing over the current object. I don't have
any explanation for how that crept in. =D

* [`c680fa9`](https://github.com/npm/npm/commit/c680fa9f8135759eb5512f4b86e47fa265733f79)
`[email protected]`: New `are-we-there-yet` with performance patches from
[@STRML](https://github.com/STRML). New `gauge` with timer churn
performance patch.
([@iarna](https://github.com/iarna))

We were also using `lodash`'s `cloneDeep` on `package.json` data which is
definitely overkill, seeing as `package.json` data has all the restrictions
of being `json`. The fix for this is just swapping that out for something
that does a pair of `JSON.stringify`/`JSON.parse`, which is distinctly more
speedy.

* [`1d1ea7e`](https://github.com/npm/npm/commit/1d1ea7eeb958034878eb6573149aeecc686888d3)
[#11306](https://github.com/npm/npm/pull/11306)
Use JSON clone instead of `lodash.cloneDeep`.
([@STRML](https://github.com/STRML))

#### NEW FEATURE: GIT SUBMODULE SUPPORT

Long, long requested– the referenced issue is from 2011– we're finally
getting rudimentary git submodule support.

* [`39dea9c`](https://github.com/npm/npm/commit/39dea9ca4216c6ea628f5ca47d2b34a4b251a1ed)
[#1876](https://github.com/npm/npm/issues/1876)
Add support for git submodules in git remotes. This is a fairly simple
approach, which does not leverage the git caching mechanism to cache
submodules. It also doesn't provide a means to disable automatic
initialization, e.g. via a setting in the `.gitmodules` file.
([@gagern](https://github.com/gagern))

#### ROBUSTNESS

* [`5dec02a`](https://github.com/npm/npm/commit/5dec02a3d0e82202c021e27aff9d006283fdc25a)
[#10347](https://github.com/npm/npm/issues/10347)
There is an obscure feature that lets you monkey-patch npm when it starts
up. If the module being required with this feature failed, it would
previously just make `npm` error out– this reduces that to a warning.
([@evanlucas](https://github.com/evanlucas))

#### BUG FIXES

* [`9ab8b8d`](https://github.com/npm/npm/commit/9ab8b8d047792612ae7f9a6079745d51d5283a53)
[#10820](https://github.com/npm/npm/issues/10820)
Fix a bug with `npm ls` where if you asked for ONLY production dependencies in output
it would exclude dependencies that were BOTH production AND development dependencies.
([@davidvgalbraith](https://github.com/davidvgalbraith))
* [`6803fed`](https://github.com/npm/npm/commit/6803fedadb8f9b36cd85f7338ecf75d1d183c833)
[#8982](https://github.com/npm/npm/issues/8982)
Fix a bug where, under some circumstances, if you had a path that
contained the name of a package being installed somewhere in it, `npm`
would incorrectly refuse to run lifecycle scripts.
([@elvanja](https://github.com/elvanja))
* [`3eae40b`](https://github.com/npm/npm/commit/3eae40b7a681aa067dfe4fea8c9a76da5b508b48)
[#9253](https://github.com/npm/npm/issues/9253)
Fix a bug where, when running lifecycle scripts, if the Node.js binary you ran
`npm` with wasn't in your `PATH`, `npm` wouldn't use it to run your scripts.
([@segrey](https://github.com/segrey))
* [`61daa6a`](https://github.com/npm/npm/commit/61daa6ae8cbc041d3a0d8a6f8f268b47dd8176eb)
[#11014](https://github.com/npm/npm/issues/11014)
Fix a bug where running `rimraf node_modules/<package>` followed by `npm
rm --save <package>` would fail. `npm` now correctly removes the module
from your `package.json` even though it doesn't exist on disk.
([@davidvgalbraith](https://github.com/davidvgalbraith))
* [`a605586`](https://github.com/npm/npm/commit/a605586df134ee97c95f89c4b4bd6bc73f7aa439)
[#9679](https://github.com/npm/npm/issues/9679)
Fix a bug where `npm install --save git+https://…` would save a `https://`
url to your `package.json` which was a problem because `npm` wouldn't then
know that it was a git repo.
([@gagern](https://github.com/gagern))
* [`bbdc700`](https://github.com/npm/npm/commit/bbdc70024467c365cc4e06b8410947c04b6f145b)
[#10063](https://github.com/npm/npm/issues/10063)
Fix a bug where `npm` would change the order of array properties in the
`package.json` files of dependencies. `npm` adds a bunch of stuff to
`package.json` files in your `node_modules` folder for debugging and
bookkeeping purposes. As a part of this process it sorts the object to
reduce file churn when it does updates. This fixes a bug where the arrays
in the object were also getting sorted. This wasn't a problem for
properties that `npm` itself maintains, but _is_ a problem for properties
used by other packages.
([@substack](https://github.com/substack))

#### DOCS IMPROVEMENTS

* [`2609a29`](https://github.com/npm/npm/commit/2609a2950704f577ac888668e81ba514568fab44)
[#11273](https://github.com/npm/npm/pull/11273)
Include an example of viewing package version history in the `npm view` documentation.
([@vedatmahir](https://github.com/vedatmahir))
* [`719ea9c`](https://github.com/npm/npm/commit/719ea9c45a5c3233f3afde043b89824aad2df0a7)
[#11272](https://github.com/npm/npm/pull/11272)
Fix typographical issue in `npm update` documentation.
([@jonathanp](https://github.com/jonathanp))
* [`cb9df5a`](https://github.com/npm/npm/commit/cb9df5a37091e06071d8704b629e7ebaa41c37fe)
[#11215](https://github.com/npm/npm/pull/11215)
Do not call `SEE LICENSE IN <filename>` an _SPDX expression_, as it's not.
([@kemitchell](https://github.com/kemitchell))
* [`f427934`](https://github.com/npm/npm/commit/f4279346c368da4bca09385f773e8eed1d389e5e)
[#11196](https://github.com/npm/npm/pull/11196)
Correct the `package.json` examples in the `npm update` documentation to actually be
valid JSON and not just JavaScript object literals.
([@s100](https://github.com/s100))

#### DEPENDENCY UPDATES

* [`a7b2407`](https://github.com/npm/npm/commit/a7b24074cb59a1ab17c0d8eff1498047e6a123e5)
`[email protected]`: New features and interface agnostic refactoring.
([@tim-kos](https://github.com/tim-kos))
* [`220fc77`](https://github.com/npm/npm/commit/220fc7702ae3e5d601dfefd3e95c14e9b32327de)
`[email protected]`:
A bunch of small bug fixes and module updates.
([@simov](https://github.com/simov))
* [`9e5c84f`](https://github.com/npm/npm/commit/9e5c84f1903748897e54f8ff099729ff744eab0f)
`[email protected]`:
Update `isexe` and fix bug in `pathExt`, in which files without extensions
would sometimes be preferred to files with extensions on Windows, even though
those without extensions aren't executable.
`pathExt` is a list of extensions that are considered executable (exe, cmd,
bat, com on Windows).
([@isaacs](https://github.com/isaacs))
* [`375b9c4`](https://github.com/npm/npm/commit/375b9c42fe0c6de47ac2f92527354b2ea79b7968)
`[email protected]`: Minor doc formatting fixes.
([@isaacs](https://github.com/isaacs))
* [`ef1971e`](https://github.com/npm/npm/commit/ef1971e6270c2bc72e6392b51a8b84f52708f7e7)
`[email protected]`:
Misc minor code cleanup. No functional changes.
([@jdalton](https://github.com/jdalton))

### v3.6.0 (2016-01-20):

Hi all! This is a bigger release, in part 'cause we didn't have one last
Expand Down
9 changes: 6 additions & 3 deletions deps/npm/doc/cli/npm-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -169,9 +169,12 @@ after packing it up into a tarball (b).

<protocol>://[<user>[:<password>]@]<hostname>[:<port>][:][/]<path>[#<commit-ish>]

`<protocol>` is one of `git`, `git+ssh`, `git+http`, or
`git+https`. If no `<commit-ish>` is specified, then `master` is
used.
`<protocol>` is one of `git`, `git+ssh`, `git+http`, `git+https`,
or `git+file`.
If no `<commit-ish>` is specified, then `master` is used.

If the repository makes use of submodules, those submodules will
be cloned as well.

The following git environment variables are recognized by npm and will be added
to the environment when running git:
Expand Down
47 changes: 24 additions & 23 deletions deps/npm/doc/cli/npm-update.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,16 +44,17 @@ on dependencies, `dep1` (`dep2`, .. etc.). The published versions of `dep1` are

```
{
dist-tags: { latest: "1.2.2" },
versions: { "1.2.2",
"1.2.1",
"1.2.0",
"1.1.2",
"1.1.1",
"1.0.0",
"0.4.1",
"0.4.0",
"0.2.0"
"dist-tags": { "latest": "1.2.2" },
"versions": {
"1.2.2",
"1.2.1",
"1.2.0",
"1.1.2",
"1.1.1",
"1.0.0",
"0.4.1",
"0.4.0",
"0.2.0"
}
}
```
Expand All @@ -63,8 +64,8 @@ on dependencies, `dep1` (`dep2`, .. etc.). The published versions of `dep1` are
If `app`'s `package.json` contains:

```
dependencies: {
dep1: "^1.1.1"
"dependencies": {
"dep1": "^1.1.1"
}
```

Expand All @@ -76,8 +77,8 @@ Then `npm update` will install `[email protected]`, because `1.2.2` is `latest` and
However, if `app`'s `package.json` contains:

```
dependencies: {
dep1: "~1.1.1"
"dependencies": {
"dep1": "~1.1.1"
}
```

Expand All @@ -91,8 +92,8 @@ which is `1.1.2`.
Suppose `app` has a caret dependency on a version below `1.0.0`, for example:

```
dependencies: {
dep1: "^0.2.0"
"dependencies": {
"dep1": "^0.2.0"
}
```

Expand All @@ -102,8 +103,8 @@ versions which satisfy `^0.2.0`.
If the dependence were on `^0.4.0`:

```
dependencies: {
dep1: "^0.4.0"
"dependencies": {
"dep1": "^0.4.0"
}
```

Expand All @@ -118,17 +119,17 @@ the minimum required dependency in `package.json`, you can use
`package.json` contains:

```
dependencies: {
dep1: "^1.1.1"
"dependencies": {
"dep1": "^1.1.1"
}
```

Then `npm update --save` will install `[email protected]` (i.e., `latest`),
and `package.json` will be modified:

```
dependencies: {
dep1: "^1.2.2"
"dependencies": {
"dep1": "^1.2.2"
}
```

Expand All @@ -137,7 +138,7 @@ if it installs a new package.

### Updating Globally-Installed Packages

`npm update -g` will apply the `update` action to each globally- installed
`npm update -g` will apply the `update` action to each globally installed
package that is `outdated` -- that is, has a version that is different from
`latest`.

Expand Down
5 changes: 5 additions & 0 deletions deps/npm/doc/cli/npm-view.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@ was required by each matching version of yui3:

npm view yui3@'>0.5.4' dependencies.jsdom

To show the `connect` package version history, you can do
this:

npm view connect versions

## OUTPUT

If only a single string field for a single version is output, then it
Expand Down
2 changes: 1 addition & 1 deletion deps/npm/doc/files/package.json.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ expression syntax version 2.0 string](https://npmjs.com/package/spdx), like this
{ "license" : "(ISC OR GPL-3.0)" }

If you are using a license that hasn't been assigned an SPDX identifier, or if
you are using a custom license, use the following valid SPDX expression:
you are using a custom license, use a string value like this one:

{ "license" : "SEE LICENSE IN <filename>" }

Expand Down
2 changes: 1 addition & 1 deletion deps/npm/html/doc/README.html
Original file line number Diff line number Diff line change
Expand Up @@ -127,5 +127,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@3.6.0</p>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-access.html
Original file line number Diff line number Diff line change
Expand Up @@ -84,5 +84,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-access &mdash; npm@3.6.0</p>
<p id="footer">npm-access &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-adduser.html
Original file line number Diff line number Diff line change
Expand Up @@ -68,5 +68,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-adduser &mdash; npm@3.6.0</p>
<p id="footer">npm-adduser &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-bin.html
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bin &mdash; npm@3.6.0</p>
<p id="footer">npm-bin &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-bugs.html
Original file line number Diff line number Diff line change
Expand Up @@ -53,5 +53,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bugs &mdash; npm@3.6.0</p>
<p id="footer">npm-bugs &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-build.html
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,5 @@ <h2 id="description">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-build &mdash; npm@3.6.0</p>
<p id="footer">npm-build &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-bundle.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bundle &mdash; npm@3.6.0</p>
<p id="footer">npm-bundle &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-cache.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,5 +81,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-cache &mdash; npm@3.6.0</p>
<p id="footer">npm-cache &mdash; npm@3.7.1</p>

2 changes: 1 addition & 1 deletion deps/npm/html/doc/cli/npm-completion.html
Original file line number Diff line number Diff line change
Expand Up @@ -44,5 +44,5 @@ <h2 id="see-also">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-completion &mdash; npm@3.6.0</p>
<p id="footer">npm-completion &mdash; npm@3.7.1</p>

Loading