drupal / clean_package
一个Composer清理插件,用于保留仅生产所需的包文件并保持更高的安全性。
1.0.0-alpha1
2022-04-17 18:55 UTC
Requires
- php: ^7.4 || ^8.0
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.3
- opsway/psr12-strict-coding-standard: ^0.7.0
This package is not auto-updated.
Last update: 2024-09-16 08:24:11 UTC
README
根据给定的规则移除特定包的不必要文件。
注意:此插件会移除包文件。请正确测试定义的规则。仅移除对项目需求完全不必要的文件。
安装
在您的composer.json
中添加此包
composer require drupal/clean_package
示例
请参阅examples目录中的示例规则。欢迎提出更多示例。同时,composer.clean.json
文件将在安装drupal/clean_package
模块时执行。因此,此README.md文件以及其他不必要的插件文件和目录将被移除。
用法
此插件将在任何已安装的包上自动工作。当项目的一些依赖项在项目的公共目录中访问并包含攻击者可能用来确定可能漏洞的信息时,此插件非常有用。通过在根包中定义规则,您可以管理在安装期间需要移除的包文件。
该包需要定义以下额外选项之一
clean-file
clean-rules
clean-file
是相对于包路径的文件名,该文件包含规则。将移除clean-file
,以及其他基于规则的其他文件,除了根包。
composer.json
的示例
"name": "my/package",
...
"extra": {
"clean-file": "composer.clean.json"
}
composer.clean.json
的示例
{
"clean-rules": {
"some-other/package": [
"file1.txt",
...
]
}
}
clean-rules
是JSON对象。它包含作为包名称的键和表示包模式或文件路径的字符串数组作为值。有关模式定义,请参阅glob函数文档。如果clean-file
已在composer.json
文件的extra
部分中定义,则忽略在clean-rules
中定义的规则。
composer.json
的示例
"name": "my/package",
...
"extra": {
"clean-rules": {
"some-other/package": [
"file1.txt",
...
]
}
}