npm: Upgrade to 1.1.27

- severely enhanced 'npm init'
- upgraded node-gyp
This commit is contained in:
isaacs 2012-06-17 12:04:35 -07:00
parent d614d161c7
commit b0b707cb6e
141 changed files with 1621 additions and 486 deletions

6
deps/npm/README.md vendored
View File

@ -89,21 +89,15 @@ To install the latest **unstable** development version from git:
git clone https://github.com/isaacs/npm.git git clone https://github.com/isaacs/npm.git
cd npm cd npm
git submodule update --init --recursive
sudo make install # (or: `node cli.js install -gf`) sudo make install # (or: `node cli.js install -gf`)
If you're sitting in the code folder reading this document in your If you're sitting in the code folder reading this document in your
terminal, then you've already got the code. Just do: terminal, then you've already got the code. Just do:
git submodule update --init --recursive
sudo make install sudo make install
and npm will install itself. and npm will install itself.
Note that github tarballs **do not contain submodules**, so
those won't work. You'll have to also fetch the appropriate submodules
listed in the .gitmodules file.
## Permissions when Using npm to Install Other Stuff ## Permissions when Using npm to Install Other Stuff
**tl;dr** **tl;dr**

View File

@ -375,6 +375,16 @@ Sets a User-Agent to the request header
A white-space separated list of glob patterns of files to always exclude A white-space separated list of glob patterns of files to always exclude
from packages when building tarballs. from packages when building tarballs.
### init-module
* Default: ~/.npm-init.js
* Type: path
A module that will be loaded by the `npm init` command. See the
documentation for the
[init-package-json](https://github.com/isaacs/init-package-json) module
for more information, or npm-init(1).
### init.version ### init.version
* Default: "0.0.0" * Default: "0.0.0"

View File

@ -20,5 +20,6 @@ without a really good reason to do so.
## SEE ALSO ## SEE ALSO
* <https://github.com/isaacs/init-package-json>
* npm-json(1) * npm-json(1)
* npm-version(1) * npm-version(1)

View File

@ -19,7 +19,7 @@
<p>This function should not be used programmatically. Instead, just refer <p>This function should not be used programmatically. Instead, just refer
to the <code>npm.bin</code> member.</p> to the <code>npm.bin</code> member.</p>
</div> </div>
<p id="footer">bin &mdash; npm@1.1.26</p> <p id="footer">bin &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ optional version number.</p>
<p>This command will launch a browser, so this command may not be the most <p>This command will launch a browser, so this command may not be the most
friendly for programmatic use.</p> friendly for programmatic use.</p>
</div> </div>
<p id="footer">bugs &mdash; npm@1.1.26</p> <p id="footer">bugs &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -28,7 +28,7 @@ usage, or <code>man 3 npm-&lt;command&gt;</code> for programmatic usage.</p>
<ul><li><a href="../doc/index.html">index(1)</a></li></ul> <ul><li><a href="../doc/index.html">index(1)</a></li></ul>
</div> </div>
<p id="footer">commands &mdash; npm@1.1.26</p> <p id="footer">commands &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -33,7 +33,7 @@ functions instead.</p>
<ul><li><a href="../api/npm.html">npm(3)</a></li></ul> <ul><li><a href="../api/npm.html">npm(3)</a></li></ul>
</div> </div>
<p id="footer">config &mdash; npm@1.1.26</p> <p id="footer">config &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -30,7 +30,7 @@ install the package.</p></li></ul>
<ul><li><a href="../api/publish.html">publish(3)</a></li><li><a href="../api/unpublish.html">unpublish(3)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul> <ul><li><a href="../api/publish.html">publish(3)</a></li><li><a href="../api/unpublish.html">unpublish(3)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div> </div>
<p id="footer">deprecate &mdash; npm@1.1.26</p> <p id="footer">deprecate &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ optional version number.</p>
<p>This command will launch a browser, so this command may not be the most <p>This command will launch a browser, so this command may not be the most
friendly for programmatic use.</p> friendly for programmatic use.</p>
</div> </div>
<p id="footer">docs &mdash; npm@1.1.26</p> <p id="footer">docs &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -30,7 +30,7 @@ to open. The package can optionally have a version number attached.</p>
<p>Since this command opens an editor in a new process, be careful about where <p>Since this command opens an editor in a new process, be careful about where
and how this is used.</p> and how this is used.</p>
</div> </div>
<p id="footer">edit &mdash; npm@1.1.26</p> <p id="footer">edit &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -24,7 +24,7 @@ sure to use <code>npm rebuild &lt;pkg&gt;</code> if you make any changes.</p>
<p>The first element in the 'args' parameter must be a package name. After that is the optional command, which can be any number of strings. All of the strings will be combined into one, space-delimited command.</p> <p>The first element in the 'args' parameter must be a package name. After that is the optional command, which can be any number of strings. All of the strings will be combined into one, space-delimited command.</p>
</div> </div>
<p id="footer">explore &mdash; npm@1.1.26</p> <p id="footer">explore &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -32,7 +32,7 @@ Name of the file that matched</li></ul>
<p>The silent parameter is not neccessary not used, but it may in the future.</p> <p>The silent parameter is not neccessary not used, but it may in the future.</p>
</div> </div>
<p id="footer">help-search &mdash; npm@1.1.26</p> <p id="footer">help-search &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -35,7 +35,7 @@ then go ahead and use this programmatically.</p>
<p><a href="../doc/json.html">json(1)</a></p> <p><a href="../doc/json.html">json(1)</a></p>
</div> </div>
<p id="footer">init &mdash; npm@1.1.26</p> <p id="footer">init &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ the name of a package to be installed.</p>
<p>Finally, 'callback' is a function that will be called when all packages have been <p>Finally, 'callback' is a function that will be called when all packages have been
installed or when an error has been encountered.</p> installed or when an error has been encountered.</p>
</div> </div>
<p id="footer">install &mdash; npm@1.1.26</p> <p id="footer">install &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -39,7 +39,7 @@ npm.commands.link('redis', cb) # link-install the package</code></pre>
<p>Now, any changes to the redis package will be reflected in <p>Now, any changes to the redis package will be reflected in
the package in the current working directory</p> the package in the current working directory</p>
</div> </div>
<p id="footer">link &mdash; npm@1.1.26</p> <p id="footer">link &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -32,7 +32,7 @@ config object.</p>
<p>For a list of all the available command-line configs, see <code>npm help config</code></p> <p>For a list of all the available command-line configs, see <code>npm help config</code></p>
</div> </div>
<p id="footer">load &mdash; npm@1.1.26</p> <p id="footer">load &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -59,7 +59,7 @@ project.</p>
This means that if a submodule a same dependency as a parent module, then the This means that if a submodule a same dependency as a parent module, then the
dependency will only be output once.</p> dependency will only be output once.</p>
</div> </div>
<p id="footer">ls &mdash; npm@1.1.26</p> <p id="footer">ls &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -24,7 +24,7 @@ npm.load(configObject, function (er, npm) {
<h2 id="VERSION">VERSION</h2> <h2 id="VERSION">VERSION</h2>
<p>1.1.26</p> <p>1.1.27</p>
<h2 id="DESCRIPTION">DESCRIPTION</h2> <h2 id="DESCRIPTION">DESCRIPTION</h2>
@ -91,7 +91,7 @@ method names. Use the <code>npm.deref</code> method to find the real name.</p>
<pre><code>var cmd = npm.deref("unp") // cmd === "unpublish"</code></pre> <pre><code>var cmd = npm.deref("unp") // cmd === "unpublish"</code></pre>
</div> </div>
<p id="footer">npm &mdash; npm@1.1.26</p> <p id="footer">npm &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -19,7 +19,7 @@ currently outdated.</p>
<p>If the 'packages' parameter is left out, npm will check all packages.</p> <p>If the 'packages' parameter is left out, npm will check all packages.</p>
</div> </div>
<p id="footer">outdated &mdash; npm@1.1.26</p> <p id="footer">outdated &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -34,7 +34,7 @@ that is not implemented at this time.</p>
<ul><li><a href="../api/publish.html">publish(3)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul> <ul><li><a href="../api/publish.html">publish(3)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div> </div>
<p id="footer">owner &mdash; npm@1.1.26</p> <p id="footer">owner &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ overwritten the second time.</p>
<p>If no arguments are supplied, then npm packs the current package folder.</p> <p>If no arguments are supplied, then npm packs the current package folder.</p>
</div> </div>
<p id="footer">pack &mdash; npm@1.1.26</p> <p id="footer">pack &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -21,7 +21,7 @@
<p>This function is not useful programmatically</p> <p>This function is not useful programmatically</p>
</div> </div>
<p id="footer">prefix &mdash; npm@1.1.26</p> <p id="footer">prefix &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -23,7 +23,7 @@
<p>Extraneous packages are packages that are not listed on the parent <p>Extraneous packages are packages that are not listed on the parent
package's dependencies list.</p> package's dependencies list.</p>
</div> </div>
<p id="footer">prune &mdash; npm@1.1.26</p> <p id="footer">prune &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -32,7 +32,7 @@ the registry. Overwrites when the "force" environment variable is set.</p>
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../api/owner.html">owner(3)</a></li></ul> <ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../api/owner.html">owner(3)</a></li></ul>
</div> </div>
<p id="footer">publish &mdash; npm@1.1.26</p> <p id="footer">publish &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -22,7 +22,7 @@ the new binary. If no 'packages' parameter is specify, every package will be reb
<p>See <code>npm help build</code></p> <p>See <code>npm help build</code></p>
</div> </div>
<p id="footer">rebuild &mdash; npm@1.1.26</p> <p id="footer">rebuild &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -27,7 +27,7 @@ in the <code>packages</code> parameter.</p>
<ul><li><a href="../api/start.html">start(3)</a></li><li><a href="../api/stop.html">stop(3)</a></li></ul> <ul><li><a href="../api/start.html">start(3)</a></li><li><a href="../api/stop.html">stop(3)</a></li></ul>
</div> </div>
<p id="footer">restart &mdash; npm@1.1.26</p> <p id="footer">restart &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -21,7 +21,7 @@
<p>This function is not useful programmatically.</p> <p>This function is not useful programmatically.</p>
</div> </div>
<p id="footer">root &mdash; npm@1.1.26</p> <p id="footer">root &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -29,7 +29,7 @@ assumed to be the command to run. All other elements are ignored.</p>
<ul><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../api/test.html">test(3)</a></li><li><a href="../api/start.html">start(3)</a></li><li><a href="../api/restart.html">restart(3)</a></li><li><a href="../api/stop.html">stop(3)</a></li></ul> <ul><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../api/test.html">test(3)</a></li><li><a href="../api/start.html">start(3)</a></li><li><a href="../api/restart.html">restart(3)</a></li><li><a href="../api/stop.html">stop(3)</a></li></ul>
</div> </div>
<p id="footer">run-script &mdash; npm@1.1.26</p> <p id="footer">run-script &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -32,7 +32,7 @@ excluded term (the "searchexclude" config). The search is case insensitive
and doesn't try to read your mind (it doesn't do any verb tense matching or the and doesn't try to read your mind (it doesn't do any verb tense matching or the
like).</p> like).</p>
</div> </div>
<p id="footer">search &mdash; npm@1.1.26</p> <p id="footer">search &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -26,7 +26,7 @@ but the shrinkwrap file will still be written.</p>
<p>Finally, 'callback' is a function that will be called when the shrinkwrap has <p>Finally, 'callback' is a function that will be called when the shrinkwrap has
been saved.</p> been saved.</p>
</div> </div>
<p id="footer">shrinkwrap &mdash; npm@1.1.26</p> <p id="footer">shrinkwrap &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -19,7 +19,7 @@
<p>npm can run tests on multiple packages. Just specify multiple packages <p>npm can run tests on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p> in the <code>packages</code> parameter.</p>
</div> </div>
<p id="footer">start &mdash; npm@1.1.26</p> <p id="footer">start &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -19,7 +19,7 @@
<p>npm can run stop on multiple packages. Just specify multiple packages <p>npm can run stop on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p> in the <code>packages</code> parameter.</p>
</div> </div>
<p id="footer">stop &mdash; npm@1.1.26</p> <p id="footer">stop &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -33,7 +33,7 @@ dependencies into the submodule folder.</p>
<ul><li>npm help json</li><li>git help submodule</li></ul> <ul><li>npm help json</li><li>git help submodule</li></ul>
</div> </div>
<p id="footer">submodule &mdash; npm@1.1.26</p> <p id="footer">submodule &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -29,7 +29,7 @@ parameter is missing or falsey (empty), the default froom the config will be
used. For more information about how to set this config, check used. For more information about how to set this config, check
<code>man 3 npm-config</code> for programmatic usage or <code>man npm-config</code> for cli usage.</p> <code>man 3 npm-config</code> for programmatic usage or <code>man npm-config</code> for cli usage.</p>
</div> </div>
<p id="footer">tag &mdash; npm@1.1.26</p> <p id="footer">tag &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -22,7 +22,7 @@ true.</p>
<p>npm can run tests on multiple packages. Just specify multiple packages <p>npm can run tests on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p> in the <code>packages</code> parameter.</p>
</div> </div>
<p id="footer">test &mdash; npm@1.1.26</p> <p id="footer">test &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -22,7 +22,7 @@ the name of a package to be uninstalled.</p>
<p>Finally, 'callback' is a function that will be called when all packages have been <p>Finally, 'callback' is a function that will be called when all packages have been
uninstalled or when an error has been encountered.</p> uninstalled or when an error has been encountered.</p>
</div> </div>
<p id="footer">uninstall &mdash; npm@1.1.26</p> <p id="footer">uninstall &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -26,7 +26,7 @@ is what is meant.</p>
<p>If no version is specified, or if all versions are removed then <p>If no version is specified, or if all versions are removed then
the root package entry is removed from the registry entirely.</p> the root package entry is removed from the registry entirely.</p>
</div> </div>
<p id="footer">unpublish &mdash; npm@1.1.26</p> <p id="footer">unpublish &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -18,7 +18,7 @@
<p>The 'packages' argument is an array of packages to update. The 'callback' parameter will be called when done or when an error occurs.</p> <p>The 'packages' argument is an array of packages to update. The 'callback' parameter will be called when done or when an error occurs.</p>
</div> </div>
<p id="footer">update &mdash; npm@1.1.26</p> <p id="footer">update &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -24,7 +24,7 @@ fail if the repo is not clean.</p>
parameter. The difference, however, is this function will fail if it does parameter. The difference, however, is this function will fail if it does
not have exactly one element. The only element should be a version number.</p> not have exactly one element. The only element should be a version number.</p>
</div> </div>
<p id="footer">version &mdash; npm@1.1.26</p> <p id="footer">version &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -99,7 +99,7 @@ the field name.</p>
<p>corresponding to the list of fields selected.</p> <p>corresponding to the list of fields selected.</p>
</div> </div>
<p id="footer">view &mdash; npm@1.1.26</p> <p id="footer">view &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -21,7 +21,7 @@
<p>This function is not useful programmatically</p> <p>This function is not useful programmatically</p>
</div> </div>
<p id="footer">whoami &mdash; npm@1.1.26</p> <p id="footer">whoami &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -96,21 +96,15 @@ git, and mess with it directly.</p>
<pre><code>git clone https://github.com/isaacs/npm.git <pre><code>git clone https://github.com/isaacs/npm.git
cd npm cd npm
git submodule update --init --recursive
sudo make install # (or: `node cli.js install -gf`)</code></pre> sudo make install # (or: `node cli.js install -gf`)</code></pre>
<p>If you're sitting in the code folder reading this document in your <p>If you're sitting in the code folder reading this document in your
terminal, then you've already got the code. Just do:</p> terminal, then you've already got the code. Just do:</p>
<pre><code>git submodule update --init --recursive <pre><code>sudo make install</code></pre>
sudo make install</code></pre>
<p>and npm will install itself.</p> <p>and npm will install itself.</p>
<p>Note that github tarballs <strong>do not contain submodules</strong>, so
those won't work. You'll have to also fetch the appropriate submodules
listed in the .gitmodules file.</p>
<h2 id="Permissions-when-Using-npm-to-Install-Other-Stuff">Permissions when Using npm to Install Other Stuff</h2> <h2 id="Permissions-when-Using-npm-to-Install-Other-Stuff">Permissions when Using npm to Install Other Stuff</h2>
<p><strong>tl;dr</strong></p> <p><strong>tl;dr</strong></p>
@ -267,7 +261,7 @@ will no doubt tell you to put the output in a gist or email.</p>
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/index.html">index(1)</a></li></ul> <ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/index.html">index(1)</a></li></ul>
</div> </div>
<p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@1.1.26</p> <p id="footer"><a href="../doc/README.html">README</a> &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -39,7 +39,7 @@ authorize on a new machine.</p>
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li><li><a href="../doc/whoami.html">whoami(1)</a></li></ul> <ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li><li><a href="../doc/whoami.html">whoami(1)</a></li></ul>
</div> </div>
<p id="footer">adduser &mdash; npm@1.1.26</p> <p id="footer">adduser &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/prefix.html">prefix(1)</a></li><li><a href="../doc/root.html">root(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/prefix.html">prefix(1)</a></li><li><a href="../doc/root.html">root(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">bin &mdash; npm@1.1.26</p> <p id="footer">bin &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -36,7 +36,7 @@ config param.</p>
<ul><li><a href="../doc/docs.html">docs(1)</a></li><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul> <ul><li><a href="../doc/docs.html">docs(1)</a></li><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul>
</div> </div>
<p id="footer">bugs &mdash; npm@1.1.26</p> <p id="footer">bugs &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ A folder containing a <code>package.json</code> file in its root.</li></ul>
<ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul> <ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul>
</div> </div>
<p id="footer">build &mdash; npm@1.1.26</p> <p id="footer">build &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@ install packages into the local space.</p>
<ul><li><a href="../doc/install.html">install(1)</a></li></ul> <ul><li><a href="../doc/install.html">install(1)</a></li></ul>
</div> </div>
<p id="footer">bundle &mdash; npm@1.1.26</p> <p id="footer">bundle &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -66,7 +66,7 @@ they do not make an HTTP request to the registry.</p>
<ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/pack.html">pack(1)</a></li></ul> <ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/pack.html">pack(1)</a></li></ul>
</div> </div>
<p id="footer">cache &mdash; npm@1.1.26</p> <p id="footer">cache &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -65,7 +65,7 @@
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li></ul> <ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li></ul>
</div> </div>
<p id="footer">changelog &mdash; npm@1.1.26</p> <p id="footer">changelog &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -180,7 +180,7 @@ set to anything."</p>
<ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul> <ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul>
</div> </div>
<p id="footer">coding-style &mdash; npm@1.1.26</p> <p id="footer">coding-style &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -33,7 +33,7 @@ completions based on the arguments.</p>
<ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul> <ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul>
</div> </div>
<p id="footer">completion &mdash; npm@1.1.26</p> <p id="footer">completion &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -333,6 +333,15 @@ user.</p>
<p>A white-space separated list of glob patterns of files to always exclude <p>A white-space separated list of glob patterns of files to always exclude
from packages when building tarballs.</p> from packages when building tarballs.</p>
<h3 id="init-module">init-module</h3>
<ul><li>Default: ~/.npm-init.js</li><li>Type: path</li></ul>
<p>A module that will be loaded by the <code>npm init</code> command. See the
documentation for the
<a href="https://github.com/isaacs/init-package-json">init-package-json</a> module
for more information, or <a href="../doc/init.html">init(1)</a>.</p>
<h3 id="init-version">init.version</h3> <h3 id="init-version">init.version</h3>
<ul><li>Default: "0.0.0"</li><li>Type: semver</li></ul> <ul><li>Default: "0.0.0"</li><li>Type: semver</li></ul>
@ -665,7 +674,7 @@ then answer "no" to any prompt.</p>
<ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul> <ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul>
</div> </div>
<p id="footer">config &mdash; npm@1.1.26</p> <p id="footer">config &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -29,7 +29,7 @@ something like this:</p>
<ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul> <ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div> </div>
<p id="footer">deprecate &mdash; npm@1.1.26</p> <p id="footer">deprecate &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -160,7 +160,7 @@ from a fresh checkout.</p>
<ul><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul> <ul><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div> </div>
<p id="footer">developers &mdash; npm@1.1.26</p> <p id="footer">developers &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -80,7 +80,7 @@ license statement)</li><li>Illegal content.</li></ol>
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li></ul> <ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li></ul>
</div> </div>
<p id="footer">disputes &mdash; npm@1.1.26</p> <p id="footer">disputes &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -37,7 +37,7 @@ config param.</p>
<ul><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul> <ul><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li></ul>
</div> </div>
<p id="footer">docs &mdash; npm@1.1.26</p> <p id="footer">docs &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -37,7 +37,7 @@ or <code>"notepad"</code> on Windows.</li><li>Type: path</li></ul>
<ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/explore.html">explore(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/explore.html">explore(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">edit &mdash; npm@1.1.26</p> <p id="footer">edit &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -40,7 +40,7 @@ Windows</li><li>Type: path</li></ul>
<ul><li><a href="../doc/submodule.html">submodule(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/edit.html">edit(1)</a></li><li><a href="../doc/rebuild.html">rebuild(1)</a></li><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul> <ul><li><a href="../doc/submodule.html">submodule(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/edit.html">edit(1)</a></li><li><a href="../doc/rebuild.html">rebuild(1)</a></li><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul>
</div> </div>
<p id="footer">explore &mdash; npm@1.1.26</p> <p id="footer">explore &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -241,7 +241,7 @@ We'll have someone kick it or something.</p>
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li></ul> <ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li></ul>
</div> </div>
<p id="footer">faq &mdash; npm@1.1.26</p> <p id="footer">faq &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -205,7 +205,7 @@ cannot be found elsewhere. See <code><a href="../doc/json.html">json(1)</a></co
<ul><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/pack.html">pack(1)</a></li><li><a href="../doc/cache.html">cache(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li></ul> <ul><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/pack.html">pack(1)</a></li><li><a href="../doc/cache.html">cache(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li></ul>
</div> </div>
<p id="footer">folders &mdash; npm@1.1.26</p> <p id="footer">folders &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -38,7 +38,7 @@ where the terms were found in the documentation.</p>
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/help.html">help(1)</a></li></ul> <ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/help.html">help(1)</a></li></ul>
</div> </div>
<p id="footer">help-search &mdash; npm@1.1.26</p> <p id="footer">help-search &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -36,7 +36,7 @@ matches are equivalent to specifying a topic name.</p>
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/README.html">README</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/help-search.html">help-search(1)</a></li><li><a href="../doc/index.html">index(1)</a></li></ul> <ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/README.html">README</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/help-search.html">help-search(1)</a></li><li><a href="../doc/index.html">index(1)</a></li></ul>
</div> </div>
<p id="footer">help &mdash; npm@1.1.26</p> <p id="footer">help &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -384,7 +384,7 @@
<p> Display npm username</p> <p> Display npm username</p>
</div> </div>
<p id="footer">index &mdash; npm@1.1.26</p> <p id="footer">index &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -27,9 +27,9 @@ without a really good reason to do so.</p>
<h2 id="SEE-ALSO">SEE ALSO</h2> <h2 id="SEE-ALSO">SEE ALSO</h2>
<ul><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/version.html">version(1)</a></li></ul> <ul><li><a href="https://github.com/isaacs/init-package-json">https://github.com/isaacs/init-package-json</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/version.html">version(1)</a></li></ul>
</div> </div>
<p id="footer">init &mdash; npm@1.1.26</p> <p id="footer">init &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -133,7 +133,7 @@ affects a real use-case, it will be investigated.</p>
<ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/update.html">update(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/rebuild.html">rebuild(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/tag.html">tag(1)</a></li><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/shrinkwrap.html">shrinkwrap(1)</a></li></ul> <ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/update.html">update(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/rebuild.html">rebuild(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/tag.html">tag(1)</a></li><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/shrinkwrap.html">shrinkwrap(1)</a></li></ul>
</div> </div>
<p id="footer">install &mdash; npm@1.1.26</p> <p id="footer">install &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -509,7 +509,7 @@ overridden.</p>
<ul><li><a href="../doc/semver.html">semver(1)</a></li><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/version.html">version(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/rm.html">rm(1)</a></li></ul> <ul><li><a href="../doc/semver.html">semver(1)</a></li><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/version.html">version(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/rm.html">rm(1)</a></li></ul>
</div> </div>
<p id="footer">json &mdash; npm@1.1.26</p> <p id="footer">json &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -58,7 +58,7 @@ installation target into your project's <code>node_modules</code> folder.</p>
<ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">link &mdash; npm@1.1.26</p> <p id="footer">link &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -58,7 +58,7 @@ project.</p>
<ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/prune.html">prune(1)</a></li><li><a href="../doc/outdated.html">outdated(1)</a></li><li><a href="../doc/update.html">update(1)</a></li></ul> <ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/link.html">link(1)</a></li><li><a href="../doc/prune.html">prune(1)</a></li><li><a href="../doc/outdated.html">outdated(1)</a></li><li><a href="../doc/update.html">update(1)</a></li></ul>
</div> </div>
<p id="footer">list &mdash; npm@1.1.26</p> <p id="footer">list &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -14,7 +14,7 @@
<h2 id="VERSION">VERSION</h2> <h2 id="VERSION">VERSION</h2>
<p>1.1.26</p> <p>1.1.27</p>
<h2 id="DESCRIPTION">DESCRIPTION</h2> <h2 id="DESCRIPTION">DESCRIPTION</h2>
@ -135,7 +135,7 @@ will no doubt tell you to put the output in a gist or email.</p>
<ul><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/README.html">README</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/index.html">index(1)</a></li><li><a href="../api/npm.html">npm(3)</a></li></ul> <ul><li><a href="../doc/help.html">help(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li><li><a href="../doc/README.html">README</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/index.html">index(1)</a></li><li><a href="../api/npm.html">npm(3)</a></li></ul>
</div> </div>
<p id="footer">npm &mdash; npm@1.1.26</p> <p id="footer">npm &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -21,7 +21,7 @@ packages are currently outdated.</p>
<ul><li><a href="../doc/update.html">update(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li></ul> <ul><li><a href="../doc/update.html">update(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li></ul>
</div> </div>
<p id="footer">outdated &mdash; npm@1.1.26</p> <p id="footer">outdated &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -34,7 +34,7 @@ that is not implemented at this time.</p>
<ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/disputes.html">disputes(1)</a></li></ul> <ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/disputes.html">disputes(1)</a></li></ul>
</div> </div>
<p id="footer">owner &mdash; npm@1.1.26</p> <p id="footer">owner &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -29,7 +29,7 @@ overwritten the second time.</p>
<ul><li><a href="../doc/cache.html">cache(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/cache.html">cache(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">pack &mdash; npm@1.1.26</p> <p id="footer">pack &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/root.html">root(1)</a></li><li><a href="../doc/bin.html">bin(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/root.html">root(1)</a></li><li><a href="../doc/bin.html">bin(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">prefix &mdash; npm@1.1.26</p> <p id="footer">prefix &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ package's dependencies list.</p>
<ul><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul> <ul><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul>
</div> </div>
<p id="footer">prune &mdash; npm@1.1.26</p> <p id="footer">prune &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -29,7 +29,7 @@ the registry. Overwrites when the "--force" flag is set.</p>
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li><li><a href="../doc/deprecate.html">deprecate(1)</a></li><li><a href="../doc/tag.html">tag(1)</a></li></ul> <ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li><li><a href="../doc/deprecate.html">deprecate(1)</a></li><li><a href="../doc/tag.html">tag(1)</a></li></ul>
</div> </div>
<p id="footer">publish &mdash; npm@1.1.26</p> <p id="footer">publish &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -25,7 +25,7 @@ the new binary.</p>
<ul><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul> <ul><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul>
</div> </div>
<p id="footer">rebuild &mdash; npm@1.1.26</p> <p id="footer">rebuild &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -97,7 +97,7 @@ ask for help on the <a href="mailto:npm-@googlegroups.com">npm-@googlegroups.com
<ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/disputes.html">disputes(1)</a></li></ul> <ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/disputes.html">disputes(1)</a></li></ul>
</div> </div>
<p id="footer">registry &mdash; npm@1.1.26</p> <p id="footer">registry &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -58,7 +58,7 @@ modules. To track those down, you can do the following:</p>
<ul><li><a href="../doc/README.html">README</a></li><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/prune.html">prune(1)</a></li></ul> <ul><li><a href="../doc/README.html">README</a></li><li><a href="../doc/rm.html">rm(1)</a></li><li><a href="../doc/prune.html">prune(1)</a></li></ul>
</div> </div>
<p id="footer">removing-npm &mdash; npm@1.1.26</p> <p id="footer">removing-npm &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -24,7 +24,7 @@ the "start" script.</p>
<ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul> <ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul>
</div> </div>
<p id="footer">restart &mdash; npm@1.1.26</p> <p id="footer">restart &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/prefix.html">prefix(1)</a></li><li><a href="../doc/bin.html">bin(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/prefix.html">prefix(1)</a></li><li><a href="../doc/bin.html">bin(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">root &mdash; npm@1.1.26</p> <p id="footer">root &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -23,7 +23,7 @@ called directly, as well.</p>
<ul><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul> <ul><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul>
</div> </div>
<p id="footer">run-script &mdash; npm@1.1.26</p> <p id="footer">run-script &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -177,7 +177,7 @@ will sudo the npm command in question.</li></ul>
<ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul> <ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/developers.html">developers(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul>
</div> </div>
<p id="footer">scripts &mdash; npm@1.1.26</p> <p id="footer">scripts &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -24,7 +24,7 @@ expression characters must be escaped or quoted in most shells.)</p>
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/view.html">view(1)</a></li></ul> <ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/view.html">view(1)</a></li></ul>
</div> </div>
<p id="footer">search &mdash; npm@1.1.26</p> <p id="footer">search &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -104,7 +104,7 @@ that satisfies the range, or null if none of them do.</li></ul>
<ul><li><a href="../doc/json.html">json(1)</a></li></ul> <ul><li><a href="../doc/json.html">json(1)</a></li></ul>
</div> </div>
<p id="footer">semver &mdash; npm@1.1.26</p> <p id="footer">semver &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -169,7 +169,7 @@ versions.</p>
<ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul> <ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul>
</div> </div>
<p id="footer">shrinkwrap &mdash; npm@1.1.26</p> <p id="footer">shrinkwrap &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -26,7 +26,7 @@ a vaguely positive way to show that you care.</p>
<ul><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/whoami.html">whoami(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li></ul> <ul><li><a href="../doc/view.html">view(1)</a></li><li><a href="../doc/whoami.html">whoami(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li></ul>
</div> </div>
<p id="footer">star &mdash; npm@1.1.26</p> <p id="footer">star &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul> <ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul>
</div> </div>
<p id="footer">start &mdash; npm@1.1.26</p> <p id="footer">start &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li></ul> <ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/test.html">test(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li></ul>
</div> </div>
<p id="footer">stop &mdash; npm@1.1.26</p> <p id="footer">stop &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -33,7 +33,7 @@ dependencies into the submodule folder.</p>
<ul><li><a href="../doc/json.html">json(1)</a></li><li>git help submodule</li></ul> <ul><li><a href="../doc/json.html">json(1)</a></li><li>git help submodule</li></ul>
</div> </div>
<p id="footer">submodule &mdash; npm@1.1.26</p> <p id="footer">submodule &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -21,7 +21,7 @@
<ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">tag &mdash; npm@1.1.26</p> <p id="footer">tag &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -23,7 +23,7 @@ true.</p>
<ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul> <ul><li><a href="../doc/run-script.html">run-script(1)</a></li><li><a href="../doc/scripts.html">scripts(1)</a></li><li><a href="../doc/start.html">start(1)</a></li><li><a href="../doc/restart.html">restart(1)</a></li><li><a href="../doc/stop.html">stop(1)</a></li></ul>
</div> </div>
<p id="footer">test &mdash; npm@1.1.26</p> <p id="footer">test &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -22,7 +22,7 @@ on its behalf.</p>
<ul><li><a href="../doc/prune.html">prune(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul> <ul><li><a href="../doc/prune.html">prune(1)</a></li><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/config.html">config(1)</a></li></ul>
</div> </div>
<p id="footer">uninstall &mdash; npm@1.1.26</p> <p id="footer">uninstall &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -34,7 +34,7 @@ the root package entry is removed from the registry entirely.</p>
<ul><li><a href="../doc/deprecate.html">deprecate(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li></ul> <ul><li><a href="../doc/deprecate.html">deprecate(1)</a></li><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li></ul>
</div> </div>
<p id="footer">unpublish &mdash; npm@1.1.26</p> <p id="footer">unpublish &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -23,7 +23,7 @@
<ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/outdated.html">outdated(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul> <ul><li><a href="../doc/install.html">install(1)</a></li><li><a href="../doc/outdated.html">outdated(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/list.html">list(1)</a></li></ul>
</div> </div>
<p id="footer">update &mdash; npm@1.1.26</p> <p id="footer">update &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -31,7 +31,7 @@ will use it as a commit message when creating a version commit.</p>
<ul><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/semver.html">semver(1)</a></li></ul> <ul><li><a href="../doc/init.html">init(1)</a></li><li><a href="../doc/json.html">json(1)</a></li><li><a href="../doc/semver.html">semver(1)</a></li></ul>
</div> </div>
<p id="footer">version &mdash; npm@1.1.26</p> <p id="footer">version &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -88,7 +88,7 @@ the field name.</p>
<ul><li><a href="../doc/search.html">search(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/docs.html">docs(1)</a></li></ul> <ul><li><a href="../doc/search.html">search(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/docs.html">docs(1)</a></li></ul>
</div> </div>
<p id="footer">view &mdash; npm@1.1.26</p> <p id="footer">view &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -20,7 +20,7 @@
<ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li></ul> <ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li></ul>
</div> </div>
<p id="footer">whoami &mdash; npm@1.1.26</p> <p id="footer">whoami &mdash; npm@1.1.27</p>
<script> <script>
;(function () { ;(function () {
var wrapper = document.getElementById("wrapper") var wrapper = document.getElementById("wrapper")

View File

@ -6,7 +6,6 @@ var ini = require("./utils/ini.js")
, npm = require("./npm.js") , npm = require("./npm.js")
, registry = npm.registry , registry = npm.registry
, read = require("read") , read = require("read")
, promiseChain = require("./utils/promise-chain.js")
, crypto , crypto
try { try {
@ -19,24 +18,59 @@ function adduser (args, cb) {
if (!crypto) return cb(new Error( if (!crypto) return cb(new Error(
"You must compile node with ssl support to use the adduser feature")) "You must compile node with ssl support to use the adduser feature"))
var u = { u : npm.config.get("username") var c = { u : npm.config.get("username")
, p : npm.config.get("_password") , p : npm.config.get("_password")
, e : npm.config.get("email") , e : npm.config.get("email")
} }
, changed = false , changed = false
, u = {}
, fns = [readUsername, readPassword, readEmail, save]
promiseChain(cb) loop()
(read, [{prompt: "Username: ", default: u.u}], function (un) { function loop (er) {
changed = u.u !== un if (er) return cb(er)
var fn = fns.shift()
if (fn) return fn(c, u, loop)
cb()
}
}
function readUsername (c, u, cb) {
read({prompt: "Username: ", default: c.u}, function (er, un) {
c.changed = c.u !== un
u.u = un u.u = un
cb(er)
}) })
(function (cb) { }
if (u.p && !changed) return cb(null, u.p)
read({prompt: "Password: ", default: u.p, silent: true}, cb) function readPassword (c, u, cb) {
}, [], function (pw) { u.p = pw }) if (!c.changed) {
(read, [{prompt: "Email: ", default: u.e}], function (em) { u.e = em }) u.p = c.p
(function (cb) { return cb()
if (changed) npm.config.del("_auth") }
read({prompt: "Password: ", silent: true}, function (er, pw) {
u.p = pw
cb(er)
})
}
function readEmail (c, u, cb) {
read({prompt: "Email: ", default: c.e}, function (er, em) {
u.e = em
cb(er)
})
}
function save (c, u, cb) {
if (c.changed) {
delete registry.auth
delete registry.username
delete registry.password
registry.username = u.u
registry.password = u.p
}
// save existing configs, but yank off for this PUT
registry.adduser(u.u, u.p, u.e, function (er) { registry.adduser(u.u, u.p, u.e, function (er) {
if (er) return cb(er) if (er) return cb(er)
registry.username = u.u registry.username = u.u
@ -48,6 +82,4 @@ function adduser (args, cb) {
log.info("adduser", "Authorized user %s", u.u) log.info("adduser", "Authorized user %s", u.u)
ini.save("user", cb) ini.save("user", cb)
}) })
})
()
} }

247
deps/npm/lib/init.js vendored
View File

@ -3,61 +3,18 @@
module.exports = init module.exports = init
var read = require("read") var log = require("npmlog")
, path = require("path")
, fs = require("graceful-fs")
, promiseChain = require("./utils/promise-chain.js")
, exec = require("./utils/exec.js")
, semver = require("semver")
, log = require("npmlog")
, npm = require("./npm.js") , npm = require("./npm.js")
, output = require("./utils/output.js") , initJson = require("init-package-json")
init.usage = "npm init [folder]" init.usage = "npm init"
function init (args, cb) { function init (args, cb) {
var folder = args[0] || "." var dir = process.cwd()
log.pause() log.pause()
if (folder.charAt(0) !== "/") folder = path.join(process.cwd(), folder) var initFile = npm.config.get('init-module')
fs.readFile(path.join(folder, "package.json"), "utf8", function (er, data) { console.log(
if (er) data = {}
else try {
data = JSON.parse(data)
} catch (_) {
data = {}
}
if (data.author) data.author = parseAuthor(data.author)
data.author = data.author ||
{ name: npm.config.get("init.author.name")
, email: npm.config.get("init.author.email")
, url: npm.config.get("init.author.url") }
init_(data, folder, function (er) {
log.resume()
if (!er) log.info("written", path.resolve(folder, "package.json"))
cb(er)
})
})
}
function init_ (data, folder, cb) {
var nv = npm.config.get("node-version")
, p = semver.parse(nv)
, eng = ""
if (!p[5]) eng = "~" + nv
else eng = "~" + [p[1], p[2], p[3]].join(".") + " || " + nv
// node version 0.n is api-compatible with 0.(n+1) when n is odd.
if (p[2] % 2) {
eng += " || " + [p[1], +(p[2]) + 1].join(".")
}
output.write(
["This utility will walk you through creating a package.json file." ["This utility will walk you through creating a package.json file."
,"It only covers the most common items, and tries to guess sane defaults." ,"It only covers the most common items, and tries to guess sane defaults."
,"" ,""
@ -68,194 +25,12 @@ function init_ (data, folder, cb) {
,"save it as a dependency in the package.json file." ,"save it as a dependency in the package.json file."
,"" ,""
,"Press ^C at any time to quit." ,"Press ^C at any time to quit."
,""
].join("\n")) ].join("\n"))
promiseChain(cb)
( read
, [{prompt: "Package name: ", default: defaultName(folder, data)}]
, function (n) { data.name = n }
)
( read
, [{prompt: "Description: ", default: data.description}]
, function (d) { data.description = d }
)
( defaultVersion, [folder, data], function (v) { data.version = v } )
(function (cb) {
read( { prompt: "Package version: ", default: data.version }
, function (er, v) {
if (er) return cb(er)
data.version = v
cb()
})
}, [])
( read
, [ { prompt: "Project homepage: "
, default: data.homepage || data.url || "none" } ]
, function (u) {
if (u === "none") return
data.homepage = u
delete data.url
}
)
( defaultRepo, [folder, data], function (r) { data.repository = r } )
(function (cb) {
read( { prompt: "Project git repository: "
, default: data.repository && data.repository.url || "none" }
, function (er, r) {
if (er) return cb(er)
if (r !== "none") {
data.repository = (data.repository || {})
data.repository.url = r
} else {
delete data.repository
}
cb()
}
)
}, [])
( read
, [{ prompt: "Author name: ", default: data.author && data.author.name }]
, function (n) {
if (!n) return
(data.author = data.author || {}).name = n
}
)
( read
, [ { prompt: "Author email: "
, default: data.author && data.author.email || "none" } ]
, function (n) {
if (n === "none") return
(data.author = data.author || {}).email = n
}
)
( read
, [ { prompt: "Author url: "
, default: data.author && data.author.url || "none" } ]
, function (n) {
if (n === "none") return
(data.author = data.author || {}).url = n
}
)
( read
, [ { prompt: "Main module/entry point: ", default: data.main || "none" } ]
, function (m) {
if (m === "none") {
delete data.main
return
}
data.main = m
}
)
( read
, [ { prompt: "Test command: "
, default: data.scripts && data.scripts.test || "none" } ]
, function (t) {
if (t === "none") return
(data.scripts = data.scripts || {}).test = t
}
)
(cleanupPaths, [data, folder])
(function (cb) {
if (data.author) data.author = unparseAuthor(data.author)
var str = JSON.stringify(data, null, 2) initJson(dir, initFile, npm.config.get(), function (er, data) {
, msg = "About to write to " log.resume()
+ path.join(folder, "package.json") log.silly('package data', data)
+ "\n\n" log.info('init', 'written successfully')
+ str cb(er, data)
+ "\n\n"
output.write(msg, cb)
})
(function (cb) {
read({ prompt: "\nIs this ok? ", default: "yes" }, function (er, ok) {
if (er) return cb(er)
if (ok.toLowerCase().charAt(0) !== "y") {
return cb(new Error("cancelled"))
}
return cb()
})
})
(function (cb) {
fs.writeFile( path.join(folder, "package.json")
, JSON.stringify(data, null, 2) + "\n"
, cb )
})
()
}
// sync - no io
function defaultName (folder, data) {
if (data.name) return data.name
return path.basename(folder)
.replace(/^node[-\._]?|([-\._]node)[-\._]?(js)?$/g, "")
}
function defaultVersion (folder, data, cb) {
if (data.version) return cb(null, data.version)
exec(npm.config.get("git"), ["describe", "--tags"], process.env, false, folder,
function (er, code, out) {
out = (out || "").trim()
if (semver.valid(out)) return cb(null, out)
out = npm.config.get("init.version")
if (semver.valid(out)) return cb(null, out)
return cb(null, "0.0.0")
}) })
} }
function defaultRepo (folder, data, cb) {
if (data.repository) return cb(null, data.repository)
exec( npm.config.get("git"), ["remote", "-v"], process.env, false, folder
, function (er, code, out) {
out = (out || "")
.trim()
.split("\n").filter(function (line) {
return line.search(/^origin/) !== -1
})[0]
if (!out) return cb(null, {})
var repo =
{ type: "git"
, url: out.split(/\s/)[1]
.replace("git@github.com:", "git://github.com/")
}
return cb(null, repo)
})
}
function cleanupPaths (data, folder, cb) {
if (data.main) {
data.main = cleanupPath(data.main, folder)
}
var dirs = data.directories
if (dirs) {
Object.keys(dirs).forEach(function (dir) {
dirs[dir] = cleanupPath(dirs[dir], folder)
})
}
cb()
}
function cleanupPath (m, folder) {
if (m.indexOf(folder) === 0) m = path.join(".", m.substr(folder.length))
return m
}
function parseAuthor (person) {
if (typeof person !== "string") return person
var name = person.match(/^([^\(<]+)/)
var url = person.match(/\(([^\)]+)\)/)
var email = person.match(/<([^>]+)>/)
var obj = {}
if (name && name[0].trim()) obj.name = name[0].trim()
if (email) obj.email = email[1];
if (url) obj.url = url[1];
return obj
}
function unparseAuthor (a) {
if (!a) return ""
if (typeof a === "string") return a
var s = a.name
if (a.email) s += " <" + a.email + ">"
if (a.url) s += " (" + a.url + ")"
return s
}

View File

@ -34,7 +34,8 @@ function outdated (args, silent, cb) {
if (er || silent) return cb_(er) if (er || silent) return cb_(er)
var outList = list.map(makePretty) var outList = list.map(makePretty)
require("./utils/output.js").write(outList.join("\n"), cb_) require("./utils/output.js").write(outList.join("\n"))
cb_()
}) })
} }
@ -77,7 +78,7 @@ function outdated_ (args, dir, parentHas, cb) {
var deps = null var deps = null
readJson(path.resolve(dir, "package.json"), function (er, d) { readJson(path.resolve(dir, "package.json"), function (er, d) {
deps = (er) ? true : d.dependencies deps = (er) ? true : (d.dependencies || {})
return next() return next()
}) })
@ -98,6 +99,7 @@ function outdated_ (args, dir, parentHas, cb) {
pvs.forEach(function (pv) { pvs.forEach(function (pv) {
has[pv[0]] = pv[1] has[pv[0]] = pv[1]
}) })
next() next()
}) })
}) })
@ -110,6 +112,7 @@ function outdated_ (args, dir, parentHas, cb) {
return l return l
}, {}) }, {})
} }
// now get what we should have, based on the dep. // now get what we should have, based on the dep.
// if has[dep] !== shouldHave[dep], then cb with the data // if has[dep] !== shouldHave[dep], then cb with the data
// otherwise dive into the folder // otherwise dive into the folder

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