NPM fügt Arbeitsbereiche zum Verwalten mehrerer Pakete hinzu

NPM 7.0.0, ein Upgrade auf den JavaScript-Paketmanager, wird diese Woche mit Node.js 15 veröffentlicht, hervorgehoben durch Workspaces.

Workspaces ist eine seit langem nachgefragte Funktion, mit der NPM eine Reihe von Funktionen zum Verwalten mehrerer Pakete in einem einzelnen Root-Paket der obersten Ebene erhält. Das Hinzufügen dieser Funktion ist der Wunsch, mehrere Pakete zu verwalten, die zusammen verwendet werden können oder nicht.

Auch in Version 7.0.0 installiert NPM automatisch Peer-Abhängigkeiten. Bisher mussten Entwickler diese selbst verwalten. Ein neuer Peer-Abhängigkeitsalgorithmus stellt sicher, dass eine gültige Peer-Abhängigkeit an oder über der Peer-abhängigen Position im Baum node_modules gefunden wird. Beachten Sie, dass die automatische Installation von Peer-Abhängigkeiten möglicherweise bestimmte Workflows beschädigen kann.

Weitere neue Funktionen in NPM v7.0.0 sind:

  • Ein neues Paketsperrformat ermöglicht deterministisch reproduzierbare Builds und verfügt über das, was NPM zum Erstellen des Paketbaums benötigt. Die NPM-CLI kann jetzt yarn.lock als Quelle für Paketmetadaten und Auflösungsrichtlinien verwenden.
  • Ein Refactoring von NPM-Interna mit Schwerpunkt auf der Trennung von Bedenken. Interne Änderungen sollen sicherstellen, dass die NPM-Codebasis im Laufe der Zeit zuverlässiger und einfacher zu warten ist. Mit diesem Refactoring wurde beispielsweise die Überprüfung und Verwaltung des Baums node_modules in das Arborist-Modul verschoben. Das Refactoring wird voraussichtlich zu einer schnelleren Lieferung von NPM-Updates führen.
  • Bei einer bahnbrechenden Änderung hat sich die Ausgabe von npm auditsowohl im lesbaren als auch im --jsonAusgabestil erheblich geändert .

Um NPM v7.0.0 jetzt zu testen, können Entwickler es installieren, indem sie es npm i -g [email protected]in ihrem Terminal ausführen . Um NPM-Workflows nicht zu unterbrechen, wird NPM v7.0.0 im Laufe der Zeit eingeführt. Es wird nicht als markiert latest. Workflows erhalten standardmäßig nicht NPM v7.0.0, es sei denn, ein Benutzer meldet sich an, npm install -g [email protected]indem er Node.js 15 ausführt oder installiert.