rubocopデフォには「おい、それはちょっと口うるさすぎるでしょう?」という項目が結構あって、"複数行ブロックの場合は->じゃなくてlambda使え"というのもその一つ。

% rubocop app/models/comment.rb
Inspecting 1 file
C

Offenses:

app/models/comment.rb:11:26: C: Use the lambda method for multi-line lambdas.
  scope :except_blocked, -> {
                         ^^

でもどのルールをオフにしたらこれが許されるのかわからなかったが、-Dをつければルール名も表示してくれるらしい。

% rubocop -D app/models/comment.rb
Inspecting 1 file
C

Offenses:

app/models/comment.rb:11:26: C: Style/Lambda: Use the lambda method for multi-line lambdas.
  scope :except_blocked, -> {
                         ^^

ほう、Style/Lambdaか。

# .rubocop.yml:
Style/Lambda:
  Enabled: false
% rubocop app/models/comment.rb
Inspecting 1 file
.

1 file inspected, no offenses detected

これで心安らかになった。

Comments


Option