次の RuboCop マイナーバージョンアップとなる 0.72 から Rails Cops が外されます。今後 Rails Cops を使う場合は Gemify された rubocop-rails gem を使うことになるため、昨日リリースされた RuboCop 0.71 から警告が出るようにしています。
また rubocop -R/--rails
オプションも同じタイミングで削除します。
RuboCop 0.71 は移行期間としているため RuboCop の Rails Cops を使う場合は、以下のような設定を加えてください。
Gemfile に rubocop-rails
gem を追加して bundle install
する。
gem 'rubocop-rails'
.rubocop.yml に require: rubocop-rails
を追加する。例えば以下のように足すことになります。
inherit_from: .rubocop_todo.yml
require:
+ - rubocop-rails
- rubocop-rspec
AllCops:
Exclude:
- 'vendor/**/*'
- 'spec/fixtures/**/*'
- 'tmp/**/*'
TargetRubyVersion: 2.6
このように今後は RuboCop Performance や RuboCop RSpec と同様の使い方になります。
rubocop-rails gem についての詳細は https://github.com/rubocop-hq/rubocop-rails を参照してください。
RuboCop 本体と rubocop-rails gem 両方に実装がある場合、rubocop-rails gem の実装が方が優先される動きになります。
Rails Cops が外されることについての移行スケジュールは以下です。
- RuboCop 0.71 ... RuboCop のインストール時、ならびに
rubocop -R/--rails
オプションを使った時に警告が表示します - RuboCop 0.72 ... RuboCop Core から Rails Cops を削除します