なるようになるブログ

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

rails commit log流し読み(2019/03/22)

2019/03/22分のコミットです。

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

activerecord/CHANGELOG.md


Prefer render template: in tests

Action Viewの出力です。

templateのrenderをしたいだけのテストでfileオプションを使用していたのを、templateオプションを使用するよう修正しています。templateをrenderしたい場合、templateオプションの方が適切な為。


Fix server restart test on Puma 3.12.1

railties/test/application/server_test.rbの修正です。

rails serverのrestartのテストがPuma 3.12.1で失敗していたのを修正しています。

Puma 3.12.1でデフォルトのhostを正しく扱えるようになったのですが、その影響でrestart時に表示されるログの内容が変わってしまった為。

参考:Rack handler should use provided default host


Fix release template

tasks/release_announcement_draft.erbの修正です。

release announceに適切に改行が含まれるよう修正しています。


Fix announce script

tasks/release_announcement_draft.erbの修正です。

引き続きrelease announceに適切に改行が含まれるよう修正しています。


Merge pull request #35617 from mattyoho/add-annotation-support-to-relations

Active Recordの修正です。

queryにSQLコメントを追加する為の、ActiveRecord::Relation#annotateメソッドを追加しています。

Post.where(id: 123).annotate("this is a comment").to_sql
# SELECT "posts".* FROM "posts" WHERE "posts"."id" = 123 /* this is a comment */

引数にはArrayを指定する事が出来、Arrayを指定した場合はそれぞれ別のコメントとして出力されます。

User.annotate("selecting", "user", "names").select(:name)
# SELECT "users"."name" FROM "users" /* selecting */ /* user */ /* names */ LIMIT ?  [["LIMIT", 11]]