なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2019/03/18)

2019/03/18分のコミットです。

CHANGELOGへの追加はありませんでした。


Tweak truncate_tables

activerecord/lib/active_record/connection_adapters/abstract/database_statements.rbactiverecord/lib/active_record/tasks/database_tasks.rbの修正です。

不要なemptyチェックの削除、early returnを使用するよう修正等の対応を行っています。


Add test case for unscoping :optimizer_hints

Active Recordの修正です。

optimizer_hintsをunscopeした場合のテストを追加しています。


Add :reselect and :optimizer_hints to the list of finder methods

rails guideのActive Record Query Interfaceの修正です。

Retrieving Objects from the Databaseの項にあるfinder methodsの一覧に:reselect:optimizer_hintsを追加しています。


Ruby 2.4 and later support native Unicode case mappings

actionview/lib/action_view/helpers/tags/base.rbの修正です。

Tags::Base#sanitized_valueメソッドで値をsanitizeするのにmb_chars + downcaseを使用していたのを、downcaseだけ使用するよう修正しています。

Ruby 2.4以降だとRuby側でUnicodeのcase mappingsをしてくれるようになっている為。


Get rid of Arel::Nodes::Values

Active Recordの修正です。

Arel::Nodes::Values classを削除しています。Arel::Nodes::ValuesListが同等の機能を提供しており、そちらを使用すれば良いため。


Suggest 'strict-origin' Referrer-Policy header

actionpack/lib/action_controller/metal/request_forgery_protection.rbの修正です。

valid_request_origin?メソッドで、InvalidAuthenticityTokenをraiseした際に表示するエラーメッセージ内のポリシー名をタイポしていた(strict-same-origin -> strict-origin)のを修正しています。


Fix updating rich text via nested attributes

actiontext/lib/action_text/attribute.rbの修正です。

rich textがnested attributes経由で更新出来ないバグがあったのを修正しています。


Add test case to prevent possible SQL injection

Active Recordの修正です。

optimizer_hintsメソッドでSQLのsanitaize処理が行われる事を確認するテストを追加しています。


Merge pull request #35652 from razh/revert-rails-ujs-html-content

rails-ujsでHTML responseをplain-textとして扱うよう修正した、Pass HTML responses as plain-text in rails-ujsをrevertしています。

jquery-ujsの挙動と合わせる為この対応を行ったのですが、これはこれでbreaking changeになってしまう(dataインスタンスが変わってしまう)為、既存の振る舞いを維持する為revertしています。