良くないコードを書いていると警告を出してくれるrubocop
というツールを導入して開発をしているのですが、あるときrubocopが警告出しまくりの設定下でも警告を出してくれないという事がありました。
元々のコードはこんな感じで、json
という変数名がイケてないのでリネームすることに
~略~
json = {test: 1}
render json: json
~略~
そして、こんな感じでリネームを行いますが一部し忘れたとします
~略~
rename_json = {test: 1}
render json: json # ←リネーム漏れ。このままだとundefinedですが、なぜか警告は出ない
~略~
json
という変数名が他でも使われすぎているのか、エディタやrubocopがundefinedと判定することができないようです。
このままだとバグになりかねないし、リファクタを躊躇してしまうようにもなりかねないので、普遍的な単語は避ける癖を付けた方が良さそうです。