leovie/phpstan-baseline-guard

防止您的 phpstan 基准文件增长

v1.0.2 2023-04-26 15:39 UTC

This package is auto-updated.

Last update: 2024-09-26 18:37:29 UTC


README

出色的静态分析工具 PHPStan 有一个 基准功能。使用该功能,您可以生成一个包含所有现有代码错误的文件。这些错误将在 PHPStan 的后续运行中被忽略。

使用基准功能,您可以确保引入的每个新代码都能在高 PHPStan 水平上进行分析,而无需首先修复现有(旧版)代码中的所有错误。

通常,一旦生成了基准文件,您就不希望添加更多错误。phpstan-baseline-guard 是一个小工具,以确保您不会这样做。

安装

通过 Composer 安装

composer require --dev leovie/phpstan-baseline-guard

用法

假设,您已经生成了一个 PHPStan 基准文件 /foo/baseline.neon

  1. 运行 phpstan-baseline-guard 并仅指定基准文件的绝对路径,例如:
phpstan-baseline-guard /foo/baseline.neon

您将得到如下输出:

 [INFO] Your baseline contains 20 ignored errors. 
  1. 使用第一次命令运行中忽略的错误数,并运行 phpstan-baseline-guard 并指定基准中忽略错误的最大固定数,例如:
phpstan-baseline-guard /foo/baseline.neon --max-ignored-errors=20

您将得到如下输出:

 [INFO] Your baseline contains 20 ignored errors. - OK

现在,如果您向基准中添加更多忽略的错误并再次运行相同的命令,您将得到如下输出:

 [ERROR] Your baseline contains 25 ignored errors. - That's more than allowed.

在这种情况下,命令将失败,并阻止您添加比您明确允许的更多的错误到基准文件中。

CI

您可以将 phpstan-baseline-guard 添加到 CI 流程中。当开发人员试图向基准添加更多忽略的错误时,该命令将失败。