なるようになるブログ

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

rails commit log流し読み(2015/02/04)

2015/02/04分のコミットです。

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

activerecord/CHANGELOG.md

railties/CHANGELOG.md


Removed magic comments # encoding: utf-8 , since its default from ruby 2.0 onwards.

各テストファイルからファイルのエンコーディングようマジックコメント(encoding: utf-8)を削除しています。


[ci skip]

rails guideのDebugging Rails Applicationsの修正です。

Inspecting Variablesの項のbyebugの使い方に説明している箇所のグラマーを修正しています。


Fix link [ci skip]

rails guideのWorking with JavaScript in Railsの修正です。

PushStateのMDNのリンクをhttps://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history#The_pushState()_methodに修正しています。


RouteSet should not be listed in the public API [ci skip]

actionpack/lib/action_dispatch/routing/route_set.rbの修正です。

private APIにするのに、:nodoc:を使用していたのを、:stopdoc: / :startdoc:を使用するよう修正しています。まとめてprivate APIにする為ですかねえ。


Correct errors in counter cache updating

activerecord/lib/active_record/associations/has_many_association.rbactiverecord/lib/active_record/associations/has_many_through_association.rbの修正です。

counter cacheを使用している、かつ、独自のcache用のカラムに独自のカラムを使用していた場合に、 counter cacheが2回更新されてしまう、またはまったく更新されない、というバグがあったのを修正しています。

counter_cacheにシンボルで値を指定していた場合に、Stringへの変換が漏れていて、更新処理が行われていなかったようです。


rm Column#cast_type

ActiveRecordの修正です。

Column#cast_type削除の為の対応を行っています。

Columnから取得したtypeは使用しないため、Columnからの関連処理の削除、及びtype情報保持用の新規クラス(SqlTypeMetadata)を作成しています。


Don't remove all line endings from routes.rb

railties/lib/rails/generators/actions.rbの修正です。

routes.rbに一つだけresourcesが定義されている場合に、そのresourcesをdestroyすると、routes.rbが構文的におかしくなってしまうバグがあったのを修正しています。

Rails.application.routes.draw do
  resources :foos
end

この状態で、 rails destroy scaffold fooを実行すると

Rails.application.routes.draw doend

こうなってしまう。

改行コードを余計に削除してしまわないよう修正しています。


Fix typo in Creating and Customizing Rails Generators & Templates guides

rails guideのCreating and Customizing Rails Generators & Templatesの修正です。

Customizing Your Workflow by Changing Generators Templatesの項で、escaped ERB tagのexampleにタイポ("=" -> "%")がある、という事で修正しています。

が、実際はタイポではなく、エスケープの為に"%"が使用されており、正しい記述の為、直ぐrevertされています。


revert 539d929b7b32302afe548e4cb06b5f4dd56e9942 [ci skip]

直前のコミットをrevertしています。