moxio/captainhook-psalm

Captain Hook 插件,用于检查引入的 Psalm 错误

v0.3.0 2021-07-29 09:44 UTC

This package is auto-updated.

Last update: 2024-08-29 06:07:18 UTC


README

Latest Stable Version

moxio/captainhook-psalm

本项目是一个 CaptainHook 插件,用于使用 Psalm 检查您暂存的 PHP 文件中的错误。如果检测到任何暂存 PHP 文件中的错误,则阻止提交。

安装

使用 composer 安装为开发依赖项

$ composer require --dev moxio/captainhook-psalm

用法

将 Psalm 错误检查添加到 captainhook.json 配置文件中的 pre-commit 钩子

{
    "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 的项目中都被包含。如果 Psalm 已安装,则执行操作。在未安装 Psalm 的项目中,验证将被跳过。

psalm.xmlprojectFiles 的影响

如果此插件检测到 psalm.xml 配置文件,此插件将尝试使用该文件中配置的 projectFiles 来过滤 Psalm 检查的文件。这是尽最大努力完成的:并非支持 projectFiles 中可能的所有结构,但简单的目录和文件(以及 ignoreFiles)应该可以正常工作。如果您遇到文件没有被正确过滤的情况,请随时发送 PR。

版本控制

本项目遵循 语义版本控制

贡献

欢迎对此项目做出贡献。请确保您的代码遵循 PSR-12 扩展编码风格。

许可

本项目采用 MIT 许可证发布。