🌊

[Bug #20474] ヒアドキュメントの空白文字のインデントが意図せず削除されてしまうバグ報告

2024/05/21に公開

[Bug #20474] Heredoc common leading whitespace calculation question

  • 以下のようなヒアドキュメントのときに空白文字が保持されないというバグ報告
# 1行目と3行目に空白文字がある
# このときにその空白文字が意図せずに削除されてしまっている
pp eval("<<~H\n     \naaa\n     \nH\n")
# => "\n" + "aaa\n" + "\n"
  • これ自体は開発版の Ruby 3.4 で修正済み
pp eval("<<~H\n     \naaa\n     \nH\n")
# Ruby 3.3 => "\n" + "aaa\n" + "\n"
# Ruby 3.4 => "     \n" + "aaa\n" + "     \n"
GitHubで編集を提案

Discussion