Ruby 2.7 アドベントカレンダーの10日目の記事です。
コメント行を挟んだメソッド呼び出し
メソッド呼び出し時には .
の前後に改行することができます。
"hoge". upcase "hoge" .upcase
ですが、その間にコメント行を挟むとエラーになっていました。
"hoge". # こっちはOK upcase "hoge" # こっちはNG .upcase #=> syntax error, unexpected '.', expecting end-of-input
2.7 ではこれがエラーにならなくなりました。
ヒアドキュメント
ヒアドキュメントの識別子が複数行にまたがっていた場合に Ruby 2.4 から warning が出力されていましたが、2.7 ではエラーになります。
p <<"EOS " hoge EOS
Ruby 2.6
% ruby test.rb test.rb:2: warning: here document identifier ends with a newline "hoge\n"
Ruby 2.7
% ruby test.rb test.rb:1: unterminated here document identifier p <<"EOS
なぜ今まで放っておいたのかって感じですが、Ruby 3 に向けていろいろ潰してるみたいですね。