なるようになるブログ

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

rails commit log流し読み(2025/03/12)

2025/03/12分のコミットです。

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

railties/CHANGELOG.md

activerecord/CHANGELOG.md


Make importmap changes invalidate HTML etags by default (#54021)

railties/lib/rails/generators/app_base.rbrailties/lib/rails/generators/rails/app/templates/app/controllers/application_controller.rb.ttの修正です。

rails newで新規にimportmapを使用するアプリケーションを生成した場合、application_controller.rbにimportmapを変更した場合etagを無効にするようの指定(stale_when_importmap_changes)を含むよう修正しています。

参考:Encapsulate stale_when_importmap_changes method


Generate mailer files in auth generator only if ActionMailer is used

railtiesの修正です。

authentication generatorで、Action Mailerを使用していない場合、mailer用のファイルを生成しないよう修正しています。


Revert "Modify the Test Runner to allow running test at root:"

rootディレクトリにあるファイルをtest runnerで指定出来るよう対応した、Modify the Test Runner to allow running test at root:をRevertしています。 bin/rails test test:systemを指定してのテストの実行出来なくなってしまったため。


fix: sqlite3 adapter quotes Infinity and NaN

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

SQLite3 adapterでfloatなどの型のカラムに、InfinityやNaNを指定した場合に、insert処理がエラーになってしまうバグがあったのを修正しています。


Fix AuthenticationGeneratorTest

railties/test/generators/authentication_generator_test.rbの修正です。

authentication generatorのテストのテストの後処理で、テストで変更した定数を正しく戻せてなかったのを修正しています。


Merge pull request #54679 from issyl0/activerecord-implicit_order_column-should-not-always-add-pk-to-order-clause

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

カラムのソートをする際、implicit_order_column + primary key及びconstraintで実行されていたのを、primary key、constraintの追加無しで、implicit_order_columnのみでのソートを出来るよう修正しています。implicit_order_columnの末尾にnilを指定した場合(e.g. Topic.implicit_order_column = ["author_name", nil])、この挙動になるようになっています。


Merge pull request #54734 from yahonda/bump_bundler

.devcontainer/boot.shの修正です。

Dev Container内でbundlerを最新バージョンに更新するよう修正しています。bundlerのwarningが出ないようにするため。


AbstractAdapter#attempt_configure_connection: handle Timeout.timeout

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

AbstractAdapter#attempt_configure_connectionExceptionをrescueするよう修正しています。 configure_connectionTimeout.timeoutでfailした場合に、Exceptionを継承したTimeout::ExitErrorがthrowされるので、それをcatchしてdisconnect処理を実行出来るようにする為。


Fix typo in Action Controller Advanced Topics guide

rails guideのAction Controller Advanced Topicsの修正です。

Controlling Allowed Browser Versionsセクションにあるexampleコード内のタイポを修正しています。


Update json gem

Gemfile.lockの修正です。

json gemを最新バージョンに更新しています。