Contribution to RuboCop
今日はいくつか RuboCop に PR を送った。
Update auto-gen-config's comment re auto-correct for SafeAutoCorrect: false
https://github.com/rubocop/rubocop/pull/10673
これは rubocop-todo-corrector がうまく動かないケースがあって調べていたら見つけたもの。 このPRで Safe が false のものについては --autocorrect-all を使ってくれと、 .rubocop_todo.yml に出力されるのだが、SafeAutoCorrect が false のものについては --autocollect を使ってくれと出力されてしまう。
# This cop supports safe auto-correction (--auto-correct).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: always, always_true, never
Style/FrozenStringLiteralComment:
そして、その通りにコマンドを実行してみる。
bundle exec rubocop --auto-correct foo.rb
とこうなる。
Offenses:
foo.rb:1:1: C: [Correctable] Style/FrozenStringLiteralComment: Missing frozen string literal comment.
something
^
1 file inspected, 1 offenses detected, 1 more offenses can be corrected with `rubocop -A`
なので、SafeAutoCorrect: false
な Cop についても--auto-correct-all をサジェストするようにする。
Fix a false positive for Naming/AccessorMethodName with arguments forwarding
https://github.com/rubocop/rubocop/pull/10674
たまたま似たようなPR作った気がするなと思い出して、
たまたま見ていたNaming/AccessorMethodName
でもset_
に arguments forwarding 渡しても許容しても良いのではとなって送った。
以下のようなコードは not offense となる。
# Good
def set_something(...)
# ...
end