SideCI上でPHP_CodeSniffer自動修正が行えるようになりました

  • 投稿者:
  • 投稿の最終変更日:2020-11-25
  • 投稿カテゴリー:Update
  • Reading time:1 mins read

SideCIはphp-cs-fixerを利用して、修正可能なPHP_CodeSnifferによる指摘を自動修正したPull Requestを生成することができます。
この機能を既存のワークフローに組み込むことによって「Pull Requestに対するPHP_CodeSnifferの指摘を修正するPull RequestをSideCIから作成し、それをマージする」ことでローカルで修正せずともコード指摘を反映できるようになります。

この自動修正の対象は 該当Pull Request内のコミットで変更があったファイル になります。差分箇所のみではない点をご留意下さい。

また、php-cs-fixerの修正は、sideci.ymlのPHP_CodeSnifferの設定に沿って行われます。
ただし、自動修正に指定できるのは以下のみとなり、該当しない場合は PSR2 として自動修正が行われます。
PSR0
PSR1
PSR2
Symfony

設定方法

SideCI上の 解析ツール選択 からPHP CodeSnifferを有効にしておきます。また、 GitHub上にコメントを行わない オプションは外しておきます。
slt="PHP CodeSniffer setting"
PHP CodeSniffer の設定

実行方法

CodeSnifferの指摘を自動修正する方法については、2つの実行方法があります。

1. SideCIから

SideCIの Pull Requestに対するCodeSnifferの指摘 から PHP Code Snifferの指摘を自動修正する をクリックすると、PHP_CodeSnifferの指摘を自動修正するPull Requestが生成されます。
alt="auto correct button"

2. GitHubのPull Requestから

GitHubのPull Requestにコメントされるリンクから実行します。
alt="auto correct from comment"

RuboCopの指摘が1件以上あるPull Request に対してコメントされる形で修正リンクが付記されます。
Auto Correct by SideCIボタンをクリックすると、Pull Request生成が実行されます。

自動修正されたPull Requestをマージする

自動修正のPull Requestが生成されます。
alt="auto correct Pull Request image"
自動修正のPull Requestイメージ

また、修正元のPull Requestに自動生成されたPull Requestについてのコメントが付与されます。
alt="comment about auto corrct"
修正元へのコメント

生成されたPull Requestをレビューの上、マージしてください。


2017/10/23追記: 本機能は「クラシックモード」でのみ提供されておりました。クラシックモードは2017年10月末日に廃止となりましたため、本機能も合わせて廃止されます。自動修正についてはお手数ですが、php-cs-fixerなどのコマンドラインツールのご利用をお願い致します。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください