Browse Source

deps: upgrade npm to 3.10.8

PR-URL: https://github.com/nodejs/node/pull/8706
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
v6
Kat Marchán 8 years ago
committed by Jeremiah Senkpiel
parent
commit
d44a9eb11b
  1. 69
      deps/npm/.github/issue_template.md
  2. 2
      deps/npm/.mailmap
  3. 34
      deps/npm/.travis.yml
  4. 22
      deps/npm/AUTHORS
  5. 596
      deps/npm/CHANGELOG.md
  6. 2
      deps/npm/README.md
  7. 1
      deps/npm/doc/cli/npm-install.md
  8. 3
      deps/npm/doc/cli/npm-link.md
  9. 4
      deps/npm/doc/cli/npm-run-script.md
  10. 10
      deps/npm/doc/cli/npm-shrinkwrap.md
  11. 2
      deps/npm/doc/cli/npm-tag.md
  12. 10
      deps/npm/doc/files/npmrc.md
  13. 5
      deps/npm/doc/files/package.json.md
  14. 10
      deps/npm/doc/misc/npm-config.md
  15. 19
      deps/npm/doc/misc/npm-scope.md
  16. 8
      deps/npm/doc/misc/npm-scripts.md
  17. 39
      deps/npm/doc/misc/semver.md
  18. 6
      deps/npm/html/doc/README.html
  19. 4
      deps/npm/html/doc/cli/npm-access.html
  20. 4
      deps/npm/html/doc/cli/npm-adduser.html
  21. 4
      deps/npm/html/doc/cli/npm-bin.html
  22. 4
      deps/npm/html/doc/cli/npm-bugs.html
  23. 4
      deps/npm/html/doc/cli/npm-build.html
  24. 4
      deps/npm/html/doc/cli/npm-bundle.html
  25. 4
      deps/npm/html/doc/cli/npm-cache.html
  26. 4
      deps/npm/html/doc/cli/npm-completion.html
  27. 4
      deps/npm/html/doc/cli/npm-config.html
  28. 4
      deps/npm/html/doc/cli/npm-dedupe.html
  29. 4
      deps/npm/html/doc/cli/npm-deprecate.html
  30. 4
      deps/npm/html/doc/cli/npm-dist-tag.html
  31. 4
      deps/npm/html/doc/cli/npm-docs.html
  32. 4
      deps/npm/html/doc/cli/npm-edit.html
  33. 4
      deps/npm/html/doc/cli/npm-explore.html
  34. 4
      deps/npm/html/doc/cli/npm-help-search.html
  35. 4
      deps/npm/html/doc/cli/npm-help.html
  36. 4
      deps/npm/html/doc/cli/npm-init.html
  37. 5
      deps/npm/html/doc/cli/npm-install-test.html
  38. 5
      deps/npm/html/doc/cli/npm-install.html
  39. 7
      deps/npm/html/doc/cli/npm-link.html
  40. 4
      deps/npm/html/doc/cli/npm-logout.html
  41. 6
      deps/npm/html/doc/cli/npm-ls.html
  42. 4
      deps/npm/html/doc/cli/npm-outdated.html
  43. 4
      deps/npm/html/doc/cli/npm-owner.html
  44. 4
      deps/npm/html/doc/cli/npm-pack.html
  45. 5
      deps/npm/html/doc/cli/npm-ping.html
  46. 4
      deps/npm/html/doc/cli/npm-prefix.html
  47. 4
      deps/npm/html/doc/cli/npm-prune.html
  48. 4
      deps/npm/html/doc/cli/npm-publish.html
  49. 4
      deps/npm/html/doc/cli/npm-rebuild.html
  50. 4
      deps/npm/html/doc/cli/npm-repo.html
  51. 4
      deps/npm/html/doc/cli/npm-restart.html
  52. 4
      deps/npm/html/doc/cli/npm-root.html
  53. 8
      deps/npm/html/doc/cli/npm-run-script.html
  54. 4
      deps/npm/html/doc/cli/npm-search.html
  55. 14
      deps/npm/html/doc/cli/npm-shrinkwrap.html
  56. 4
      deps/npm/html/doc/cli/npm-star.html
  57. 4
      deps/npm/html/doc/cli/npm-stars.html
  58. 4
      deps/npm/html/doc/cli/npm-start.html
  59. 4
      deps/npm/html/doc/cli/npm-stop.html
  60. 6
      deps/npm/html/doc/cli/npm-tag.html
  61. 5
      deps/npm/html/doc/cli/npm-team.html
  62. 4
      deps/npm/html/doc/cli/npm-test.html
  63. 4
      deps/npm/html/doc/cli/npm-uninstall.html
  64. 4
      deps/npm/html/doc/cli/npm-unpublish.html
  65. 4
      deps/npm/html/doc/cli/npm-update.html
  66. 4
      deps/npm/html/doc/cli/npm-version.html
  67. 4
      deps/npm/html/doc/cli/npm-view.html
  68. 4
      deps/npm/html/doc/cli/npm-whoami.html
  69. 8
      deps/npm/html/doc/cli/npm.html
  70. 4
      deps/npm/html/doc/files/npm-folders.html
  71. 4
      deps/npm/html/doc/files/npm-global.html
  72. 10
      deps/npm/html/doc/files/npm-json.html
  73. 12
      deps/npm/html/doc/files/npmrc.html
  74. 10
      deps/npm/html/doc/files/package.json.html
  75. 4
      deps/npm/html/doc/index.html
  76. 4
      deps/npm/html/doc/misc/npm-coding-style.html
  77. 14
      deps/npm/html/doc/misc/npm-config.html
  78. 4
      deps/npm/html/doc/misc/npm-developers.html
  79. 10
      deps/npm/html/doc/misc/npm-disputes.html
  80. 5
      deps/npm/html/doc/misc/npm-index.html
  81. 5
      deps/npm/html/doc/misc/npm-orgs.html
  82. 4
      deps/npm/html/doc/misc/npm-registry.html
  83. 23
      deps/npm/html/doc/misc/npm-scope.html
  84. 12
      deps/npm/html/doc/misc/npm-scripts.html
  85. 4
      deps/npm/html/doc/misc/removing-npm.html
  86. 43
      deps/npm/html/doc/misc/semver.html
  87. 2
      deps/npm/html/dochead.html
  88. 15
      deps/npm/lib/cache/add-local.js
  89. 1
      deps/npm/lib/cache/add-remote-git.js
  90. 3
      deps/npm/lib/config.js
  91. 1
      deps/npm/lib/config/cmd-list.js
  92. 5
      deps/npm/lib/edit.js
  93. 11
      deps/npm/lib/fetch-package-metadata.js
  94. 6
      deps/npm/lib/init.js
  95. 53
      deps/npm/lib/install.js
  96. 2
      deps/npm/lib/install/action/update-linked.js
  97. 26
      deps/npm/lib/install/actions.js
  98. 91
      deps/npm/lib/install/deps.js
  99. 16
      deps/npm/lib/install/flatten-tree.js
  100. 85
      deps/npm/lib/install/inflate-shrinkwrap.js

69
deps/npm/.github/issue_template.md

@ -0,0 +1,69 @@
#### I'm opening this issue because:
- [ ] npm is crashing.
- [ ] npm is producing an incorrect install.
- [ ] npm is doing something I don't understand.
- [ ] Other (_see below for feature requests_):
#### What's going wrong?
#### How can the CLI team reproduce the problem?
<!--
Please a complete description of how to reproduce the problem.
Include a gist of your npm-debug.log file.
If you've never used gist.github.com, start here:
https://github.com/EmmaRamirez/how-to-submit-your-npm-debug-log
-->
### supporting information:
- `npm -v` prints:
- `node -v` prints:
- `npm config get registry` prints:
- Windows, OS X, or Linux?:
- Network issues:
- Geographic location where npm was run:
- [ ] I use a proxy to connect to the npm registry.
- [ ] I use a proxy to connect to the web.
- [ ] I use a proxy when downloading Git repos.
- [ ] I access the npm registry via a VPN
- [ ] I don't use a proxy, but have limited or unreliable internet access.
- Container:
- [ ] I develop using Vagrant on Windows.
- [ ] I develop using Vagrant on OS X or Linux.
- [ ] I develop / deploy using Docker.
- [ ] I deploy to a PaaS (Triton, Heroku).
<!--
Thank you for contributing to npm! Please review this checklist
before submitting your issue.
- Please check if there's a solution in the troubleshooting wiki:
https://github.com/npm/npm/wiki/Troubleshooting
- Also ensure that your new issue conforms to npm's contribution guidelines:
https://github.com/npm/npm/wiki/Contributing-Guidelines
- Participation in this open source project is subject to the npm Code of Conduct:
https://www.npmjs.com/policies/conduct
For feature requests, delete the above and uncomment the section following this one. But first, review the existing feature requests
and make sure there isn't one that already describes the feature
you'd like to see added:
https://github.com/npm/npm/issues?q=is%3Aopen+is%3Aissue+label%3Afeature-request+label%3Aalready-looked-at
-->
<!--
#### What's the feature?
#### What problem is the feature intended to solve?
#### Is the absence of this feature blocking you or your team? If so, how?
#### Is this feature similar to an existing feature in another tool?
#### Is this a feature you're prepared to implement, with support from the npm CLI team?
-->

2
deps/npm/.mailmap

@ -15,6 +15,7 @@ Dave Galbraith <dave@jut.io>
David Beitey <david@davidjb.com>
Domenic Denicola <domenic@domenicdenicola.com>
Einar Otto Stangvik <einaros@gmail.com>
Emma Ramirez <ramirez.emma.g@gmail.com>
Erik Wienhold <git@ewie.name>
Evan Lucas <evan@btc.com> <evan.lucas@hattiesburgclinic.com>
Evan Lucas <evan@btc.com> <evanlucas@me.com>
@ -23,6 +24,7 @@ Forbes Lindesay <forbes@lindesay.co.uk>
Forrest L Norvell <ogd@aoaioxxysz.net> <forrest@npmjs.com>
Gabriel Barros <descartavel1@gmail.com>
Geoff Flarity <geoff.flarity@gmail.com> <gflarity@raptvm-x02.(none)>
Gregers Gram Rygg <gregers.gram.rygg@finn.no>
Ifeanyi Oraelosi <ifeanyioraelosi@gmail.com>
Isaac Z. Schlueter <i@izs.me> <i@foohack.com>
Isaac Z. Schlueter <i@izs.me> isaacs <i@izs.me>

34
deps/npm/.travis.yml

@ -1,23 +1,31 @@
sudo: false
# need to declare the language as well as the matrix below
language: node_js
node_js:
# having top-level `env:` adds a phantom build
# https://github.com/travis-ci/travis-ci/issues/4681
#env: DEPLOY_VERSION=testing
matrix:
include:
# LTS is our most important target
- "4"
- node_js: "4"
# DEPLOY_VERSION is used to set the couchapp setup mode for test/tap/registry.js
# only gather coverage info for LTS
env: DEPLOY_VERSION=testing COVERALLS_REPO_TOKEN="$COVERALLS_OPTIONAL_TOKEN"
# next LTS and master is next most important
- "6"
# still in LTS maintenance until fall 2016
# (also still in wide use)
- "0.10"
- node_js: "6"
env: DEPLOY_VERSION=testing
# still in LTS maintenance until fall 2016 (also still in wide use)
- node_js: "0.10"
env: DEPLOY_VERSION=testing
# will be unsupported as soon as 6 becomes LTS and 7 released
- "5"
- node_js: "5"
env: DEPLOY_VERSION=testing
# technically in LTS / distros, unbeloved
- "0.12"
env:
- DEPLOY_VERSION=testing
- node_js: "0.12"
env: DEPLOY_VERSION=testing
before_install:
- "npm config set spin false"
- "node . install -g ."
# required by test/tap/registry.js
- "mkdir -p /var/run/couchdb"
sudo: false
script: "npm test"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8

22
deps/npm/AUTHORS

@ -408,3 +408,25 @@ Aaron Tribou <aaron.tribou@gmail.com>
Tapani Moilanen <moilanen.tapani@gmail.com>
Han Seoul-Oh <laughinghan@gmail.com>
Aleksey Shvayka <shvaikalesh@gmail.com>
Emma Ramirez <ramirez.emma.g@gmail.com>
Julian Duque <julianduquej@gmail.com>
Simon MacDonald <simon.macdonald@gmail.com>
Adam Stankiewicz <sheerun@sher.pl>
Gregers Gram Rygg <gregers.gram.rygg@finn.no>
Peter Dave Hello <hsu@peterdavehello.org>
Jordan Klassen <forivall@gmail.com>
Jason Palmer <jason@jason-palmer.com>
Michael Hart <michael.hart.au@gmail.com>
Sasha Koss <koss@nocorp.me>
David Emmerson <david.emmerson@gmail.com>
Christophe Hurpeau <christophe@hurpeau.com>
Daniel Paz-Soldan <daniel.pazsoldan@gmail.com>
Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Zach Renner <zarenner@microsoft.com>
Christopher Hiller <boneskull@boneskull.com>
legodude17 <legodudejb@gmail.com>
Andrew Meyer <andrewm.bpi@gmail.com>
Michael Jasper <mdjasper@gmail.com>
Max <contact@mstoiber.com>
Szymon Nowak <szimek@gmail.com>
Jason Karns <jason.karns@gmail.com>

596
deps/npm/CHANGELOG.md

