Ich habe 3 Abhängigkeiten, die alle auf esprima-fb verweisen, und die Version wird für alle von ihnen in 15001.1001.0-dev-harmony-fb aufgelöst.npm 3 flache Abhängigkeit nicht immer angewendet
Ich hatte erwartet, esprima-fb in der obersten Ebene des Ordners node_modules zu sehen, aber es ist nicht da. Sie befinden sich im Ordner node_modules jeder Abhängigkeit.
Alles funktioniert noch, aber es bedeutet, dass ich nicht erfolgreich sicherstellen kann, dass meine npm-shrinkwrap.json Datei auf dem neuesten Stand ist, weil das Tool, das ich verwende, esprima-fb auf der obersten Ebene von npm-shrinkwrap erwartet. Json-Abhängigkeiten, die nicht in den einzelnen Abhängigkeiten verschachtelt sind.
Meine Frage ist, welches Bit verhält sich in einer unerwarteten Weise? npm indem nicht mindestens 1 Version von esprima-fb auf der obersten Ebene installiert wird? Vergleichstool unter der Annahme, dass sich npm immer so verhält?
Mein Verständnis von https://docs.npmjs.com/how-npm-works/npm3 war, dass mindestens einer von ihnen (der erste npm während der Installation) auf die oberste Ebene gehisst wird. Das passiert hier nicht, also frage ich mich, was vor sich geht. – Dawn
Meine Vermutung ist, dass es einige Einstellungen gibt (NPM-Pakete haben eine Unmenge von Einstellungen), die entweder npm davon abhalten, oder verwirrt npm, um sich unerwartet zu verhalten. Wenn Sie es sich leisten können, etwas Zeit mit dem Thema zu verbringen, kann es sich lohnen, das minimale Beispiel zu finden, das "scheitert" und einen Fehler in Erwägung zieht. Das heißt, ich glaube immer noch, dass Sie nicht darauf zählen sollten, dass eine (die eine? Nur eine zufällige?) Instanz des Pakets auf der obersten Ebene vorhanden sein wird. –