avto-dev / composer-cleanup-plugin
一个Composer清理插件,用于删除测试和文档以节省空间
v2.7.0
2023-11-17 09:15 UTC
Requires
- php: ^8.0
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.0
- phpstan/phpstan: ^1.9
- phpunit/phpunit: ^9.6
README
Composer 清理插件
从供应商目录中删除测试和文档。基于 barryvdh/composer-cleanup-plugin。
通常磁盘大小不应该有问题,但当你必须使用FTP进行部署或磁盘空间非常有限时,你可以使用这个包来通过删除未在生产中使用(测试/文档等)的文件来缩小供应商目录。
注意: 此包仍处于实验阶段,不建议在生产环境中使用,除非进行了详细的测试。
安装
在您的composer.json中要求此包
$ composer require avto-dev/composer-cleanup-plugin "^2.0"
使用方法
如果你使用 composer:v1
,你需要添加行在安装每个包后运行清理命令
"post-package-install": [ "AvtoDev\\Composer\\Cleanup\\Plugin::handlePostPackageInstallEvent" ],
如果你使用 composer:v2
,那么所有包都将并行安装,因此所有包安装完成后将自动清理,并在事件 POST_AUTOLOAD_DUMP
触发。
它做什么?
对于默认列表中安装或更新的每个包,通常
- 删除文档,如README文件、docs文件夹等。
- 删除测试、PHPUnit配置和其他构建/CI配置。
一些包不遵循通用规则,删除的文件更多/更少。没有添加规则的包将被忽略。
添加规则
请向 src/Rules.php 提交PR以添加更多包的规则。请确保首先测试它们,有时测试目录被类映射,删除时会出错。
测试
对于包测试,我们使用 phpunit
框架和 docker-ce
+ docker-compose
作为开发环境。所以,在克隆存储库后,只需在您的终端中写入
$ make build $ make latest # or 'make lowest' $ make test
变更日志
变更日志可以在 这里找到。
支持
如果你发现任何包错误,请,在当前存储库中 提出问题。
许可
这是一个开源软件,许可协议为 MIT 许可。