2020/09/25分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Merge pull request #40280 from rails/no-rg-dep
activesupport/lib/active_support/notifications/instrumenter.rbの修正です。
Process::CLOCK_THREAD_CPUTIME_IDを使えるかどうかをチェックするのにplatformの値をチェックしていたのを、Process.clock_gettime(Process::CLOCK_THREAD_CPUTIME_ID)を呼び出してチェックするよう修正しています。
現在CLOCK_THREAD_CPUTIME_IDをサポートしていないplatformでも、今後使用出来る可能性がある為。
Merge pull request #39661 from hahmed/railties/faster-app-generator-test-for-load-defaults
railties/test/application/configuration_test.rb、
railties/test/generators/app_generator_test.rbの修正です。
load_defaultのテストをするのにrailsのコマンドを実行してチェックしていたのを、単純にconfigの値を見るよう修正しています。
Destroy associations in a background job.
Active Recordの修正です。
associationの削除をbackground job(Active Jobを使用)で行えるよう対応しています。background jobでassociationを削除したい場合、dependentオプションにdestroy_asyncを指定すればOKです。
class Account < ActiveRecord::Base belongs_to :supplier, dependent: :destroy_async end
削除用のjobはActiveRecord::DestroyAssociationAsyncJobというこの処理用に作成された新規のjob classが使われてるようになっています。また、queueはデフォルトで:active_record_destroyになっています。これらの値は、それぞれ、config.active_record.destroy_association_async_job と config.active_record.queues.destroy で変更可能になっています。
Merge pull request #39254 from gmcgibbon/through_cast_check_attribute_override
activerecord/lib/active_record/reflection.rbの修正です。
primary keyにcustom typeを使用している場合に、has_many through associationでのassociationの参照が正しく行えないバグがあったのを修正しています。
Don't make rexml an dependency of activesupport
Active Supportの修正です。
Active Supportのdependencyにrexmlを追加するのをやめて、rexmlロード時にロード出来なかったらアプリケーションのGemfieにrexmlを追加する旨メッセージを表示するよう修正しています。rexmlはActive Supportの一部機能でしか使われていない為、ユーザがrexmlを使用するかどうかを選択出来るようにする為。
Improve error when EncryptedFile key length wrong
activesupport/lib/active_support/encrypted_file.rbの修正です。
ActiveSupport::EncryptedFileでkeyの長さが誤っていた場合に、それがわかるエラーメッセージを表示するよう修正しています。
activesupport/lib/active_support/xml_mini/rexml.rbの修正です。
rubocopの設定に違反している箇所があったのを修正しています