PHP_CodeSnifferは、php-cs-fixerなどと並んでPHPにおける代表的なLinterの1つです。
そのPHP_CodeSnifferに先日、The Future of PHP_CodeSniffer
というissueが投稿されました。
何が起こっている?
簡単に言うと、PHP_CodeSnifferのリポジトリがsquizlabs/PHP_CodeSniffer
からPHPCSStandards/PHP_CodeSniffer
に変わります。
また、メンテナの体制も変更されます。
経緯
PHP_CodeSnifferは長年@gsherwood
さん(Greg Sharwood、以下Greg)が中心となって開発を行っていました。
しかしここ最近はPHP_CodeSnifferに時間をとれない状況が続いていたことから、2023年5月には主要なコントリビュータの一人であった@jrfnl
さん(Juliette Reinders Folmer、以下Juliette)にリポジトリへのコミット権限が与えられ、この2人が協力してプロジェクトを進めるとしていました。
ところがその後もGregは開発に参加できず、ついにプロジェクトを放棄すると宣言したため、Julietteが引き継ぐこととなりました。
ユーザーはどうすればいい?
冒頭のIssueが投稿された1週間後の12月8日、Julietteがメンテナとなった新バージョン3.8.0がリリースされました。
PHP_CodeSnifferを利用する側のユーザーは、この新バージョンを使いたければ対応が必要になる場合があります。
インストール方法の変更
今まで使っていたインストール方法によって異なります。
詳細は3.8.0のリリースノートに記載があります。
- PEAR
- PEARでのリリースは今後行われません。PEAR経由でインストールしていた場合は、他の方法に切り替える必要があります。
- composer
- 特に変更は不要です。通常通り
composer update
で新しい3.8.0がインストールされます。 - 当初パッケージ名を
phpcsstandards/php_codesniffer
へ移行するという話がありましたが、結局元のsquizlabs/php_codesniffer
を継続してリリースできるようになりました。
- 特に変更は不要です。通常通り
- Phive
- URL指定でインストールしている場合は、URLを変更する必要があります。
- Pharを直接ダウンロード
- ダウンロード元URLの変更が必要です。
寄付(任意)
- Julietteが開発に集中できるよう、また現在1人しかいないメンテナを増やしていけるように、寄付を募っています。
-
新しいリポジトリの
Sponsor this project
のところから、GitHub SponsorまたはOpen Collective経由でサポート可能です。
ここ1,2年のsquizlabs/PHP_CodeSniffer
はマージされるPRの数やリリース回数も減っていたので、ついに……という感じでしたが、OSS運営の難しさも垣間見える出来事でした。
今後のPHP_CodeSnifferに期待するとともに、寄付やPRなど出来ることで貢献していきたいですね。