Ich bin mit npm Version 3.6.0 und Knoten verison 5.6.0 unter Windows 10:npm Update -g nichts tut, obwohl ich Pakete veraltet haben
> npm version
{ npm: '3.6.0',
ares: '1.10.1-DEV',
http_parser: '2.6.1',
icu: '56.1',
modules: '47',
node: '5.6.0',
openssl: '1.0.2f',
uv: '1.8.0',
v8: '4.6.85.31',
zlib: '1.2.8' }
>
Ich habe eine Reihe von weltweit installierten npm Pakete:
> npm ls -g --depth=0
C:\Users\Klas\AppData\Roaming\npm
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
`-- [email protected]
>
Wenn ich npm outdated -g
mehrere Pakete ausgeführt werden als veraltet aufgeführt.
> npm outdated -g
Package Current Wanted Latest Location
jspm 0.16.25 0.16.25 0.16.29
live-server 0.9.0 0.9.0 0.9.2
protractor 3.0.0 3.0.0 3.1.1
tslint 3.2.2 3.2.2 3.4.0
webpack 1.12.11 1.12.11 1.12.13
Wenn ich npm update -g
führen Sie es zurück (nach ein paar Sekunden) ohne Warnung oder Fehlermeldung. Es wurden jedoch keine Pakete aktualisiert.
> npm update -g
>
Wie ich interpretieren this issue sollte npm update -g
arbeiten und sollte oberste Ebene globale Pakete aktualisieren. Aber es scheint nicht für mich zu funktionieren.
Wenn ich (dank Benjamin Kaiser für die Spitze) laufen:
> npm update -g --loglevel verbose
ich viel Ausganges. Dies scheint am wichtigsten zu sein:
npm verb outdated not updating tslint because it's currently at the maximum version
that matches its specified semver range
Ich verstehe immer noch nicht ganz. Da die Pakete global sind, gibt es keinen spezifizierten Bereich?
auf ein bestimmtes Paket Update Lauf hilft auch nicht:
> npm update -g tslint
>
Nicht einmal eine Version Angabe keinen Unterschied macht:
> npm update -g [email protected]
>
Aber selbst wenn das gearbeitet hätte, hätte ich lieber nicht haben explizit jedes Paket aktualisieren. Ein Hauptmerkmal eines Paketmanagers sollte für mich sein, dass es einfach ist, alles auf einmal zu aktualisieren.
This issue klingt ähnlich. Aber wenn ich mir die tslint npm module anschaue, scheint die "letzte" 3.4.0 zu sein. Warum also kein Upgrade?
Haben Sie versucht, das Flag "--loglevel verbose" hinzuzufügen, um zu sehen, ob etwas auf einer niedrigeren Protokollebene passieren könnte? Von allem, was Sie gesagt haben, sollten Sie Ihre npm Version auf dem neuesten Stand sein, diesen Befehl auszuführen. –
Dank @BenjaminKaiser, erweiterte ich meine Frage mit den Ergebnissen, dass die Fahne –
Einstellung, die Super seltsam, Sie haben Recht, dass es global ist und als solche sollten keine semver haben. ich vielleicht versuchen würde beginnen wieder eine globale Pakete abwischen. Vielleicht neu installieren npm auch auf die neueste Version (3.7.4 denke ich) –