なるようになるブログ

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

rails commit log流し読み(2023/08/03)

2023/08/03分のコミットです。

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

railties/CHANGELOG.md

activemodel/CHANGELOG.md

actionpack/CHANGELOG.md


Merge pull request #48847 from seanpdoyle/omit-webdrivers-from-gemfile-template

railties/lib/rails/generators/rails/app/templates/Gemfile.ttの修正です。

rails newで生成するGemfileから、Ruby 3以上の場合はwebdrivers gemを含まないよう修正しています。 Seleniumにdriverのインストールとインテグレーションを行う機能が入り、webdrivers gems無しでブラウザを使用出来るようになった為。Ruby 3未満だとその機能が入った最新のSeleniumが使用出来ない為、引き続きwebdrivers gemが必要になっています。

参考: Selenium Manager (Beta) | Selenium


Merge pull request #48871 from zzak/fix-am-error-full_message

activemodel/lib/active_model/error.rbactiverecord/lib/active_record/autosave_association.rbの修正です。

ActiveModel::Error.full_messageでメッセージを生成する際に使用するattributeから:baseを除去するよう修正しています。

Fix autosave associations with validations added on :base of the associated objectsでautosaveが有効になっているassociationのvalidationでエラーになった場合に、親associationからエラーメッセージを参照した場合に不要なbase keyが含まれてしまう事があったのを修正したのですが、この修正が違うリグレッションの原因になってしまった為、こちらの対応はReverし、ActiveModel::Error.full_messageの方を修正するようにしています。


Use already loaded relation when batching if possible

activerecord/lib/active_record/relation/batches.rbの修正です。

batch処理のメソッドで、load済みのrelationが使用出来る場合は、SQLを実行せずそのload済みのrelationを使用するよう修正しています。


Removed hard coded special case for sqlite3_mem

activerecord/test/support/connection.rbの修正です。

adapter nameとconnection nameが違う場合のチェック処理で、SQLite3の値をhard codeしていたのを、connection_namearunit_adapterの値が含まれているかチェックするよ修正しています。3rd partyのadapter(SQL Server Adapter)でテストが通るようにする為、との事です。


Save failure screenshot path in test metadata

actionpack/lib/action_dispatch/system_testing/test_helpers/screenshot_helper.rbの修正です。

ActionDispatch::SystemTesting::TestHelpers::ScreenshotHelperでテスト失敗時に取得するスクリーンショットのpathを、minitest 5.19で追加されたtest metadataに保持するよう修正しています。アプリ側でpathの取得をしやすくする為。


Fix typos in RequestForgeryProtection docs [ci-skip]

actionpack/lib/action_controller/metal/request_forgery_protection.rbのdocの修正です。

RequestForgeryProtectionのdocでクラス名をタイポしていたのを修正しています。


[skip ci] Added missing parathesis in guide

rails guideのAction Cable Overviewの修正です。

Rebroadcasting a Messageの項にあるexampleコードに、閉じ括弧が不足していたのを修正しています。