2021/02/11分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Merge pull request #41349 from eileencodes/add-primary_abstract_class-to-generator
Active Record、railtiesの修正です。
generatorで生成するApplicationRecordにprimary_abstract_classの宣言を追加しています。
PostgreSQL: handle timestamp with time zone columns correctly in schema.rb
Active Recordの修正です。
PostgreSQLでtimestamp with time zoneを使用しているカラムが、db:schema:dump`で正しいメソッド名でdumpされないバグがあったのを修正しています。
Merge pull request #41104 from f6p/skip-spring-when-locked-gems-empty
railties/lib/rails/generators/app_base.rbの修正です。
bundle installが実行されていない場合、webpacker:installを実行しないよう修正しています。必要なgemがインストールされていない場合、webpacker:installがエラーになる可能性がある為。
Merge pull request #41385 from dinahshi/preloader-grouped-by-scope
Active Recordの修正です。
Preloaderでassociationをロードする際のSQLを減らすようリファクタリングしています。
Merge pull request #40806 from eileencodes/make-migration-context-public
activerecord/lib/active_record/migration.rbの修正です。
migration contextをpublic APIにしています。幾つかのgemでmigration contextのAPIを使用しており、publicにしても良いのでは、という話になりpublicになっています。
Fix possible DoS vector in PostgreSQL money type
activerecord/lib/active_record/connection_adapters/postgresql/oid/money.rbの修正です。
PostgreSQLでmoney typeの値の検証を正規表現で行う際に、DoSを引き起こせてしまう脆弱性(悪意のある値が指定された場合に、検証処理で負荷掛ってしまう)があったのを修正しています。
Prevent open redirect when allowed host starts with a dot
actionpack/lib/action_dispatch/middleware/host_authorization.rbの修正です。
config.hostsにdotで始まるホスト名をしている場合に、オープンリダイレクト出来てしまう脆弱性があったのを修正しています。
Add missing CHANGELOG entry for #40351
activerecord/CHANGELOG.md、
activerecord/test/cases/calculations_test.rbの修正です。
averageの戻り値の型を変更した、Return BigDecimal OR Float from "average" operationsの対応についてCHANGELOGにエントリーを、及び、BigDecimalが変える場合のテストを追加しています。
Overwrite bin/yarn when running app:binstub:yarn
railties/lib/rails/generators/rails/app/app_generator.rbの修正です。
app:binstub:yarn実行時にbin/yarnが更新されるよう修正しています。bin/yarnの内容がRails 6.1で更新されており、更新された内容が反映されるようにする為。
Remove unnessary escape char in Regexp
actionpack/lib/action_dispatch/middleware/host_authorization.rbの修正です。
host authorizeの正規表現から不要なエスケープを削除しています。
activerecord/test/cases/calculations_test.rbの修正です。
Add missing CHANGELOG entry for #40351で追加したテストがSQLite3とPostgreSQLでエラーになってしまっていたので、削除しています。
A value acts like time object should respond to getutc and getlocal
activemodel/lib/active_model/type/helpers/time_value.rb、
activerecord/lib/active_record/connection_adapters/abstract/quoting.rbの修正です。
time valueに対してrespond_to?(:getutc)、及び、respond_to?(:getlocal)を行っていたのを、行わないよう修正しています。渡ってきている値はtime objectとしての振る舞いを保持している値の筈で、getutcもgetlocalも使える筈なので。