drupol/php-conventions

基于 GrumPHP 的 PHP 规范。

支持包维护!
drupol

5.1.4 2023-07-21 09:59 UTC

README

Latest Stable Version GitHub stars Total Downloads License

PHP 规范

描述

一个开发者工具,提供专为 PHP 开发定制的预定义 GrumPHP 配置。

功能

默认的 GrumPHP 配置包含以下检查:

它为每个任务提供默认配置,并通过简单的 YAML 配置文件进行自定义。

根据需要也可以添加或跳过任务。

安装

composer require drupol/php-conventions --dev

如果你没有使用 GrumPHP

手动添加到你的 composer.json 文件

"extra":
  {
    "grumphp":
      {
        "config-default-path": "vendor/drupol/php-conventions/config/php73/grumphp.yml",
      },
  }

将字符串 php73 替换为你想要支持的最低 PHP 版本。

当前选项是

  • psr12

如果你已经使用 GrumPHP

编辑文件 grumphp.yml.distgrumphp.yml 并在顶部添加以下内容

imports:
  - { resource: vendor/drupol/php-conventions/config/php73/grumphp.yml }

要添加额外的 GrumPHP 任务

imports:
  - { resource: vendor/drupol/php-conventions/config/php73/grumphp.yml }

parameters:
  extra_tasks:
    infection:
      threads: 1
      test_framework: phpspec
      configuration: infection.json.dist
      min_msi: 60
      min_covered_msi: 60
  skip_tasks:
    - phpcsfixer

extra_tasks 结合使用,如果需要则使用 skip_tasks 跳过任务。

使用方法

基本使用

vendor/bin/grumphp run

这将运行所有预配置的任务。

高级使用

如果你只想指定一组任务,可以使用预定义的测试套件。

可用的测试套件有

  • cs
    • license
    • composer_require_checker
    • composer
    • composer_normalize
    • yamllint
    • jsonlint
    • phplint
    • twigcs
    • phpcsfixer
  • static-analysis
    • phpstan
    • psalm

要运行特定的测试套件

vendor/bin/grumphp run --testsuite=cs

要运行特定的任务

vendor/bin/grumphp run --tasks=phpcsfixer,phpstan

贡献

问题追踪器 上报告错误。

请参阅文件 CONTRIBUTING.md,但请随意通过发送 Github pull 请求来为此库做出贡献。

变更日志

请参阅 CHANGELOG.md 了解基于 git 提交 的变更日志。

有关更详细的变更日志,请检查 发布变更日志

要生成变更日志,请使用以下命令

docker-compose run auto_changelog  --commit-limit false --hide-credit --sort-commits date-desc --breaking-pattern ""BREAKING CHANGE: yes" --template keepachangelog -u