なるようになるブログ

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

rails commit log流し読み(2016/02/06)

2016/02/06分のコミットです。

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


Missed a few spots in inline -> async switch

Active Jobの修正です。

Change the default adapter from inline to asyncで、Active Jobのデフォルトのadapterをinline adapterからasync adapterに変更したのですが、設定変更漏れ、及びdocの修正漏れがあったのを修正しています。


When generating a mailer, you must specify Mailer in the class name in

Action Mailerのdocの修正です。

mailerのgenerateをする際、クラス名にMailer suffixをつけるようexampleを修正しています。

-  #   $ rails generate mailer Notifier
+  #   $ rails generate mailer NotifierMailer

Mailerをつけないと誤ったクラス名が生成される為、となっているのですが、Rails 5では自動でMailersuffixが付与される為、Mailerをつける必要は無い為、後ほどrevertされています。


disable controller / view thread spawning in tests

Action Packの修正です。

ActionController::Liveで、テスト毎に新しいスレッドを生成しないよう修正しています。

元々は、request実行毎にスレッドを生成し、そのスレッド毎にdatabaseのconnectionを生成するようになっていました。

ただそれだと、メインスレッドでデータを含むトランザクションを開始し、別スレッドでそのデータを見ようとして競合状態になってしまっていたようで、それを避ける為、メインスレッドでのみDBにアクセスするように修正しています。と、いうような内容だと思うのですが、正直大分不安…。


No need to specify Ruby patch version on Travis CI

.travis.ymlの修正です。

rvmでRubyのバージョンを指定するとき、patchバージョンは指定しないよう修正しています。

-  - 2.2.4
-  - 2.3.0
+  - 2.2
+  - 2.3

travisで自動で最新のパッチバージョンを使用する為、との事なのですが、実際はそのとおり動作していないようで、後ほどrevertされています。


Revert "Dump indexes in create_table instead of add_index"

schemaをdumpする際、indexの情報をadd_indexではなく、TableDefinition#indexとして出力するよう修正した、Dump indexes in create_table instead of add_index · rails/rails@99801c6をrevertしています。

古い動作(add_indexを使用した方法)にhook処理を入れているgem(マテリアライズドビューにインデックスを設定するgem?)があり、この対応でそのgemの挙動を壊してしまう事になる為、それを避ける為revertしたようです。


Fix mixing line filters with Minitest's -n filter.

railties/lib/rails/test_unit/line_filtering.rbの修正です。

line filterとminitestのname filterを同時に使用した場合に正しく動作しないバグがあったのを修正しています。line filterとname filterを同時に使う事は、あまり無さそう気もしますが…。


add missing require

actionpack/lib/action_dispatch/http/response.rbの修正です。

不足していたaction_dispatch/http/cacheのrequireを追加しています。


Revert "When generating a mailer, you must specify Mailer in the class name in"

mailerのgenerateをする際クラス名にMailer suffixをつけるようexampleを修正した、When generating a mailer, you must specify Mailer in the class name inをrevertしています。理由は先に記載した通り。


Revert "No need to specify Ruby patch version on Travis CI"

rvmでRubyのバージョンを指定するときpatchバージョンは指定しないよう修正した、No need to specify Ruby patch version on Travis CIをrevertしています。理由は先に記載した通り。


Replace old Rails greeting references

README.mdrailties/RDOC_MAIN.rdocの修正です。

README内のwelcomeページで表示されるテキストの説明が、古いテキストのままになっていたのを、Merge pull request #23237 from gsamokovarov/new-welcome-page · rails/rails@f3c1897で更新された内容にテキストを修正しています。


Remove duplicated require 'arel'

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

重複してrequireしていたarelを削除しています。


MariaDB does not support JSON type

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

supports_json?メソッドでDBがMariaDBの場合falseを返すよう修正しています。

      def supports_json?
-        version >= '5.7.8'
+        !mariadb? && version >= '5.7.8'
       end

MariaDBではJSON型はサポートしておらず、MariaDBJSONのテストがコケてしまっていた為との事です。MariaDBJSON型サポートしていないんですねえ。