なるようになるブログ

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

rails commit log流し読み(2022/07/06)

2022/07/06分のコミットです。

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

actionpack/CHANGELOG.md

activerecord/CHANGELOG.md


Merge pull request #45501 from ghiculescu/same-site-false

actionpack/lib/action_dispatch/middleware/cookies.rbの修正です。

cookieSameSite attributeを設定出来るよう修正しています。SameSiteを指定したくない場合、cookieの値を設定する場合にsame_site: nilを指定すればOKです。

cookies[:foo] = { value: "bar", same_site: nil }

Remove owner_name from db_config

activerecord/lib/active_record/database_configurations/database_config.rbの修正です。

使用していないowner_name attributeを削除しています。


Merge pull request #45461 from fatkodima/sqlite3-index-trailing-comment

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

SQLite3でtrailing comment(e.g. CREATE INDEX expression on ex (number % 10) /* comment */)が指定されている場合、expression indexesのパース時にエラーになってしまうバグがあったのを修正しています。


Optimize Active Record batching for whole table iterations

Active Recordの修正です。

Active Recordのbatch処理で生成されるSQLを、table全体に対する処理の場合はrange(id >= num1 AND id < num2)にするよう修正しています。この挙動はuse_rangesオプションで変更出来るようになっており、table全体に対する処理でも以前同様にIN (..ids..)にしたい場合はuse_ranges: falseを、conditionを指定する場合にもrangeにしたい場合はuse_ranges: trueを指定すれば良いようになっています。


Merge pull request #45534 from etiennebarrie/fix-actionpack-test-with-rack-test-2

Action Packのテストの修正です。

rack-test 2系でテストが通るようテストコードを修正しています。


Fewer object allocations in Encryption::Properties

activerecord/lib/active_record/encryption/properties.rbの修正です。

Encryption::Propertiesで、delegate_missing_toが呼ばれるケースを減らす、Enumerable#findを使うのをやめる、等のオブジェクト生成数を減ら為のリファクタリングをしています。


Fix flaky foreign key test

activerecord/test/cases/migration/foreign_key_test.rbの修正です。

configにforeign_keys: falseを指定した場合のテストが不安定になっていたのを修正しています。