なるようになるブログ

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

rails commit log流し読み(2018/12/06)

2018/12/06分のコミットです。

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

activerecord/CHANGELOG.md

actioncable/CHANGELOG.md

activejob/CHANGELOG.md

actionview/CHANGELOG.md


Merge pull request #34591 from gmcgibbon/new_delivery_job

Action Mailerの修正です。

Deliver parameterized mail with DeliveryJobで、parameterized mailをdeliverするのにActionMailer::Parameterized::DeliveryJobを使用していたのを、ActionMailer::DeliveryJobを使用するよう修正したのですが、breaking changeだった(ActionMailer::Parameterized::DeliveryJobをばっさり削除していた)のでそれはやめて、新しくMailDeliveryJobクラスを追加しそちらを使用するよう修正、及び、DeliveryJobParameterized::DeliveryJobを使用した際にdeprecateメッセージを表示するよう修正しています。


Merge pull request #33992 from kirs/enqueue-return-false

activejob/lib/active_job/callbacks.rbactivejob/lib/active_job/enqueuing.rbの修正です。

ActiveJob::Enqueuing#enqueueがabortした際に、メソッドの戻り値がjob自身のインスタンスだったのをfalseを返すよう修正しています。enqueueに成功した場合は変わらずインスタンスを返すようになっています。

成功・失敗両方の場合にインスタンスを返されると、enqueueが実際に成功したのか失敗したのかがわからない為。

元の挙動通り、失敗した場合もインスタンスを返したい場合は、active_job.return_false_on_aborted_enqueuefalseを指定すればOKです。


Fix join table column quoting with SQLite.

activerecord/lib/active_record/connection_adapters/sqlite3/quoting.rbの修正です。

SQLite adapterでtable名に"."を含む場合のquote処理が不足していたのを修正しています。

joinしたテーブルのカラムをpluckするようなケース(e.g. User.includes(:company).pluck(:id, :'companies.id'))で"."が含まれるケースがある為。


Stop trying to reconnect on unauthorized cable connections

Action Cableの修正です。

authorize処理でエラーになった場合(server側でreject_unauthorized_connection呼ばれた場合)に、client側reconnect処理を呼ばないよう修正しています。


Improve deprecation message for enqueue returning false

Active Job、railtiesの修正です。

先のActiveJob::Enqueuing#enqueueの対応のフォローアップとして、deprecateメッセージの改善、テストの追加等を行っています。


Merge pull request #34573 from WoH/firefox-right-click-bug

Action Viewの修正です。

firefoxで、右クリックやスクロールホールクリックでもRails UJS click eventがtriggerされてしまっていたのを、primary mouse keys(event.buttonが0の場合)でのみtriggerするよう修正しています。