RuboCop 0.87 がリリースされた。
今回の目玉は rubocop -a
コマンドラインオプションへの非互換変更となる。
これまでは rubocop -a
オプション (rubocop --auto-correct
も同義) を使った場合に、自動修正を備えたすべての Cop が適用されたていた。そのため Safe でないと見なされる Cop の自動修正も適用されるというのがデフォルトの振る舞いだった。
今回のリリースからは rubocop -a
は Safe とマークされている Cop のみが自動修正の対象となり、従来どおり自動修正を備えた Unsafe を含むすべての Cop を適用する場合は rubocop -A
(rubocop --auto-correct-all
) を実行することになる。つまり RuboCop 0.59 で導入された rubocop --safe-auto-correct
が自動修正のデフォルトの振る舞いになる (そして rubocop --safe-auto-correct
オプション自体は非推奨になりました) 。
RuboCop に導入されている Safe というメタデータについては過去の日記を参照してください。