Showing with 1,854 additions and 589 deletions.
  1. +1 −1 Makefile
  2. +5 −0 deps/npm/.travis.yml
  3. +0 −1 deps/npm/Makefile
  4. +5 −1 deps/npm/README.md
  5. +1 −1 deps/npm/doc/api/npm.md
  6. +1 −2 deps/npm/doc/cli/npm-install.md
  7. +4 −2 deps/npm/doc/cli/npm-run-script.md
  8. +35 −0 deps/npm/doc/files/package.json.md
  9. +13 −0 deps/npm/doc/misc/npm-config.md
  10. +1 −1 deps/npm/doc/misc/npm-faq.md
  11. +8 −2 deps/npm/html/doc/README.html
  12. +2 −1 deps/npm/html/doc/api/npm-bin.html
  13. +2 −1 deps/npm/html/doc/api/npm-bugs.html
  14. +2 −1 deps/npm/html/doc/api/npm-commands.html
  15. +2 −1 deps/npm/html/doc/api/npm-config.html
  16. +2 −1 deps/npm/html/doc/api/npm-deprecate.html
  17. +2 −1 deps/npm/html/doc/api/npm-docs.html
  18. +2 −1 deps/npm/html/doc/api/npm-edit.html
  19. +2 −1 deps/npm/html/doc/api/npm-explore.html
  20. +2 −1 deps/npm/html/doc/api/npm-help-search.html
  21. +2 −1 deps/npm/html/doc/api/npm-init.html
  22. +2 −1 deps/npm/html/doc/api/npm-install.html
  23. +2 −1 deps/npm/html/doc/api/npm-link.html
  24. +2 −1 deps/npm/html/doc/api/npm-load.html
  25. +2 −1 deps/npm/html/doc/api/npm-ls.html
  26. +2 −1 deps/npm/html/doc/api/npm-outdated.html
  27. +2 −1 deps/npm/html/doc/api/npm-owner.html
  28. +2 −1 deps/npm/html/doc/api/npm-pack.html
  29. +2 −1 deps/npm/html/doc/api/npm-prefix.html
  30. +2 −1 deps/npm/html/doc/api/npm-prune.html
  31. +2 −1 deps/npm/html/doc/api/npm-publish.html
  32. +2 −1 deps/npm/html/doc/api/npm-rebuild.html
  33. +2 −1 deps/npm/html/doc/api/npm-repo.html
  34. +2 −1 deps/npm/html/doc/api/npm-restart.html
  35. +2 −1 deps/npm/html/doc/api/npm-root.html
  36. +2 −1 deps/npm/html/doc/api/npm-run-script.html
  37. +2 −1 deps/npm/html/doc/api/npm-search.html
  38. +2 −1 deps/npm/html/doc/api/npm-shrinkwrap.html
  39. +2 −1 deps/npm/html/doc/api/npm-start.html
  40. +2 −1 deps/npm/html/doc/api/npm-stop.html
  41. +2 −1 deps/npm/html/doc/api/npm-submodule.html
  42. +2 −1 deps/npm/html/doc/api/npm-tag.html
  43. +2 −1 deps/npm/html/doc/api/npm-test.html
  44. +2 −1 deps/npm/html/doc/api/npm-uninstall.html
  45. +2 −1 deps/npm/html/doc/api/npm-unpublish.html
  46. +2 −1 deps/npm/html/doc/api/npm-update.html
  47. +2 −1 deps/npm/html/doc/api/npm-version.html
  48. +2 −1 deps/npm/html/doc/api/npm-view.html
  49. +2 −1 deps/npm/html/doc/api/npm-whoami.html
  50. +4 −3 deps/npm/html/doc/api/npm.html
  51. +2 −1 deps/npm/html/doc/cli/npm-adduser.html
  52. +2 −1 deps/npm/html/doc/cli/npm-bin.html
  53. +2 −1 deps/npm/html/doc/cli/npm-bugs.html
  54. +2 −1 deps/npm/html/doc/cli/npm-build.html
  55. +2 −1 deps/npm/html/doc/cli/npm-bundle.html
  56. +2 −1 deps/npm/html/doc/cli/npm-cache.html
  57. +2 −1 deps/npm/html/doc/cli/npm-completion.html
  58. +2 −1 deps/npm/html/doc/cli/npm-config.html
  59. +2 −1 deps/npm/html/doc/cli/npm-dedupe.html
  60. +2 −1 deps/npm/html/doc/cli/npm-deprecate.html
  61. +2 −1 deps/npm/html/doc/cli/npm-docs.html
  62. +2 −1 deps/npm/html/doc/cli/npm-edit.html
  63. +2 −1 deps/npm/html/doc/cli/npm-explore.html
  64. +2 −1 deps/npm/html/doc/cli/npm-help-search.html
  65. +2 −1 deps/npm/html/doc/cli/npm-help.html
  66. +2 −1 deps/npm/html/doc/cli/npm-init.html
  67. +4 −3 deps/npm/html/doc/cli/npm-install.html
  68. +2 −1 deps/npm/html/doc/cli/npm-link.html
  69. +3 −2 deps/npm/html/doc/cli/npm-ls.html
  70. +2 −1 deps/npm/html/doc/cli/npm-outdated.html
  71. +2 −1 deps/npm/html/doc/cli/npm-owner.html
  72. +2 −1 deps/npm/html/doc/cli/npm-pack.html
  73. +2 −1 deps/npm/html/doc/cli/npm-prefix.html
  74. +2 −1 deps/npm/html/doc/cli/npm-prune.html
  75. +2 −1 deps/npm/html/doc/cli/npm-publish.html
  76. +2 −1 deps/npm/html/doc/cli/npm-rebuild.html
  77. +2 −1 deps/npm/html/doc/cli/npm-repo.html
  78. +2 −1 deps/npm/html/doc/cli/npm-restart.html
  79. +2 −1 deps/npm/html/doc/cli/npm-rm.html
  80. +2 −1 deps/npm/html/doc/cli/npm-root.html
  81. +6 −3 deps/npm/html/doc/cli/npm-run-script.html
  82. +2 −1 deps/npm/html/doc/cli/npm-search.html
  83. +2 −1 deps/npm/html/doc/cli/npm-shrinkwrap.html
  84. +2 −1 deps/npm/html/doc/cli/npm-star.html
  85. +2 −1 deps/npm/html/doc/cli/npm-stars.html
  86. +2 −1 deps/npm/html/doc/cli/npm-start.html
  87. +2 −1 deps/npm/html/doc/cli/npm-stop.html
  88. +2 −1 deps/npm/html/doc/cli/npm-submodule.html
  89. +2 −1 deps/npm/html/doc/cli/npm-tag.html
  90. +2 −1 deps/npm/html/doc/cli/npm-test.html
  91. +2 −1 deps/npm/html/doc/cli/npm-uninstall.html
  92. +2 −1 deps/npm/html/doc/cli/npm-unpublish.html
  93. +2 −1 deps/npm/html/doc/cli/npm-update.html
  94. +2 −1 deps/npm/html/doc/cli/npm-version.html
  95. +2 −1 deps/npm/html/doc/cli/npm-view.html
  96. +2 −1 deps/npm/html/doc/cli/npm-whoami.html
  97. +3 −2 deps/npm/html/doc/cli/npm.html
  98. +2 −1 deps/npm/html/doc/files/npm-folders.html
  99. +2 −1 deps/npm/html/doc/files/npm-global.html
  100. +37 −2 deps/npm/html/doc/files/npm-json.html
  101. +2 −1 deps/npm/html/doc/files/npmrc.html
  102. +37 −2 deps/npm/html/doc/files/package.json.html
  103. +2 −1 deps/npm/html/doc/index.html
  104. +2 −1 deps/npm/html/doc/misc/npm-coding-style.html
  105. +13 −1 deps/npm/html/doc/misc/npm-config.html
  106. +2 −1 deps/npm/html/doc/misc/npm-developers.html
  107. +2 −1 deps/npm/html/doc/misc/npm-disputes.html
  108. +3 −2 deps/npm/html/doc/misc/npm-faq.html
  109. +2 −1 deps/npm/html/doc/misc/npm-index.html
  110. +2 −1 deps/npm/html/doc/misc/npm-registry.html
  111. +2 −1 deps/npm/html/doc/misc/npm-scripts.html
  112. +2 −1 deps/npm/html/doc/misc/removing-npm.html
  113. +2 −1 deps/npm/html/doc/misc/semver.html
  114. +1 −0 deps/npm/html/dochead.html
  115. +14 −4 deps/npm/lib/adduser.js
  116. +153 −23 deps/npm/lib/cache.js
  117. +0 −1 deps/npm/lib/dedupe.js
  118. +7 −4 deps/npm/lib/help.js
  119. +3 −2 deps/npm/lib/install.js
  120. +8 −0 deps/npm/lib/npm.js
  121. +1 −1 deps/npm/lib/shrinkwrap.js
  122. +5 −4 deps/npm/lib/utils/error-handler.js
  123. +5 −2 deps/npm/lib/utils/lifecycle.js
  124. +14 −3 deps/npm/lib/view.js
  125. +16 −3 deps/npm/man/man1/npm-README.1
  126. +1 −1 deps/npm/man/man1/npm-adduser.1
  127. +1 −1 deps/npm/man/man1/npm-bin.1
  128. +1 −1 deps/npm/man/man1/npm-bugs.1
  129. +1 −1 deps/npm/man/man1/npm-build.1
  130. +1 −1 deps/npm/man/man1/npm-bundle.1
  131. +1 −1 deps/npm/man/man1/npm-cache.1
  132. +1 −1 deps/npm/man/man1/npm-completion.1
  133. +1 −1 deps/npm/man/man1/npm-config.1
  134. +1 −1 deps/npm/man/man1/npm-dedupe.1
  135. +1 −1 deps/npm/man/man1/npm-deprecate.1
  136. +1 −1 deps/npm/man/man1/npm-docs.1
  137. +1 −1 deps/npm/man/man1/npm-edit.1
  138. +1 −1 deps/npm/man/man1/npm-explore.1
  139. +1 −1 deps/npm/man/man1/npm-help-search.1
  140. +1 −1 deps/npm/man/man1/npm-help.1
  141. +1 −1 deps/npm/man/man1/npm-init.1
  142. +2 −5 deps/npm/man/man1/npm-install.1
  143. +1 −1 deps/npm/man/man1/npm-link.1
  144. +2 −2 deps/npm/man/man1/npm-ls.1
  145. +1 −1 deps/npm/man/man1/npm-outdated.1
  146. +1 −1 deps/npm/man/man1/npm-owner.1
  147. +1 −1 deps/npm/man/man1/npm-pack.1
  148. +1 −1 deps/npm/man/man1/npm-prefix.1
  149. +1 −1 deps/npm/man/man1/npm-prune.1
  150. +1 −1 deps/npm/man/man1/npm-publish.1
  151. +1 −1 deps/npm/man/man1/npm-rebuild.1
  152. +1 −1 deps/npm/man/man1/npm-repo.1
  153. +1 −1 deps/npm/man/man1/npm-restart.1
  154. +1 −1 deps/npm/man/man1/npm-rm.1
  155. +1 −1 deps/npm/man/man1/npm-root.1
  156. +5 −3 deps/npm/man/man1/npm-run-script.1
  157. +1 −1 deps/npm/man/man1/npm-search.1
  158. +1 −1 deps/npm/man/man1/npm-shrinkwrap.1
  159. +1 −1 deps/npm/man/man1/npm-star.1
  160. +1 −1 deps/npm/man/man1/npm-stars.1
  161. +1 −1 deps/npm/man/man1/npm-start.1
  162. +1 −1 deps/npm/man/man1/npm-stop.1
  163. +1 −1 deps/npm/man/man1/npm-submodule.1
  164. +1 −1 deps/npm/man/man1/npm-tag.1
  165. +1 −1 deps/npm/man/man1/npm-test.1
  166. +1 −1 deps/npm/man/man1/npm-uninstall.1
  167. +1 −1 deps/npm/man/man1/npm-unpublish.1
  168. +1 −1 deps/npm/man/man1/npm-update.1
  169. +1 −1 deps/npm/man/man1/npm-version.1
  170. +1 −1 deps/npm/man/man1/npm-view.1
  171. +1 −1 deps/npm/man/man1/npm-whoami.1
  172. +2 −2 deps/npm/man/man1/npm.1
  173. +1 −1 deps/npm/man/man3/npm-bin.3
  174. +1 −1 deps/npm/man/man3/npm-bugs.3
  175. +1 −1 deps/npm/man/man3/npm-commands.3
  176. +1 −1 deps/npm/man/man3/npm-config.3
  177. +1 −1 deps/npm/man/man3/npm-deprecate.3
  178. +1 −1 deps/npm/man/man3/npm-docs.3
  179. +1 −1 deps/npm/man/man3/npm-edit.3
  180. +1 −1 deps/npm/man/man3/npm-explore.3
  181. +1 −1 deps/npm/man/man3/npm-help-search.3
  182. +1 −1 deps/npm/man/man3/npm-init.3
  183. +1 −1 deps/npm/man/man3/npm-install.3
  184. +1 −1 deps/npm/man/man3/npm-link.3
  185. +1 −1 deps/npm/man/man3/npm-load.3
  186. +1 −1 deps/npm/man/man3/npm-ls.3
  187. +1 −1 deps/npm/man/man3/npm-outdated.3
  188. +1 −1 deps/npm/man/man3/npm-owner.3
  189. +1 −1 deps/npm/man/man3/npm-pack.3
  190. +1 −1 deps/npm/man/man3/npm-prefix.3
  191. +1 −1 deps/npm/man/man3/npm-prune.3
  192. +1 −1 deps/npm/man/man3/npm-publish.3
  193. +1 −1 deps/npm/man/man3/npm-rebuild.3
  194. +1 −1 deps/npm/man/man3/npm-repo.3
  195. +1 −1 deps/npm/man/man3/npm-restart.3
  196. +1 −1 deps/npm/man/man3/npm-root.3
  197. +1 −1 deps/npm/man/man3/npm-run-script.3
  198. +1 −1 deps/npm/man/man3/npm-search.3
  199. +1 −1 deps/npm/man/man3/npm-shrinkwrap.3
  200. +1 −1 deps/npm/man/man3/npm-start.3
  201. +1 −1 deps/npm/man/man3/npm-stop.3
  202. +1 −1 deps/npm/man/man3/npm-submodule.3
  203. +1 −1 deps/npm/man/man3/npm-tag.3
  204. +1 −1 deps/npm/man/man3/npm-test.3
  205. +1 −1 deps/npm/man/man3/npm-uninstall.3
  206. +1 −1 deps/npm/man/man3/npm-unpublish.3
  207. +1 −1 deps/npm/man/man3/npm-update.3
  208. +1 −1 deps/npm/man/man3/npm-version.3
  209. +1 −1 deps/npm/man/man3/npm-view.3
  210. +1 −1 deps/npm/man/man3/npm-whoami.3
  211. +3 −3 deps/npm/man/man3/npm.3
  212. +1 −1 deps/npm/man/man5/npm-folders.5
  213. +1 −1 deps/npm/man/man5/npm-global.5
  214. +55 −1 deps/npm/man/man5/npm-json.5
  215. +1 −1 deps/npm/man/man5/npmrc.5
  216. +55 −1 deps/npm/man/man5/package.json.5
  217. +1 −1 deps/npm/man/man7/npm-coding-style.7
  218. +22 −1 deps/npm/man/man7/npm-config.7
  219. +1 −1 deps/npm/man/man7/npm-developers.7
  220. +1 −1 deps/npm/man/man7/npm-disputes.7
  221. +2 −2 deps/npm/man/man7/npm-faq.7
  222. +1 −1 deps/npm/man/man7/npm-index.7
  223. +1 −1 deps/npm/man/man7/npm-registry.7
  224. +1 −1 deps/npm/man/man7/npm-scripts.7
  225. +1 −1 deps/npm/man/man7/removing-npm.7
  226. +1 −1 deps/npm/man/man7/semver.7
  227. +3 −3 deps/npm/node_modules/github-url-from-username-repo/index.js
  228. +8 −3 deps/npm/node_modules/github-url-from-username-repo/package.json
  229. +20 −7 deps/npm/node_modules/github-url-from-username-repo/test/index.js
  230. +2 −2 deps/npm/node_modules/init-package-json/default-input.js
  231. +1 −3 deps/npm/node_modules/init-package-json/node_modules/promzard/package.json
  232. +4 −7 deps/npm/node_modules/init-package-json/package.json
  233. +5 −0 deps/npm/node_modules/nopt/lib/nopt.js
  234. +3 −2 deps/npm/node_modules/nopt/package.json
  235. +8 −0 deps/npm/node_modules/nopt/test/basic.js
  236. +8 −0 deps/npm/node_modules/npm-registry-client/lib/request.js
  237. +2 −2 deps/npm/node_modules/npm-registry-client/package.json
  238. +6 −3 deps/npm/node_modules/npmconf/config-defs.js
  239. +1 −3 deps/npm/node_modules/npmconf/node_modules/config-chain/node_modules/proto-list/package.json
  240. +1 −3 deps/npm/node_modules/npmconf/node_modules/config-chain/package.json
  241. +3 −2 deps/npm/node_modules/npmconf/package.json
  242. +2 −2 deps/npm/node_modules/read-installed/package.json
  243. +6 −3 deps/npm/node_modules/read-installed/read-installed.js
  244. +0 −1 deps/npm/node_modules/read-package-json/node_modules/normalize-package-data/.travis.yml
  245. +28 −38 deps/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/fixer.js
  246. +23 −0 deps/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/make_warning.js
  247. +2 −1 deps/npm/node_modules/read-package-json/node_modules/normalize-package-data/lib/normalize.js
  248. +6 −5 deps/npm/node_modules/read-package-json/node_modules/normalize-package-data/package.json
  249. +4 −3 deps/npm/node_modules/read-package-json/package.json
  250. +25 −0 deps/npm/node_modules/uid-number/LICENCE
  251. +14 −13 deps/npm/package.json
  252. +3 −1 deps/npm/scripts/doc-build.sh
  253. +30 −0 deps/npm/test/common-tap.js
  254. +15 −0 deps/npm/test/tap/00-check-mock-dep.js
  255. +7 −3 deps/npm/test/tap/404-parent.js
  256. +61 −0 deps/npm/test/tap/cache-add-unpublished.js
  257. +60 −0 deps/npm/test/tap/cache-shasum.js
  258. +13 −10 deps/npm/test/tap/circular-dep.js
  259. +0 −2 deps/npm/test/tap/config-meta.js
  260. +12 −8 deps/npm/test/tap/dedupe.js
  261. +1 −3 deps/npm/test/tap/dedupe/package.json
  262. +3 −0 deps/npm/test/tap/git-cache-locking.js
  263. +3 −6 deps/npm/test/tap/ignore-install-link.js
  264. +3 −2 deps/npm/test/tap/ignore-scripts.js
  265. +38 −0 deps/npm/test/tap/install-cli-unicode.js
  266. +1 −0 deps/npm/test/tap/install-cli/README.md
  267. +1 −0 deps/npm/test/tap/install-cli/index.js
  268. +10 −0 deps/npm/test/tap/install-cli/package.json
  269. +140 −0 deps/npm/test/tap/install-save-prefix.js
  270. +1 −0 deps/npm/test/tap/install-save-prefix/README.md
  271. +1 −0 deps/npm/test/tap/install-save-prefix/index.js
  272. +7 −0 deps/npm/test/tap/install-save-prefix/package.json
  273. +29 −0 deps/npm/test/tap/invalid-cmd-exit-code.js
  274. +9 −1 deps/npm/test/tap/lifecycle-signal.js
  275. +12 −0 deps/npm/test/tap/lifecycle.js
  276. +79 −0 deps/npm/test/tap/ls-depth-cli.js
  277. +8 −0 deps/npm/test/tap/ls-depth/package.json
  278. +10 −7 deps/npm/test/tap/outdated-color.js
  279. +32 −63 deps/npm/test/tap/peer-deps-invalid.js
  280. +10 −0 deps/npm/test/tap/peer-deps-invalid/file-fail.js
  281. +11 −0 deps/npm/test/tap/peer-deps-invalid/file-ok.js
  282. +33 −45 deps/npm/test/tap/peer-deps-without-package-json.js
  283. +11 −0 deps/npm/test/tap/peer-deps-without-package-json/file-js.js
  284. +47 −0 deps/npm/test/tap/shrinkwrap-empty-deps.js
  285. +7 −0 deps/npm/test/tap/shrinkwrap-empty-deps/package.json
  286. +1 −1 deps/npm/test/tap/sorted-package-json.js
  287. +20 −38 deps/npm/test/tap/startstop.js
  288. +22 −0 deps/npm/wercker.yml
  289. +3 −1 doc/api/events.markdown
  290. +2 −2 doc/api/http.markdown
  291. +3 −2 doc/api/net.markdown
  292. +2 −1 lib/child_process.js
  293. +6 −4 src/node.cc
  294. +65 −0 test/simple/test-cluster-send-deadlock.js
