mirror of https://github.com/nodejs/node.git
deps: upgrade npm to 3.10.8
PR-URL: https://github.com/nodejs/node/pull/8706 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
This commit is contained in:
parent
33aa953f91
commit
d44a9eb11b
|
@ -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?
|
||||
|
||||
-->
|
|
@ -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>
|
||||
|
|
|
@ -1,23 +1,31 @@
|
|||
language: node_js
|
||||
node_js:
|
||||
# LTS is our most important target
|
||||
- "4"
|
||||
# next LTS and master is next most important
|
||||
- "6"
|
||||
# still in LTS maintenance until fall 2016
|
||||
# (also still in wide use)
|
||||
- "0.10"
|
||||
# will be unsupported as soon as 6 becomes LTS and 7 released
|
||||
- "5"
|
||||
# technically in LTS / distros, unbeloved
|
||||
- "0.12"
|
||||
env:
|
||||
- DEPLOY_VERSION=testing
|
||||
before_install:
|
||||
- "npm config set spin false"
|
||||
- "node . install -g ."
|
||||
- "mkdir -p /var/run/couchdb"
|
||||
sudo: false
|
||||
script: "npm test"
|
||||
# need to declare the language as well as the matrix below
|
||||
language: 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
|
||||
- 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
|
||||
- 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
|
||||
- node_js: "5"
|
||||
env: DEPLOY_VERSION=testing
|
||||
# technically in LTS / distros, unbeloved
|
||||
- node_js: "0.12"
|
||||
env: DEPLOY_VERSION=testing
|
||||
before_install:
|
||||
- "node . install -g ."
|
||||
# required by test/tap/registry.js
|
||||
- "mkdir -p /var/run/couchdb"
|
||||
notifications:
|
||||
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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`
|
||||
|
@ -271,7 +272,7 @@ global `node_modules` folder. Only your direct dependencies will show in
|
|||
`node_modules` and everything they depend on will be flattened in their
|
||||
`node_modules` folders. This obviously will eliminate some deduping.
|
||||
|
||||
The `--ignore-scripts` argument will cause npm to not execute any
|
||||
The `--ignore-scripts` argument will cause npm to not execute any
|
||||
scripts defined in the package.json. See `npm-scripts(7)`.
|
||||
|
||||
The `--legacy-bundling` argument will cause npm to install the package such
|
||||
|
|
|
@ -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/`
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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.
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ There are three levels of org users:
|
|||
|
||||
1. Super admin, controls billing & adding people to the org.
|
||||
2. Team admin, manages team membership & package access.
|
||||
3. Developer, works on packages they are given access to.
|
||||
3. Developer, works on packages they are given access to.
|
||||
|
||||
The super admin is the only person who can add users to the org because it impacts the monthly bill. The super admin will use the website to manage membership. Every org has a `developers` team that all users are automatically added to.
|
||||
|
||||
|
@ -51,7 +51,7 @@ npm init --scope=<org>
|
|||
```
|
||||
to scope it for your org & publish as usual
|
||||
|
||||
* Grant access:
|
||||
* Grant access:
|
||||
|
||||
```
|
||||
npm access grant <read-only|read-write> <org:team> [<package>]
|
||||
|
|
|
@ -31,7 +31,7 @@ similar) design doc to implement the APIs.
|
|||
If you set up continuous replication from the official CouchDB, and then
|
||||
set your internal CouchDB as the registry config, then you'll be able
|
||||
to read any published packages, in addition to your private ones, and by
|
||||
default will only publish internally.
|
||||
default will only publish internally.
|
||||
|
||||
If you then want to publish a package for the whole world to see, you can
|
||||
simply override the `--registry` option for that `publish` command.
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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'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.'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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer"><a href="../doc/README.html">README</a> — npm@3.10.3</p>
|
||||
<p id="footer"><a href="../doc/README.html">README</a> — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-access — npm@3.10.3</p>
|
||||
<p id="footer">npm-access — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-adduser — npm@3.10.3</p>
|
||||
<p id="footer">npm-adduser — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-bin — npm@3.10.3</p>
|
||||
<p id="footer">npm-bin — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-bugs — npm@3.10.3</p>
|
||||
<p id="footer">npm-bugs — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-build — npm@3.10.3</p>
|
||||
<p id="footer">npm-build — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-bundle — npm@3.10.3</p>
|
||||
<p id="footer">npm-bundle — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-cache — npm@3.10.3</p>
|
||||
<p id="footer">npm-cache — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-completion — npm@3.10.3</p>
|
||||
<p id="footer">npm-completion — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-config — npm@3.10.3</p>
|
||||
<p id="footer">npm-config — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-dedupe — npm@3.10.3</p>
|
||||
<p id="footer">npm-dedupe — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-deprecate — npm@3.10.3</p>
|
||||
<p id="footer">npm-deprecate — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-dist-tag — npm@3.10.3</p>
|
||||
<p id="footer">npm-dist-tag — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-docs — npm@3.10.3</p>
|
||||
<p id="footer">npm-docs — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>"notepad"</code> on Windows.</li>
|
|||
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-edit — npm@3.10.3</p>
|
||||
<p id="footer">npm-edit — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-explore — npm@3.10.3</p>
|
||||
<p id="footer">npm-explore — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-help-search — npm@3.10.3</p>
|
||||
<p id="footer">npm-help-search — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-help — npm@3.10.3</p>
|
||||
<p id="footer">npm-help — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-init — npm@3.10.3</p>
|
||||
<p id="footer">npm-init — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-install-test — npm@3.10.3</p>
|
||||
<p id="footer">npm-install-test — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>
|
||||
|
@ -217,7 +218,7 @@ your local <code>node_modules</code> folder with the same layout it uses with th
|
|||
global <code>node_modules</code> folder. Only your direct dependencies will show in
|
||||
<code>node_modules</code> and everything they depend on will be flattened in their
|
||||
<code>node_modules</code> folders. This obviously will eliminate some deduping.</p>
|
||||
<p>The <code>--ignore-scripts</code> argument will cause npm to not execute any
|
||||
<p>The <code>--ignore-scripts</code> argument will cause npm to not execute any
|
||||
scripts defined in the package.json. See <code><a href="../misc/npm-scripts.html">npm-scripts(7)</a></code>.</p>
|
||||
<p>The <code>--legacy-bundling</code> argument will cause npm to install the package such
|
||||
that versions of npm prior to 1.4, such as the one included with node 0.8,
|
||||
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-install — npm@3.10.3</p>
|
||||
<p id="footer">npm-install — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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/<package></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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-link — npm@3.10.3</p>
|
||||
<p id="footer">npm-link — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-logout — npm@3.10.3</p>
|
||||
<p id="footer">npm-logout — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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'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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-ls — npm@3.10.3</p>
|
||||
<p id="footer">npm-ls — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-outdated — npm@3.10.3</p>
|
||||
<p id="footer">npm-outdated — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-owner — npm@3.10.3</p>
|
||||
<p id="footer">npm-owner — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-pack — npm@3.10.3</p>
|
||||
<p id="footer">npm-pack — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-ping — npm@3.10.3</p>
|
||||
<p id="footer">npm-ping — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-prefix — npm@3.10.3</p>
|
||||
<p id="footer">npm-prefix — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-prune — npm@3.10.3</p>
|
||||
<p id="footer">npm-prune — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-publish — npm@3.10.3</p>
|
||||
<p id="footer">npm-publish — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-rebuild — npm@3.10.3</p>
|
||||
<p id="footer">npm-rebuild — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-repo — npm@3.10.3</p>
|
||||
<p id="footer">npm-repo — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-restart — npm@3.10.3</p>
|
||||
<p id="footer">npm-restart — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-root — npm@3.10.3</p>
|
||||
<p id="footer">npm-root — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>"scripts": {"test": "tap test/\*.js"}
|
||||
</code></pre><p>instead of <code>"scripts": {"test": "node_modules/.bin/tap test/\*.js"}</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'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
|
|||
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-run-script — npm@3.10.3</p>
|
||||
<p id="footer">npm-run-script — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-search — npm@3.10.3</p>
|
||||
<p id="footer">npm-search — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-shrinkwrap — npm@3.10.3</p>
|
||||
<p id="footer">npm-shrinkwrap — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-star — npm@3.10.3</p>
|
||||
<p id="footer">npm-star — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-stars — npm@3.10.3</p>
|
||||
<p id="footer">npm-stars — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-start — npm@3.10.3</p>
|
||||
<p id="footer">npm-start — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-stop — npm@3.10.3</p>
|
||||
<p id="footer">npm-stop — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-tag — npm@3.10.3</p>
|
||||
<p id="footer">npm-tag — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-team — npm@3.10.3</p>
|
||||
<p id="footer">npm-team — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-test — npm@3.10.3</p>
|
||||
<p id="footer">npm-test — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-uninstall — npm@3.10.3</p>
|
||||
<p id="footer">npm-uninstall — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-unpublish — npm@3.10.3</p>
|
||||
<p id="footer">npm-unpublish — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-update — npm@3.10.3</p>
|
||||
<p id="footer">npm-update — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-version — npm@3.10.3</p>
|
||||
<p id="footer">npm-version — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-view — npm@3.10.3</p>
|
||||
<p id="footer">npm-view — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-whoami — npm@3.10.3</p>
|
||||
<p id="footer">npm-whoami — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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 <command> [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="mailto:i@izs.me">i@izs.me</a></p>
|
||||
<a href="mailto:i@izs.me">i@izs.me</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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm — npm@3.10.3</p>
|
||||
<p id="footer">npm — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-folders — npm@3.10.3</p>
|
||||
<p id="footer">npm-folders — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-folders — npm@3.10.3</p>
|
||||
<p id="footer">npm-folders — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>{ "name": "my-program"
|
||||
, "version": "1.2.5"
|
||||
, "bin" : { "my-program" : "./path/to/program" } }
|
||||
</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'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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">package.json — npm@3.10.3</p>
|
||||
<p id="footer">package.json — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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[] = "second value"
|
|||
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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npmrc — npm@3.10.3</p>
|
||||
<p id="footer">npmrc — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>{ "name": "my-program"
|
||||
, "version": "1.2.5"
|
||||
, "bin" : { "my-program" : "./path/to/program" } }
|
||||
</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'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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">package.json — npm@3.10.3</p>
|
||||
<p id="footer">package.json — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-index — npm@3.10.3</p>
|
||||
<p id="footer">npm-index — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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."</p>
|
|||
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-coding-style — npm@3.10.3</p>
|
||||
<p id="footer">npm-coding-style — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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'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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-config — npm@3.10.3</p>
|
||||
<p id="footer">npm-config — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-developers — npm@3.10.3</p>
|
||||
<p id="footer">npm-developers — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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 <pkgname></code></li>
|
||||
<li>Email the author, CC <a href="mailto:support@npmjs.com">support@npmjs.com</a></li>
|
||||
<li>Email the author, CC <a href="mailto:support@npmjs.com">support@npmjs.com</a></li>
|
||||
<li>After a few weeks, if there's no resolution, we'll sort it out.</li>
|
||||
</ol>
|
||||
<p>Don't squat on package names. Publish code or move out of the way.</p>
|
||||
|
@ -51,12 +51,12 @@ Joe'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="mailto:support@npmjs.com">support@npmjs.com</a> to the CC list of
|
||||
adds the npm support staff <a href="mailto:support@npmjs.com">support@npmjs.com</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't come to any sort of resolution, email support
|
||||
<a href="mailto:support@npmjs.com">support@npmjs.com</a> and we'll sort it out. ("Reasonable" is
|
||||
<a href="mailto:support@npmjs.com">support@npmjs.com</a> and we'll sort it out. ("Reasonable" 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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-disputes — npm@3.10.3</p>
|
||||
<p id="footer">npm-disputes — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-index — npm@3.10.3</p>
|
||||
<p id="footer">npm-index — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-orgs — npm@3.10.3</p>
|
||||
<p id="footer">npm-orgs — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-registry — npm@3.10.3</p>
|
||||
<p id="footer">npm-registry — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-scope — npm@3.10.3</p>
|
||||
<p id="footer">npm-scope — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">npm-scripts — npm@3.10.3</p>
|
||||
<p id="footer">npm-scripts — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">removing-npm — npm@3.10.3</p>
|
||||
<p id="footer">removing-npm — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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('semver')
|
||||
|
||||
semver.valid('1.2.3') // '1.2.3'
|
||||
semver.valid('a.b.c') // null
|
||||
|
@ -22,18 +24,35 @@ semver.lt('1.2.3', '9.8.7') // true
|
|||
</code></pre><p>As a command-line utility:</p>
|
||||
<pre><code>$ 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.
|
||||
|
@ -210,7 +229,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 )?
|
||||
|
@ -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('1.2.3-alpha.1') -> ['alpha', 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> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
||||
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
||||
</table>
|
||||
<p id="footer">semver — npm@3.10.3</p>
|
||||
<p id="footer">semver — npm@3.10.8</p>
|
||||
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
|
|
|
@ -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',
|
||||
|
|
|
@ -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))
|
||||
}
|
||||
)
|
||||
})
|
||||
|
|
|
@ -66,6 +66,7 @@ var cmdList = [
|
|||
'stars',
|
||||
'tag',
|
||||
'adduser',
|
||||
'login', // This is an alias for `adduser` but it can be confusing
|
||||
'logout',
|
||||
'unpublish',
|
||||
'owner',
|
||||
|
|
|
@ -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)
|
||||
})
|
||||
}))
|
||||
})
|
||||
}
|
||||
|
|
|
@ -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,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)
|
||||
})
|
||||
}))
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
||||
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
|
||||
if (!this.topLevelLifecycles) {
|
||||
trackLifecycle.finish()
|
||||
return cb()
|
||||
}
|
||||
|
||||
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,7 +2,9 @@
|
|||
var path = require('path')
|
||||
|
||||
module.exports = function (top, buildpath, pkg, log, next) {
|
||||
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")
|
||||
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()
|
||||
}
|
||||
|
|
|
@ -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()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
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
|
||||
} else {
|
||||
var version = matchingDep(tree, spec)
|
||||
if (version != null) {
|
||||
spec += '@' + version
|
||||
}
|
||||
}
|
||||
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) {
|
||||
return realizeShrinkwrapSpecifier(arg, sw, where, function (err, spec) {
|
||||
if (err) {
|
||||
return fetchMetadataWithVersion()
|
||||
} else {
|
||||
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,56 +489,47 @@ 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)
|
||||
}))
|
||||
}
|
||||
log.silly('resolveWithNewModule', packageId(pkg), 'checking installable status')
|
||||
return isInstallable(pkg, iferr(next, function () {
|
||||
if (!pkg._from) {
|
||||
pkg._from = pkg._requested.name + '@' + pkg._requested.spec
|
||||
}
|
||||
addShrinkwrap(pkg, iferr(next, function () {
|
||||
addBundled(pkg, iferr(next, function () {
|
||||
var parent = earliestInstallable(tree, tree, pkg) || tree
|
||||
var child = createChild({
|
||||
package: pkg,
|
||||
parent: parent,
|
||||
path: path.join(parent.path, 'node_modules', pkg.name),
|
||||
realpath: path.resolve(parent.realpath, 'node_modules', pkg.name),
|
||||
children: pkg._bundled || [],
|
||||
isLink: tree.isLink,
|
||||
knownInstallable: true
|
||||
})
|
||||
delete pkg._bundled
|
||||
var hasBundled = child.children.length
|
||||
|
||||
if (!pkg._from) {
|
||||
pkg._from = pkg._requested.name + '@' + pkg._requested.spec
|
||||
}
|
||||
addShrinkwrap(pkg, iferr(next, function () {
|
||||
addBundled(pkg, iferr(next, function () {
|
||||
var parent = earliestInstallable(tree, tree, pkg) || tree
|
||||
var child = createChild({
|
||||
package: pkg,
|
||||
parent: parent,
|
||||
path: path.join(parent.path, 'node_modules', pkg.name),
|
||||
realpath: path.resolve(parent.realpath, 'node_modules', pkg.name),
|
||||
children: pkg._bundled || [],
|
||||
isLink: tree.isLink
|
||||
})
|
||||
delete pkg._bundled
|
||||
var hasBundled = child.children.length
|
||||
var replaced = replaceModuleByName(parent, 'children', child)
|
||||
if (replaced) removeObsoleteDep(replaced)
|
||||
addRequiredDep(tree, child, function () {
|
||||
child.location = flatNameFromTree(child)
|
||||
|
||||
var replaced = replaceModuleByName(parent, 'children', child)
|
||||
if (replaced) removeObsoleteDep(replaced)
|
||||
addRequiredDep(tree, child, function () {
|
||||
child.location = flatNameFromTree(child)
|
||||
if (tree.parent && parent !== tree) updatePhantomChildren(tree.parent, child)
|
||||
|
||||
if (tree.parent && parent !== tree) updatePhantomChildren(tree.parent, child)
|
||||
if (hasBundled) {
|
||||
inflateBundled(child, child.children)
|
||||
}
|
||||
|
||||
if (hasBundled) {
|
||||
inflateBundled(child, child.children)
|
||||
}
|
||||
if (pkg._shrinkwrap && pkg._shrinkwrap.dependencies) {
|
||||
return inflateShrinkwrap(child, pkg._shrinkwrap.dependencies, function (er) {
|
||||
next(er, child, log)
|
||||
})
|
||||
}
|
||||
|
||||
if (pkg._shrinkwrap && pkg._shrinkwrap.dependencies) {
|
||||
return inflateShrinkwrap(child, pkg._shrinkwrap.dependencies, function (er) {
|
||||
next(er, child, log)
|
||||
})
|
||||
}
|
||||
|
||||
next(null, child, log)
|
||||
})
|
||||
next(null, child, log)
|
||||
})
|
||||
}))
|
||||
}))
|
||||
}))
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue