なるようになるブログ

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

rails commit log流し読み(2018/07/21)

2018/07/21分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

activejob/CHANGELOG.md

activerecord/CHANGELOG.md


[ci skip] Move changelog entry up top. Clarify.

actionpack/CHANGELOG.mdの修正です。

paramsnil / falseが指定された場合、paramsのencode処理をおこなわないよう修正した、Prevent RequestEncoder#encode_params to parse falsey paramsの対応のエントリーをファイルの先頭に移動しています。


[ci skip] Strike changelog entry, since it's 5.2 backported.

actionpack/CHANGELOG.mdの修正です。

先ほどファイルの先頭に移動した、paramsnil / falseが指定された場合、paramsのencode処理をおこなわないよう修正した対応のエントリーを削除しています。5-2-stableにバックポート済みの為。


[ci skip] Fix syntax error + make example easier to follow.

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

HttpAuthentication::Basic moduleのdoc内、テストでHTTP_AUTHORIZATIONヘッダーを指定するexampleが、シンタックスエラーになるコードになっていたのを修正しています。


Merge pull request #32410 from yuki24/show-cause-on-debug-view-2

Action Packの修正です。

Exceptionがネストしている場合に、debug viewでネストしているException全てを表示するよう修正しています。

PRにあるスクリーンショット

38180368-165a2dfc-35fa-11e8-8925-0101abc627ff.gif (1040×1664)


Merge pull request #33171 from zvkemp/active-job-asn-wrap-enqueue

activejob/lib/active_job/logging.rbの修正です。

enqueue / enqueue_atがafter callbackで実行されていたのを、around callbackで実行するよう修正しています。

adapterのIOへの書き込み時間を含む事で、より正確な情報を取得出来るようにする為、との事です。


[ci skip] Fixup changelog. Trim title. Mention benefit.

activejob/CHANGELOG.mdactivejob/lib/active_job/logging.rbの修正です。

先のActive Jobの対応のエントリーの説明の修正、メソッドの呼び出しに中括弧を追加等を行っています。


Merge pull request #33405 from georgeclaghorn/activestorage-referential-integrity

Active Storageの修正です。

attachments(active_storage_attachments table)からblobs(active_storage_blobs)に外部キー成約を指定するよう修正しています。

migrationファイルのcreate_tableが直接変更されているので、既にテーブルを作成済みの場合、自分で制約を追加するmigirationを準備する必要があります(今のところ)。


Merge pull request #33408 from ycherniavskyi/fix_leaking_special_form_with_attributes_into_html_attributes

Action Viewの修正です。

collection_selecttime_zone_select等のselect tag helpersが生成するHTMLのattributesに、Rails内部で使用するskip_default_idsallow_method_names_outside_objectの情報が含まれてしまっていたのを、含まないよう修正しています。


Merge pull request #24131 from brchristian/limit_and_primary_key

activerecord/lib/active_record/relation/finder_methods.rbの修正です。

limit()が指定されている場合に、primary keyでのorderを行わないよう修正しています。

firstlastで挙動を合わせる為。

# before
User.limit(1).first
#=> SELECT  "users".* FROM "users" ORDER BY "users"."id" ASC LIMIT ?  [["LIMIT", 1]]

User.limit(1).last
#=> SELECT  "users".* FROM "users" LIMIT ?  [["LIMIT", 1]]


# after
User.limit(1).first
# => SELECT  "users".* FROM "users" LIMIT ?  [["LIMIT", 1]]

User.limit(1).last
#=> SELECT  "users".* FROM "users" LIMIT ?  [["LIMIT", 1]]

Clarify example of the test ActionController::HttpAuthentication::Token [ci skip]

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

ActionController::HttpAuthentication::Token moduleのdoc内の、ActionController::HttpAuthentication::Tokenをテストで使用するexampleコードで、headerの指定方法に誤りがあったのを修正しています。