なるようになるブログ

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

rails commit log流し読み(2016/03/23)

2016/03/23分のコミットです。

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


Fix typo for redirect_back

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

redirect_backメソッドのdocで、identicalindeticalにタイポしていたのを修正しています。


Fix WebSocket already open log message typo

actioncable/app/assets/javascripts/action_cable/connection.coffeeの修正です。

WebSocketが既にopen済みの場合に表示するログメッセージ内でAttemptedAttempedにタイポしていたのを修正しています。


Use || instead of or as preferred in rails code convention

railties/lib/rails/generators/rails/app/templates/bin/setuprailties/lib/rails/generators/rails/app/templates/bin/updateの修正です。

Railsがデフォルトで生成するsetupupdateスクリプト内で論理和演算子orを使用していたのを、Railsのコーディング規約に合わせて、||を使用するよう修正しています。


Set Rails as the first minitest initialized plugin.

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

Rails test runner用のminitest pluginを、最後に読み込むようになっていたのを、最初に読み込むよう修正しています。

-Minitest.extensions << 'rails'
+Minitest.extensions.unshift 'rails'

Railsのminitest pluginでは、色付き出力を行う為に、既存のreporterをclearするような処理を行っています。そのため、他のminitest pluginで独自reporterを設定していた場合、それがRailsのminitest pluginの初期化処理が呼ばれた時点で削除されてしまう場合がある、また、Railsが提供しているreporterをoffにしたい(独自のreporterをだけを使用したい場合等)場合に、最後に処理が行われてしまうと、他のpluginからでは対応が出来ませんでした。

そのため、minitestのpluginロード処理で、最初にRailsのpluginが呼ばれるように、他のpluginには影響が出ないよう対応を行っています。


Don't get ahead of ourselves.

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

reporterの呼び出し処理から、不要なselfを削除しています。


[ci skip] Improve comment minitest plugin initialization.

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

何故Rails test runner用のminitest pluginを最初に読み込むのか、説明を追加しています。


Remove reference to unmaintained plugin/gem

rails guideのRuby on Rails Security Guideの修正です。

Session Fixation - Countermeasuresの項で、RestfulAuthentication gemについて説明していたのですが、RestfulAuthentication gemはもうメンテされてないようなので削除して、代わりにDeviseについての説明を追加しています。


Add ActionCable require statement to plugin

railties/lib/rails/generators/rails/plugin/templates/rails/application.rbの修正です。

Rails plugin用のapplication.rbに、active_job/railtieaction_cable/engineのrequireを追加しています。

全てのコンポーネントを使用する場合は問題無かったのですが、一部コンポーネントを除外してplugin newした場合(ActiveRecordを使用しない等)に、Active Job及びAction Cableが読み込まれないようになってしまっていた為、requireを追加しています。