元语法/composer-plugin-license-check

为Composer提供插件,限制安装具有有效许可证的包。

2.2.2 2024-04-09 12:34 UTC

README

此Composer插件允许定义一个白名单和/或黑名单的许可证包,这些包将被安装到项目中并将进行验证。如果在包中找到禁止的许可证,则特定包的安装将失败。

此外,提供了一个新的Composer命令 check-licenses,用于列出所有依赖包及其许可证,并检查是否允许使用。

如何安装

安装过程遵循Composer包的一般安装流程。

运行 composer require metasyntactical/composer-plugin-license-check 将包添加到 composer.json 并安装包。

如何使用

Composer插件对composer.json的extra部分中的额外变量做出响应。

{
  "extra": {
    "metasyntactical/composer-plugin-license-check": {
      "allow-list": [],
      "deny-list": [],
      "allowed-packages": {}
    }
  }
}

只需指定允许或禁止的许可证作为数组。使用composer.json版本属性中允许/使用的许可证标识符以确保与通用用法兼容。

可以指定尽管存在许可证违规但允许的额外包。作为键必须使用包名(类似于requirerequire-dev),并且可以指定语义版本约束作为值(目前未进行检查)!

重要提示:此插件受MIT许可证的许可。即使您在项目中禁止使用MIT许可的包,插件本身也是唯一不会抱怨的包(否则显然无法进行进一步检查)。