@ -1,3 +1,593 @@
### v3.10.8 (2016-09-08)
Monthly releases are so big! Just look at all this stuff!
Our quarter of monthly releases is almost over. The next one, in October, might
very well be our last one as we move to trying something different and learning
lessons from our little experiment.
You may also want to keep an eye our for `npm@4` next month, since we're
planning on finally releasing it then and including a (small) number of breaking
changes we've been meaning to do for a long time. Don't worry, though: `npm@3`
will still be around for a bit and will keep getting better and better, and is
most likely going to be the version that `node@6` uses once it goes to LTS.
As some of us have mentioned before, npm is likely to start doing more regular
semver-major bumps, while keeping those bumps significantly smaller than the
huge effort that was `npm@3` -- we're not very likely to do a world-shaking
thing like that for a while, if ever.
All that said, let's move on to the patches included in v3.10.8!
#### SHRINKWRAP LEVEL UP
The most notable part of this release is a series of commits meant to make `npm
shrinkwrap` more consistent. By itself, shrinkwrap seems like a fairly
straightforward thing to implement, but things get complicated when it starts
interacting with `devDependencies`, `optionalDependencies`, and
`bundledDependencies`. These commits address some corner cases related to these.
* [`a7eca32`](https://github.com/npm/npm/commit/a7eca3246fbbcbb05434cb6677f65d14c945d74f)
[#10073](https://github.com/npm/npm/pull/10073)
Record if a dependency is only used as a devDependency and exclude it from the
shrinkwrap file.
([@bengl](https://github.com/bengl))
* [`1eabcd1`](https://github.com/npm/npm/commit/1eabcd16bf2590364ca20831096350073539bf3a)
[#10073](https://github.com/npm/npm/pull/10073)
Record if a dependency is optional to shrinkwrap.
([@bengl](https://github.com/bengl))
* [`03efc89`](https://github.com/npm/npm/commit/03efc89522c99ee0fa37d8f4a99bc3b44255ef98)
[#13692](https://github.com/npm/npm/pull/13692/)
We were doing a weird thing where we used a `package.json` field `installable`
to check to see if we'd checked for platform compatibility, and if not did
so. But this was the only place that was ever done so there was no reason to
implement it in such an obfuscated manner.
Instead it now just directly checks and then records that its done so on the
node object with `knownInstallable`. This is useful to know because modules
expanded via shrinkwrap don't go through this– `inflateShrinkwrap` does not
currently have any rollback semantics and so checking this sort of thing there
is unhelpful.
([@iarna](https://github.com/iarna))
* [`ff87938`](https://github.com/npm/npm/commit/ff879382fda21dac7216a5f666287b3a7e74a947)
[#11735](https://github.com/npm/npm/issues/11735)
Running `npm install --save-dev` will now update shrinkwrap file, but only
if there already are devDependencies in it.
([@szimek](https://github.com/szimek))
* [`c00ca3a`](https://github.com/npm/npm/commit/c00ca3aef836709eeaeade91c5305bc2fbda2e8a)
[#13394](https://github.com/npm/npm/issues/13394)
Check installability of modules from shrinkwrap, since modules that came into
the tree vie shrinkwrap won't already have this information recorded in
advance.
([@iarna](https://github.com/iarna))
#### INSTALLER ERROR REPORTING LEVEL UP
As part of the shrinkwrap push, there were also a lot of error-reporting
improvements. Some to add more detail to error objects, others to fix bugs and
inconsistencies.
* [`2cdd713`](https://github.com/npm/npm/commit/2cdd7132abddcc7f826a355c14348ce9a5897ffe)
Consistently set code on `ETARGET` when fetching package metadata if no
compatible version is found.
([@iarna](https://github.com/iarna))
* [`cabcd17`](https://github.com/npm/npm/commit/cabcd173f2923cb5b77e7be0e42eea2339a24727)
[#13692](https://github.com/npm/npm/pull/13692/)
Include installer warning details at the `verbose` log level.
([@iarna](https://github.com/iarna))
* [`95a4044`](https://github.com/npm/npm/commit/95a4044cbae93d19d0da0f3cd04ea8fa620295d9)
[`dbb14c2`](https://github.com/npm/npm/commit/dbb14c241d982596f1cdaee251658f5716989fd2)
[`9994383`](https://github.com/npm/npm/commit/9994383959798f80749093301ec43a8403566bb6)
[`7417000`](https://github.com/npm/npm/commit/74170003db0c53def9b798cb6fe3fe7fc3e06482)
[`f45f85d`](https://github.com/npm/npm/commit/f45f85dac800372d63dfa8653afccbf5bcae7295)
[`e79cc1b`](https://github.com/npm/npm/commit/e79cc1b11440f0d122c4744d5eff98def9553f4a)
[`146ee39`](https://github.com/npm/npm/commit/146ee394b1f7a33cf409a30b835a85d939acb438)
[#13692](https://github.com/npm/npm/pull/13692/)
Improve various bits of error reporting, adding more error information and
some related refactoring.
([@iarna](https://github.com/iarna))
#### MISCELLANEOUS BUGS LEVEL UP
* [`116b6c6`](https://github.com/npm/npm/commit/116b6c60a174ea0cc49e4d62717e4e26175b6534)
[#13456](https://github.com/npm/npm/issues/13456)
In lifecycle scripts, any `node_modules/.bin` existing in the hierarchy
should be turned into an entry in the PATH environment variable.
However, prior to this commit, it was splitting based on the string
`node_modules`, rather than restricting it to only path portions like
`/node_modules/` or `\node_modules\`. So, a path containing an entry
like `my_node_modules` would be improperly split.
([@isaacs](https://github.com/isaacs))
* [`0a28dd0`](https://github.com/npm/npm/commit/0a28dd0104e5b4a8cc0cb038bd213e6a50827fe8)
[npm/fstream-npm#23](https://github.com/npm/fstream-npm/pull/23)
`fstream-npm@1.2.0`:
Always ignore `*.orig` files, which are generated by git when using `git
mergetool`, by default.
([@zkat](https://github.com/zkat))
* [`a3a2fb9`](https://github.com/npm/npm/commit/a3a2fb97adc87c2aa9b2b8957861b30efafc7ad0)
[#13708](https://github.com/npm/npm/pull/13708)
Always ignore `*.orig` files, which are generated by git when using `git
mergetool`, by default.
([@boneskull](https://github.com/boneskull))
#### TOOLING LEVEL UP
* [`e1d7e6c`](https://github.com/npm/npm/commit/e1d7e6ce551cbc42026cdcadcb37ea515059c972)
Add helper for generating test skeletons.
([@iarna](https://github.com/iarna))
* [`4400b35`](https://github.com/npm/npm/commit/4400b356bca9175935edad1469c608c909bc01bf)
Fix fixture creation and cleanup in `maketest`.
([@iarna](https://github.com/iarna))
#### DOCUMENTATION LEVEL UP
* [`8eb9460`](https://github.com/npm/npm/commit/8eb94601fe895b97cbcf8c6134e6b371c5371a1e)
[#13717](https://github.com/npm/npm/pull/13717)
Document that `npm link` will link the files specified in the `bin` field of
`package.json` to `{prefix}/bin/{name}`.
([@legodude17](https://github.com/legodude17))
* [`a66e5e9`](https://github.com/npm/npm/commit/a66e5e9c388878fe03fb29014c3b95d28bedd3c1)
[#13682](https://github.com/npm/npm/pull/13682)
Minor grammar fix in documentation for `npm scripts`.
([@Ajedi32](https://github.com/Ajedi32))
* [`74b8043`](https://github.com/npm/npm/commit/74b80437ffdfcf8172f6ed4f39bfb021608dd9dd)
[#13655](https://github.com/npm/npm/pull/13655)
Document line comment syntax for `.npmrc`.
([@mdjasper](https://github.com/mdjasper))
* [`b352a84`](https://github.com/npm/npm/commit/b352a84c2c7ad15e9c669af75f65cdaa964f86c0)
[#12438](https://github.com/npm/npm/issues/12438)
Remind folks to use `#!/usr/bin/env node` in their `bin` scripts to make files
executable directly.
([@mxstbr](https://github.com/mxstbr))
* [`b82fd83`](https://github.com/npm/npm/commit/b82fd838edbfff5d2833a62f6d8ae8ea2df5a1f2)
[#13493](https://github.com/npm/npm/pull/13493)
Document that the user config file can itself be configured either through the
`$NPM_CONFIG_USERCONFIG` environment variable, or `--userconfig` command line
flag.
([@jasonkarns](https://github.com/jasonkarns))
* [`8a02699`](https://github.com/npm/npm/commit/8a026992a03d90e563a97c70e90926862120693b)
[#13911](https://github.com/npm/npm/pull/13911)
Minor documentation reword and cleanup.
([@othiym23](https://github.com/othiym23))
#### DEPENDENCY LEVEL UP
* [`2818fb0`](https://github.com/npm/npm/commit/2818fb0f6081d68a91f0905945ad102f26c6cf85)
`glob@7.0.6`
([@isaacs](https://github.com/isaacs))
* [`d88ec81`](https://github.com/npm/npm/commit/d88ec81ad33eb2268fcd517d35346a561bc59aff)
`graceful-fs@4.1.6`
([@francescoinfante](https://github.com/francescoinfante))
* [`4727f86`](https://github.com/npm/npm/commit/4727f8646daca7b3e3c1c95860e02acf583b9dae)
`lodash.clonedeep@4.5.0`
([@jdalton](https://github.com/jdalton))
* [`c347678`](https://github.com/npm/npm/commit/c3476780ef4483425e4ae1d095a5884b46b8db86)
`lodash.union@4.6.0`
([@jdalton](https://github.com/jdalton))
* [`530bd4d`](https://github.com/npm/npm/commit/530bd4d2ae6f704f624e4f7bf64f911f37e2b7f8)
`lodash.uniq@4.5.0`
([@jdalton](https://github.com/jdalton))
* [`483d56a`](https://github.com/npm/npm/commit/483d56ae8137eca0c0f7acd5d1c88ca6d5118a6a)
`lodash.without@4.4.0`
([@jdalton](https://github.com/jdalton))
* [`6c934df`](https://github.com/npm/npm/commit/6c934df6e74bacd0ed40767b319936837a43b586)
`inherits@2.0.3`
([@isaacs](https://github.com/isaacs))
* [`a65ed7c`](https://github.com/npm/npm/commit/a65ed7cbd3c950383a14461a4b2c87b67ef773b9)
`npm-registry-client@7.2.1`:
* [npm/npm-registry-client#142](https://github.com/npm/npm-registry-client/pull/142) Fix `EventEmitter` warning spam from error handlers on socket. ([@addaleax](https://github.com/addaleax))
* [npm/npm-registry-client#131](https://github.com/npm/npm-registry-client/pull/131) Adds support for streaming request bodies. ([@aredridel](https://github.com/aredridel))
* Fixes [#13656](https://github.com/npm/npm/issues/13656).
* Dependency updates.
* Documentation improvements.
([@othiym23](https://github.com/othiym23))
* [`2b88d62`](https://github.com/npm/npm/commit/2b88d62e6a730716b27052c0911c094d01830a60)
[npm/npmlog#34](https://github.com/npm/npmlog/pull/34)
`npmlog@4.0.0`:
Allows creating log levels that are empty strings or 0
([@rwaldron](https://github.com/rwaldron))
* [`242babb`](https://github.com/npm/npm/commit/242babbd02274ee2d212ae143992c20f47ef0066)
`once@1.4.0`
([@zkochan](https://github.com/zkochan))
* [`6d8ba2b`](https://github.com/npm/npm/commit/6d8ba2b4918e2295211130af68ee8a67099139e0)
`readable-stream@2.1.5`
([@calvinmetcalf](https://github.com/calvinmetcalf))
* [`855c099`](https://github.com/npm/npm/commit/855c099482a8d93b7f0646bd7bcf8a31f81868e0)
`retry@0.10.0`
([@tim-kos](https://github.com/tim-kos))
* [`80540c5`](https://github.com/npm/npm/commit/80540c52b252615ae8a6271b3df870eabfea935e)
`semver@5.3.0`:
* Add `minSatisfying`
* Add `prerelease(v)`
([@isaacs](https://github.com/isaacs))
* [`8aaac52`](https://github.com/npm/npm/commit/8aaac52ffae8e689fae265712913b1e2a36b1aa6)
`which@1.2.1`
([@isaacs](https://github.com/isaacs))
* [`85108a2`](https://github.com/npm/npm/commit/85108a29108ab0a57997572dc14f87eb706890ba)
`write-file-atomic@1.2.0`:
Preserve chmod and chown from the overwritten file
([@iarna](https://github.com/iarna))
* [`291a377`](https://github.com/npm/npm/commit/291a377f32f5073102a8ede61a27e6a9b37154c2)
Update npm documentation to reflect documentation for `semver@5.3.0`.
([@zkat](https://github.com/zkat))
### v3.10.7 (2016-08-11)
Hi all, today's our first release coming out of the new monthly release
cadence. See below for details. We're all recovered from conferences now
and raring to go! We've got some pretty keen bug fixes and a bunch of
documentation and dependency updates. It's hard to narrow it down to just a
few, but of note are scoped packages in bundled dependencies, the
`preinstall` lifecycle fix, the shrinkwrap and Git dependencies fix and the
fix to a crasher involving cycles in development dependencies.
#### NEW RELEASE CADENCE
Releasing npm has been, for the most part, a very prominent part of our
weekly process process. As part of our efforts to find the most effective
ways to allocate our team's resources, we decided last month that we would
try and slow our releases down to a monthly cadence, and see if we found
ourselves with as much extra time and attention as we expected to have.
Process experiments are useful for finding more effective ways to do our
work, and we're at least going to keep doing this for a whole quarter, and
then measure how well it worked out. It's entirely likely that we'll switch
back to a more frequent cadence, specially if we find that the value that
weekly cadence was providing the community is not worth sacrificing for a
bit of extra time. Does this affect you significantly? Let us know!
#### SCOPED PACKAGES IN BUNDLED DEPENDENCIES
Prior to this release and
[v2.15.10](https://github.com/npm/npm/releases/v2.15.10), npm had ignored
scoped modules found in `bundleDependencies`.
* [`29cf56d`](https://github.com/npm/npm/commit/29cf56dbae8e3dd16c24876f998051623842116a)
[#8614](https://github.com/npm/npm/issues/8614)
Include scoped packages in bundled dependencies.
([@forivall](https://github.com/forivall))
#### `preinstall` LIFECYCLE IN CURRENT PROJECT
* [`b7f13bc`](https://github.com/npm/npm/commit/b7f13bc80b89b025be0c53d81b90ec8f2cebfab7)
[#13259](https://github.com/npm/npm/pull/13259)
Run top level preinstall before installing dependencies
([@palmerj3](https://github.com/palmerj3))
#### BETTER SHRINKWRAP WITH GIT DEPENDENCIES
* [`0f7e319`](https://github.com/npm/npm/commit/0f7e3197bcec7a328b603efdffd3681bbc40f585)
[#12718](https://github.com/npm/npm/issues/12718.)
Update outdated git dependencies found in shrinkwraps. Previously, if the
module version was the same then no update would be completed even if the
committish had changed.
([@kossnocorp](https://github.com/kossnocorp))
#### CYCLES IN DEVELOPMENT DEPENDENCIES NO LONGER CRASH
* [`1691de6`](https://github.com/npm/npm/commit/1691de668d34cd92ab3de08bf3a06085388f2f07)
[#13327](https://github.com/npm/npm/issues/13327)
Fix bug where cycles found in development dependencies could result in
infinite recursion that resulted in crashes.
([@iarna](https://github.com/iarna))
#### IMPROVE "NOT UPDATING LINKED MODULE" WARNINGS
* [`1619871`](https://github.com/npm/npm/commit/1619871ac0cc8839dc9962c78e736095976c1eb4)
[#12893](https://github.com/npm/npm/pull/12893)
Only warn about symlink update if version number differs
The update-linked action outputs a warning that it needs to update the
linked package, but can't, There is no need for the package to be updated if
it is already at the correct version. This change does a check before
logging the warning.
([@DaveEmmerson](https://github.com/DaveEmmerson))
#### MORE BUG FIXES
* [`8f8d1b3`](https://github.com/npm/npm/commit/8f8d1b33a78c79aff9de73df362abaa7f05751d2)
[#11398](https://github.com/npm/npm/issues/11398)
Fix bug where `package.json` files that contained a `type` property could
cause crashes. `type` is not a `package.json` property that npm makes use
of and having it should be (and now is) harmless.
([@zkat](https://github.com/zkat))
* [`e7fa6c6`](https://github.com/npm/npm/commit/e7fa6c6a2c1de2a214479daa8c6901eebb350381)
[#13353](https://github.com/npm/npm/issues/13353)
Add GIT_EXEC_PATH to Git environment whitelist.
([@mhart](https://github.com/mhart))
* [`c23af21`](https://github.com/npm/npm/commit/c23af21d4cedd7fedcb4168672044db76ad054a8)
[#13626](https://github.com/npm/npm/pull/13626)
Use HTTPS issues URL in the error message for type validation errors.
([@watilde](https://github.com/watilde))
#### INCLUDE `npm login` IN COMMAND SUMMARY
* [`ab0c4b1`](https://github.com/npm/npm/commit/ab0c4b137b05762e75e0913038b606f087b58aa0)
[#13581](https://github.com/npm/npm/issues/13581)
The `login` command has long been an alias for `adduser`.
At the same time, there is an expectation not just of that
particular word being something to look for, but of there being
clear symmetry with `logout`.
So it was a bit confusing when `login` didn't show up in
`npm help` on a technicality. This seems like an acceptable
exception to the rule that says "no aliases in `npm help`".
([@zkat](https://github.com/zkat))
#### DOCUMENTATION
* [`e2d7e78`](https://github.com/npm/npm/commit/e2d7e7820a7875ed96e0382dc1e91b8df4e83746)
[#13319](https://github.com/npm/npm/pull/13319)
As Node.js 0.8 is no longer supported, remove mention of it from the README.
([@watilde](https://github.com/watilde))
* [`c565d89`](https://github.com/npm/npm/commit/c565d893a38efb6006e841450503329c9e58f100)
[#13349](https://github.com/npm/npm/pull/13349)
Updated the scripts documentation to explain the different between `version` and `preversion`.
([@christophehurpeau](https://github.com/christophehurpeau))
* [`fa8f87f`](https://github.com/npm/npm/commit/fa8f87f1ec92e543dd975156c4b184eb3e0b80cb)
[#10167](https://github.com/npm/npm/pull/10167)
Clarify in scope documentation that npm@2 is required for scoped packages.
([@danpaz](https://github.com/danpaz))
#### DEPENDENCIES
* [`124427e`](https://github.com/npm/npm/commit/124427eabbfd200aa145114e389e19692559ff1e)
[#8614](https://github.com/npm/npm/issues/8614)
`fstream-npm@1.1.1`:
Fixes bug with inclusion of scoped bundled dependencies.
([@forivall](https://github.com/forivall))
* [`7e0cdff`](https://github.com/npm/npm/commit/7e0cdff04714709f6dc056b19422d3f937502f1c)
[#13497](https://github.com/npm/npm/pull/13497)
`graceful-fs@4.1.5`:
`graceful-fs` had a [bug fix](https://github.com/isaacs/node-graceful-fs/pull/71) which
fixes a problem ([nodejs/node#7846](https://github.com/nodejs/node/pull/7846)) exposed
by recent changes to Node.js.
([@thefourtheye](https://github.com/thefourtheye))
* [`9b88cb8`](https://github.com/npm/npm/commit/9b88cb89f138443f324094685f4de073f33ecef0)
[#9984](https://github.com/npm/npm/issues/9984)
`request@2.74.0`:
Update request library to at least 2.73 to fix a bug where `npm install` would crash with
_Cannot read property 'emit' of null._
Update `request` dependency `tough-cookie` to `2.3.0` to
to address [https://nodesecurity.io/advisories/130](https://nodesecurity.io/advisories/130).
Versions 0.9.7 through 2.2.2 contain a vulnerable regular expression that,
under certain conditions involving long strings of semicolons in the
"Set-Cookie" header, causes the event loop to block for excessive amounts of
time.
([@zarenner](https://github.com/zarenner))
([@stash-sfdc](https://github.com/stash-sfdc))
* [`bf78ce5`](https://github.com/npm/npm/commit/bf78ce5ef5d2d6e95177193cca5362dd27bff968)
[#13387](https://github.com/npm/npm/issues/13387)
`minimatch@3.0.3`:
Handle extremely long and terrible patterns more gracefully.
There were some magic numbers that assumed that every extglob pattern starts
and ends with a specific number of characters in the regular expression.
Since !(||) patterns are a little bit more complicated, this led to creating
an invalid regular expression and throwing.
([@isaacs](https://github.com/isaacs))
* [`803e538`](https://github.com/npm/npm/commit/803e538efaae4b56a764029742adcf6761e8398b)
[isaacs/rimraf#111](https://github.com/isaacs/rimraf/issues/111)
`rimraf@2.5.4`: Clarify assertions: cb is required, options are not.
([@isaacs](https://github.com/isaacs))
* [`a9f84ef`](https://github.com/npm/npm/commit/a9f84ef61b4c719b646bf9cda00577ef16e3a113)
`lodash.without@4.2.0`
([@jdalton](https://github.com/jdalton))
* [`f59ff1c`](https://github.com/npm/npm/commit/f59ff1c2701f1bfd21bfdb97b4571823b614f694)
`lodash.uniq@4.4.0`
([@jdalton](https://github.com/jdalton))
* [`8cc027e`](https://github.com/npm/npm/commit/8cc027e5e81623260a49b31fe406ce483258b203)
`lodash.union@4.5.0`
([@jdalton](https://github.com/jdalton))
* [`0a6c1e4`](https://github.com/npm/npm/commit/0a6c1e4302a153fb055f495043ed33afd8324193)
`lodash.without@4.3.0`
([@jdalton](https://github.com/jdalton))
* [`4ab0181`](https://github.com/npm/npm/commit/4ab0181fca2eda18888b865ef691b83d30fb0c33)
`lodash.clonedeep@4.4.1`
([@jdalton](https://github.com/jdalton))
### v3.10.6 (2016-07-07)
This week we have a bunch of bug fixes for ya! A shrinkwrap regression
introduced in 3.10.0, better lifecycle `PATH` behavior, improvements when
working with registries other than `registry.npmjs.org` and a fix for
hopefully the last _don't print a progress bar over my interactive thingy_
bug.
#### SHRINKWRAP AND DEV DEPENDENCIES
The rewrite in 3.10.0 triggered a bug where dependencies of devDependencies
would be included in your shrinkwrap even if you didn't request
devDependencies.
* [`2484529`](https://github.com/npm/npm/commit/2484529ab56a42e5d6f13c48006f39a596d9e327)
[#13308](https://github.com/npm/npm/pull/13308)
Fix bug where deps of devDependencies would be incorrectly included in
shrinkwraps.
([@iarna](https://github.com/iarna))
#### BETTER PATH LIFECYCLE BEHAVIOR
We've been around the details on this one a few times in recent months and
hopefully this will bring is to where we want to be.
* [`81051a9`](https://github.com/npm/npm/commit/81051a90eee66a843f76eb8cccedbb1d0a5c1f47)
[#12968](https://github.com/npm/npm/pull/12968)
When running lifecycle scripts, only prepend directory containing the node
binary to PATH if not already in PATH.
([@segrey](https://github.com/segrey))
#### BETTER INTERACTIONS WITH THIRD PARTY REGISTRIES
* [`071193c`](https://github.com/npm/npm/commit/071193c8e193767dd1656cb27556cb3751d77a3b)
[#10869](https://github.com/npm/npm/pull/10869)
If the registry returns a list of versions some of which are invalid, skip
those when picking a version to install. This can't happen with
registry.npmjs.org as it will normalize versions published with it, but it
can happen with other registries.
([@gregersrygg](https://github.com/gregersrygg))
#### ONE LAST TOO-MUCH-PROGRESS CORNER
* [`1244cc1`](https://github.com/npm/npm/commit/1244cc16dc5a0536acf26816a1deeb8e221d67eb)
[#13305](https://github.com/npm/npm/pull/13305)
Disable progress bar in `npm edit` and `npm config edit`.
([@watilde](https://github.com/watilde))
#### HTML DOCS IMPROVEMENTS
* [`58da923`](https://github.com/npm/npm/commit/58da9234ae72a5474b997f890a1155ee9785e6f1)
[#13225](https://github.com/npm/npm/issues/13225)
Fix HTML character set declaration in generated HTML documentation.
([@KenanY](https://github.com/KenanY))
* [`d1f0bf4`](https://github.com/npm/npm/commit/d1f0bf4303566f8690502034f82bbb449850958d)
[#13250](https://github.com/npm/npm/pull/13250)
Optimize png images using zopflipng.
([@PeterDaveHello](https://github.com/PeterDaveHello))
#### DEPENDENCY UPDATES (THAT MATTER)
* [`c7567e5`](https://github.com/npm/npm/commit/c7567e58618b63f97884afa104d2f560c9272dd5)
[npm/npm-user-validate#9](https://github.com/npm/npm-user-validate/pull/9)
`npm-user-validate@0.1.5`:
Lower the username length limits to 214 from 576 to match `registry.npmjs.org`'s limits.
([@aredridel](https://github.com/aredridel))
* [`22802c9`](https://github.com/npm/npm/commit/22802c9db3cf990c905e8f61304db9b5571d7964)
[#isaacs/rimraf](https://github.com/npm/npm/issues/isaacs/rimraf)
`rimraf@2.5.3`:
Fixes EPERM errors when running `lstat` on read-only directories.
([@isaacs](https://github.com/isaacs))
* [`ce6406f`](https://github.com/npm/npm/commit/ce6406f4b6c4dffbb5cd8a3c049f6663a5665522)
`glob@7.0.5`:
Forces the use of `minimatch` to 3.0.2, which improved handling of long and
complicated patterns.
([@isaacs](https://github.com/isaacs))
### v3.10.5 (2016-07-05)
This is a fix to this week's testing release to correct the update of
`node-gyp` which somehow got mangled.
* [`ca97ce2`](https://github.com/npm/npm/commit/ca97ce2e8d8ba44c445b39ffa40daf397d5601b3)
[#13256](https://github.com/npm/npm/issues/13256)
Fresh reinstall of `node-gyp@3.4.0`.
([@zkat](https://github.com/zkat))
### v3.10.4 (2016-06-30)
Hey y'all! This release includes a bunch of fixes we've been working on as we
continue on our `big-bug` push. There's still [a lot of it left to
do](https://github.com/npm/npm/labels/big-bug), but once this is done, things
should just generally be more stable, installs should be more reliable and
correct, and we'll be able to move on to more future work. We'll keep doing our
best! 🙌
#### RACES AS WACKY AS [REDLINE](https://en.wikipedia.org/wiki/Redline_\(2009_film\))
Races are notoriously hard to squash, and tend to be some of the more common
recurring bugs we see on the CLI. [@julianduque](https://github.com/julianduque)
did some pretty awesome [sleuthing
work](https://github.com/npm/npm/issues/12669) to track down a cache race and
helpfully submitted a patch. There were some related races in the same area that
also got fixed at around the same time, mostly affecting Windows users.
* [`2a37c97`](https://github.com/npm/npm/commit/2a37c97121483db2b6f817fe85c2a5a77b76080e)
[#12669](https://github.com/npm/npm/issues/12669)
[#13023](https://github.com/npm/npm/pull/13023)
The CLI is pretty aggressive about correcting permissions across the cache
whenever it writes to it. This aggressiveness caused a couple of races where
temporary cache files would get picked up by `fs.readdir`, and removed before
`chownr` was called on them, causing `ENOENT` errors. While the solution might
seem a bit hamfisted, it's actually perfectly safe and appropriate in this
case to just ignore those resulting `ENOENT` errors.
([@julianduque](https://github.com/julianduque))
* [`ea018b9`](https://github.com/npm/npm/commit/ea018b9e3856d1798d199ae3ebce4ed07eea511b)
[#13023](https://github.com/npm/npm/pull/13023)
If a user were to have SUDO_UID and SUDO_GID, they'd be able to get into a
pretty weird state. This fixes that corner case.
([@zkat](https://github.com/zkat))
* [`703ca3a`](https://github.com/npm/npm/commit/703ca3abbf4f1cb4dff08be32acd2142d5493482)
[#13023](https://github.com/npm/npm/pull/13023)
A missing `return` was causing `chownr` to be called on Windows, even though
that's literally pointless, and causing crashes in the process, instead of
short-circuiting. This was entirely dependent on which callback happened to be
called first, and in some cases, the failing one would win the race. This
should prevent this from happening in the future.
([@zkat](https://github.com/zkat))
* [`69267f4`](https://github.com/npm/npm/commit/69267f4fbd1467ce576f173909ced361f8fe2a9d)
[#13023](https://github.com/npm/npm/pull/13023)
Added tests to verify `correct-mkdir` race patch.
([@zkat](https://github.com/zkat))
* [`e5f50ea`](https://github.com/npm/npm/commit/e5f50ea9f84fe8cac6978d18f7efdf43834928e7)
[#13023](https://github.com/npm/npm/pull/13023)
Added tests to verify `addLocal` race patch.
([@zkat](https://github.com/zkat))
#### SHRINKWRAP IS COMPLICATED BUT IT'S BETTER NOW
[@iarna](https://github.com/iarna) did some heroic hacking to refactor a bunch
of `shrinkwrap`-related bits and fixed some resolution and pathing issues that
were biting users. The code around that stuff got more readable/maintainable in
the process, too!
* [`346bba1`](https://github.com/npm/npm/commit/346bba1e1fee9cc814b07c56f598a73be5c21686)
[#13214](https://github.com/npm/npm/pull/13214)
Resolve local dependencies in `npm-shrinkwrap.json` relative to the top of the
tree.
([@iarna](https://github.com/iarna))
* [`4a67fdb`](https://github.com/npm/npm/commit/4a67fdbd0f160deb6644a9c4c5b587357db04d2d)
[#13213](https://github.com/npm/npm/pull/13213)
If you run `npm install modulename` it should, if a `npm-shrinkwrap.json` is
present, use the version found there. If not, it'll use the version found in
your `package.json`, and failing *that*, use `latest`.
This fixes a case where the first check was being bypassed because version
resolution was being done prior to loading the shrinkwrap, and so checks to
match the shrinkwrap version couldn't succeed.
([@iarna](https://github.com/iarna))
* [`afa2133`](https://github.com/npm/npm/commit/afa2133a5d8ac4f6f44cdc6083d89ad7f946f5bb)
[#13214](https://github.com/npm/npm/pull/13214)
Refactor shrinkwrap specifier lookup into shared function.
([@iarna](https://github.com/iarna))
* [`2820b56`](https://github.com/npm/npm/commit/2820b56a43e1cc1e12079a4c886f6c14fe8c4f10)
[#13214](https://github.com/npm/npm/pull/13214)
Refactor operations in `inflate-shrinkwrap.js` into separate functions for
added clarity.
([@iarna](https://github.com/iarna))
* [`ee5bfb3`](https://github.com/npm/npm/commit/ee5bfb3e56ee7ae582bec9f741f32b224c279947)
Fix Windows path issue in a shrinkwrap test.
([@zkat](https://github.com/zkat))
#### OTHER BUGFIXES
* [`a11a7b2`](https://github.com/npm/npm/commit/a11a7b2e7df9478ac9101b06eead4a74c41a648d)
[#13212](https://github.com/npm/npm/pull/13212)
Resolve local paths passed in through the command line relative to current
directory, instead of relative to the `package.json`.
([@iarna](https://github.com/iarna))
#### DEPENDENCY UPDATES
* [`900a5b7`](https://github.com/npm/npm/commit/900a5b7f18b277786397faac05853c030263feb8)
[#13199](https://github.com/npm/npm/pull/13199)
[`node-gyp@3.4.0`](https://github.com/nodejs/node-gyp/blob/master/CHANGELOG.md):
AIX, Visual Studio 2015, and logging improvements. Oh my~!
([@rvagg](https://github.com/rvagg))
#### DOCUMENTATION FIXES
* [`c6942a7`](https://github.com/npm/npm/commit/c6942a7d6acb2b8c73206353bbec03380a056af4)
[#13134](https://github.com/npm/npm/pull/13134)
Fixed a few typos in `CHANGELOG.md`.
([@watilde](https://github.com/watilde))
* [`e63d913`](https://github.com/npm/npm/commit/e63d913127731ece56dcd69c7c0182af21be58f8)
[#13156](https://github.com/npm/npm/pull/13156)
Fix old reference to `doc/install` in a source comment.
([@sheerun](https://github.com/sheerun))
* [`099d23c`](https://github.com/npm/npm/commit/099d23cc8f38b524dc19a25857b2ebeca13c49d6)
[#13113](https://github.com/npm/npm/issues/13113)
[#13189](https://github.com/npm/npm/pull/13189)
Fixes a link to `npm-tag(3)` that was breaking to instead point to
`npm-dist-tag(1)`, as reported by [@SimenB](https://github.com/SimenB)
([@macdonst](https://github.com/macdonst))
### v3.10.3 (2016-06-23)
Given that we had not one, but two updates to our RC this past week, it
@ -88,12 +678,12 @@ unrecoverable errors then npm would crash instead of printing the error.
* [`6a33b2c`](https://github.com/npm/npm/commit/6a33b2c13f637a41e25cd0339925bc430b50358a)
[#13115](https://github.com/npm/npm/issues/13115)
Ensure that errors reading the package tree for `outdated` does not result
in crashs.
in crashes.
([@iarna](https://github.com/iarna))
### v3.10.1 (2016-06-17):
There are two very important bug fixes and one long-awaited (and signifcant!)
There are two very important bug fixes and one long-awaited (and significant!)
deprecation in this hotfix release. [Hold on.](http://butt.holdings/)
#### *WHOA*
@ -225,7 +815,7 @@ Node.js 0.10 and 0.12, it's unlikely that patches that rely on ES 2015
functionality will land anytime soon.
Looking forward, the team's current plan is to drop support for Node.js 0.10
when its LTS maintenace window expires in October, 2016, and 0.12 when its
when its LTS maintenance window expires in October, 2016, and 0.12 when its
maintenance / LTS window ends at the end of 2016. We will also drop support for
Node.js 5.x when Node.js 6 becomes LTS and Node.js 7 is released, also in the
October-December 2016 timeframe.

2
deps/npm/README.md

@ -9,7 +9,7 @@ Much more info available via `npm help` once it's installed.
## IMPORTANT
**You need node v0.8 or higher to run this program.**
**You need node v0.10 or higher to run this program.**
To install an old **and unsupported** version of npm that works on node 0.3
and prior, clone the git repo and dig through the old tags and branches.

1
deps/npm/doc/cli/npm-install.md

@ -183,6 +183,7 @@ after packing it up into a tarball (b).
to the environment when running git:
* `GIT_ASKPASS`
* `GIT_EXEC_PATH`
* `GIT_PROXY_COMMAND`
* `GIT_SSH`
* `GIT_SSH_COMMAND`

3
deps/npm/doc/cli/npm-link.md

@ -14,7 +14,8 @@ Package linking is a two-step process.
First, `npm link` in a package folder will create a symlink in the global folder
`{prefix}/lib/node_modules/<package>` that links to the package where the `npm
link` command was executed. (see `npm-config(7)` for the value of `prefix`).
link` command was executed. (see `npm-config(7)` for the value of `prefix`). It
will also link any bins in the package to `{prefix}/bin/{name}`.
Next, in some other location, `npm link package-name` will create a
symbolic link from globally-installed `package-name` to `node_modules/`

4
deps/npm/doc/cli/npm-run-script.md

@ -41,8 +41,8 @@ you should write:
instead of `"scripts": {"test": "node_modules/.bin/tap test/\*.js"}` to run your tests.
`npm run` sets the `NODE` environment variable to the `node` executable with
which `npm` is executed, and adds the directory within which it resides to the
`PATH`, too.
which `npm` is executed. Also, the directory within which it resides is added to the
`PATH`, if the `node` executable is not in the `PATH`.
If you try to run a script without having a `node_modules` directory and it fails,
you will be given a warning to run `npm install`, just in case you've forgotten.

10
deps/npm/doc/cli/npm-shrinkwrap.md

@ -137,11 +137,11 @@ To add or update a dependency in a shrinkwrapped package:
1. Run `npm install` in the package root to install the current
versions of all dependencies.
2. Add or update dependencies. `npm install --save` each new or updated
package individually to update the `package.json` and the shrinkwrap.
Note that they must be explicitly named in order to be installed: running
`npm install` with no arguments will merely reproduce the existing
shrinkwrap.
2. Add or update dependencies. `npm install --save` or `npm install --save-dev`
each new or updated package individually to update the `package.json` and
the shrinkwrap. Note that they must be explicitly named in order to be
installed: running `npm install` with no arguments will merely reproduce
the existing shrinkwrap.
3. Validate that the package works as expected with the new
dependencies.
4. Commit the new `npm-shrinkwrap.json`, and publish your package.

2
deps/npm/doc/cli/npm-tag.md

@ -57,5 +57,5 @@ that do not begin with a number or the letter `v`.
* npm-registry(7)
* npm-config(1)
* npm-config(7)
* npm-tag(3)
* npm-dist-tag(1)
* npmrc(5)

10
deps/npm/doc/files/npmrc.md

@ -41,6 +41,16 @@ sensitive credentials, they must be readable and writable _only_ by your user
account (i.e. must have a mode of `0600`), otherwise they _will be ignored by
npm!_
#### Comments
Lines in `.npmrc` files are interpreted as comments when they begin with a `;` or `#` character. `.npmrc` files are parsed by [npm/ini](https://github.com/npm/ini), which specifies this comment syntax.
For example:
# last modified: 01 Jan 2016
; Set a new registry for a scoped package
@myscope:registry=https://mycustomregistry.example.org
### Per-project config file
When working locally in a project, a `.npmrc` file in the root of the

5
deps/npm/doc/files/package.json.md

@ -203,6 +203,7 @@ Conversely, some files are always ignored:
* `.npmrc`
* `node_modules`
* `config.gypi`
* `*.orig`
## main
@ -247,6 +248,10 @@ would be the same as this:
, "version": "1.2.5"
, "bin" : { "my-program" : "./path/to/program" } }
Please make sure that your file(s) referenced in `bin` starts with
`#!/usr/bin/env node`, otherwise the scripts are started without the node
executable!
## man
Specify either a single file or an array of filenames to put in place for the

10
deps/npm/doc/misc/npm-config.md

@ -26,10 +26,12 @@ same.
The four relevant files are:
* per-project config file (/path/to/my/project/.npmrc)
* per-user config file (~/.npmrc)
* global config file ($PREFIX/etc/npmrc)
* npm builtin config file (/path/to/npm/npmrc)
* per-project configuration file (`/path/to/my/project/.npmrc`)
* per-user configuration file (defaults to `$HOME/.npmrc`; configurable via CLI
option `--userconfig` or environment variable `$NPM_CONF_USERCONFIG`)
* global configuration file (defaults to `$PREFIX/etc/npmrc`; configurable via
CLI option `--globalconfig` or environment variable `$NPM_CONF_GLOBALCONFIG`)
* npm's built-in configuration file (`/path/to/npm/npmrc`)
See npmrc(5) for more details.

19
deps/npm/doc/misc/npm-scope.md

@ -13,9 +13,10 @@ followed by a slash, e.g.
Scopes are a way of grouping related packages together, and also affect a few
things about the way npm treats the package.
Scoped packages are supported by the public npm registry. The npm
client is backwards-compatible with un-scoped registries, so it can be
used to work with scoped and un-scoped registries at the same time.
Scoped packages can be published and installed as of `npm@2` and are supported
by the primary npm registry. The npm client is backwards-compatible with
un-scoped registries, so it can be used to work with scoped and un-scoped
registries at the same time.
## Installing scoped packages
@ -51,14 +52,16 @@ just specifying to require the module `mypackage` in the folder called `@myorg`.
## Publishing scoped packages
Scoped packages can be published to any registry that supports them, including
the public npm registry.
Scoped packages can be published from the CLI as of `npm@2` and can be
published to any registry that supports them, including the primary npm
registry.
(As of 2015-04-19, and with npm 2.0 or better, the public npm registry **does** support scoped packages)
(As of 2015-04-19, and with npm 2.0 or better, the primary npm registry
**does** support scoped packages)
If you wish, you may associate a scope with a registry; see below.
### Publishing public scoped packages to the public npm registry
### Publishing public scoped packages to the primary npm registry
To publish a public scoped package, you must specify `--access public` with
the initial publication. This will publish the package and set access
@ -78,7 +81,7 @@ desired, with `npm access` or on the npmjs.com website.
## Associating a scope with a registry
Scopes can be associated with a separate registry. This allows you to
seamlessly use a mix of packages from the public npm registry and one or more
seamlessly use a mix of packages from the primary npm registry and one or more
private registries, such as npm Enterprise.
You can associate a scope with a registry at login, e.g.

8
deps/npm/doc/misc/npm-scripts.md

@ -19,10 +19,12 @@ following scripts:
Run BEFORE the package is uninstalled.
* postuninstall:
Run AFTER the package is uninstalled.
* preversion, version:
Run BEFORE bump the package version.
* preversion:
Run BEFORE bumping the package version.
* version:
Run AFTER bumping the package version, but BEFORE commit.
* postversion:
Run AFTER bump the package version.
Run AFTER bumping the package version, and AFTER commit.
* pretest, test, posttest:
Run by the `npm test` command.
* prestop, stop, poststop:

39
deps/npm/doc/misc/semver.md

@ -4,6 +4,8 @@ semver(7) -- The semantic versioner for npm
## Usage
$ npm install semver
$ node
var semver = require('semver')
semver.valid('1.2.3') // '1.2.3'
semver.valid('a.b.c') // null
@ -16,18 +18,35 @@ As a command-line utility:
$ semver -h
Usage: semver <version> [<version> [...]] [-r <range> | -i <inc> | --preid <identifier> | -l | -rv]
Test if version(s) satisfy the supplied range(s), and sort them.
SemVer 5.1.0
Multiple versions or ranges may be supplied, unless increment
option is specified. In that case, only a single version may
be used, and it is incremented by the specified level
A JavaScript implementation of the http://semver.org/ specification
Copyright Isaac Z. Schlueter
Usage: semver [options] <version> [<version> [...]]
Prints valid versions sorted by SemVer precedence
Options:
-r --range <range>
Print versions that match the specified range.
-i --increment [<level>]
Increment a version by the specified level. Level can
be one of: major, minor, patch, premajor, preminor,
prepatch, or prerelease. Default level is 'patch'.
Only one version may be specified.
--preid <identifier>
Identifier to be used to prefix premajor, preminor,
prepatch or prerelease version increments.
-l --loose
Interpret versions and ranges loosely
Program exits successfully if any valid version satisfies
all supplied ranges, and prints all satisfying versions.
If no versions are valid, or ranges are not satisfied,
then exits failure.
If no satisfying versions are found, then exits failure.
Versions are printed in ascending order, so supplying
multiple versions to the utility will just sort them.
@ -242,7 +261,7 @@ simple ::= primitive | partial | tilde | caret
primitive ::= ( '<' | '>' | '>=' | '<=' | '=' | ) partial
partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
xr ::= 'x' | 'X' | '*' | nr
nr ::= '0' | ['1'-'9']['0'-'9']+
nr ::= '0' | ['1'-'9'] ( ['0'-'9'] ) *
tilde ::= '~' partial
caret ::= '^' partial
qualifier ::= ( '-' pre )? ( '+' build )?
@ -272,6 +291,8 @@ 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.
* `prerelease(v)`: Returns an array of prerelease components, or null
if none exist. Example: `prerelease('1.2.3-alpha.1') -> ['alpha', 1]`
* `major(v)`: Return the major version number.
* `minor(v)`: Return the minor version number.
* `patch(v)`: Return the patch version number.
@ -306,6 +327,8 @@ strings that they parse.
range.
* `maxSatisfying(versions, range)`: Return the highest version in the list
that satisfies the range, or `null` if none of them do.
* `minSatisfying(versions, range)`: Return the lowest version in the list
that satisfies the range, or `null` if none of them do.
* `gtr(version, range)`: Return `true` if version is greater than all the
versions possible in the range.
* `ltr(version, range)`: Return `true` if version is less than all the

6
deps/npm/html/doc/README.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>README</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/README.html">
<script async=true src="../../static/toc.js"></script>
@ -15,7 +15,7 @@
<p>This is just enough info to get you up and running.</p>
<p>Much more info available via <code>npm help</code> once it&#39;s installed.</p>
<h2 id="important">IMPORTANT</h2>
<p><strong>You need node v0.8 or higher to run this program.</strong></p>
<p><strong>You need node v0.10 or higher to run this program.</strong></p>
<p>To install an old <strong>and unsupported</strong> version of npm that works on node 0.3
and prior, clone the git repo and dig through the old tags and branches.</p>
<p><strong>npm is configured to use npm, Inc.&#39;s public package registry at
@ -126,5 +126,5 @@ will no doubt tell you to put the output in a gist or email.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@3.10.3</p>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-access.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-access</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-access.html">
<script async=true src="../../static/toc.js"></script>
@ -84,5 +84,5 @@ with an HTTP 402 status code (logically enough), unless you use
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-access &mdash; npm@3.10.3</p>
<p id="footer">npm-access &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-adduser.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-adduser</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-adduser.html">
<script async=true src="../../static/toc.js"></script>
@ -72,5 +72,5 @@ over any global configuration.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-adduser &mdash; npm@3.10.3</p>
<p id="footer">npm-adduser &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-bin.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-bin</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-bin.html">
<script async=true src="../../static/toc.js"></script>
@ -35,5 +35,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bin &mdash; npm@3.10.3</p>
<p id="footer">npm-bin &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-bugs.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-bugs</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-bugs.html">
<script async=true src="../../static/toc.js"></script>
@ -55,5 +55,5 @@ a <code>package.json</code> in the current folder and use the <code>name</code>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bugs &mdash; npm@3.10.3</p>
<p id="footer">npm-bugs &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-build.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-build</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-build.html">
<script async=true src="../../static/toc.js"></script>
@ -40,5 +40,5 @@ directly, run:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-build &mdash; npm@3.10.3</p>
<p id="footer">npm-build &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-bundle.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-bundle</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-bundle.html">
<script async=true src="../../static/toc.js"></script>
@ -31,5 +31,5 @@ install packages into the local space.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bundle &mdash; npm@3.10.3</p>
<p id="footer">npm-bundle &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-cache.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-cache</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-cache.html">
<script async=true src="../../static/toc.js"></script>
@ -81,5 +81,5 @@ they do not make an HTTP request to the registry.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-cache &mdash; npm@3.10.3</p>
<p id="footer">npm-cache &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-completion.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-completion</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-completion.html">
<script async=true src="../../static/toc.js"></script>
@ -43,5 +43,5 @@ completions based on the arguments.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-completion &mdash; npm@3.10.3</p>
<p id="footer">npm-completion &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-config.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-config</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-config.html">
<script async=true src="../../static/toc.js"></script>
@ -67,5 +67,5 @@ global config.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-config &mdash; npm@3.10.3</p>
<p id="footer">npm-config &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-dedupe.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-dedupe</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-dedupe.html">
<script async=true src="../../static/toc.js"></script>
@ -61,5 +61,5 @@ result in new modules being installed.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-dedupe &mdash; npm@3.10.3</p>
<p id="footer">npm-dedupe &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-deprecate.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-deprecate</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-deprecate.html">
<script async=true src="../../static/toc.js"></script>
@ -38,5 +38,5 @@ something like this:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-deprecate &mdash; npm@3.10.3</p>
<p id="footer">npm-deprecate &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-dist-tag.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-dist-tag</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-dist-tag.html">
<script async=true src="../../static/toc.js"></script>
@ -87,5 +87,5 @@ begin with a number or the letter <code>v</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-dist-tag &mdash; npm@3.10.3</p>
<p id="footer">npm-dist-tag &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-docs.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-docs</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-docs.html">
<script async=true src="../../static/toc.js"></script>
@ -56,5 +56,5 @@ the current folder and use the <code>name</code> property.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-docs &mdash; npm@3.10.3</p>
<p id="footer">npm-docs &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-edit.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-edit</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-edit.html">
<script async=true src="../../static/toc.js"></script>
@ -49,5 +49,5 @@ or <code>&quot;notepad&quot;</code> on Windows.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-edit &mdash; npm@3.10.3</p>
<p id="footer">npm-edit &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-explore.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-explore</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-explore.html">
<script async=true src="../../static/toc.js"></script>
@ -49,5 +49,5 @@ Windows</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-explore &mdash; npm@3.10.3</p>
<p id="footer">npm-explore &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-help-search.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-help-search</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-help-search.html">
<script async=true src="../../static/toc.js"></script>
@ -45,5 +45,5 @@ where the terms were found in the documentation.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-help-search &mdash; npm@3.10.3</p>
<p id="footer">npm-help-search &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-help.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-help</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-help.html">
<script async=true src="../../static/toc.js"></script>
@ -50,5 +50,5 @@ matches are equivalent to specifying a topic name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-help &mdash; npm@3.10.3</p>
<p id="footer">npm-help &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-init.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-init</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-init.html">
<script async=true src="../../static/toc.js"></script>
@ -48,5 +48,5 @@ defaults and not prompt you for any options.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-init &mdash; npm@3.10.3</p>
<p id="footer">npm-init &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/cli/npm-install-test.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-install-test</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-install-test.html">
<script async=true src="../../static/toc.js"></script>
@ -42,4 +42,5 @@ takes exactly the same arguments as <code>npm install</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-install-test &mdash; npm@3.10.3</p>
<p id="footer">npm-install-test &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/cli/npm-install.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-install</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-install.html">
<script async=true src="../../static/toc.js"></script>
@ -152,6 +152,7 @@ fetch the package by name if it is not valid.
to the environment when running git:</p>
<ul>
<li><code>GIT_ASKPASS</code></li>
<li><code>GIT_EXEC_PATH</code></li>
<li><code>GIT_PROXY_COMMAND</code></li>
<li><code>GIT_SSH</code></li>
<li><code>GIT_SSH_COMMAND</code></li>
@ -312,5 +313,5 @@ affects a real use-case, it will be investigated.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-install &mdash; npm@3.10.3</p>
<p id="footer">npm-install &mdash; npm@3.10.8</p>

7
deps/npm/html/doc/cli/npm-link.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-link</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-link.html">
<script async=true src="../../static/toc.js"></script>
@ -19,7 +19,8 @@ alias: npm ln
<p>Package linking is a two-step process.</p>
<p>First, <code>npm link</code> in a package folder will create a symlink in the global folder
<code>{prefix}/lib/node_modules/&lt;package&gt;</code> that links to the package where the <code>npm
link</code> command was executed. (see <code><a href="../misc/npm-config.html">npm-config(7)</a></code> for the value of <code>prefix</code>).</p>
link</code> command was executed. (see <code><a href="../misc/npm-config.html">npm-config(7)</a></code> for the value of <code>prefix</code>). It
will also link any bins in the package to <code>{prefix}/bin/{name}</code>.</p>
<p>Next, in some other location, <code>npm link package-name</code> will create a
symbolic link from globally-installed <code>package-name</code> to <code>node_modules/</code>
of the current folder.</p>
@ -73,5 +74,5 @@ include that scope, e.g.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-link &mdash; npm@3.10.3</p>
<p id="footer">npm-link &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-logout.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-logout</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-logout.html">
<script async=true src="../../static/toc.js"></script>
@ -51,5 +51,5 @@ it takes precedence.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-logout &mdash; npm@3.10.3</p>
<p id="footer">npm-logout &mdash; npm@3.10.8</p>

6
deps/npm/html/doc/cli/npm-ls.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-ls</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-ls.html">
<script async=true src="../../static/toc.js"></script>
@ -21,7 +21,7 @@ installed, as well as their dependencies, in a tree-structure.</p>
limit the results to only the paths to the packages named. Note that
nested packages will <em>also</em> show the paths to the specified packages.
For example, running <code>npm ls promzard</code> in npm&#39;s source tree will show:</p>
<pre><code>npm@3.10.3 /path/to/npm
<pre><code>npm@3.10.8 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
</code></pre><p>It will print out extraneous, missing, and invalid packages.</p>
@ -104,5 +104,5 @@ project.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-ls &mdash; npm@3.10.3</p>
<p id="footer">npm-ls &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-outdated.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-outdated</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-outdated.html">
<script async=true src="../../static/toc.js"></script>
@ -116,5 +116,5 @@ project.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-outdated &mdash; npm@3.10.3</p>
<p id="footer">npm-outdated &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-owner.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-owner</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-owner.html">
<script async=true src="../../static/toc.js"></script>
@ -51,5 +51,5 @@ that is not implemented at this time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-owner &mdash; npm@3.10.3</p>
<p id="footer">npm-owner &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-pack.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-pack</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-pack.html">
<script async=true src="../../static/toc.js"></script>
@ -41,5 +41,5 @@ overwritten the second time.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-pack &mdash; npm@3.10.3</p>
<p id="footer">npm-pack &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/cli/npm-ping.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-ping</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-ping.html">
<script async=true src="../../static/toc.js"></script>
@ -32,4 +32,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-ping &mdash; npm@3.10.3</p>
<p id="footer">npm-ping &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-prefix.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-prefix</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-prefix.html">
<script async=true src="../../static/toc.js"></script>
@ -38,5 +38,5 @@ to contain a package.json file unless <code>-g</code> is also specified.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-prefix &mdash; npm@3.10.3</p>
<p id="footer">npm-prefix &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-prune.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-prune</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-prune.html">
<script async=true src="../../static/toc.js"></script>
@ -40,5 +40,5 @@ negate <code>NODE_ENV</code> being set to <code>production</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-prune &mdash; npm@3.10.3</p>
<p id="footer">npm-prune &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-publish.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-publish</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-publish.html">
<script async=true src="../../static/toc.js"></script>
@ -76,5 +76,5 @@ packs them into a tarball to be uploaded to the registry.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-publish &mdash; npm@3.10.3</p>
<p id="footer">npm-publish &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-rebuild.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-rebuild</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-rebuild.html">
<script async=true src="../../static/toc.js"></script>
@ -35,5 +35,5 @@ the new binary.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-rebuild &mdash; npm@3.10.3</p>
<p id="footer">npm-rebuild &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-repo.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-repo</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-repo.html">
<script async=true src="../../static/toc.js"></script>
@ -41,5 +41,5 @@ a <code>package.json</code> in the current folder and use the <code>name</code>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-repo &mdash; npm@3.10.3</p>
<p id="footer">npm-repo &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-restart.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-restart</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-restart.html">
<script async=true src="../../static/toc.js"></script>
@ -53,5 +53,5 @@ behavior will be accompanied by an increase in major version number</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-restart &mdash; npm@3.10.3</p>
<p id="footer">npm-restart &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-root.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-root</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-root.html">
<script async=true src="../../static/toc.js"></script>
@ -35,5 +35,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-root &mdash; npm@3.10.3</p>
<p id="footer">npm-root &mdash; npm@3.10.8</p>

8
deps/npm/html/doc/cli/npm-run-script.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-run-script</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-run-script.html">
<script async=true src="../../static/toc.js"></script>
@ -39,8 +39,8 @@ you should write:</p>
<pre><code>&quot;scripts&quot;: {&quot;test&quot;: &quot;tap test/\*.js&quot;}
</code></pre><p>instead of <code>&quot;scripts&quot;: {&quot;test&quot;: &quot;node_modules/.bin/tap test/\*.js&quot;}</code> to run your tests.</p>
<p><code>npm run</code> sets the <code>NODE</code> environment variable to the <code>node</code> executable with
which <code>npm</code> is executed, and adds the directory within which it resides to the
<code>PATH</code>, too.</p>
which <code>npm</code> is executed. Also, the directory within which it resides is added to the
<code>PATH</code>, if the <code>node</code> executable is not in the <code>PATH</code>.</p>
<p>If you try to run a script without having a <code>node_modules</code> directory and it fails,
you will be given a warning to run <code>npm install</code>, just in case you&#39;ve forgotten.</p>
<h2 id="see-also">SEE ALSO</h2>
@ -63,5 +63,5 @@ you will be given a warning to run <code>npm install</code>, just in case you&#3
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-run-script &mdash; npm@3.10.3</p>
<p id="footer">npm-run-script &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-search.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-search</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-search.html">
<script async=true src="../../static/toc.js"></script>
@ -57,5 +57,5 @@ Pass a different registry url such as the default above in order to override thi
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-search &mdash; npm@3.10.3</p>
<p id="footer">npm-search &mdash; npm@3.10.8</p>

14
deps/npm/html/doc/cli/npm-shrinkwrap.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-shrinkwrap</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-shrinkwrap.html">
<script async=true src="../../static/toc.js"></script>
@ -121,11 +121,11 @@ your package.</li>
<ol>
<li>Run <code>npm install</code> in the package root to install the current
versions of all dependencies.</li>
<li>Add or update dependencies. <code>npm install --save</code> each new or updated
package individually to update the <code>package.json</code> and the shrinkwrap.
Note that they must be explicitly named in order to be installed: running
<code>npm install</code> with no arguments will merely reproduce the existing
shrinkwrap.</li>
<li>Add or update dependencies. <code>npm install --save</code> or <code>npm install --save-dev</code>
each new or updated package individually to update the <code>package.json</code> and
the shrinkwrap. Note that they must be explicitly named in order to be
installed: running <code>npm install</code> with no arguments will merely reproduce
the existing shrinkwrap.</li>
<li>Validate that the package works as expected with the new
dependencies.</li>
<li>Commit the new <code>npm-shrinkwrap.json</code>, and publish your package.</li>
@ -176,5 +176,5 @@ contents rather than versions.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-shrinkwrap &mdash; npm@3.10.3</p>
<p id="footer">npm-shrinkwrap &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-star.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-star</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-star.html">
<script async=true src="../../static/toc.js"></script>
@ -36,5 +36,5 @@ a vaguely positive way to show that you care.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-star &mdash; npm@3.10.3</p>
<p id="footer">npm-star &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-stars.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-stars</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-stars.html">
<script async=true src="../../static/toc.js"></script>
@ -36,5 +36,5 @@ you will most certainly enjoy this command.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-stars &mdash; npm@3.10.3</p>
<p id="footer">npm-stars &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-start.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-start</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-start.html">
<script async=true src="../../static/toc.js"></script>
@ -39,5 +39,5 @@ more details.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-start &mdash; npm@3.10.3</p>
<p id="footer">npm-start &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-stop.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-stop</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-stop.html">
<script async=true src="../../static/toc.js"></script>
@ -34,5 +34,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-stop &mdash; npm@3.10.3</p>
<p id="footer">npm-stop &mdash; npm@3.10.8</p>

6
deps/npm/html/doc/cli/npm-tag.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-tag</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-tag.html">
<script async=true src="../../static/toc.js"></script>
@ -48,7 +48,7 @@ that do not begin with a number or the letter <code>v</code>.</p>
<li><a href="../misc/npm-registry.html">npm-registry(7)</a></li>
<li><a href="../cli/npm-config.html">npm-config(1)</a></li>
<li><a href="../misc/npm-config.html">npm-config(7)</a></li>
<li><a href="../api/npm-tag.html">npm-tag(3)</a></li>
<li><a href="../cli/npm-dist-tag.html">npm-dist-tag(1)</a></li>
<li><a href="../files/npmrc.html">npmrc(5)</a></li>
</ul>
@ -63,5 +63,5 @@ that do not begin with a number or the letter <code>v</code>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-tag &mdash; npm@3.10.3</p>
<p id="footer">npm-tag &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/cli/npm-team.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-team</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-team.html">
<script async=true src="../../static/toc.js"></script>
@ -67,4 +67,5 @@ use the <code>npm access</code> command to grant or revoke the appropriate permi
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-team &mdash; npm@3.10.3</p>
<p id="footer">npm-team &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-test.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-test</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-test.html">
<script async=true src="../../static/toc.js"></script>
@ -38,5 +38,5 @@ true.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-test &mdash; npm@3.10.3</p>
<p id="footer">npm-test &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-uninstall.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-uninstall</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-uninstall.html">
<script async=true src="../../static/toc.js"></script>
@ -60,5 +60,5 @@ npm uninstall dtrace-provider --save-optional
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-uninstall &mdash; npm@3.10.3</p>
<p id="footer">npm-uninstall &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-unpublish.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-unpublish</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-unpublish.html">
<script async=true src="../../static/toc.js"></script>
@ -47,5 +47,5 @@ package again, a new version number must be used.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-unpublish &mdash; npm@3.10.3</p>
<p id="footer">npm-unpublish &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-update.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-update</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-update.html">
<script async=true src="../../static/toc.js"></script>
@ -118,5 +118,5 @@ be <em>downgraded</em>.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-update &mdash; npm@3.10.3</p>
<p id="footer">npm-update &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-version.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-version</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-version.html">
<script async=true src="../../static/toc.js"></script>
@ -100,5 +100,5 @@ and tag up to the server, and deletes the <code>build/temp</code> directory.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-version &mdash; npm@3.10.3</p>
<p id="footer">npm-version &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-view.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-view</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-view.html">
<script async=true src="../../static/toc.js"></script>
@ -86,5 +86,5 @@ the field name.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-view &mdash; npm@3.10.3</p>
<p id="footer">npm-view &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/cli/npm-whoami.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-whoami</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-whoami.html">
<script async=true src="../../static/toc.js"></script>
@ -33,5 +33,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-whoami &mdash; npm@3.10.3</p>
<p id="footer">npm-whoami &mdash; npm@3.10.8</p>

8
deps/npm/html/doc/cli/npm.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/cli/npm.html">
<script async=true src="../../static/toc.js"></script>
@ -13,7 +13,7 @@
<h2 id="synopsis">SYNOPSIS</h2>
<pre><code>npm &lt;command&gt; [args]
</code></pre><h2 id="version">VERSION</h2>
<p>3.10.3</p>
<p>3.10.8</p>
<h2 id="description">DESCRIPTION</h2>
<p>npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
@ -126,7 +126,7 @@ will no doubt tell you to put the output in a gist or email.</p>
<p><a href="http://blog.izs.me/">Isaac Z. Schlueter</a> ::
<a href="https://github.com/isaacs/">isaacs</a> ::
<a href="http://twitter.com/izs">@izs</a> ::
<a href="&#109;&#x61;&#x69;&#x6c;&#116;&#111;&#x3a;&#105;&#64;&#x69;&#x7a;&#115;&#x2e;&#109;&#101;">&#105;&#64;&#x69;&#x7a;&#115;&#x2e;&#109;&#101;</a></p>
<a href="&#x6d;&#97;&#x69;&#108;&#x74;&#111;&#58;&#105;&#64;&#105;&#122;&#x73;&#x2e;&#x6d;&#x65;">&#105;&#64;&#105;&#122;&#x73;&#x2e;&#x6d;&#x65;</a></p>
<h2 id="see-also">SEE ALSO</h2>
<ul>
<li><a href="../cli/npm-help.html">npm-help(1)</a></li>
@ -150,5 +150,5 @@ will no doubt tell you to put the output in a gist or email.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm &mdash; npm@3.10.3</p>
<p id="footer">npm &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/files/npm-folders.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-folders</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/files/npm-folders.html">
<script async=true src="../../static/toc.js"></script>
@ -182,5 +182,5 @@ cannot be found elsewhere. See <code><a href="../files/package.json.html">packa
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-folders &mdash; npm@3.10.3</p>
<p id="footer">npm-folders &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/files/npm-global.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-folders</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/files/npm-folders.html">
<script async=true src="../../static/toc.js"></script>
@ -182,5 +182,5 @@ cannot be found elsewhere. See <code><a href="../files/package.json.html">packa
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-folders &mdash; npm@3.10.3</p>
<p id="footer">npm-folders &mdash; npm@3.10.8</p>

10
deps/npm/html/doc/files/npm-json.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>package.json</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/files/package.json.html">
<script async=true src="../../static/toc.js"></script>
@ -161,6 +161,7 @@ works just like a <code>.gitignore</code>.</p>
<li><code>.npmrc</code></li>
<li><code>node_modules</code></li>
<li><code>config.gypi</code></li>
<li><code>*.orig</code></li>
</ul>
<h2 id="main">main</h2>
<p>The main field is a module ID that is the primary entry point to your program.
@ -190,7 +191,10 @@ of the package, then you can just supply it as a string. For example:</p>
<pre><code>{ &quot;name&quot;: &quot;my-program&quot;
, &quot;version&quot;: &quot;1.2.5&quot;
, &quot;bin&quot; : { &quot;my-program&quot; : &quot;./path/to/program&quot; } }
</code></pre><h2 id="man">man</h2>
</code></pre><p>Please make sure that your file(s) referenced in <code>bin</code> starts with
<code>#!/usr/bin/env node</code>, otherwise the scripts are started without the node
executable!</p>
<h2 id="man">man</h2>
<p>Specify either a single file or an array of filenames to put in place for the
<code>man</code> program to find.</p>
<p>If only a single file is provided, then it&#39;s installed such that it is the
@ -581,5 +585,5 @@ ignored.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">package.json &mdash; npm@3.10.3</p>
<p id="footer">package.json &mdash; npm@3.10.8</p>

12
deps/npm/html/doc/files/npmrc.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npmrc</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/files/npmrc.html">
<script async=true src="../../static/toc.js"></script>
@ -39,7 +39,13 @@ key[] = &quot;second value&quot;
sensitive credentials, they must be readable and writable <em>only</em> by your user
account (i.e. must have a mode of <code>0600</code>), otherwise they <em>will be ignored by
npm!</em></p>
<h3 id="per-project-config-file">Per-project config file</h3>
<h4 id="comments">Comments</h4>
<p>Lines in <code>.npmrc</code> files are interpreted as comments when they begin with a <code>;</code> or <code>#</code> character. <code>.npmrc</code> files are parsed by <a href="https://github.com/npm/ini">npm/ini</a>, which specifies this comment syntax.</p>
<p>For example:</p>
<pre><code># last modified: 01 Jan 2016
; Set a new registry for a scoped package
@myscope:registry=https://mycustomregistry.example.org
</code></pre><h3 id="per-project-config-file">Per-project config file</h3>
<p>When working locally in a project, a <code>.npmrc</code> file in the root of the
project (ie, a sibling of <code>node_modules</code> and <code>package.json</code>) will set
config values specific to this project.</p>
@ -83,5 +89,5 @@ manner.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npmrc &mdash; npm@3.10.3</p>
<p id="footer">npmrc &mdash; npm@3.10.8</p>

10
deps/npm/html/doc/files/package.json.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>package.json</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/files/package.json.html">
<script async=true src="../../static/toc.js"></script>
@ -161,6 +161,7 @@ works just like a <code>.gitignore</code>.</p>
<li><code>.npmrc</code></li>
<li><code>node_modules</code></li>
<li><code>config.gypi</code></li>
<li><code>*.orig</code></li>
</ul>
<h2 id="main">main</h2>
<p>The main field is a module ID that is the primary entry point to your program.
@ -190,7 +191,10 @@ of the package, then you can just supply it as a string. For example:</p>
<pre><code>{ &quot;name&quot;: &quot;my-program&quot;
, &quot;version&quot;: &quot;1.2.5&quot;
, &quot;bin&quot; : { &quot;my-program&quot; : &quot;./path/to/program&quot; } }
</code></pre><h2 id="man">man</h2>
</code></pre><p>Please make sure that your file(s) referenced in <code>bin</code> starts with
<code>#!/usr/bin/env node</code>, otherwise the scripts are started without the node
executable!</p>
<h2 id="man">man</h2>
<p>Specify either a single file or an array of filenames to put in place for the
<code>man</code> program to find.</p>
<p>If only a single file is provided, then it&#39;s installed such that it is the
@ -581,5 +585,5 @@ ignored.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">package.json &mdash; npm@3.10.3</p>
<p id="footer">package.json &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/index.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-index</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/index.html">
<script async=true src="../../static/toc.js"></script>
@ -162,5 +162,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-index &mdash; npm@3.10.3</p>
<p id="footer">npm-index &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/misc/npm-coding-style.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-coding-style</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-coding-style.html">
<script async=true src="../../static/toc.js"></script>
@ -153,5 +153,5 @@ set to anything.&quot;</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-coding-style &mdash; npm@3.10.3</p>
<p id="footer">npm-coding-style &mdash; npm@3.10.8</p>

14
deps/npm/html/doc/misc/npm-config.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-config</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-config.html">
<script async=true src="../../static/toc.js"></script>
@ -28,10 +28,12 @@ same.</p>
<h3 id="npmrc-files">npmrc Files</h3>
<p>The four relevant files are:</p>
<ul>
<li>per-project config file (/path/to/my/project/.npmrc)</li>
<li>per-user config file (~/.npmrc)</li>
<li>global config file ($PREFIX/etc/npmrc)</li>
<li>npm builtin config file (/path/to/npm/npmrc)</li>
<li>per-project configuration file (<code>/path/to/my/project/.npmrc</code>)</li>
<li>per-user configuration file (defaults to <code>$HOME/.npmrc</code>; configurable via CLI
option <code>--userconfig</code> or environment variable <code>$NPM_CONF_USERCONFIG</code>)</li>
<li>global configuration file (defaults to <code>$PREFIX/etc/npmrc</code>; configurable via
CLI option <code>--globalconfig</code> or environment variable <code>$NPM_CONF_GLOBALCONFIG</code>)</li>
<li>npm&#39;s built-in configuration file (<code>/path/to/npm/npmrc</code>)</li>
</ul>
<p>See <a href="../files/npmrc.html">npmrc(5)</a> for more details.</p>
<h3 id="default-configs">Default Configs</h3>
@ -862,5 +864,5 @@ exit successfully.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-config &mdash; npm@3.10.3</p>
<p id="footer">npm-config &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/misc/npm-developers.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-developers</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-developers.html">
<script async=true src="../../static/toc.js"></script>
@ -194,5 +194,5 @@ from a fresh checkout.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-developers &mdash; npm@3.10.3</p>
<p id="footer">npm-developers &mdash; npm@3.10.8</p>

10
deps/npm/html/doc/misc/npm-disputes.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-disputes</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-disputes.html">
<script async=true src="../../static/toc.js"></script>
@ -13,7 +13,7 @@
<h2 id="synopsis">SYNOPSIS</h2>
<ol>
<li>Get the author email with <code>npm owner ls &lt;pkgname&gt;</code></li>
<li>Email the author, CC <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#x3a;&#115;&#x75;&#112;&#112;&#111;&#114;&#x74;&#64;&#x6e;&#x70;&#109;&#106;&#x73;&#x2e;&#99;&#x6f;&#x6d;">&#115;&#x75;&#112;&#112;&#111;&#114;&#x74;&#64;&#x6e;&#x70;&#109;&#106;&#x73;&#x2e;&#99;&#x6f;&#x6d;</a></li>
<li>Email the author, CC <a href="&#109;&#x61;&#105;&#108;&#x74;&#x6f;&#x3a;&#115;&#117;&#112;&#x70;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#112;&#109;&#x6a;&#115;&#x2e;&#99;&#x6f;&#109;">&#115;&#117;&#112;&#x70;&#x6f;&#x72;&#x74;&#x40;&#x6e;&#112;&#109;&#x6a;&#115;&#x2e;&#99;&#x6f;&#109;</a></li>
<li>After a few weeks, if there&#39;s no resolution, we&#39;ll sort it out.</li>
</ol>
<p>Don&#39;t squat on package names. Publish code or move out of the way.</p>
@ -51,12 +51,12 @@ Joe&#39;s appropriate course of action in each case is the same.</p>
owner (Bob).</li>
<li>Joe emails Bob, explaining the situation <strong>as respectfully as
possible</strong>, and what he would like to do with the module name. He
adds the npm support staff <a href="&#x6d;&#97;&#105;&#108;&#x74;&#111;&#58;&#x73;&#x75;&#112;&#x70;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#x6a;&#115;&#x2e;&#99;&#x6f;&#109;">&#x73;&#x75;&#112;&#x70;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#x6a;&#115;&#x2e;&#99;&#x6f;&#109;</a> to the CC list of
adds the npm support staff <a href="&#x6d;&#97;&#x69;&#108;&#x74;&#x6f;&#58;&#115;&#x75;&#112;&#112;&#x6f;&#114;&#x74;&#x40;&#110;&#112;&#x6d;&#x6a;&#115;&#46;&#x63;&#111;&#x6d;">&#115;&#x75;&#112;&#112;&#x6f;&#114;&#x74;&#x40;&#110;&#112;&#x6d;&#x6a;&#115;&#46;&#x63;&#111;&#x6d;</a> to the CC list of
the email. Mention in the email that Bob can run <code>npm owner add
joe foo</code> to add Joe as an owner of the <code>foo</code> package.</li>
<li>After a reasonable amount of time, if Bob has not responded, or if
Bob and Joe can&#39;t come to any sort of resolution, email support
<a href="&#109;&#97;&#x69;&#x6c;&#x74;&#111;&#58;&#x73;&#117;&#112;&#x70;&#111;&#x72;&#x74;&#64;&#x6e;&#112;&#109;&#x6a;&#x73;&#46;&#99;&#x6f;&#x6d;">&#x73;&#117;&#112;&#x70;&#111;&#x72;&#x74;&#64;&#x6e;&#112;&#109;&#x6a;&#x73;&#46;&#99;&#x6f;&#x6d;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is
<a href="&#x6d;&#97;&#x69;&#108;&#x74;&#x6f;&#x3a;&#115;&#x75;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#x6a;&#x73;&#46;&#99;&#111;&#x6d;">&#115;&#x75;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#112;&#x6d;&#x6a;&#x73;&#46;&#99;&#111;&#x6d;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is
usually at least 4 weeks, but extra time is allowed around common
holidays.)</li>
</ol>
@ -112,5 +112,5 @@ things into it.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-disputes &mdash; npm@3.10.3</p>
<p id="footer">npm-disputes &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/misc/npm-index.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-index</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-index.html">
<script async=true src="../../static/toc.js"></script>
@ -162,4 +162,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-index &mdash; npm@3.10.3</p>
<p id="footer">npm-index &mdash; npm@3.10.8</p>

5
deps/npm/html/doc/misc/npm-orgs.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-orgs</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-orgs.html">
<script async=true src="../../static/toc.js"></script>
@ -86,4 +86,5 @@
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-orgs &mdash; npm@3.10.3</p>
<p id="footer">npm-orgs &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/misc/npm-registry.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-registry</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-registry.html">
<script async=true src="../../static/toc.js"></script>
@ -70,5 +70,5 @@ effectively implement the entire CouchDB API anyway.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-registry &mdash; npm@3.10.3</p>
<p id="footer">npm-registry &mdash; npm@3.10.8</p>

23
deps/npm/html/doc/misc/npm-scope.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-scope</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-scope.html">
<script async=true src="../../static/toc.js"></script>
@ -18,9 +18,10 @@ followed by a slash, e.g.</p>
<pre><code>@somescope/somepackagename
</code></pre><p>Scopes are a way of grouping related packages together, and also affect a few
things about the way npm treats the package.</p>
<p>Scoped packages are supported by the public npm registry. The npm
client is backwards-compatible with un-scoped registries, so it can be
used to work with scoped and un-scoped registries at the same time.</p>
<p>Scoped packages can be published and installed as of <code>npm@2</code> and are supported
by the primary npm registry. The npm client is backwards-compatible with
un-scoped registries, so it can be used to work with scoped and un-scoped
registries at the same time.</p>
<h2 id="installing-scoped-packages">Installing scoped packages</h2>
<p>Scoped packages are installed to a sub-folder of the regular installation
folder, e.g. if your other packages are installed in <code>node_modules/packagename</code>,
@ -43,11 +44,13 @@ include the name of the scope when requiring them in your code, e.g.</p>
</code></pre><p>There is nothing special about the way Node treats scope folders, this is
just specifying to require the module <code>mypackage</code> in the folder called <code>@myorg</code>.</p>
<h2 id="publishing-scoped-packages">Publishing scoped packages</h2>
<p>Scoped packages can be published to any registry that supports them, including
the public npm registry.</p>
<p>(As of 2015-04-19, and with npm 2.0 or better, the public npm registry <strong>does</strong> support scoped packages)</p>
<p>Scoped packages can be published from the CLI as of <code>npm@2</code> and can be
published to any registry that supports them, including the primary npm
registry.</p>
<p>(As of 2015-04-19, and with npm 2.0 or better, the primary npm registry
<strong>does</strong> support scoped packages)</p>
<p>If you wish, you may associate a scope with a registry; see below.</p>
<h3 id="publishing-public-scoped-packages-to-the-public-npm-registry">Publishing public scoped packages to the public npm registry</h3>
<h3 id="publishing-public-scoped-packages-to-the-primary-npm-registry">Publishing public scoped packages to the primary npm registry</h3>
<p>To publish a public scoped package, you must specify <code>--access public</code> with
the initial publication. This will publish the package and set access
to <code>public</code> as if you had run <code>npm access public</code> after publishing.</p>
@ -61,7 +64,7 @@ restricted access. You can then change the access permissions, if
desired, with <code>npm access</code> or on the npmjs.com website.</p>
<h2 id="associating-a-scope-with-a-registry">Associating a scope with a registry</h2>
<p>Scopes can be associated with a separate registry. This allows you to
seamlessly use a mix of packages from the public npm registry and one or more
seamlessly use a mix of packages from the primary npm registry and one or more
private registries, such as npm Enterprise.</p>
<p>You can associate a scope with a registry at login, e.g.</p>
<pre><code>npm login --registry=http://reg.example.com --scope=@myco
@ -91,5 +94,5 @@ that registry instead.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-scope &mdash; npm@3.10.3</p>
<p id="footer">npm-scope &mdash; npm@3.10.8</p>

12
deps/npm/html/doc/misc/npm-scripts.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>npm-scripts</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/npm-scripts.html">
<script async=true src="../../static/toc.js"></script>
@ -27,10 +27,12 @@ Run AFTER the package is installed.</li>
Run BEFORE the package is uninstalled.</li>
<li>postuninstall:
Run AFTER the package is uninstalled.</li>
<li>preversion, version:
Run BEFORE bump the package version.</li>
<li>preversion:
Run BEFORE bumping the package version.</li>
<li>version:
Run AFTER bumping the package version, but BEFORE commit.</li>
<li>postversion:
Run AFTER bump the package version.</li>
Run AFTER bumping the package version, and AFTER commit.</li>
<li>pretest, test, posttest:
Run by the <code>npm test</code> command.</li>
<li>prestop, stop, poststop:
@ -211,5 +213,5 @@ scripts is for compilation which must be done on the target architecture.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-scripts &mdash; npm@3.10.3</p>
<p id="footer">npm-scripts &mdash; npm@3.10.8</p>

4
deps/npm/html/doc/misc/removing-npm.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>removing-npm</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/removing-npm.html">
<script async=true src="../../static/toc.js"></script>
@ -57,5 +57,5 @@ modules. To track those down, you can do the following:</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">removing-npm &mdash; npm@3.10.3</p>
<p id="footer">removing-npm &mdash; npm@3.10.8</p>

43
deps/npm/html/doc/misc/semver.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>semver</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/misc/semver.html">
<script async=true src="../../static/toc.js"></script>
@ -12,6 +12,8 @@
<h1><a href="../misc/semver.html">semver</a></h1> <p>The semantic versioner for npm</p>
<h2 id="usage">Usage</h2>
<pre><code>$ npm install semver
$ node
var semver = require(&#39;semver&#39;)
semver.valid(&#39;1.2.3&#39;) // &#39;1.2.3&#39;
semver.valid(&#39;a.b.c&#39;) // null
@ -22,18 +24,35 @@ semver.lt(&#39;1.2.3&#39;, &#39;9.8.7&#39;) // true
</code></pre><p>As a command-line utility:</p>
<pre><code>$ semver -h
Usage: semver &lt;version&gt; [&lt;version&gt; [...]] [-r &lt;range&gt; | -i &lt;inc&gt; | --preid &lt;identifier&gt; | -l | -rv]
Test if version(s) satisfy the supplied range(s), and sort them.
SemVer 5.1.0
Multiple versions or ranges may be supplied, unless increment
option is specified. In that case, only a single version may
be used, and it is incremented by the specified level
A JavaScript implementation of the http://semver.org/ specification
Copyright Isaac Z. Schlueter
Usage: semver [options] &lt;version&gt; [&lt;version&gt; [...]]
Prints valid versions sorted by SemVer precedence
Options:
-r --range &lt;range&gt;
Print versions that match the specified range.
-i --increment [&lt;level&gt;]
Increment a version by the specified level. Level can
be one of: major, minor, patch, premajor, preminor,
prepatch, or prerelease. Default level is &#39;patch&#39;.
Only one version may be specified.
--preid &lt;identifier&gt;
Identifier to be used to prefix premajor, preminor,
prepatch or prerelease version increments.
-l --loose
Interpret versions and ranges loosely
Program exits successfully if any valid version satisfies
all supplied ranges, and prints all satisfying versions.
If no versions are valid, or ranges are not satisfied,
then exits failure.
If no satisfying versions are found, then exits failure.
Versions are printed in ascending order, so supplying
multiple versions to the utility will just sort them.
@ -210,7 +229,7 @@ simple ::= primitive | partial | tilde | caret
primitive ::= ( &#39;&lt;&#39; | &#39;&gt;&#39; | &#39;&gt;=&#39; | &#39;&lt;=&#39; | &#39;=&#39; | ) partial
partial ::= xr ( &#39;.&#39; xr ( &#39;.&#39; xr qualifier ? )? )?
xr ::= &#39;x&#39; | &#39;X&#39; | &#39;*&#39; | nr
nr ::= &#39;0&#39; | [&#39;1&#39;-&#39;9&#39;][&#39;0&#39;-&#39;9&#39;]+
nr ::= &#39;0&#39; | [&#39;1&#39;-&#39;9&#39;] ( [&#39;0&#39;-&#39;9&#39;] ) *
tilde ::= &#39;~&#39; partial
caret ::= &#39;^&#39; partial
qualifier ::= ( &#39;-&#39; pre )? ( &#39;+&#39; build )?
@ -239,6 +258,8 @@ prerelease. If the input version is already a prerelease it simply
increments it.</li>
</ul>
</li>
<li><code>prerelease(v)</code>: Returns an array of prerelease components, or null
if none exist. Example: <code>prerelease(&#39;1.2.3-alpha.1&#39;) -&gt; [&#39;alpha&#39;, 1]</code></li>
<li><code>major(v)</code>: Return the major version number.</li>
<li><code>minor(v)</code>: Return the minor version number.</li>
<li><code>patch(v)</code>: Return the patch version number.</li>
@ -272,6 +293,8 @@ or null if the versions are the same.</li>
range.</li>
<li><code>maxSatisfying(versions, range)</code>: Return the highest version in the list
that satisfies the range, or <code>null</code> if none of them do.</li>
<li><code>minSatisfying(versions, range)</code>: Return the lowest version in the list
that satisfies the range, or <code>null</code> if none of them do.</li>
<li><code>gtr(version, range)</code>: Return <code>true</code> if version is greater than all the
versions possible in the range.</li>
<li><code>ltr(version, range)</code>: Return <code>true</code> if version is less than all the
@ -302,5 +325,5 @@ range, use the <code>satisfies(version, range)</code> function.</p>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">semver &mdash; npm@3.10.3</p>
<p id="footer">semver &mdash; npm@3.10.8</p>

2
deps/npm/html/dochead.html

@ -1,7 +1,7 @@
<!doctype html>
<html>
<title>@NAME@</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/@URL@">
<script async=true src="../../static/toc.js"></script>

15
deps/npm/lib/cache/add-local.js

@ -20,7 +20,7 @@ module.exports = addLocal
function addLocal (p, pkgData, cb_) {
assert(typeof p === 'object', 'must have spec info')
assert(typeof cb === 'function', 'must have callback')
assert(typeof cb_ === 'function', 'must have callback')
pkgData = pkgData || {}
@ -91,10 +91,10 @@ function addLocalDirectory (p, pkgData, shasum, cb) {
getCacheStat(function (er, cs) {
mkdir(path.dirname(pj), function (er, made) {
if (er) return cb(er)
if (er) return wrapped(er)
var doPrePublish = !pathIsInside(p, npm.tmp)
if (doPrePublish) {
lifecycle(data, 'prepublish', p, iferr(cb, thenPack))
lifecycle(data, 'prepublish', p, iferr(wrapped, thenPack))
} else {
thenPack()
}
@ -102,12 +102,15 @@ function addLocalDirectory (p, pkgData, shasum, cb) {
tar.pack(tgz, p, data, function (er) {
if (er) {
log.error('addLocalDirectory', 'Could not pack', p, 'to', tgz)
return cb(er)
return wrapped(er)
}
if (!cs || isNaN(cs.uid) || isNaN(cs.gid)) wrapped()
if (!cs || isNaN(cs.uid) || isNaN(cs.gid)) return wrapped()
chownr(made || tgz, cs.uid, cs.gid, wrapped)
chownr(made || tgz, cs.uid, cs.gid, function (er) {
if (er && er.code === 'ENOENT') return wrapped()
wrapped(er)
})
})
}
})

1
deps/npm/lib/cache/add-remote-git.js

@ -26,6 +26,7 @@ var templates = path.join(remotes, '_templates')
var VALID_VARIABLES = [
'GIT_ASKPASS',
'GIT_EXEC_PATH',
'GIT_PROXY_COMMAND',
'GIT_SSH',
'GIT_SSH_COMMAND',

3
deps/npm/lib/config.js

@ -12,6 +12,7 @@ var os = require('os')
var umask = require('./utils/umask')
var usage = require('./utils/usage')
var output = require('./utils/output')
var noProgressTillDone = require('./utils/no-progress-while-running').tillDone
config.usage = usage(
'config',
@ -106,7 +107,7 @@ function edit (cb) {
data,
function (er) {
if (er) return cb(er)
editor(f, { editor: e }, cb)
editor(f, { editor: e }, noProgressTillDone(cb))
}
)
})

1
deps/npm/lib/config/cmd-list.js

@ -66,6 +66,7 @@ var cmdList = [
'stars',
'tag',
'adduser',
'login', // This is an alias for `adduser` but it can be confusing
'logout',
'unpublish',
'owner',

5
deps/npm/lib/edit.js

@ -10,6 +10,7 @@ var npm = require('./npm.js')
var path = require('path')
var fs = require('graceful-fs')
var editor = require('editor')
var noProgressTillDone = require('./utils/no-progress-while-running').tillDone
function edit (args, cb) {
var p = args[0]
@ -26,9 +27,9 @@ function edit (args, cb) {
var f = path.resolve(npm.dir, p)
fs.lstat(f, function (er) {
if (er) return cb(er)
editor(f, { editor: e }, function (er) {
editor(f, { editor: e }, noProgressTillDone(function (er) {
if (er) return cb(er)
npm.commands.rebuild(args, cb)
})
}))
})
}

11
deps/npm/lib/fetch-package-metadata.js

@ -122,7 +122,15 @@ function fetchNamedPackageData (dep, next) {
}
function pickVersionFromRegistryDocument (pkg) {
if (!regCache[url]) regCache[url] = pkg
var versions = Object.keys(pkg.versions).sort(semver.rcompare)
var versions = Object.keys(pkg.versions)
var invalidVersions = versions.filter(function (v) { return !semver.valid(v) })
if (invalidVersions.length > 0) {
log.warn('pickVersion', 'The package %s has invalid semver-version(s): %s. This usually only happens for unofficial private registries. ' +
'You should delete or re-publish the invalid versions.', pkg.name, invalidVersions.join(', '))
}
versions = versions.filter(function (v) { return semver.valid(v) }).sort(semver.rcompare)
if (dep.type === 'tag') {
var tagVersion = pkg['dist-tags'][dep.spec]
@ -169,6 +177,7 @@ function fetchNamedPackageData (dep, next) {
: 'No valid targets found.'
var er = new Error('No compatible version found: ' +
dep.raw + '\n' + targets)
er.code = 'ETARGET'
return next(er)
}
}))

6
deps/npm/lib/init.js

@ -6,13 +6,13 @@ var log = require('npmlog')
var npm = require('./npm.js')
var initJson = require('init-package-json')
var output = require('./utils/output.js')
var noProgressTillDone = require('./utils/no-progress-while-running').tillDone
init.usage = 'npm init [--force|-f|--yes|-y]'
function init (args, cb) {
var dir = process.cwd()
log.pause()
log.disableProgress()
var initFile = npm.config.get('init-module')
if (!initJson.yes(npm.config)) {
output([
@ -28,7 +28,7 @@ function init (args, cb) {
'Press ^C at any time to quit.'
].join('\n'))
}
initJson(dir, initFile, npm.config, function (er, data) {
initJson(dir, initFile, npm.config, noProgressTillDone(function (er, data) {
log.resume()
log.silly('package data', data)
if (er && er.message === 'canceled') {
@ -37,5 +37,5 @@ function init (args, cb) {
}
log.info('init', 'written successfully')
cb(er, data)
})
}))
}

53
deps/npm/lib/install.js

@ -1,8 +1,8 @@
'use strict'
// npm install <pkg> <pkg> <pkg>
//
// See doc/install.md for more description
// See doc/cli/npm-install.md for more description
//
// Managing contexts...
// there's a lot of state associated with an "install" operation, including
// packages that are already installed, parent packages, current shrinkwrap, and
@ -259,6 +259,9 @@ Installer.prototype.run = function (cb) {
[this, this.debugActions, 'decomposeActions', 'todo'])
if (!this.dryrun) {
installSteps.push(
[this.newTracker(log, 'runTopLevelLifecycles', 2)],
[this, this.runPreinstallTopLevelLifecycles],
[this.newTracker(log, 'executeActions', 8)],
[this, this.executeActions],
[this, this.finishTracker, 'executeActions'])
@ -269,10 +272,9 @@ Installer.prototype.run = function (cb) {
[this, this.rollbackFailedOptional, staging, this.todo],
[this, this.finishTracker, 'rollbackFailedOptional'],
[this, this.commit, staging, this.todo],
[this.newTracker(log, 'runTopLevelLifecycles', 2)],
[this, this.runTopLevelLifecycles],
[this, this.finishTracker, 'runTopLevelLifecycles'])
[this, this.runPostinstallTopLevelLifecycles],
[this, this.finishTracker, 'runTopLevelLifecycles'])
if (getSaveType(this.args)) {
postInstallSteps.push(
[this, this.saveToDependencies])
@ -289,9 +291,13 @@ Installer.prototype.run = function (cb) {
self.idealTree.warnings.forEach(function (warning) {
if (warning.code === 'EPACKAGEJSON' && self.global) return
if (warning.code === 'ENOTDIR') return
errorMessage(warning).summary.forEach(function (logline) {
var output = errorMessage(warning)
output.summary.forEach(function (logline) {
log.warn.apply(log, logline)
})
output.detail.forEach(function (logline) {
log.verbose.apply(log, logline)
})
})
}
if (installEr && postInstallEr) {
@ -310,7 +316,7 @@ Installer.prototype.run = function (cb) {
Installer.prototype.loadArgMetadata = function (next) {
var self = this
getAllMetadata(this.args, this.currentTree, iferr(next, function (args) {
getAllMetadata(this.args, this.currentTree, process.cwd(), iferr(next, function (args) {
self.args = args
next()
}))
@ -520,19 +526,29 @@ Installer.prototype.commit = function (staging, actionsToRun, cb) {
}, cb)
}
Installer.prototype.runTopLevelLifecycles = function (cb) {
Installer.prototype.runPreinstallTopLevelLifecycles = function (cb) {
validate('F', arguments)
if (this.failing) return cb()
log.silly('install', 'runTopLevelLifecycles')
if (!this.topLevelLifecycles) return cb()
log.silly('install', 'runPreinstallTopLevelLifecycles')
var steps = []
var trackLifecycle = this.progress.runTopLevelLifecycles
if (!this.topLevelLifecycles) {
trackLifecycle.finish()
return cb()
steps.push(
[doOneAction, 'preinstall', this.idealTree.path, this.idealTree, trackLifecycle.newGroup('preinstall:.')]
)
chain(steps, cb)
}
Installer.prototype.runPostinstallTopLevelLifecycles = function (cb) {
validate('F', arguments)
if (this.failing) return cb()
if (!this.topLevelLifecycles) return cb()
log.silly('install', 'runPostinstallTopLevelLifecycles')
var steps = []
var trackLifecycle = this.progress.runTopLevelLifecycles
steps.push(
[doOneAction, 'preinstall', this.idealTree.path, this.idealTree, trackLifecycle.newGroup('preinstall:.')],
[doOneAction, 'build', this.idealTree.path, this.idealTree, trackLifecycle.newGroup('build:.')],
[doOneAction, 'install', this.idealTree.path, this.idealTree, trackLifecycle.newGroup('install:.')],
[doOneAction, 'postinstall', this.idealTree.path, this.idealTree, trackLifecycle.newGroup('postinstall:.')])
@ -591,18 +607,19 @@ Installer.prototype.readLocalPackageData = function (cb) {
return cb(er)
}
if (!currentTree.package) currentTree.package = {}
self.loadArgMetadata(iferr(cb, function () {
if (currentTree.package._shrinkwrap) return cb()
if (currentTree.package._shrinkwrap) {
self.loadArgMetadata(cb)
} else {
fs.readFile(path.join(self.where, 'npm-shrinkwrap.json'), function (er, data) {
if (er) return cb()
if (er) return self.loadArgMetadata(cb)
try {
currentTree.package._shrinkwrap = parseJSON(data)
} catch (ex) {
return cb(ex)
}
return cb()
return self.loadArgMetadata(cb)
})
}))
}
}))
}))
}

2
deps/npm/lib/install/action/update-linked.js

@ -2,7 +2,9 @@
var path = require('path')
module.exports = function (top, buildpath, pkg, log, next) {
if (pkg.package.version !== pkg.oldPkg.package.version) {
log.warn('update-linked', path.relative(top, pkg.path), 'needs updating to', pkg.package.version,
'from', pkg.oldPkg.package.version, "but we can't, as it's a symlink")
}
next()
}

26
deps/npm/lib/install/actions.js

@ -3,13 +3,14 @@ var path = require('path')
var validate = require('aproba')
var chain = require('slide').chain
var asyncMap = require('slide').asyncMap
var log = require('npmlog')
var iferr = require('iferr')
var andFinishTracker = require('./and-finish-tracker.js')
var andAddParentToErrors = require('./and-add-parent-to-errors.js')
var failedDependency = require('./deps.js').failedDependency
var packageId = require('../utils/package-id.js')
var moduleName = require('../utils/module-name.js')
var buildPath = require('./build-path.js')
var reportOptionalFailure = require('./report-optional-failure.js')
var isInstallable = require('./validate-args.js').isInstallable
var actions = {}
@ -45,7 +46,23 @@ Object.keys(actions).forEach(function (actionName) {
if (!pkg.commit) pkg.commit = []
pkg.commit.push(action.commit)
}
return action(top, buildpath, pkg, log, andFinishTracker(log, andAddParentToErrors(pkg.parent, andHandleOptionalDepErrors(pkg, next))))
if (pkg.knownInstallable) {
return thenRunAction()
} else {
return isInstallable(pkg.package, iferr(andDone(next), andMarkInstallable(thenRunAction)))
}
function andMarkInstallable (cb) {
return function () {
pkg.knownInstallable = true
cb()
}
}
function thenRunAction () {
action(top, buildpath, pkg, log, andDone(next))
}
function andDone (cb) {
return andFinishTracker(log, andAddParentToErrors(pkg.parent, andHandleOptionalDepErrors(pkg, cb)))
}
}
})
@ -70,8 +87,7 @@ function andHandleOptionalDepErrors (pkg, next) {
if (isFatal) anyFatal = true
}
if (anyFatal) return next.apply(null, arguments)
log.warn('install:' + packageId(pkg), er.message)
log.verbose('install:' + packageId(pkg), er.stack)
reportOptionalFailure(pkg, null, er)
next()
}
}

91
deps/npm/lib/install/deps.js

@ -1,7 +1,6 @@
'use strict'
var assert = require('assert')
var path = require('path')
var url = require('url')
var semver = require('semver')
var asyncMap = require('slide').asyncMap
var chain = require('slide').chain
@ -10,6 +9,7 @@ var iferr = require('iferr')
var npa = require('npm-package-arg')
var validate = require('aproba')
var realizePackageSpecifier = require('realize-package-specifier')
var realizeShrinkwrapSpecifier = require('./realize-shrinkwrap-specifier')
var asap = require('asap')
var dezalgo = require('dezalgo')
var fetchPackageMetadata = require('../fetch-package-metadata.js')
@ -21,13 +21,16 @@ var inflateShrinkwrap = require('./inflate-shrinkwrap.js')
var inflateBundled = require('./inflate-bundled.js')
var andFinishTracker = require('./and-finish-tracker.js')
var npm = require('../npm.js')
var flatName = require('./flatten-tree.js').flatName
var flatNameFromTree = require('./flatten-tree.js').flatNameFromTree
var createChild = require('./node.js').create
var resetMetadata = require('./node.js').reset
var andIgnoreErrors = require('./and-ignore-errors.js')
var isInstallable = require('./validate-args.js').isInstallable
var packageId = require('../utils/package-id.js')
var moduleName = require('../utils/module-name.js')
var isDevDep = require('./is-dev-dep.js')
var isProdDep = require('./is-prod-dep.js')
var reportOptionalFailure = require('./report-optional-failure.js')
// The export functions in this module mutate a dependency tree, adding
// items to them.
@ -50,16 +53,6 @@ function isDep (tree, child, cb) {
})
}
function isDevDep (tree, name, cb) {
var devDeps = tree.package.devDependencies || {}
return devDeps[name]
}
function isProdDep (tree, name, cb) {
var deps = tree.package.dependencies || {}
return deps[name]
}
var registryTypes = { range: true, version: true }
function doesChildVersionMatch (child, requested, requestor) {
@ -212,26 +205,29 @@ function getShrinkwrap (tree, name) {
return tree.package._shrinkwrap && tree.package._shrinkwrap.dependencies && tree.package._shrinkwrap.dependencies[name]
}
exports.getAllMetadata = function (args, tree, next) {
asyncMap(args, function (spec, done) {
if (tree && spec.lastIndexOf('@') <= 0) {
var sw = getShrinkwrap(tree, spec)
exports.getAllMetadata = function (args, tree, where, next) {
asyncMap(args, function (arg, done) {
function fetchMetadataWithVersion () {
var version = matchingDep(tree, arg)
var spec = version == null ? arg : arg + '@' + version
return fetchPackageMetadata(spec, where, done)
}
if (tree && arg.lastIndexOf('@') <= 0) {
var sw = getShrinkwrap(tree, arg)
if (sw) {
// FIXME: This is duplicated in inflate-shrinkwrap and should be factoed
// into a shared function
spec = sw.resolved
? spec + '@' + sw.resolved
: (sw.from && url.parse(sw.from).protocol)
? spec + '@' + sw.from
: spec + '@' + sw.version
return realizeShrinkwrapSpecifier(arg, sw, where, function (err, spec) {
if (err) {
return fetchMetadataWithVersion()
} else {
var version = matchingDep(tree, spec)
if (version != null) {
spec += '@' + version
return fetchPackageMetadata(spec, where, done)
}
})
} else {
return fetchMetadataWithVersion()
}
} else {
return fetchPackageMetadata(arg, where, done)
}
fetchPackageMetadata(spec, packageRelativePath(tree), done)
}, next)
}
@ -354,18 +350,6 @@ var failedDependency = exports.failedDependency = function (tree, name_pkg) {
return false
}
function top (tree) {
if (tree.parent) return top(tree.parent)
return tree
}
function treeWarn (tree, what, error) {
var topTree = top(tree)
if (!topTree.warnings) topTree.warnings = []
error.optional = flatNameFromTree(tree) + '/' + what
topTree.warnings.push(error)
}
function andHandleOptionalErrors (log, tree, name, done) {
validate('OOSF', arguments)
return function (er, child, childLog) {
@ -374,7 +358,7 @@ function andHandleOptionalErrors (log, tree, name, done) {
var isFatal = failedDependency(tree, name)
if (er && !isFatal) {
tree.children = tree.children.filter(noModuleNameMatches(name))
treeWarn(tree, name, er)
reportOptionalFailure(tree, name, er)
return done()
} else {
return done(er, child, childLog)
@ -449,7 +433,9 @@ function addDependency (name, versionSpec, tree, log, done) {
}
}))
} else {
resolveWithNewModule(req, tree, log, next)
fetchPackageMetadata(req, packageRelativePath(tree), log.newItem('fetchMetadata'), iferr(next, function (pkg) {
resolveWithNewModule(pkg, tree, log, next)
}))
}
}))
}
@ -471,14 +457,6 @@ var updatePhantomChildren = exports.updatePhantomChildren = function (current, c
}
}
function flatNameFromTree (tree) {
validate('O', arguments)
if (tree.isTop) return '/'
var path = flatNameFromTree(tree.parent)
if (path !== '/') path += '/'
return flatName(path, tree)
}
exports._replaceModuleByPath = replaceModuleByPath
function replaceModuleByPath (obj, key, child) {
return replaceModule(obj, key, child, function (replacing, child) {
@ -511,20 +489,9 @@ function replaceModule (obj, key, child, matchBy) {
function resolveWithNewModule (pkg, tree, log, next) {
validate('OOOF', arguments)
if (pkg.type) {
return fetchPackageMetadata(pkg, packageRelativePath(tree), log.newItem('fetchMetadata'), iferr(next, function (pkg) {
resolveWithNewModule(pkg, tree, log, next)
}))
}
if (!pkg._installable) {
log.silly('resolveWithNewModule', packageId(pkg), 'checking installable status')
return isInstallable(pkg, iferr(next, function () {
pkg._installable = true
resolveWithNewModule(pkg, tree, log, next)
}))
}
if (!pkg._from) {
pkg._from = pkg._requested.name + '@' + pkg._requested.spec
}
@ -537,7 +504,8 @@ function resolveWithNewModule (pkg, tree, log, next) {
path: path.join(parent.path, 'node_modules', pkg.name),
realpath: path.resolve(parent.realpath, 'node_modules', pkg.name),
children: pkg._bundled || [],
isLink: tree.isLink
isLink: tree.isLink,
knownInstallable: true
})
delete pkg._bundled
var hasBundled = child.children.length
@ -563,6 +531,7 @@ function resolveWithNewModule (pkg, tree, log, next) {
})
}))
}))
}))
}
var validatePeerDeps = exports.validatePeerDeps = function (tree, onInvalid) {

16
deps/npm/lib/install/flatten-tree.js

@ -2,7 +2,11 @@
var validate = require('aproba')
var moduleName = require('../utils/module-name.js')
module.exports = function (tree) {
module.exports = flattenTree
module.exports.flatName = flatName
module.exports.flatNameFromTree = flatNameFromTree
function flattenTree (tree) {
validate('O', arguments)
var seen = {}
var flat = {}
@ -24,7 +28,15 @@ module.exports = function (tree) {
return flat
}
var flatName = module.exports.flatName = function (path, child) {
function flatName (path, child) {
validate('SO', arguments)
return path + (moduleName(child) || 'TOP')
}
function flatNameFromTree (tree) {
validate('O', arguments)
if (tree.isTop) return '/'
var path = flatNameFromTree(tree.parent)
if (path !== '/') path += '/'
return flatName(path, tree)
}

85
deps/npm/lib/install/inflate-shrinkwrap.js

@ -1,9 +1,9 @@
'use strict'
var url = require('url')
var asyncMap = require('slide').asyncMap
var validate = require('aproba')
var iferr = require('iferr')
var realizePackageSpecifier = require('realize-package-specifier')
var realizeShrinkwrapSpecifier = require('./realize-shrinkwrap-specifier.js')
var isRegistrySpecifier = require('./is-registry-specifier.js')
var fetchPackageMetadata = require('../fetch-package-metadata.js')
var annotateMetadata = require('../fetch-package-metadata.js').annotateMetadata
var addShrinkwrap = require('../fetch-package-metadata.js').addShrinkwrap
@ -14,41 +14,62 @@ var createChild = require('./node.js').create
var moduleName = require('../utils/module-name.js')
var childPath = require('../utils/child-path.js')
var inflateShrinkwrap = module.exports = function (tree, swdeps, finishInflating) {
validate('OOF', arguments)
module.exports = function (tree, swdeps, finishInflating) {
if (!npm.config.get('shrinkwrap')) return finishInflating()
return inflateShrinkwrap(tree.path, tree, swdeps, finishInflating)
}
function inflateShrinkwrap (topPath, tree, swdeps, finishInflating) {
validate('SOOF', arguments)
var onDisk = {}
tree.children.forEach(function (child) { onDisk[moduleName(child)] = child })
tree.children = []
asyncMap(Object.keys(swdeps), function (name, next) {
var dev = npm.config.get('dev') || (!/^prod(uction)?$/.test(npm.config.get('only')) && !npm.config.get('production')) || /^dev(elopment)?$/.test(npm.config.get('only'))
var prod = !/^dev(elopment)?$/.test(npm.config.get('only'))
return asyncMap(Object.keys(swdeps), doRealizeAndInflate, finishInflating)
function doRealizeAndInflate (name, next) {
return realizeShrinkwrapSpecifier(name, swdeps[name], topPath, iferr(next, andInflate(name, next)))
}
function andInflate (name, next) {
return function (requested) {
var sw = swdeps[name]
var spec = sw.resolved
? name + '@' + sw.resolved
: (sw.from && url.parse(sw.from).protocol)
? name + '@' + sw.from
: name + '@' + sw.version
var dependencies = sw.dependencies || {}
if ((!prod && !sw.dev) || (!dev && sw.dev)) return next()
var child = onDisk[name]
if (child && (child.fromShrinkwrap ||
(sw.resolved && child.package._resolved === sw.resolved) ||
(sw.from && url.parse(sw.from).protocol && child.package._from === sw.from) ||
child.package.version === sw.version)) {
if (!child.fromShrinkwrap) child.fromShrinkwrap = spec
if (childIsEquivalent(sw, requested, child)) {
if (!child.fromShrinkwrap) child.fromShrinkwrap = requested.raw
tree.children.push(child)
annotateMetadata(child.package, requested, requested.raw, topPath)
return inflateShrinkwrap(topPath, child, dependencies || {}, next)
} else {
var from = sw.from || requested.raw
return fetchPackageMetadata(requested, topPath, iferr(next, andAddShrinkwrap(from, dependencies, next)))
}
}
}
return realizePackageSpecifier(spec, tree.path, iferr(next, function (requested) {
annotateMetadata(child.package, requested, spec, tree.path)
return inflateShrinkwrap(child, sw.dependencies || {}, next)
}))
function andAddShrinkwrap (from, dependencies, next) {
return function (pkg) {
pkg._from = from
addShrinkwrap(pkg, iferr(next, andAddBundled(pkg, dependencies, next)))
}
}
fetchPackageMetadata(spec, tree.path, iferr(next, function (pkg) {
pkg._from = sw.from || spec
addShrinkwrap(pkg, iferr(next, function () {
addBundled(pkg, iferr(next, function () {
function andAddBundled (pkg, dependencies, next) {
return function () {
return addBundled(pkg, iferr(next, andAddChild(pkg, dependencies, next)))
}
}
function andAddChild (pkg, dependencies, next) {
return function () {
var child = createChild({
package: pkg,
loaded: false,
parent: tree,
fromShrinkwrap: spec,
fromShrinkwrap: pkg._from,
path: childPath(tree.path, pkg),
realpath: childPath(tree.realpath, pkg),
children: pkg._bundled || []
@ -58,9 +79,15 @@ var inflateShrinkwrap = module.exports = function (tree, swdeps, finishInflating
delete pkg._bundled
inflateBundled(child, child.children)
}
inflateShrinkwrap(child, sw.dependencies || {}, next)
}))
}))
}))
}, finishInflating)
inflateShrinkwrap(topPath, child, dependencies || {}, next)
}
}
}
function childIsEquivalent (sw, requested, child) {
if (!child) return false
if (child.fromShrinkwrap) return true
if (sw.resolved) return child.package._resolved === sw.resolved
if (!isRegistrySpecifier(requested) && sw.from) return child.package._from === sw.from
return child.package.version === sw.version
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save