@ -160,21 +160,21 @@ highest level possible, below the localized "target" folder.</p>
+-- node_modules
+-- blerg (1.2.5) < ---[A]
+-- bar (1.2.3) < ---[B]
| + -- node_modules
| | ` -- baz (2.0.2) < ---[C]
| | `-- node_modules
| | `-- quux (3.2.0)
| `-- asdf (2.3.4)
| ` -- node_modules
| + -- baz (2.0.2) < ---[C]
| | `-- node_modules
| | `-- quux (3.2.0)
| `-- asdf (2.3.4)
`-- baz (1.2.3) < ---[D]
`-- node_modules
`-- quux (3.2.0) < ---[E]< / code > < / pre >
< p > Since foo depends directly on bar@1.2.3 and baz@1.2.3, those are
< p > Since foo depends directly on < code > bar@1.2.3< / code > and < code > baz@1.2.3< / code > , those are
installed in foo' s < code > node_modules< / code > folder.< / p >
< p > Even though the latest copy of blerg is 1.3.7, foo has a specific
dependency on version 1.2.5. So, that gets installed at [A]. Since the
parent installation of blerg satisfie' s bar' s dependency on blerg@1.x ,
parent installation of blerg satisfies bar' s dependency on < code > blerg@1.x< / code > ,
it does not install another copy under [B].< / p >
< p > Bar [B] also has dependencies on baz and asdf, so those are installed in
@ -182,11 +182,11 @@ bar's <code>node_modules</code> folder. Because it depends on <code>baz@2.x
re-use the < code > baz@1.2.3< / code > installed in the parent < code > node_modules< / code > folder [D],
and must install its own copy [C].< / p >
< p > Underneath bar, the < code > baz-> quux-> bar< / code > dependency creates a cycle.
However, because < code > bar< / code > is already in < code > quux< / code > ' s ancestry [B], it does not
< p > Underneath bar, the < code > baz -> quux -> bar< / code > dependency creates a cycle.
However, because bar is already in quux' s ancestry [B], it does not
unpack another copy of bar into that folder.< / p >
< p > Underneath < code > foo-> baz< / code > [D], quux' s [E] folder tree is empty, because its
< p > Underneath < code > foo -> baz< / code > [D], quux' s [E] folder tree is empty, because its
dependency on bar is satisfied by the parent folder copy installed at [B].< / p >
< p > For a graphical breakdown of what is installed where, use < code > npm ls< / code > .< / p >
@ -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 >
< / div >
< p id = "footer" > folders — npm@1.2.18 < / p >
< p id = "footer" > folders — npm@1.2.2 1< / p >
< script >
;(function () {
var wrapper = document.getElementById("wrapper")