@@ -167,7 +167,7 @@ website_files = \
out/doc/sh_main.js \
out/doc/sh_javascript.min.js

doc: $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs) tools/doc/ node
doc: $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs) tools/doc/ out/doc/changelog.html node

$(apidoc_dirs):
mkdir -p $@
@@ -0,0 +1,5 @@
language: node_js
script: "npm run-script tap"
node_js:
- "0.11"
- "0.10"
@@ -169,7 +169,6 @@ publish: link doc
git push origin &&\
git push origin --tags &&\
npm publish &&\
npm tag npm@$(shell npm -v) $(shell npm -v | awk -F. '{print $$1 "." $$2}') &&\
make doc-publish &&\
make zip-publish

@@ -1,6 +1,6 @@
npm(1) -- node package manager
==============================

[![Build Status](https://img.shields.io/travis/npm/npm/master.svg)](https://travis-ci.org/npm/npm)
## SYNOPSIS

This is just enough info to get you up and running.
@@ -38,6 +38,10 @@ paths, etc.) then read on.
There's a pretty robust install script at
<https://www.npmjs.org/install.sh>. You can download that and run it.

Here's an example using curl:

curl -L https://npmjs.org/install.sh | sh

### Slightly Fancier

You can set any npm configuration params with that script:
@@ -4,7 +4,7 @@ npm(3) -- node package manager
## SYNOPSIS

var npm = require("npm")
npm.load([configObject], function (er, npm) {
npm.load([configObject, ]function (er, npm) {
// use the npm object, now that it's loaded.

npm.config.set(key, val)
@@ -24,7 +24,7 @@ A `package` is:
* a) a folder containing a program described by a package.json file
* b) a gzipped tarball containing (a)
* c) a url that resolves to (b)
* d) a `<name>@<version>` that is published on the registry with (c)
* d) a `<name>@<version>` that is published on the registry (see `npm-registry(7)`) with (c)
* e) a `<name>@<tag>` that points to (d)
* f) a `<name>` that has a "latest" tag satisfying (e)
* g) a `<git remote url>` that resolves to (b)
@@ -254,7 +254,6 @@ affects a real use-case, it will be investigated.
* npm-config(7)
* npmrc(5)
* npm-registry(7)
* npm-folders(5)
* npm-tag(1)
* npm-rm(1)
* npm-shrinkwrap(1)
@@ -3,11 +3,13 @@ npm-run-script(1) -- Run arbitrary package scripts

