vanta/gitlab-rector 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

vanta/gitlab-rector

最新稳定版本:0.6.1

Composer 安装命令:

composer require --dev vanta/gitlab-rector

包简介

Formatter artifacts rector for gitlab

README 文档

README

Install

  1. call command composer require --dev vanta/gitlab-rector
  2. edit config rector.php and add GitlabOutputFormatter

Config if rector >= 1.0.1

<?php

declare(strict_types=1);

use Rector\Config\RectorConfig;
use Rector\EarlyReturn\Rector\If_\ChangeNestedIfsToEarlyReturnRector;
use Rector\EarlyReturn\Rector\If_\RemoveAlwaysElseRector;
use Vanta\Integration\Rector\GitlabOutputFormatter;
use Rector\Caching\ValueObject\Storage\FileCacheStorage;
use Rector\ChangesReporting\Contract\Output\OutputFormatterInterface;

return RectorConfig::configure()
    ->withCache(
        cacheDirectory: 'var',
        cacheClass: FileCacheStorage::class
    )
    ->withTypeCoverageLevel(10)
    ->withDeadCodeLevel(10)
    ->withPreparedSets(codeQuality: true, codingStyle: true)
    ->withAttributesSets(symfony: true, doctrine: true)
    ->withPaths([
        __DIR__ . '/fixture',
    ])
    ->withRules([
        ChangeNestedIfsToEarlyReturnRector::class,
        RemoveAlwaysElseRector::class,
    ])
    ->registerService(GitlabOutputFormatter::class, 'gitlab', OutputFormatterInterface::class)
;

Config if rector >=0.18

<?php

declare(strict_types=1);

use Rector\ChangesReporting\Contract\Output\OutputFormatterInterface;
use Rector\Config\RectorConfig;
use Rector\EarlyReturn\Rector\If_\ChangeNestedIfsToEarlyReturnRector;
use Rector\EarlyReturn\Rector\If_\RemoveAlwaysElseRector;
use Rector\Set\ValueObject\SetList;
use Vanta\Integration\Rector\GitlabOutputFormatter;

return static function (RectorConfig $config): void {
    $config->paths([
        __DIR__ . '/fixture',
    ]);

    $config->cacheDirectory('var');

    $config->bind(GitlabOutputFormatter::class);
    $config->tag(GitlabOutputFormatter::class, [OutputFormatterInterface::class]);

    $config->rules([
        ChangeNestedIfsToEarlyReturnRector::class,
        RemoveAlwaysElseRector::class,
    ]);


    $config->sets([
        SetList::CODE_QUALITY,
    ]);
};

Config if rector <0.18

<?php

declare(strict_types=1);

use Rector\Config\RectorConfig;
use Rector\EarlyReturn\Rector\If_\ChangeNestedIfsToEarlyReturnRector;
use Rector\EarlyReturn\Rector\If_\RemoveAlwaysElseRector;
use Rector\Set\ValueObject\SetList;
use Vanta\Integration\Rector\GitlabOutputFormatter;

return static function (RectorConfig $config): void {
    $config->paths([
        __DIR__ . '/fixture',
    ]);

    $config->cacheDirectory('var');

    $config->services()
        ->defaults()
        ->autowire()
        ->autoconfigure()

        ->set(GitlabOutputFormatter::class)
    ;

    $config->rules([
        ChangeNestedIfsToEarlyReturnRector::class,
        RemoveAlwaysElseRector::class,
    ]);


    $config->sets([
        SetList::CODE_QUALITY,
    ]);
}

Usage in ci:

lint-rector:
  stage: lint
  script:
    - vendor/bin/rector --dry-run --output-format=gitlab > rector-report.json
  artifacts:
    reports:
      codequality: rector-report.json
    when: always

统计信息

  • 总下载量: 11.99k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 0
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-07-18