なるようになるブログ

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

rails commit log流し読み(2017/05/17)

2017/05/17分のコミットです。

CHANGELOGへの追加はありませんでした。


Fix association documentation

activerecord/lib/active_record/associations.rbのdocの修正です。

associationに関するexampleコードで、associationメソッドにブロックを渡した際のexampleコードに誤りがあった(渡されるオブジェクトがassociated class前提のコードになっていた。実際はassocationを定義しているclass)のを修正しています。


Merge pull request #29089 from yahonda/address_29021

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

loggerの実行時間の出力がintegerでもテストが通るよう修正しています。

-      assert_match(/#{REGEXP_BOLD}#{REGEXP_MAGENTA} \(0\.0ms\)#{REGEXP_CLEAR}/i, logger.debugs.last)
+      assert_match(/#{REGEXP_BOLD}#{REGEXP_MAGENTA} \(0(?:\.0)?ms\)#{REGEXP_CLEAR}/i, logger.debugs.last)

Ruby 2.5.0でInteger#round, Integer#floor, Integer#ceil, Integer#truncate などで引数で丸める桁数を指定した時に、Float に変換せずにそのままIntegerを返すようにする対応が入り、その影響との事です。

参考:ruby-trunk-changes r58583 - r58591 - PB memo


Merge pull request #29117 from yahonda/another_29021

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

先ほどの修正のからみで、そもそも実行時間に0ではなく、少数点を含む値(0.9)を渡すよう修正しています。


Remove unneeded association.respond_to?(:reset_scope)

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

不要なreset_scopeメソッドのチェックを削除しています。

-          association.reset_scope if association.respond_to?(:reset_scope)
+          association.reset_scope

現状、全てのassociationにreset_scopeが定義されている為。


CI against JRuby 9.1.9.0

.travis.ymlの修正です。

CIで使用するJRubyのバージョンを9.1.9.0に更新しています。