なるようになるブログ

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

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

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

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

activerecord/CHANGELOG.md


Merge pull request #45684 from adrianna-chang-shopify/ac-build-change-column-definition

Active Recordの修正です。

ChangeColumnDefinition objectの生成処理をbuild_change_column_definitionメソッドの切り出しています。


Merge pull request #45685 from adrianna-chang-shopify/ac-build-create-join-table-definition

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

join table用のTableDefinition objectの生成処理をbuild_create_join_table_definitionメソッドに切り出しています。


Avoid dynamic constant get on SET.symbols

actionview/lib/action_view/template/types.rbの修正です。

SET.symbolsのcontantを動的に取得していたのを、delegate定義時に値を取得し、取得済みの値を利用するよう修正しています。動的に処理を行うのは少し遅い、yjitが現在はgetconstantを実装しておらず動的に処理を行うとyjitの恩恵を受けれない、等の理由により。


Merge pull request #44576 from rails/defer-db-verify

Active Recordの修正です。

request処理の途中でDBのconnectionが壊れた場合、安全と見なされる場合(実行されるSQLが冪等である、トランザクション中ではない、等)、自動でDBへの再接続及びSQLの再実行を行うよう修正しています。デフォルトで再接続が行われるようになっており、無効化したい場合はconnection_retriesに0を指定する必要があります。


Merge pull request #44591 from rails/defer-db-connect

Active Recordの修正です。

実行されるSQLが冪等なSQLな場合、connection-validation query(SELECT 1)を実行せずに直接対象のSQLを実行するよう修正、及び、ActiveRecord database adapterを構築する際にraw connectionの指定が必須だったのを、config hashだけを指定の構築が出来るよう修正しています。


Add changelog entries for #44576 and #44591

activerecord/CHANGELOG.mdの修正です。

先のDefer verification of database connectionsSimplify adapter construction; defer connect until first useの対応についてのエントリーをCHANGELOGに追加しています。


Merge pull request #45688 from jonathanhefner/session-cookies-default-same_site

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

session cookiesへのSameSite attributeへのデフォルト値の設定が正しく行われないバグがあったのを修正しています。


Merge pull request #45689 from jonathanhefner/encrypted-config-preserve-invalid-yaml

activesupport/lib/active_support/encrypted_configuration.rbの修正です。

encrypted config内のデータがYAMLとして不正なデータの場合、その旨warningメッセージを表示するよう修正しています。


Document where custom autoloading inflections should go

rails guideのAutoloading and Reloading Constantsの修正です。

autoloaderのinflectionをカスタマイズをしたい場合、どのファイルで定義を行うべきかについて説明したWhere Should Inflection Customization Go?セクションを追加しています。