dzentota / captainhook-psalm
Captain Hook 插件,用于检查新引入的 Psalm 错误
Requires
- php: ^7.2 || ^8.0
- ext-dom: *
- captainhook/captainhook: ^4.4 || ^5.0
- sebastianfeldmann/cli: ^3.0
- sebastianfeldmann/git: ^2.2 || ^3.0
Requires (Dev)
- phpunit/phpunit: ^8.5
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-23 14:39:06 UTC
README
moxio/captainhook-psalm
该项目是一个 CaptainHook 插件,用于使用 Psalm 检查你的 PHP 阶段文件中的错误。[Psalm](https://psalm.dev/)。如果检测到阶段 PHP 文件中的错误,则会阻止提交。
安装
使用 composer 将其安装为开发依赖项
$ composer require --dev moxio/captainhook-psalm
用法
将 Psalm 错误检查添加到你的 captainhook.json
配置文件中的 pre-commit
-hook
{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\Psalm\\PsalmCheckAction" } ] } }
只有在提交 PHP 文件更改时才会运行检查。因此,它不会检测未阶段化的 PHP 文件中存在的预存错误。
操作期望 Psalm 以本地 Composer 包的形式安装(即在 vendor/vimeo/psalm
中可用)。
条件用法
如果你只想在 Psalm 安装(即在 vendor/vimeo/psalm
中可用)时执行 Psalm 错误检查,你可以在操作中添加相应的条件
{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\Psalm\\PsalmCheckAction", "conditions": [ { "exec": "\\Moxio\\CaptainHook\\Psalm\\Condition\\PsalmInstalled" } ] } ] } }
这在以下情况下可能很有用:你有共享的 CaptainHook 配置文件,它被包含在既使用 Psalm 又不使用 Psalm 的项目中。[CaptainHook](https://captainhookphp.github.io/captainhook/configure.html#includes) 如果 Psalm 已安装,则执行操作。在未安装 Psalm 的项目中,跳过验证。
psalm.xml
中 projectFiles
的影响
如果此插件检测到 psalm.xml
配置文件,则此插件将尝试使用该文件中配置的 projectFiles
来过滤 Psalm 检查的文件。这是在尽力而为的基础上完成的:不是所有在 projectFiles
中可能的结构都受支持,但简单的目录和文件(以及 ignoreFiles
)应该可以正常工作。如果你遇到文件未正确过滤的情况,请随时发送 PR。
版本控制
该项目遵循 [语义版本控制](http://semver.org/)。
贡献
欢迎对此项目的贡献。请确保你的代码遵循 [PSR-12](https://www.php-fig.org/psr/psr-12/) 扩展编码风格。
许可
本项目在 MIT 许可证下发布。