## SYNOPSIS

npm run-script <script> <name>
npm run-script [<pkg>] <command>

## DESCRIPTION

This runs an arbitrary command from a package's "scripts" object.
This runs an arbitrary command from a package's `"scripts"` object.
If no package name is provided, it will search for a `package.json`
in the current folder and use its `"scripts"` object.

It is used by the test, start, restart, and stop commands, but can be
called directly, as well.
@@ -311,6 +311,7 @@ See semver(7) for more details about specifying version ranges.
* `<version`
* `<=version`
* `~version` "Approximately equivalent to version" See semver(7)
* `^version` "Compatible with version" See semver(7)
* `1.2.x` 1.2.0, 1.2.1, etc., but not 1.3.0
* `http://...` See 'URLs as Dependencies' below
* `*` Matches any version
@@ -404,6 +405,40 @@ can consume the functionality without requiring them to compile it
themselves. In dev mode (ie, locally running `npm install`), it'll
run this script as well, so that you can test it easily.

## peerDependencies

In some cases, you want to express the compatibility of your package with an
host tool or library, while not necessarily doing a `require` of this host.
This is usually refered to as a *plugin*. Notably, your module may be exposing
a specific interface, expected and specified by the host documentation.

For example:

{
"name": "tea-latte",
"version": "1.3.5"
"peerDependencies": {
"tea": "2.x"
}
}

