2023/06/27分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Merge pull request #47827 from shouichi/remove-class-cache
activerecord/lib/active_record/fixtures.rb
の修正です。
fixtureのclass cacheの仕組み(ActiveRecord::FixtureSet::ClassCache
)を削除しています。fixtureには使用するclassをファイルで定義出来るオプション(model_class
)があるのですが、先のcacheのせいでこのオプションが正しく動作していなかった為、オプションの方を優先しcacheを削除するようにしています。
Merge pull request #48507 from szymonlipka/fix-empty-string-range
activerecord/lib/active_record/connection_adapters/postgresql/oid/range.rb
の修正です。
PostgreSQLのrange typeに空文字を指定した場合に、empty rangeとして扱うよう修正しています。
activerecord/lib/active_record/railties/databases.rake
の修正です。
railties:install:migrations
に、他のDBを指定する為のDATABASE
オプションを追加しています。このオプションが指定された場合、そのDBのmigrationsを使用して処理を実行するようになっています。
Fix flaky tests without guaranteed sort
activerecord/test/cases/associations/has_many_associations_test.rb
、
activerecord/test/cases/associations/has_many_through_disable_joins_associations_test.rb
の修正です。
idなどのデータをDBから取得する際にsort
を指定するよう修正しています。結果が不定になるのを避ける為。
Added check for illegal HTTP header value in redirect_to
actionpack/lib/action_controller/metal/redirecting.rb
の修正です。
redirect_to
メソッドでredirect URLにHTTP headerとして不正な値(e.g. javascript:alert(document.domain)\b
)が指定されていた場合に、処理をブロックするよう修正しています。不正な文字列をそのままLocation headerに指定するとXSS出来てしまう可能性がある為。。CVE-2023-28362。
actionpack/lib/action_controller/metal/redirecting.rb
の修正です。
Rubocopの指定に違反している箇所があったのを修正しています。
Avoid creating match object when checking for illegal header value
actionpack/lib/action_controller/metal/redirecting.rb
の修正です。
redirect_to
に指定するheaderのチェック処理で、Regexp#match
を使用していたのをRegexp#match?
を使用するよう修正しています。
Fix indentation in ActionDispatch::Routing::RouteSet::Dispatcher
actionpack/lib/action_dispatch/routing/route_set.rb
の修正です。
ActionDispatch::Routing::RouteSet::Dispatcher
のインデントを修正しています。