leovie / phpstan-baseline-guard
防止您的 phpstan 基准文件增长
v1.0.2
2023-04-26 15:39 UTC
Requires
- php: >=8.1
- nette/neon: ^3.4
- symfony/console: ^6.2
Requires (Dev)
- ergebnis/composer-normalize: ^2.29
- infection/infection: ^0.26.18
- phpstan/phpstan: ^1.9
- phpunit/phpunit: ^9.5
- psalm/plugin-phpunit: ^0.18.4
- vimeo/psalm: ^5.6
README
出色的静态分析工具 PHPStan 有一个 基准功能。使用该功能,您可以生成一个包含所有现有代码错误的文件。这些错误将在 PHPStan 的后续运行中被忽略。
使用基准功能,您可以确保引入的每个新代码都能在高 PHPStan 水平上进行分析,而无需首先修复现有(旧版)代码中的所有错误。
通常,一旦生成了基准文件,您就不希望添加更多错误。phpstan-baseline-guard
是一个小工具,以确保您不会这样做。
安装
通过 Composer 安装
composer require --dev leovie/phpstan-baseline-guard
用法
假设,您已经生成了一个 PHPStan 基准文件 /foo/baseline.neon
- 运行
phpstan-baseline-guard
并仅指定基准文件的绝对路径,例如:
phpstan-baseline-guard /foo/baseline.neon
您将得到如下输出:
[INFO] Your baseline contains 20 ignored errors.
- 使用第一次命令运行中忽略的错误数,并运行
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 流程中。当开发人员试图向基准添加更多忽略的错误时,该命令将失败。