🛤️

Rails 7.1 でredirect_toの挙動が変わった理由

2024/11/01に公開

差分を確認していてちょっと気づいた挙動の変更があったのでメモ。

7.0と7.1でredirect_toの実装が変わっている。
response_bodyの内容を空文字にしている。

7.0
https://github.com/rails/rails/blob/v7.0.8.6/actionpack/lib/action_controller/metal/redirecting.rb#L96

7.1
https://github.com/rails/rails/blob/v7.1.5/actionpack/lib/action_controller/metal/redirecting.rb#L96

変更理由を読むと、リダイレクトレスポンスのHTMLは現行ブラウザの挙動では描画もされない、といったことから不要であり、今後のメンテナンス性のためにも削除したとある。

https://github.com/rails/rails/pull/44554
https://github.com/rails/rails/commit/c2e756a944fd3ca2efa58bd285c0e75e0b4794ab

Discussion