This ensures your package `tea-latte` can be installed *along* with the second
major version of the host package `tea` only. The host package is automatically
installed if needed. `npm install tea-latte` could possibly yield the following
dependency graph:

├── tea-latte@1.3.5
└── tea@2.2.0

Trying to install another plugin with a conflicting requirement will cause an
error. For this reason, make sure your plugin requirement is as broad as
possible, and not to lock it down to specific patch versions.

Assuming the host complies with [semver](http://semver.org/), only changes in
the host package's major version will break your plugin. Thus, if you've worked
with every 1.x version of the host package, use `"^1.0"` or `"1.x"` to express
this. If you depend on features introduced in 1.5.2, use `">= 1.5.2 < 2"`.

## bundledDependencies

Array of package names that will be bundled when publishing the package.
@@ -648,6 +648,19 @@ devDependencies hash.

Only works if there is already a package.json file present.

### save-prefix

* Default: '^'
* Type: String

Configure how versions of packages installed to a package.json file via
`--save` or `--save-dev` get prefixed.

For example if a package has version `1.2.3`, by default it's version is
set to `^1.2.3` which allows minor upgrades for that package, but after
`npm config set save-prefix='~'` it would be set to `~1.2.3` which only allows
patch upgrades.

### searchopts

* Default: ""
@@ -77,7 +77,7 @@ npm will not help you do something that is known to be a bad idea.

Mikeal Rogers answered this question very well:

<http://www.mikealrogers.com/posts/nodemodules-in-git.html>
<http://www.futurealoof.com/posts/nodemodules-in-git.html>

tl;dr

@@ -3,14 +3,16 @@
<title>README</title>
<meta http-equiv="content-type" value="text/html;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>

<body>
<div id="wrapper">

<h1><a href="cli/npm.html">npm</a></h1> <p>node package manager</p>

<h2 id="SYNOPSIS">SYNOPSIS</h2>
<p><a href="https://img.shields.io/travis/npm/npm/master.svg)](https://travis-ci.org/npm/npm">![Build Status</a>
## SYNOPSIS</p>

<p>This is just enough info to get you up and running.</p>

@@ -47,6 +49,10 @@ <h2 id="Fancy-Install-Unix">Fancy Install (Unix)</h2>
<p>There&#39;s a pretty robust install script at
<a href="https://www.npmjs.org/install.sh">https://www.npmjs.org/install.sh</a>. You can download that and run it.</p>

<p>Here&#39;s an example using curl:</p>

<pre><code>curl -L https://npmjs.org/install.sh | sh</code></pre>

<h3 id="Slightly-Fancier">Slightly Fancier</h3>

<p>You can set any npm configuration params with that script:</p>
@@ -254,5 +260,5 @@ <h2 id="SEE-ALSO">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@1.4.6</p>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-bin</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-bin.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -31,5 +32,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bin &mdash; npm@1.4.6</p>
<p id="footer">npm-bin &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-bugs</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-bugs.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -37,5 +38,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-bugs &mdash; npm@1.4.6</p>
<p id="footer">npm-bugs &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-commands</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-commands.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -40,5 +41,5 @@ <h2 id="SEE-ALSO">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-commands &mdash; npm@1.4.6</p>
<p id="footer">npm-commands &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-config</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-config.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -45,5 +46,5 @@ <h2 id="SEE-ALSO">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-config &mdash; npm@1.4.6</p>
<p id="footer">npm-config &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-deprecate</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-deprecate.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -44,5 +45,5 @@ <h2 id="SEE-ALSO">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-deprecate &mdash; npm@1.4.6</p>
<p id="footer">npm-deprecate &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-docs</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-docs.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -37,5 +38,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-docs &mdash; npm@1.4.6</p>
<p id="footer">npm-docs &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-edit</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-edit.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -42,5 +43,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-edit &mdash; npm@1.4.6</p>
<p id="footer">npm-edit &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-explore</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-explore.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -36,5 +37,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-explore &mdash; npm@1.4.6</p>
<p id="footer">npm-explore &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-help-search</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-help-search.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -44,5 +45,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-help-search &mdash; npm@1.4.6</p>
<p id="footer">npm-help-search &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-init</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-init.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -47,5 +48,5 @@ <h2 id="SEE-ALSO">SEE ALSO</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-init &mdash; npm@1.4.6</p>
<p id="footer">npm-init &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-install</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-install.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -37,5 +38,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-install &mdash; npm@1.4.6</p>
<p id="footer">npm-install &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-link</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-link.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -51,5 +52,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-link &mdash; npm@1.4.6</p>
<p id="footer">npm-link &mdash; npm@1.4.8</p>

@@ -3,6 +3,7 @@
<title>npm-load</title>
<meta http-equiv="content-type" value="text/html;utf-8">
<link rel="stylesheet" type="text/css" href="../../static/style.css">
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm-load.html">
<script async=true src="../../static/toc.js"></script>

<body>
@@ -44,5 +45,5 @@ <h2 id="DESCRIPTION">DESCRIPTION</h2>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
<p id="footer">npm-load &mdash; npm@1.4.6</p>
<p id="footer">npm-load &mdash; npm@1.4.8</p>