一个 Composer 工具,通过扫描代码来显示未使用的 Composer 依赖项。
由 Andreas Frömer 和贡献者创建,徽标由 Caneco 提供。
如果您想将此工具用作composer-plugin,请前往composer-unused-plugin。
在大型存储库中工作时,您有时会丢失所需的 Composer 包。可能有太多的包你无法确定它们是否真的被使用过。
不幸的是, composer why命令只提供有关为什么一个包依赖于另一个包而安装的信息。
我们如何检查我们的代码中是否使用了包提供的符号?
composer unused救援!

.phar存档或使用PHIVE在本地安装。
通过phive安装或从最新版本获取最新的composer-unused.phar :
phive install composer-unused curl -OL https://github.com/composer-unused/composer-unused/releases/latest/download/composer-unused.phar
您还可以安装composer-unused作为本地开发依赖项:
composer require --dev icanhazstring/composer-unused
根据您的安装类型,命令可能会有所不同。
注意:在运行composer-unused之前,必须通过composer install或composer update安装软件包。
phar存档可以直接在您的项目中运行:
php composer-unused.phar
将composer-unused作为本地依赖项,您可以使用附带的二进制文件运行它:
vendor/bin/composer-unused
有时您不想扫描某个目录或在扫描时忽略 Composer 包。在这些情况下,您可以提供--excludeDir或--excludePackage选项。这些选项接受多个值,如下所示:
php composer-unused.phar --excludeDir=config --excludePackage=symfony/console php composer-unused.phar --excludeDir=bin --excludeDir=config --excludePackage=symfony/assets --excludePackage=symfony/console
确保包的名称与您的
composer.json中的名称完全相同
您可以通过在项目composer.json旁边放置composer-unused.php来配置composer-unused此配置可能如下所示:composer-unused.php
要按名称忽略依赖项,请将以下行添加到您的配置中:
$config->addNamedFilter(NamedFilter::fromString('dependency/name'));要按模式忽略依赖项,请将以下行添加到您的配置中
$config->addPatternFilter(PatternFilter::fromString('/dependency/name/'));您可以使用
PatternFilter忽略单个组织的多个依赖关系,例如/symfony/.*/
默认情况下, composer-unused使用composer.json autoload 指令来确定在哪里查找要解析的文件。有时,依赖项的composer.json 未正确设置,或者文件以其他方式加载。使用它,您可以根据每个依赖项定义其他文件。
$config->setAdditionalFilesFor('dependency/name', [<list-of-file-paths>]);请查看CHANGELOG.md 。
请查看CONTRIBUTING.md 。
请查看CODE_OF_CONDUCT.md 。
该软件包根据 MIT 许可证获得许可。