madewithlove / license-checker
用于验证composer依赖项允许的许可证的CLI工具
v1.6
2024-03-26 13:09 UTC
Requires
- php: ^8.1
- symfony/console: ^4.0 || ^5.0 || ^6.0 || ^7.0
- symfony/process: ^4.0 || ^5.0 || ^6.0 || ^7.0
- symfony/yaml: ^4.0 || ^5.0 || ^6.0 || ^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.16
- phpunit/phpunit: ^10.1
- psalm/plugin-phpunit: ^0.18
- vimeo/psalm: ^5.9
README
此库提供了一个简单的CLI工具,以显示项目composer依赖项所使用的许可证。这些许可证可以与允许的许可证列表进行验证,以便为您的持续集成管道提供一种在代码库中引入未验证的许可证时阻止合并的方法。
安装
由于使用了 composer
,安装应该非常简单:请注意,您需要PHP 8才能安装最新版本(1.x)。如果您正在使用较旧的PHP版本(7.x),则可以安装较旧的版本(0.x)。
composer require madewithlove/license-checker
配置
要配置允许的许可证列表,只需在项目的根目录(位于composer.json
所在的目录)中创建一个.allowed-licences
文件。该文件可能看起来像这样
# contents of .allowed-licenses
- MIT
- BSD-3-Clause
- New BSD License
您可以通过传递CLI命令的--filename
(或-f
)选项来使用自定义配置文件。
用法
以下是一些不同的CLI命令
列出使用的许可证
vendor/bin/license-checker used
列出允许的许可证
vendor/bin/license-checker allowed
检查许可证
vendor/bin/license-checker check
自动生成配置
此命令将自动根据当前使用的许可证生成.allowed-licenses
配置。
vendor/bin/license-checker generate-config
排除开发依赖项
将--no-dev
选项传递给CLI命令将所有检查范围限定为仅限生产依赖项。可以通过传递选项来分别对生产依赖项和开发依赖项使用单独的配置文件进行检查
vendor/bin/license-checker check --no-dev --filename .allowed-licenses-production
vendor/bin/license-checker check --filename .allowed-licenses-including-dev