Ein Composer-Tool zum Anzeigen ungenutzter Composer-Abhängigkeiten durch Scannen Ihres Codes.
Erstellt von Andreas Frömer und Mitwirkenden, Logo von Caneco.
Wenn Sie dieses Tool als Composer-Plugin verwenden möchten, gehen Sie zu Composer-Unused-Plugin.
Wenn Sie in einem großen Repository arbeiten, verlieren Sie manchmal den Überblick über Ihre erforderlichen Composer-Pakete. Möglicherweise gibt es so viele Pakete, dass Sie nicht sicher sein können, ob sie tatsächlich verwendet werden oder nicht.
Leider liefert Ihnen der composer why
-Befehl nur Informationen darüber, warum ein Paket in Abhängigkeit von einem anderen Paket installiert wird.
Wie prüfen wir, ob die bereitgestellten Symbole eines Pakets in unserem Code verwendet werden?
composer unused
zur Rettung!
.phar
Archiv herunterzuladen oder PHIVE zu verwenden, um es lokal zu installieren.
Installieren Sie über phive
oder holen Sie sich die neueste composer-unused.phar
aus der neuesten Version:
phive install composer-unused curl -OL https://github.com/composer-unused/composer-unused/releases/latest/download/composer-unused.phar
Sie können composer-unused
auch als lokale Entwicklungsabhängigkeit installieren:
composer require --dev icanhazstring/composer-unused
Abhängig von der Art Ihrer Installation kann der Befehl unterschiedlich sein.
Hinweis: Pakete müssen über composer install
oder composer update
installiert werden, bevor composer-unused
ausgeführt wird.
Das phar
Archiv kann direkt in Ihrem Projekt ausgeführt werden:
php composer-unused.phar
Wenn Sie composer-unused
als lokale Abhängigkeit haben, können Sie es mit der mitgelieferten Binärdatei ausführen:
vendor/bin/composer-unused
Manchmal möchten Sie ein bestimmtes Verzeichnis nicht scannen oder ein Composer-Paket beim Scannen ignorieren. In diesen Fällen können Sie die Option --excludeDir
oder --excludePackage
angeben. Diese Optionen akzeptieren mehrere Werte, wie unten gezeigt:
php composer-unused.phar --excludeDir=config --excludePackage=symfony/console php composer-unused.phar --excludeDir=bin --excludeDir=config --excludePackage=symfony/assets --excludePackage=symfony/console
Stellen Sie sicher, dass das Paket genau so benannt ist wie in Ihrer
composer.json
Sie können „composer-unused“ konfigurieren, indem Sie composer-unused.php
neben der Datei composer.json
des Projekts platzieren. Diese Konfiguration kann etwa so aussehen: „composer-unused.php“.
Um Abhängigkeiten anhand ihres Namens zu ignorieren, fügen Sie Ihrer Konfiguration die folgende Zeile hinzu:
$config->addNamedFilter(NamedFilter::fromString('dependency/name'));
Um Abhängigkeiten nach Muster zu ignorieren, fügen Sie die folgende Zeile zu Ihrer Konfiguration hinzu
$config->addPatternFilter(PatternFilter::fromString('/dependency/name/'));
Sie können mehrere Abhängigkeiten einer einzelnen Organisation mit
PatternFilter
ignorieren, z. B./symfony/.*/
composer-unused
verwendet standardmäßig die composer.json
-Autoload-Direktive, um zu bestimmen, wo nach Dateien zum Parsen gesucht werden soll. Manchmal ist die Datei „composer.json“ für Abhängigkeiten nicht richtig eingerichtet oder Dateien werden auf andere Weise geladen. Auf diese Weise können Sie zusätzliche Dateien auf Abhängigkeitsbasis definieren.
$config->setAdditionalFilesFor('dependency/name', [<list-of-file-paths>]);
Bitte schauen Sie sich CHANGELOG.md
an.
Bitte werfen Sie einen Blick auf CONTRIBUTING.md
.
Bitte schauen Sie sich CODE_OF_CONDUCT.md
an.
Dieses Paket ist unter der MIT-Lizenz lizenziert.