Zum Inhalt springen
100% lokal

Lockfile-Inspector

Liste jedes Paket in einer Lock-Datei mit seiner exakten Version auf und kennzeichne, ob es eine direkte oder transitive Abhängigkeit ist.

Eingabe
Zweite Lock-Datei (optional, zum Vergleichen)

Lockfile-Inspector

Fügen Sie eine package-lock.json, yarn.lock oder pnpm-lock.yaml Datei ein und dieses Werkzeug listet jedes Paket auf, das sie enthält — mit seiner exakten aufgelösten Version und der Information, ob es eine direkte Abhängigkeit (eine, die Ihr Projekt in seiner Manifest auflistet) oder eine transitive Abhängigkeit (die von einem anderen Paket eingezogen wird) ist. Dies ist eine schnelle Methode, um zu prüfen, was tatsächlich in node_modules ausgeliefert wird, einen Pull Request zu überprüfen, der die Lock-Datei verändert, oder herauszufinden, woher eine unerwartete Version stammt.

Wählen Sie das Format, das zu Ihrer Datei passt, und sortieren Sie die Liste alphabetisch oder danach, wie viele andere Pakete davon abhängen — das macht die transitiven Abhängigkeiten sichtbar, auf die Ihr Projekt am meisten angewiesen ist. Ein Filter beschränkt die Ausgabe auf einen Namen oder Scope, wie @babel/ oder eslint. Das Aktivieren der Doppelung-Kennzeichnung ergibt eine Zusammenfassung aller Paketnamen, die in mehr als einer Version vorkommen — eine häufige Ursache für überquellendes node_modules. Wählen Sie zwischen einfacher Liste, einer festbreitigen Tabelle oder CSV für Tabellenkalkulationen. Fügen Sie eine zweite Lock-Datei in das optionale zweite Feld ein, um zwei Versionen desselben Projekts zu vergleichen und genau zu sehen, welche Pakete hinzugefügt, entfernt oder aktualisiert wurden.

Das Werkzeug behandelt Windows- und Unix-Zeilenumbrüche auf gleiche Weise. Bei package-lock.json und pnpm-lock.yaml liest es die eigene Abhängigkeitsliste des Projekts, um echte direkte Abhängigkeiten von solchen zu unterscheiden, die bloß an die Oberseite von node_modules verschoben wurden; yarn.lock (klassisches v1) führt keinen solchen Datensatz, daher werden seine Einträge ohne diese Unterscheidung angezeigt. Sehr große Lock-Dateien werden verarbeitet, ohne den Tab zu frieren, und die Ausgabe über 10 MB wird begrenzt mit einem Hinweis, Sie aufzufordern, eine kleinere Datei zu filtern oder zu vergleichen.

Alles läuft lokal in Ihrem Browser — Ihre Lock-Datei und der Abhängigkeitsbaum, den sie beschreibt, werden niemals hochgeladen. Kopieren Sie das Ergebnis, laden Sie es als .txt-Datei herunter, oder leiten Sie es zur Filterung zurück in die Eingabe.

Häufige Fragen

Worin besteht der Unterschied zwischen einer direkten und einer transitiven Abhängigkeit?
Eine direkte Abhängigkeit ist eine, die die package.json Ihres Projekts namentlich auflistet. Eine transitive Abhängigkeit wurde nur eingezogen, weil eines dieser Pakete davon abhängt.
Warum zeigt yarn.lock jedes Paket gleich an, ohne direkt oder transitiv zu unterscheiden?
yarn.lock (klassisches v1) führt die Abhängigkeitsliste des Projekts nicht so auf wie package-lock.json und pnpm-lock.yaml, daher gibt es in der Datei selbst nichts, das ein Paket auf der obersten Ebene von einem unterscheidet, das transitiv eingezogen wurde.
Wie funktioniert der Vergleich von zwei Lock-Dateien?
Fügen Sie die alte Lock-Datei in das Hauptfeld und die neue in das zweite Feld ein und verwenden Sie für beide das gleiche Format. Das Werkzeug listet jedes Paket auf, dessen Version sich geändert hat, plus alles, was hinzugefügt oder entfernt wurde.
Was zählt als Duplikat?
Ein Paketname, der in mehr als einer Version in der gleichen Lock-Datei vorkommt — eine häufige Ursache für ein größeres Paket, wenn zwei Abhängigkeiten jeweils eine inkompatible Version der gleichen Bibliothek verwenden.
Wird meine Lock-Datei irgendwo hochgeladen?
Nein. Das Parsen geschieht vollständig in Ihrem Browser — die Datei verlässt Ihr Gerät nie.