<p>This function should not be used programmatically. Instead, just refer
to the <code>npm.bin</code> member.</p>
</div>
-<p id="footer">bin — npm@1.2.15</p>
+<p id="footer">bin — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>This command will launch a browser, so this command may not be the most
friendly for programmatic use.</p>
</div>
-<p id="footer">bugs — npm@1.2.15</p>
+<p id="footer">bugs — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/index.html">index(1)</a></li></ul>
</div>
-<p id="footer">commands — npm@1.2.15</p>
+<p id="footer">commands — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../api/npm.html">npm(3)</a></li></ul>
</div>
-<p id="footer">config — npm@1.2.15</p>
+<p id="footer">config — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">deprecate — npm@1.2.15</p>
+<p id="footer">deprecate — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>This command will launch a browser, so this command may not be the most
friendly for programmatic use.</p>
</div>
-<p id="footer">docs — npm@1.2.15</p>
+<p id="footer">docs — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Since this command opens an editor in a new process, be careful about where
and how this is used.</p>
</div>
-<p id="footer">edit — npm@1.2.15</p>
+<p id="footer">edit — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">explore — npm@1.2.15</p>
+<p id="footer">explore — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>The silent parameter is not neccessary not used, but it may in the future.</p>
</div>
-<p id="footer">help-search — npm@1.2.15</p>
+<p id="footer">help-search — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p><a href="../doc/json.html">json(1)</a></p>
</div>
-<p id="footer">init — npm@1.2.15</p>
+<p id="footer">init — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Finally, 'callback' is a function that will be called when all packages have been
installed or when an error has been encountered.</p>
</div>
-<p id="footer">install — npm@1.2.15</p>
+<p id="footer">install — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Now, any changes to the redis package will be reflected in
the package in the current working directory</p>
</div>
-<p id="footer">link — npm@1.2.15</p>
+<p id="footer">link — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>For a list of all the available command-line configs, see <code>npm help config</code></p>
</div>
-<p id="footer">load — npm@1.2.15</p>
+<p id="footer">load — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
This means that if a submodule a same dependency as a parent module, then the
dependency will only be output once.</p>
</div>
-<p id="footer">ls — npm@1.2.15</p>
+<p id="footer">ls — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<h2 id="VERSION">VERSION</h2>
-<p>1.2.15</p>
+<p>1.2.17</p>
<h2 id="DESCRIPTION">DESCRIPTION</h2>
<pre><code>var cmd = npm.deref("unp") // cmd === "unpublish"</code></pre>
</div>
-<p id="footer">npm — npm@1.2.15</p>
+<p id="footer">npm — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>If the 'packages' parameter is left out, npm will check all packages.</p>
</div>
-<p id="footer">outdated — npm@1.2.15</p>
+<p id="footer">outdated — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../api/publish.html">publish(3)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div>
-<p id="footer">owner — npm@1.2.15</p>
+<p id="footer">owner — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>If no arguments are supplied, then npm packs the current package folder.</p>
</div>
-<p id="footer">pack — npm@1.2.15</p>
+<p id="footer">pack — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>This function is not useful programmatically</p>
</div>
-<p id="footer">prefix — npm@1.2.15</p>
+<p id="footer">prefix — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Extraneous packages are packages that are not listed on the parent
package's dependencies list.</p>
</div>
-<p id="footer">prune — npm@1.2.15</p>
+<p id="footer">prune — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">publish — npm@1.2.15</p>
+<p id="footer">publish — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>See <code>npm help build</code></p>
</div>
-<p id="footer">rebuild — npm@1.2.15</p>
+<p id="footer">rebuild — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../api/start.html">start(3)</a></li><li><a href="../api/stop.html">stop(3)</a></li></ul>
</div>
-<p id="footer">restart — npm@1.2.15</p>
+<p id="footer">restart — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>This function is not useful programmatically.</p>
</div>
-<p id="footer">root — npm@1.2.15</p>
+<p id="footer">root — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">run-script — npm@1.2.15</p>
+<p id="footer">run-script — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
and doesn't try to read your mind (it doesn't do any verb tense matching or the
like).</p>
</div>
-<p id="footer">search — npm@1.2.15</p>
+<p id="footer">search — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Finally, 'callback' is a function that will be called when the shrinkwrap has
been saved.</p>
</div>
-<p id="footer">shrinkwrap — npm@1.2.15</p>
+<p id="footer">shrinkwrap — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>npm can run tests on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p>
</div>
-<p id="footer">start — npm@1.2.15</p>
+<p id="footer">start — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>npm can run stop on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p>
</div>
-<p id="footer">stop — npm@1.2.15</p>
+<p id="footer">stop — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li>npm help json</li><li>git help submodule</li></ul>
</div>
-<p id="footer">submodule — npm@1.2.15</p>
+<p id="footer">submodule — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
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>
</div>
-<p id="footer">tag — npm@1.2.15</p>
+<p id="footer">tag — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>npm can run tests on multiple packages. Just specify multiple packages
in the <code>packages</code> parameter.</p>
</div>
-<p id="footer">test — npm@1.2.15</p>
+<p id="footer">test — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>Finally, 'callback' is a function that will be called when all packages have been
uninstalled or when an error has been encountered.</p>
</div>
-<p id="footer">uninstall — npm@1.2.15</p>
+<p id="footer">uninstall — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>If no version is specified, or if all versions are removed then
the root package entry is removed from the registry entirely.</p>
</div>
-<p id="footer">unpublish — npm@1.2.15</p>
+<p id="footer">unpublish — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">update — npm@1.2.15</p>
+<p id="footer">update — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
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>
</div>
-<p id="footer">version — npm@1.2.15</p>
+<p id="footer">version — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>corresponding to the list of fields selected.</p>
</div>
-<p id="footer">view — npm@1.2.15</p>
+<p id="footer">view — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p>This function is not useful programmatically</p>
</div>
-<p id="footer">whoami — npm@1.2.15</p>
+<p id="footer">whoami — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer"><a href="../doc/README.html">README</a> — npm@1.2.15</p>
+<p id="footer"><a href="../doc/README.html">README</a> — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">adduser — npm@1.2.15</p>
+<p id="footer">adduser — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">bin — npm@1.2.15</p>
+<p id="footer">bin — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">bugs — npm@1.2.15</p>
+<p id="footer">bugs — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">build — npm@1.2.15</p>
+<p id="footer">build — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/install.html">install(1)</a></li></ul>
</div>
-<p id="footer">bundle — npm@1.2.15</p>
+<p id="footer">bundle — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">cache — npm@1.2.15</p>
+<p id="footer">cache — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/npm.html">npm(1)</a></li><li><a href="../doc/faq.html">faq(1)</a></li></ul>
</div>
-<p id="footer">changelog — npm@1.2.15</p>
+<p id="footer">changelog — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">coding-style — npm@1.2.15</p>
+<p id="footer">coding-style — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">completion — npm@1.2.15</p>
+<p id="footer">completion — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/folders.html">folders(1)</a></li><li><a href="../doc/npm.html">npm(1)</a></li></ul>
</div>
-<p id="footer">config — npm@1.2.15</p>
+<p id="footer">config — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/ls.html">ls(1)</a></li><li><a href="../doc/update.html">update(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul>
</div>
-<p id="footer">dedupe — npm@1.2.15</p>
+<p id="footer">dedupe — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/publish.html">publish(1)</a></li><li><a href="../doc/registry.html">registry(1)</a></li></ul>
</div>
-<p id="footer">deprecate — npm@1.2.15</p>
+<p id="footer">deprecate — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">developers — npm@1.2.15</p>
+<p id="footer">developers — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/registry.html">registry(1)</a></li><li><a href="../doc/owner.html">owner(1)</a></li></ul>
</div>
-<p id="footer">disputes — npm@1.2.15</p>
+<p id="footer">disputes — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">docs — npm@1.2.15</p>
+<p id="footer">docs — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">edit — npm@1.2.15</p>
+<p id="footer">edit — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">explore — npm@1.2.15</p>
+<p id="footer">explore — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">faq — npm@1.2.15</p>
+<p id="footer">faq — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">folders — npm@1.2.15</p>
+<p id="footer">folders — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">global — npm@1.2.15</p>
+<p id="footer">global — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">help-search — npm@1.2.15</p>
+<p id="footer">help-search — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">help — npm@1.2.15</p>
+<p id="footer">help — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<p> Display npm username</p>
</div>
-<p id="footer">index — npm@1.2.15</p>
+<p id="footer">index — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">init — npm@1.2.15</p>
+<p id="footer">init — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">install — npm@1.2.15</p>
+<p id="footer">install — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">json — npm@1.2.15</p>
+<p id="footer">json — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">link — npm@1.2.15</p>
+<p id="footer">link — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
nested packages will <em>also</em> show the paths to the specified packages.
For example, running <code>npm ls promzard</code> in npm's source tree will show:</p>
-<pre><code>npm@1.2.15 /path/to/npm
+<pre><code>npm@1.2.17 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5</code></pre>
<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>
-<p id="footer">ls — npm@1.2.15</p>
+<p id="footer">ls — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<h2 id="VERSION">VERSION</h2>
-<p>1.2.15</p>
+<p>1.2.17</p>
<h2 id="DESCRIPTION">DESCRIPTION</h2>
<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>
-<p id="footer">npm — npm@1.2.15</p>
+<p id="footer">npm — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">outdated — npm@1.2.15</p>
+<p id="footer">outdated — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">owner — npm@1.2.15</p>
+<p id="footer">owner — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">pack — npm@1.2.15</p>
+<p id="footer">pack — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">prefix — npm@1.2.15</p>
+<p id="footer">prefix — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">prune — npm@1.2.15</p>
+<p id="footer">prune — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">publish — npm@1.2.15</p>
+<p id="footer">publish — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/build.html">build(1)</a></li><li><a href="../doc/install.html">install(1)</a></li></ul>
</div>
-<p id="footer">rebuild — npm@1.2.15</p>
+<p id="footer">rebuild — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">registry — npm@1.2.15</p>
+<p id="footer">registry — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">removing-npm — npm@1.2.15</p>
+<p id="footer">removing-npm — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">restart — npm@1.2.15</p>
+<p id="footer">restart — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">rm — npm@1.2.15</p>
+<p id="footer">rm — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">root — npm@1.2.15</p>
+<p id="footer">root — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">run-script — npm@1.2.15</p>
+<p id="footer">run-script — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">scripts — npm@1.2.15</p>
+<p id="footer">scripts — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">search — npm@1.2.15</p>
+<p id="footer">search — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/json.html">json(1)</a></li></ul>
</div>
-<p id="footer">semver — npm@1.2.15</p>
+<p id="footer">semver — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">shrinkwrap — npm@1.2.15</p>
+<p id="footer">shrinkwrap — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">star — npm@1.2.15</p>
+<p id="footer">star — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/star.html">star(1)</a></li><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>
-<p id="footer">stars — npm@1.2.15</p>
+<p id="footer">stars — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">start — npm@1.2.15</p>
+<p id="footer">start — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">stop — npm@1.2.15</p>
+<p id="footer">stop — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/json.html">json(1)</a></li><li>git help submodule</li></ul>
</div>
-<p id="footer">submodule — npm@1.2.15</p>
+<p id="footer">submodule — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">tag — npm@1.2.15</p>
+<p id="footer">tag — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">test — npm@1.2.15</p>
+<p id="footer">test — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">uninstall — npm@1.2.15</p>
+<p id="footer">uninstall — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">unpublish — npm@1.2.15</p>
+<p id="footer">unpublish — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">update — npm@1.2.15</p>
+<p id="footer">update — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">version — npm@1.2.15</p>
+<p id="footer">version — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<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>
-<p id="footer">view — npm@1.2.15</p>
+<p id="footer">view — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
<ul><li><a href="../doc/config.html">config(1)</a></li><li><a href="../doc/adduser.html">adduser(1)</a></li></ul>
</div>
-<p id="footer">whoami — npm@1.2.15</p>
+<p id="footer">whoami — npm@1.2.17</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
, readJson = require("read-package-json")
, link = require("./utils/link.js")
, linkIfExists = link.ifExists
- , cmdShim = require("./utils/cmd-shim.js")
+ , cmdShim = require("cmd-shim")
, cmdShimIfExists = cmdShim.ifExists
, asyncMap = require("slide").asyncMap
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM" "1" "March 2013" "" ""
+.TH "NPM" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm\fR \-\- node package manager
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-ADDUSER" "1" "March 2013" "" ""
+.TH "NPM\-ADDUSER" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-adduser\fR \-\- Add a registry user account
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BIN" "1" "March 2013" "" ""
+.TH "NPM\-BIN" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-bin\fR \-\- Display npm bin folder
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BUGS" "1" "March 2013" "" ""
+.TH "NPM\-BUGS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-bugs\fR \-\- Bugs for a package in a web browser maybe
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BUILD" "1" "March 2013" "" ""
+.TH "NPM\-BUILD" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-build\fR \-\- Build a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BUNDLE" "1" "March 2013" "" ""
+.TH "NPM\-BUNDLE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-bundle\fR \-\- REMOVED
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-CACHE" "1" "March 2013" "" ""
+.TH "NPM\-CACHE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-cache\fR \-\- Manipulates packages cache
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-CHANGELOG" "1" "March 2013" "" ""
+.TH "NPM\-CHANGELOG" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-changelog\fR \-\- Changes
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-CODING\-STYLE" "1" "March 2013" "" ""
+.TH "NPM\-CODING\-STYLE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-coding-style\fR \-\- npm\'s "funny" coding style
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-COMPLETION" "1" "March 2013" "" ""
+.TH "NPM\-COMPLETION" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-completion\fR \-\- Tab Completion for npm
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-CONFIG" "1" "March 2013" "" ""
+.TH "NPM\-CONFIG" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-config\fR \-\- Manage the npm configuration file
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DEDUPE" "1" "March 2013" "" ""
+.TH "NPM\-DEDUPE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-dedupe\fR \-\- Reduce duplication
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DEPRECATE" "1" "March 2013" "" ""
+.TH "NPM\-DEPRECATE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-deprecate\fR \-\- Deprecate a version of a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DEVELOPERS" "1" "March 2013" "" ""
+.TH "NPM\-DEVELOPERS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-developers\fR \-\- Developer Guide
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DISPUTES" "1" "March 2013" "" ""
+.TH "NPM\-DISPUTES" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-disputes\fR \-\- Handling Module Name Disputes
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DOCS" "1" "March 2013" "" ""
+.TH "NPM\-DOCS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-docs\fR \-\- Docs for a package in a web browser maybe
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-EDIT" "1" "March 2013" "" ""
+.TH "NPM\-EDIT" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-edit\fR \-\- Edit an installed package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-EXPLORE" "1" "March 2013" "" ""
+.TH "NPM\-EXPLORE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-explore\fR \-\- Browse an installed package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-FAQ" "1" "March 2013" "" ""
+.TH "NPM\-FAQ" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-faq\fR \-\- Frequently Asked Questions
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-FOLDERS" "1" "March 2013" "" ""
+.TH "NPM\-FOLDERS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-folders\fR \-\- Folder Structures Used by npm
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-FOLDERS" "1" "March 2013" "" ""
+.TH "NPM\-FOLDERS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-folders\fR \-\- Folder Structures Used by npm
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-HELP\-SEARCH" "1" "March 2013" "" ""
+.TH "NPM\-HELP\-SEARCH" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-help-search\fR \-\- Search npm help documentation
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-HELP" "1" "March 2013" "" ""
+.TH "NPM\-HELP" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-help\fR \-\- Get help on npm
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-INDEX" "1" "March 2013" "" ""
+.TH "NPM\-INDEX" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-index\fR \-\- Index of all npm documentation
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-INIT" "1" "March 2013" "" ""
+.TH "NPM\-INIT" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-init\fR \-\- Interactively create a package\.json file
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-INSTALL" "1" "March 2013" "" ""
+.TH "NPM\-INSTALL" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-install\fR \-\- Install a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-JSON" "1" "March 2013" "" ""
+.TH "NPM\-JSON" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-json\fR \-\- Specifics of npm\'s package\.json handling
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-LINK" "1" "March 2013" "" ""
+.TH "NPM\-LINK" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-link\fR \-\- Symlink a package folder
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-LS" "1" "March 2013" "" ""
+.TH "NPM\-LS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-ls\fR \-\- List installed packages
.IP "" 4
.
.nf
-npm@1.2.15 /path/to/npm
+npm@1.2.17 /path/to/npm
└─┬ init\-package\-json@0\.0\.4
└── promzard@0\.1\.5
.
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM" "1" "March 2013" "" ""
+.TH "NPM" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm\fR \-\- node package manager
.fi
.
.SH "VERSION"
-1.2.15
+1.2.17
.
.SH "DESCRIPTION"
npm is the package manager for the Node JavaScript platform\. It puts
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-OUTDATED" "1" "March 2013" "" ""
+.TH "NPM\-OUTDATED" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-outdated\fR \-\- Check for outdated packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-OWNER" "1" "March 2013" "" ""
+.TH "NPM\-OWNER" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-owner\fR \-\- Manage package owners
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PACK" "1" "March 2013" "" ""
+.TH "NPM\-PACK" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-pack\fR \-\- Create a tarball from a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PREFIX" "1" "March 2013" "" ""
+.TH "NPM\-PREFIX" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-prefix\fR \-\- Display prefix
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PRUNE" "1" "March 2013" "" ""
+.TH "NPM\-PRUNE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-prune\fR \-\- Remove extraneous packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PUBLISH" "1" "March 2013" "" ""
+.TH "NPM\-PUBLISH" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-publish\fR \-\- Publish a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-REBUILD" "1" "March 2013" "" ""
+.TH "NPM\-REBUILD" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-rebuild\fR \-\- Rebuild a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-REGISTRY" "1" "March 2013" "" ""
+.TH "NPM\-REGISTRY" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-registry\fR \-\- The JavaScript Package Registry
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-REMOVAL" "1" "March 2013" "" ""
+.TH "NPM\-REMOVAL" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-removal\fR \-\- Cleaning the Slate
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RESTART" "1" "March 2013" "" ""
+.TH "NPM\-RESTART" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-restart\fR \-\- Start a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RM" "1" "March 2013" "" ""
+.TH "NPM\-RM" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-rm\fR \-\- Remove a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-ROOT" "1" "March 2013" "" ""
+.TH "NPM\-ROOT" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-root\fR \-\- Display npm root
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RUN\-SCRIPT" "1" "March 2013" "" ""
+.TH "NPM\-RUN\-SCRIPT" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-run-script\fR \-\- Run arbitrary package scripts
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SCRIPTS" "1" "March 2013" "" ""
+.TH "NPM\-SCRIPTS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-scripts\fR \-\- How npm handles the "scripts" field
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SEARCH" "1" "March 2013" "" ""
+.TH "NPM\-SEARCH" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-search\fR \-\- Search for packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SEMVER" "1" "March 2013" "" ""
+.TH "NPM\-SEMVER" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-semver\fR \-\- The semantic versioner for npm
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SHRINKWRAP" "1" "March 2013" "" ""
+.TH "NPM\-SHRINKWRAP" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-shrinkwrap\fR \-\- Lock down dependency versions
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-STAR" "1" "March 2013" "" ""
+.TH "NPM\-STAR" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-star\fR \-\- Mark your favorite packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-STARS" "1" "March 2013" "" ""
+.TH "NPM\-STARS" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-stars\fR \-\- View packages marked as favorites
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-START" "1" "March 2013" "" ""
+.TH "NPM\-START" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-start\fR \-\- Start a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-STOP" "1" "March 2013" "" ""
+.TH "NPM\-STOP" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-stop\fR \-\- Stop a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SUBMODULE" "1" "March 2013" "" ""
+.TH "NPM\-SUBMODULE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-submodule\fR \-\- Add a package as a git submodule
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-TAG" "1" "March 2013" "" ""
+.TH "NPM\-TAG" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-tag\fR \-\- Tag a published version
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-TEST" "1" "March 2013" "" ""
+.TH "NPM\-TEST" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-test\fR \-\- Test a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RM" "1" "March 2013" "" ""
+.TH "NPM\-RM" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-rm\fR \-\- Remove a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-UNPUBLISH" "1" "March 2013" "" ""
+.TH "NPM\-UNPUBLISH" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-unpublish\fR \-\- Remove a package from the registry
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-UPDATE" "1" "March 2013" "" ""
+.TH "NPM\-UPDATE" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-update\fR \-\- Update a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-VERSION" "1" "March 2013" "" ""
+.TH "NPM\-VERSION" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-version\fR \-\- Bump a package version
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-VIEW" "1" "March 2013" "" ""
+.TH "NPM\-VIEW" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-view\fR \-\- View registry info
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-WHOAMI" "1" "March 2013" "" ""
+.TH "NPM\-WHOAMI" "1" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-whoami\fR \-\- Display npm username
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BIN" "3" "March 2013" "" ""
+.TH "NPM\-BIN" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-bin\fR \-\- Display npm bin folder
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-BUGS" "3" "March 2013" "" ""
+.TH "NPM\-BUGS" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-bugs\fR \-\- Bugs for a package in a web browser maybe
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-COMMANDS" "3" "March 2013" "" ""
+.TH "NPM\-COMMANDS" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-commands\fR \-\- npm commands
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-CONFIG" "3" "March 2013" "" ""
+.TH "NPM\-CONFIG" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-config\fR \-\- Manage the npm configuration files
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DEPRECATE" "3" "March 2013" "" ""
+.TH "NPM\-DEPRECATE" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-deprecate\fR \-\- Deprecate a version of a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-DOCS" "3" "March 2013" "" ""
+.TH "NPM\-DOCS" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-docs\fR \-\- Docs for a package in a web browser maybe
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-EDIT" "3" "March 2013" "" ""
+.TH "NPM\-EDIT" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-edit\fR \-\- Edit an installed package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-EXPLORE" "3" "March 2013" "" ""
+.TH "NPM\-EXPLORE" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-explore\fR \-\- Browse an installed package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-HELP\-SEARCH" "3" "March 2013" "" ""
+.TH "NPM\-HELP\-SEARCH" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-help-search\fR \-\- Search the help pages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "INIT" "3" "March 2013" "" ""
+.TH "INIT" "3" "April 2013" "" ""
.
.SH "NAME"
\fBinit\fR \-\- Interactively create a package\.json file
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-INSTALL" "3" "March 2013" "" ""
+.TH "NPM\-INSTALL" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-install\fR \-\- install a package programmatically
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-LINK" "3" "March 2013" "" ""
+.TH "NPM\-LINK" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-link\fR \-\- Symlink a package folder
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-LOAD" "3" "March 2013" "" ""
+.TH "NPM\-LOAD" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-load\fR \-\- Load config settings
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-LS" "3" "March 2013" "" ""
+.TH "NPM\-LS" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-ls\fR \-\- List installed packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM" "3" "March 2013" "" ""
+.TH "NPM" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm\fR \-\- node package manager
.fi
.
.SH "VERSION"
-1.2.15
+1.2.17
.
.SH "DESCRIPTION"
This is the API documentation for npm\.
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-OUTDATED" "3" "March 2013" "" ""
+.TH "NPM\-OUTDATED" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-outdated\fR \-\- Check for outdated packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-OWNER" "3" "March 2013" "" ""
+.TH "NPM\-OWNER" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-owner\fR \-\- Manage package owners
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PACK" "3" "March 2013" "" ""
+.TH "NPM\-PACK" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-pack\fR \-\- Create a tarball from a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PREFIX" "3" "March 2013" "" ""
+.TH "NPM\-PREFIX" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-prefix\fR \-\- Display prefix
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PRUNE" "3" "March 2013" "" ""
+.TH "NPM\-PRUNE" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-prune\fR \-\- Remove extraneous packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-PUBLISH" "3" "March 2013" "" ""
+.TH "NPM\-PUBLISH" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-publish\fR \-\- Publish a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-REBUILD" "3" "March 2013" "" ""
+.TH "NPM\-REBUILD" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-rebuild\fR \-\- Rebuild a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RESTART" "3" "March 2013" "" ""
+.TH "NPM\-RESTART" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-restart\fR \-\- Start a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-ROOT" "3" "March 2013" "" ""
+.TH "NPM\-ROOT" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-root\fR \-\- Display npm root
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-RUN\-SCRIPT" "3" "March 2013" "" ""
+.TH "NPM\-RUN\-SCRIPT" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-run-script\fR \-\- Run arbitrary package scripts
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SEARCH" "3" "March 2013" "" ""
+.TH "NPM\-SEARCH" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-search\fR \-\- Search for packages
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SHRINKWRAP" "3" "March 2013" "" ""
+.TH "NPM\-SHRINKWRAP" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-shrinkwrap\fR \-\- programmatically generate package shrinkwrap file
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-START" "3" "March 2013" "" ""
+.TH "NPM\-START" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-start\fR \-\- Start a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-STOP" "3" "March 2013" "" ""
+.TH "NPM\-STOP" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-stop\fR \-\- Stop a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-SUBMODULE" "3" "March 2013" "" ""
+.TH "NPM\-SUBMODULE" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-submodule\fR \-\- Add a package as a git submodule
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-TAG" "3" "March 2013" "" ""
+.TH "NPM\-TAG" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-tag\fR \-\- Tag a published version
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-TEST" "3" "March 2013" "" ""
+.TH "NPM\-TEST" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-test\fR \-\- Test a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-UNINSTALL" "3" "March 2013" "" ""
+.TH "NPM\-UNINSTALL" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-uninstall\fR \-\- uninstall a package programmatically
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-UNPUBLISH" "3" "March 2013" "" ""
+.TH "NPM\-UNPUBLISH" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-unpublish\fR \-\- Remove a package from the registry
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-UPDATE" "3" "March 2013" "" ""
+.TH "NPM\-UPDATE" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-update\fR \-\- Update a package
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-VERSION" "3" "March 2013" "" ""
+.TH "NPM\-VERSION" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-version\fR \-\- Bump a package version
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-VIEW" "3" "March 2013" "" ""
+.TH "NPM\-VIEW" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-view\fR \-\- View registry info
.\" Generated with Ronnjs 0.3.8
.\" http://github.com/kapouer/ronnjs/
.
-.TH "NPM\-WHOAMI" "3" "March 2013" "" ""
+.TH "NPM\-WHOAMI" "3" "April 2013" "" ""
.
.SH "NAME"
\fBnpm-whoami\fR \-\- Display npm username
--- /dev/null
+lib-cov\r
+*.seed\r
+*.log\r
+*.csv\r
+*.dat\r
+*.out\r
+*.pid\r
+*.gz\r
+\r
+pids\r
+logs\r
+results\r
+\r
+npm-debug.log\r
+\r
+node_modules\r
--- /dev/null
+language: node_js\r
+node_js:\r
+ - "0.10"\r
+ - "0.8"
\ No newline at end of file
--- /dev/null
+Copyright (c) Isaac Z. Schlueter ("Author")\r
+All rights reserved.\r
+\r
+The BSD License\r
+\r
+Redistribution and use in source and binary forms, with or without\r
+modification, are permitted provided that the following conditions\r
+are met:\r
+\r
+1. Redistributions of source code must retain the above copyright\r
+ notice, this list of conditions and the following disclaimer.\r
+\r
+2. Redistributions in binary form must reproduce the above copyright\r
+ notice, this list of conditions and the following disclaimer in the\r
+ documentation and/or other materials provided with the distribution.\r
+\r
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND\r
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
+PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS\r
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\r
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\r
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\r
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
+WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE\r
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN\r
+IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
--- /dev/null
+# cmd-shim\r
+\r
+The cmd-shim used in npm to create executable scripts on Windows,\r
+since symlinks are not suitable for this purpose there.\r
+\r
+On Unix systems, you should use a symbolic link instead.\r
+\r
+[![Build Status](https://travis-ci.org/ForbesLindesay/cmd-shim.png?branch=master)](https://travis-ci.org/ForbesLindesay/cmd-shim) [![Dependency Status](https://gemnasium.com/ForbesLindesay/cmd-shim.png)](https://gemnasium.com/ForbesLindesay/cmd-shim)\r
+\r
+## Installation\r
+\r
+```\r
+npm install cmd-shim\r
+```\r
+\r
+## API\r
+\r
+### cmdShim(from, to, cb)\r
+\r
+Create a cmd shim at `to` for the command line program at `from`.\r
+e.g.\r
+\r
+```javascript\r
+var cmdShim = require('cmd-shim');\r
+cmdShim(__dirname + '/cli.js', '/usr/bin/command-name', function (err) {\r
+ if (err) throw err;\r
+});\r
+```\r
+\r
+### cmdShim.ifExists(from, to, cb)\r
+\r
+The same as above, but will just continue if the file does not exist.\r
+Source:\r
+\r
+```javascript\r
+function cmdShimIfExists (from, to, cb) {\r
+ fs.stat(from, function (er) {\r
+ if (er) return cb()\r
+ cmdShim(from, to, cb)\r
+ })\r
+}\r
+```\r
--- /dev/null
+// On windows, create a .cmd file.\r
+// Read the #! in the file to see what it uses. The vast majority\r
+// of the time, this will be either:\r
+// "#!/usr/bin/env <prog> <args...>"\r
+// or:\r
+// "#!<prog> <args...>"\r
+//\r
+// Write a binroot/pkg.bin + ".cmd" file that has this line in it:\r
+// @<prog> <args...> %~dp0<target> %*\r
+\r
+module.exports = cmdShim\r
+cmdShim.ifExists = cmdShimIfExists\r
+\r
+try {\r
+ var fs = require("graceful-fs")\r
+} catch (e) {\r
+ var fs = require("fs")\r
+}\r
+\r
+var mkdir = require("mkdirp")\r
+ , path = require("path")\r
+ , shebangExpr = /^#\!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/\r
+\r
+function cmdShimIfExists (from, to, cb) {\r
+ fs.stat(from, function (er) {\r
+ if (er) return cb()\r
+ cmdShim(from, to, cb)\r
+ })\r
+}\r
+\r
+// Try to unlink, but ignore errors.\r
+// Any problems will surface later.\r
+function rm (path, cb) {\r
+ fs.unlink(path, function(er) {\r
+ cb()\r
+ })\r
+}\r
+\r
+function cmdShim (from, to, cb) {\r
+ fs.stat(from, function (er, stat) {\r
+ if (er)\r
+ return cb(er)\r
+\r
+ cmdShim_(from, to, cb)\r
+ })\r
+}\r
+\r
+function cmdShim_ (from, to, cb) {\r
+ var then = times(2, next, cb)\r
+ rm(to, then)\r
+ rm(to + ".cmd", then)\r
+\r
+ function next(er) {\r
+ writeShim(from, to, cb)\r
+ }\r
+}\r
+\r
+function writeShim (from, to, cb) {\r
+ // make a cmd file and a sh script\r
+ // First, check if the bin is a #! of some sort.\r
+ // If not, then assume it's something that'll be compiled, or some other\r
+ // sort of script, and just call it directly.\r
+ mkdir(path.dirname(to), function (er) {\r
+ if (er)\r
+ return cb(er)\r
+ fs.readFile(from, "utf8", function (er, data) {\r
+ if (er) return writeShim_(from, to, null, null, cb)\r
+ var firstLine = data.trim().split(/\r*\n/)[0]\r
+ , shebang = firstLine.match(shebangExpr)\r
+ if (!shebang) return writeShim_(from, to, null, null, cb)\r
+ var prog = shebang[1]\r
+ , args = shebang[2] || ""\r
+ return writeShim_(from, to, prog, args, cb)\r
+ })\r
+ })\r
+}\r
+\r
+function writeShim_ (from, to, prog, args, cb) {\r
+ var shTarget = path.relative(path.dirname(to), from)\r
+ , target = shTarget.split("/").join("\\")\r
+ , longProg\r
+ , shProg = prog && prog.split("\\").join("/")\r
+ , shLongProg\r
+ shTarget = shTarget.split("\\").join("/")\r
+ args = args || ""\r
+ if (!prog) {\r
+ prog = "\"%~dp0\\" + target + "\""\r
+ shProg = "\"$basedir/" + shTarget + "\""\r
+ args = ""\r
+ target = ""\r
+ shTarget = ""\r
+ } else {\r
+ longProg = "\"%~dp0\\" + prog + ".exe\""\r
+ shLongProg = "\"$basedir/" + prog + "\""\r
+ target = "\"%~dp0\\" + target + "\""\r
+ shTarget = "\"$basedir/" + shTarget + "\""\r
+ }\r
+\r
+ // @IF EXIST "%~dp0\node.exe" (\r
+ // "%~dp0\node.exe" "%~dp0\.\node_modules\npm\bin\npm-cli.js" %*\r
+ // ) ELSE (\r
+ // node "%~dp0\.\node_modules\npm\bin\npm-cli.js" %*\r
+ // )\r
+ var cmd\r
+ if (longProg) {\r
+ cmd = "@IF EXIST " + longProg + " (\r\n"\r
+ + " " + longProg + " " + args + " " + target + " %*\r\n"\r
+ + ") ELSE (\r\n"\r
+ + " " + prog + " " + args + " " + target + " %*\r\n"\r
+ + ")"\r
+ } else {\r
+ cmd = prog + " " + args + " " + target + " %*\r\n"\r
+ }\r
+\r
+ // #!/bin/sh\r
+ // basedir=`dirname "$0"`\r
+ //\r
+ // case `uname` in\r
+ // *CYGWIN*) basedir=`cygpath -w "$basedir"`;;\r
+ // esac\r
+ //\r
+ // if [ -x "$basedir/node.exe" ]; then\r
+ // "$basedir/node.exe" "$basedir/node_modules/npm/bin/npm-cli.js" "$@"\r
+ // ret=$?\r
+ // else\r
+ // node "$basedir/node_modules/npm/bin/npm-cli.js" "$@"\r
+ // ret=$?\r
+ // fi\r
+ // exit $ret\r
+\r
+ var sh = "#!/bin/sh\n"\r
+\r
+ if (shLongProg) {\r
+ sh = sh\r
+ + "basedir=`dirname \"$0\"`\n"\r
+ + "\n"\r
+ + "case `uname` in\n"\r
+ + " *CYGWIN*) basedir=`cygpath -w \"$basedir\"`;;\n"\r
+ + "esac\n"\r
+ + "\n"\r
+\r
+ sh = sh\r
+ + "if [ -x "+shLongProg+" ]; then\n"\r
+ + " " + shLongProg + " " + args + " " + shTarget + " \"$@\"\n"\r
+ + " ret=$?\n"\r
+ + "else \n"\r
+ + " " + shProg + " " + args + " " + shTarget + " \"$@\"\n"\r
+ + " ret=$?\n"\r
+ + "fi\n"\r
+ + "exit $ret\n"\r
+ } else {\r
+ sh = shProg + " " + args + " " + shTarget + " \"$@\"\n"\r
+ + "exit $?\n"\r
+ }\r
+\r
+ var then = times(2, next, cb)\r
+ fs.writeFile(to + ".cmd", cmd, "utf8", then)\r
+ fs.writeFile(to, sh, "utf8", then)\r
+ function next () {\r
+ chmodShim(to, cb)\r
+ }\r
+}\r
+\r
+function chmodShim (to, cb) {\r
+ var then = times(2, cb, cb)\r
+ fs.chmod(to, 0755, then)\r
+ fs.chmod(to + ".cmd", 0755, then)\r
+}\r
+\r
+function times(n, ok, cb) {\r
+ var errState = null\r
+ return function(er) {\r
+ if (!errState) {\r
+ if (er)\r
+ cb(errState = er)\r
+ else if (--n === 0)\r
+ ok()\r
+ }\r
+ }\r
+}\r
--- /dev/null
+{
+ "name": "cmd-shim",
+ "version": "1.1.0",
+ "description": "Used in npm for command line application support",
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/ForbesLindesay/cmd-shim.git"
+ },
+ "license": "BSD",
+ "optionalDependencies": {
+ "graceful-fs": "1.2"
+ },
+ "dependencies": {
+ "mkdirp": "~0.3.3",
+ "graceful-fs": "1.2"
+ },
+ "devDependencies": {
+ "tap": "~0.4.1",
+ "rimraf": "~2.1.4"
+ },
+ "readme": "# cmd-shim\r\n\r\nThe cmd-shim used in npm to create executable scripts on Windows,\r\nsince symlinks are not suitable for this purpose there.\r\n\r\nOn Unix systems, you should use a symbolic link instead.\r\n\r\n[![Build Status](https://travis-ci.org/ForbesLindesay/cmd-shim.png?branch=master)](https://travis-ci.org/ForbesLindesay/cmd-shim) [![Dependency Status](https://gemnasium.com/ForbesLindesay/cmd-shim.png)](https://gemnasium.com/ForbesLindesay/cmd-shim)\r\n\r\n## Installation\r\n\r\n```\r\nnpm install cmd-shim\r\n```\r\n\r\n## API\r\n\r\n### cmdShim(from, to, cb)\r\n\r\nCreate a cmd shim at `to` for the command line program at `from`.\r\ne.g.\r\n\r\n```javascript\r\nvar cmdShim = require('cmd-shim');\r\ncmdShim(__dirname + '/cli.js', '/usr/bin/command-name', function (err) {\r\n if (err) throw err;\r\n});\r\n```\r\n\r\n### cmdShim.ifExists(from, to, cb)\r\n\r\nThe same as above, but will just continue if the file does not exist.\r\nSource:\r\n\r\n```javascript\r\nfunction cmdShimIfExists (from, to, cb) {\r\n fs.stat(from, function (er) {\r\n if (er) return cb()\r\n cmdShim(from, to, cb)\r\n })\r\n}\r\n```\r\n",
+ "readmeFilename": "README.md",
+ "_id": "cmd-shim@1.1.0",
+ "_from": "cmd-shim@"
+}
--- /dev/null
+var test = require('tap').test\r
+var mkdirp = require('mkdirp')\r
+var fs = require('fs')\r
+var path = require('path')\r
+var fixtures = path.resolve(__dirname, 'fixtures')\r
+\r
+var froms = {\r
+ 'from.exe': 'exe',\r
+ 'from.env': '#!/usr/bin/env node\nconsole.log(/hi/)\n',\r
+ 'from.env.args': '#!/usr/bin/env node --expose_gc\ngc()\n',\r
+ 'from.sh': '#!/usr/bin/sh\necho hi\n',\r
+ 'from.sh.args': '#!/usr/bin/sh -x\necho hi\n'\r
+}\r
+\r
+var cmdShim = require('../')\r
+\r
+test('create fixture', function (t) {\r
+ mkdirp(fixtures, function (er) {\r
+ if (er)\r
+ throw er\r
+ t.pass('made dir')\r
+ Object.keys(froms).forEach(function (f) {\r
+ t.test('write ' + f, function (t) {\r
+ fs.writeFile(path.resolve(fixtures, f), froms[f], function (er) {\r
+ if (er)\r
+ throw er\r
+ t.pass('wrote ' + f)\r
+ t.end()\r
+ })\r
+ })\r
+ })\r
+ t.end()\r
+ })\r
+})\r
--- /dev/null
+var test = require('tap').test\r
+var mkdirp = require('mkdirp')\r
+var fs = require('fs')\r
+var path = require('path')\r
+var fixtures = path.resolve(__dirname, 'fixtures')\r
+\r
+var cmdShim = require('../')\r
+\r
+test('no shebang', function (t) {\r
+ var from = path.resolve(fixtures, 'from.exe')\r
+ var to = path.resolve(fixtures, 'exe.shim')\r
+ cmdShim(from, to, function(er) {\r
+ if (er)\r
+ throw er\r
+ t.equal(fs.readFileSync(to, 'utf8'),\r
+ "\"$basedir/from.exe\" \"$@\"\nexit $?\n")\r
+ t.equal(fs.readFileSync(to + '.cmd', 'utf8'),\r
+ "\"%~dp0\\from.exe\" %*\r\n")\r
+ t.end()\r
+ })\r
+})\r
+\r
+test('env shebang', function (t) {\r
+ var from = path.resolve(fixtures, 'from.env')\r
+ var to = path.resolve(fixtures, 'env.shim')\r
+ cmdShim(from, to, function(er) {\r
+ if (er)\r
+ throw er\r
+ console.error('%j', fs.readFileSync(to, 'utf8'))\r
+ console.error('%j', fs.readFileSync(to + '.cmd', 'utf8'))\r
+\r
+ t.equal(fs.readFileSync(to, 'utf8'),\r
+ "#!/bin/sh"+\r
+ "\nbasedir=`dirname \"$0\"`"+\r
+ "\n"+\r
+ "\ncase `uname` in"+\r
+ "\n *CYGWIN*) basedir=`cygpath -w \"$basedir\"`;;"+\r
+ "\nesac"+\r
+ "\n"+\r
+ "\nif [ -x \"$basedir/node\" ]; then"+\r
+ "\n \"$basedir/node\" \"$basedir/from.env\" \"$@\""+\r
+ "\n ret=$?"+\r
+ "\nelse "+\r
+ "\n node \"$basedir/from.env\" \"$@\""+\r
+ "\n ret=$?"+\r
+ "\nfi"+\r
+ "\nexit $ret"+\r
+ "\n")\r
+ t.equal(fs.readFileSync(to + '.cmd', 'utf8'),\r
+ "@IF EXIST \"%~dp0\\node.exe\" (\r"+\r
+ "\n \"%~dp0\\node.exe\" \"%~dp0\\from.env\" %*\r"+\r
+ "\n) ELSE (\r"+\r
+ "\n node \"%~dp0\\from.env\" %*\r"+\r
+ "\n)")\r
+ t.end()\r
+ })\r
+})\r
+\r
+test('env shebang with args', function (t) {\r
+ var from = path.resolve(fixtures, 'from.env.args')\r
+ var to = path.resolve(fixtures, 'env.args.shim')\r
+ cmdShim(from, to, function(er) {\r
+ if (er)\r
+ throw er\r
+ console.error('%j', fs.readFileSync(to, 'utf8'))\r
+ console.error('%j', fs.readFileSync(to + '.cmd', 'utf8'))\r
+\r
+ t.equal(fs.readFileSync(to, 'utf8'),\r
+ "#!/bin/sh"+\r
+ "\nbasedir=`dirname \"$0\"`"+\r
+ "\n"+\r
+ "\ncase `uname` in"+\r
+ "\n *CYGWIN*) basedir=`cygpath -w \"$basedir\"`;;"+\r
+ "\nesac"+\r
+ "\n"+\r
+ "\nif [ -x \"$basedir/node\" ]; then"+\r
+ "\n \"$basedir/node\" --expose_gc \"$basedir/from.env.args\" \"$@\""+\r
+ "\n ret=$?"+\r
+ "\nelse "+\r
+ "\n node --expose_gc \"$basedir/from.env.args\" \"$@\""+\r
+ "\n ret=$?"+\r
+ "\nfi"+\r
+ "\nexit $ret"+\r
+ "\n")\r
+ t.equal(fs.readFileSync(to + '.cmd', 'utf8'),\r
+ "@IF EXIST \"%~dp0\\node.exe\" (\r"+\r
+ "\n \"%~dp0\\node.exe\" --expose_gc \"%~dp0\\from.env.args\" %*\r"+\r
+ "\n) ELSE (\r"+\r
+ "\n node --expose_gc \"%~dp0\\from.env.args\" %*\r"+\r
+ "\n)")\r
+ t.end()\r
+ })\r
+})\r
+\r
+test('explicit shebang', function (t) {\r
+ var from = path.resolve(fixtures, 'from.sh')\r
+ var to = path.resolve(fixtures, 'sh.shim')\r
+ cmdShim(from, to, function(er) {\r
+ if (er)\r
+ throw er\r
+ console.error('%j', fs.readFileSync(to, 'utf8'))\r
+ console.error('%j', fs.readFileSync(to + '.cmd', 'utf8'))\r
+\r
+ t.equal(fs.readFileSync(to, 'utf8'),\r
+ "#!/bin/sh" +\r
+ "\nbasedir=`dirname \"$0\"`" +\r
+ "\n" +\r
+ "\ncase `uname` in" +\r
+ "\n *CYGWIN*) basedir=`cygpath -w \"$basedir\"`;;" +\r
+ "\nesac" +\r
+ "\n" +\r
+ "\nif [ -x \"$basedir//usr/bin/sh\" ]; then" +\r
+ "\n \"$basedir//usr/bin/sh\" \"$basedir/from.sh\" \"$@\"" +\r
+ "\n ret=$?" +\r
+ "\nelse " +\r
+ "\n /usr/bin/sh \"$basedir/from.sh\" \"$@\"" +\r
+ "\n ret=$?" +\r
+ "\nfi" +\r
+ "\nexit $ret" +\r
+ "\n")\r
+\r
+ t.equal(fs.readFileSync(to + '.cmd', 'utf8'),\r
+ "@IF EXIST \"%~dp0\\/usr/bin/sh.exe\" (\r" +\r
+ "\n \"%~dp0\\/usr/bin/sh.exe\" \"%~dp0\\from.sh\" %*\r" +\r
+ "\n) ELSE (\r" +\r
+ "\n /usr/bin/sh \"%~dp0\\from.sh\" %*\r" +\r
+ "\n)")\r
+ t.end()\r
+ })\r
+})\r
+\r
+test('explicit shebang with args', function (t) {\r
+ var from = path.resolve(fixtures, 'from.sh.args')\r
+ var to = path.resolve(fixtures, 'sh.args.shim')\r
+ cmdShim(from, to, function(er) {\r
+ if (er)\r
+ throw er\r
+ console.error('%j', fs.readFileSync(to, 'utf8'))\r
+ console.error('%j', fs.readFileSync(to + '.cmd', 'utf8'))\r
+\r
+ t.equal(fs.readFileSync(to, 'utf8'),\r
+ "#!/bin/sh" +\r
+ "\nbasedir=`dirname \"$0\"`" +\r
+ "\n" +\r
+ "\ncase `uname` in" +\r
+ "\n *CYGWIN*) basedir=`cygpath -w \"$basedir\"`;;" +\r
+ "\nesac" +\r
+ "\n" +\r
+ "\nif [ -x \"$basedir//usr/bin/sh\" ]; then" +\r
+ "\n \"$basedir//usr/bin/sh\" -x \"$basedir/from.sh.args\" \"$@\"" +\r
+ "\n ret=$?" +\r
+ "\nelse " +\r
+ "\n /usr/bin/sh -x \"$basedir/from.sh.args\" \"$@\"" +\r
+ "\n ret=$?" +\r
+ "\nfi" +\r
+ "\nexit $ret" +\r
+ "\n")\r
+\r
+ t.equal(fs.readFileSync(to + '.cmd', 'utf8'),\r
+ "@IF EXIST \"%~dp0\\/usr/bin/sh.exe\" (\r" +\r
+ "\n \"%~dp0\\/usr/bin/sh.exe\" -x \"%~dp0\\from.sh.args\" %*\r" +\r
+ "\n) ELSE (\r" +\r
+ "\n /usr/bin/sh -x \"%~dp0\\from.sh.args\" %*\r" +\r
+ "\n)")\r
+ t.end()\r
+ })\r
+})\r
--- /dev/null
+var test = require('tap').test\r
+var path = require('path')\r
+var fixtures = path.resolve(__dirname, 'fixtures')\r
+var rimraf = require('rimraf')\r
+\r
+test('cleanup', function(t) {\r
+ rimraf(fixtures, function(er) {\r
+ if (er)\r
+ throw er\r
+ t.pass('cleaned up')\r
+ t.end()\r
+ })\r
+})\r
quiet_cmd_copy = COPY $@
# send stderr to /dev/null to ignore messages when linking directories.
-cmd_copy = ln -f "$<" "$@" 2>/dev/null || (rm -rf "$@" && cp -af "$<" "$@")
+cmd_copy = rm -rf "$@" && cp -af "$<" "$@"
%(link_commands)s
"""
master_ninja.rule(
'copy',
description='COPY $in $out',
- command='ln -f $in $out 2>/dev/null || (rm -rf $out && cp -af $in $out)')
+ command='rm -rf $out && cp -af $in $out')
master_ninja.newline()
all_targets = set()
"bindings",
"gyp"
],
- "version": "0.9.3",
+ "version": "0.9.5",
"installVersion": 9,
"author": {
"name": "Nathan Rajlich",
},
"readme": "node-gyp\n=========\n### Node.js native addon build tool\n\n`node-gyp` is a cross-platform command-line tool written in Node.js for compiling\nnative addon modules for Node.js, which takes away the pain of dealing with the\nvarious differences in build platforms. It is the replacement to the `node-waf`\nprogram which is removed for node `v0.8`. If you have a native addon for node that\nstill has a `wscript` file, then you should definitely add a `binding.gyp` file\nto support the latest versions of node.\n\nMultiple target versions of node are supported (i.e. `0.6`, `0.7`,..., `1.0`,\netc.), regardless of what version of node is actually installed on your system\n(`node-gyp` downloads the necessary development files for the target version).\n\n#### Features:\n\n * Easy to use, consistent interface\n * Same commands to build your module on every platform\n * Supports multiple target versions of Node\n\n\nInstallation\n------------\n\nYou can install with `npm`:\n\n``` bash\n$ npm install -g node-gyp\n```\n\nYou will also need to install:\n\n * On Unix:\n * `python`\n * `make`\n * A proper C/C++ compiler toolchain, like GCC\n * On Windows:\n * [Python][windows-python] ([`v2.7.3`][windows-python-v2.7.3] recommended, `v3.x.x` is __*not*__ supported)\n * Windows XP/Vista/7:\n * Microsoft Visual Studio C++ 2010 ([Express][msvc2010] version works well)\n * For 64-bit builds of node and native modules you will _**also**_ need the [Windows 7 64-bit SDK][win7sdk]\n * If the install fails, try uninstalling any C++ 2010 x64&x86 Redistributable that you have installed first.\n * If you get errors that the 64-bit compilers are not installed you may also need the [compiler update for the Windows SDK 7.1]\n * Windows 8:\n * Microsoft Visual Studio C++ 2012 for Windows Desktop ([Express][msvc2012] version works well)\n\nNote that OS X is just a flavour of Unix and so needs `python`, `make`, and C/C++.\nAn easy way to obtain these is to install XCode from Apple,\nand then use it to install the command line tools (under Preferences -> Downloads).\n\nHow to Use\n----------\n\nTo compile your native addon, first go to its root directory:\n\n``` bash\n$ cd my_node_addon\n```\n\nThe next step is to generate the appropriate project build files for the current\nplatform. Use `configure` for that:\n\n``` bash\n$ node-gyp configure\n```\n\n__Note__: The `configure` step looks for the `binding.gyp` file in the current\ndirectory to processs. See below for instructions on creating the `binding.gyp` file.\n\nNow you will have either a `Makefile` (on Unix platforms) or a `vcxproj` file\n(on Windows) in the `build/` directory. Next invoke the `build` command:\n\n``` bash\n$ node-gyp build\n```\n\nNow you have your compiled `.node` bindings file! The compiled bindings end up\nin `build/Debug/` or `build/Release/`, depending on the build mode. At this point\nyou can require the `.node` file with Node and run your tests!\n\n__Note:__ To create a _Debug_ build of the bindings file, pass the `--debug` (or\n`-d`) switch when running the either `configure` or `build` command.\n\n\nThe \"binding.gyp\" file\n----------------------\n\nPreviously when node had `node-waf` you had to write a `wscript` file. The\nreplacement for that is the `binding.gyp` file, which describes the configuration\nto build your module in a JSON-like format. This file gets placed in the root of\nyour package, alongside the `package.json` file.\n\nA barebones `gyp` file appropriate for building a node addon looks like:\n\n``` json\n{\n \"targets\": [\n {\n \"target_name\": \"binding\",\n \"sources\": [ \"src/binding.cc\" ]\n }\n ]\n}\n```\n\nSome additional resources for writing `gyp` files:\n\n * [\"Hello World\" node addon example](https://github.com/joyent/node/tree/master/test/addons/hello-world)\n * [gyp user documentation](http://code.google.com/p/gyp/wiki/GypUserDocumentation)\n * [gyp input format reference](http://code.google.com/p/gyp/wiki/InputFormatReference)\n * [*\"binding.gyp\" files out in the wild* wiki page](https://github.com/TooTallNate/node-gyp/wiki/%22binding.gyp%22-files-out-in-the-wild)\n\n\nCommands\n--------\n\n`node-gyp` responds to the following commands:\n\n| **Command** | **Description**\n|:--------------|:---------------------------------------------------------------\n| `build` | Invokes `make`/`msbuild.exe` and builds the native addon\n| `clean` | Removes any the `build` dir if it exists\n| `configure` | Generates project build files for the current platform\n| `rebuild` | Runs \"clean\", \"configure\" and \"build\" all in a row\n| `install` | Installs node development header files for the given version\n| `list` | Lists the currently installed node development file versions\n| `remove` | Removes the node development header files for the given version\n\n\nLicense\n-------\n\n(The MIT License)\n\nCopyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net>\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n[windows-python]: http://www.python.org/getit/windows\n[windows-python-v2.7.3]: http://www.python.org/download/releases/2.7.3#download\n[msvc2010]: http://go.microsoft.com/?linkid=9709949\n[msvc2012]: http://go.microsoft.com/?linkid=9816758\n[win7sdk]: http://www.microsoft.com/en-us/download/details.aspx?id=8279\n[compiler update for the Windows SDK 7.1]: http://www.microsoft.com/en-us/download/details.aspx?id=4422\n",
"readmeFilename": "README.md",
- "_id": "node-gyp@0.9.3",
+ "_id": "node-gyp@0.9.5",
"dist": {
- "shasum": "575868f6bded377c5904e8acffb4921d2f077fbe"
+ "shasum": "43482999c1233e1d16e949a58f28b493d56b5b1d"
},
- "_from": "node-gyp@0.9.3",
- "_resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-0.9.3.tgz"
+ "_from": "node-gyp@0.9.5",
+ "_resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-0.9.5.tgz"
}
{
- "version": "1.2.15",
+ "version": "1.2.17",
"name": "npm",
"publishConfig": {
"proprietary-attribs": false
"once": "~1.1.1",
"npmconf": "0",
"opener": "~1.3.0",
- "chmodr": "~0.1.0"
+ "chmodr": "~0.1.0",
+ "cmd-shim": "~1.1.0"
},
"bundleDependencies": [
"semver",
"once",
"npmconf",
"opener",
- "chmodr"
+ "chmodr",
+ "cmd-shim"
],
"devDependencies": {
"ronn": "~0.3.6",