keboola/coding-standard

Keboola 编码标准

安装: 299,143

依赖项: 81

建议者: 0

安全: 0

星级: 1

关注者: 18

分支: 0

公开问题: 7

语言:Dockerfile

类型:phpcodesniffer-standard

15.0.1 2023-12-11 08:31 UTC

README

版本控制

  • 补丁版本可能仅在发现嗅探器中的错误时才会弱化检查
  • 次要版本可能仅更新基础编码标准中的错误修复
  • 主版本可能引入新的嗅探器,从而导致之前良好的构建失败

因此,您通常可以使用 composer 的默认 ^major.minor

安装

  • 通过 composer 安装
composer require --dev keboola/coding-standard
  • example/phpcs.xml 复制到您的项目根目录。
  • 现在您可以使用以下命令检查您的 srctests 目录
vendor/bin/phpcs src tests
  • 将 phpcs 脚本添加到 composer.json
{
...
    "scripts": {
        "phpcs": "phpcs -n --extensions=php ."
    }
}

使用方法

composer phpcs

在旧项目中使用标准

如果修复违规行为过于复杂,您可以排除相应的嗅探器。

首先您需要知道哪个嗅探器导致了违规。

composer phpcs -- -s

这将输出嗅探器名称以及违规。

phpcs -n --extensions=php . "-s"

FILE: W:\keboola\http-extractor\src\Config.php
----------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
----------------------------------------------------------------------
 11 | ERROR | Method \Keboola\HttpExtractor\Config::getBaseUrl() does not
    |       | have return type hint nor @return annotation for its return
    |       | value.
    |       | (SlevomatCodingStandard.TypeHints.TypeHintDeclaration.MissingReturnTypeHint)
----------------------------------------------------------------------

然后,将嗅探器添加到您的 phpcs.xml 中的排除项

<?xml version="1.0"?>
<ruleset name="Custom">
    <rule ref="vendor/keboola/coding-standard/ruleset.xml">
		<exclude name="SlevomatCodingStandard.TypeHints.TypeHintDeclaration.MissingReturnTypeHint" />
	</rule>
</ruleset>

重复操作,直到没有违规为止。

您可以记录可修复的违规,并在文件中将其视觉上分离,例如使用 <!-- Fixable violations below -->。这样任何人都可以逐个移除排除项,让 phpcbf 修复违规,审查结果,然后提交带有修复的 PR。这将提高将来修复违规的机会。

许可

MIT 许可,请参阅 LICENSE 文件。