なるようになるブログ

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

rails commit log流し読み(2016/09/27)

2016/09/27分のコミットです。

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


Merge pull request #26414 from rails/rails-commands

独自処理でそれぞれ実装していたrails、及びrails engineの各コマンド(server, console, generate等)を、thorを継承したコマンド用のベースクラスを作成し、それぞれのコマンド毎にベースクラスを継承したクラスを作成し処理を定義するよう修正しています。

コマンド毎にクラスが分かれて(serverコマンドの場合ServerCommandクラスがある)、大分見通しよくなりました。


Fix doc format for RecordFetchWarning [ci skip]

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

ActiveRecord::Relation::RecordFetchWarning#exec_queriesメソッドのdocでバッククォート("`")を使用していたのを+を使用するよう修正、及び、ActiveRecord::Batchesのdocへのリンクが正しく設定出来ていなかったのを修正しています。


fix typo in DateAndTime::Calculations#all_week doc [ci skip]

activesupport/lib/active_support/core_ext/date_and_time/calculations.rbのdocの修正です。

DateAndTime::Calculations#all_weekメソッドのdocに、start_day変数のデフォルトはDate.week_startである旨説明が記載されていたのですが、実際はDate.beginning_of_weekだった為、その旨修正しています。


Do not leak the Errors default proc when calling to_hash or as_json

activemodel/lib/active_model/errors.rbの修正です。

ActiveModel::Errors#to_hash#as_jsonメソッドでrails内部で設定しているdefault_proc(https://github.com/rails/rails/blob/master/activemodel/lib/active_model/errors.rb#L537)を設定した状態のHashを返してしまっていたのを、default_procの情報は含まないよう修正しています。


Merge pull request #26573 from kirs/action-controller-as-format

actionpack/lib/action_controller/test_case.rbの修正です。

ActionController::TestCaseで、http request用メソッドにasオプションを指定した場合に、指定した値をrequest formatにも反映するよう修正しています。

post :render_body, params: { bool_value: true, str_value: "string", num_value: 2 }, as: :json
@request.format #=> json

Merge pull request #26637 from y-yagi/prevent_plugin_test_run_twice

railties/lib/rails/generators/rails/plugin/templates/bin/test.ttの修正です。

テストを実行するのにMinitest.runを直接呼んでいたのを、active_support/testing/autorunを使用するよう修正しています。

Revise setting of run_with_rails_extension.の影響で、active_support/testing/autorunをrequireすると必ずMinitest.autorunが呼ばれるようになってしまい、Minitest.runを直接呼ぶと、Minitest.runが2回実行されてしまう(テストが2回実行されてしまう)為、他の処理と合わせて、active_support/testing/autorunを経由してテストを実行するよう修正しています。