なるようになるブログ

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

rails commit log流し読み(2015/08/15)

2015/08/15分のコミットです。

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


Merge pull request #20647 from twalpole/method_source_dependency

activesupport/activesupport.gemspecの修正です。

Testing::CompositeFilterクラスで使用しているmethod_sourceをgemspecのadd_dependencyに追加しています。


pull up path normalization.

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

Mapperクラスのコンストラクタで行っていたpathのnormalization処理を、クラスメソッドに切り出して、Mappingクラスのインスタンス生成処理より先に行うよう修正しています。


stop adding path_info to the conditions hash

ActionPackの修正です。

conditions hashから不要なpath_infoを削除しています。


extract ast finding to a method

actionpack/test/dispatch/mapper_test.rbの修正です。

conditions hashから直接astを取得していたのを、ast取得用メソッドを切り出して、それを使用するよう修正しています。


implement the asts method in terms of paths / patterns

actionpack/test/dispatch/mapper_test.rbの修正です。

テスト用のFakeSetクラスに、ast追加用のメソッド及び保持用の変数を追加しています。


implement requirements in terms of routes

actionpack/test/dispatch/mapper_test.rbの修正です。

pathのrequirementsを取得する為のメソッドFakeSetクラスに実装しています。


remove hard coded regular expression

actionpack/lib/action_dispatch/journey/route.rbactionpack/lib/action_dispatch/journey/router.rbの修正です。

Router#match_head_routesメソッド内で直接行っていたverbのマッチング処理を、別メソッドに切り出しています。


use predicate methods instead of hard coding verb strings

ActionPackの修正です。

request methodがHEADがどうかをチェックするのに、"HEAD"文字列と値が一致するか比較処理を行っていたのを、head?メソッドを使用するよう修正しています。


pull up path parsing

ActionPackの修正です。

Mapperクラスのコンストラクタで行っていたastの取得処理を、クラスメソッドに切り出して、Mappingクラスのインスタンス生成処理より先に行うよう修正しています。


pass the path ast down

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

add_routeメソッドにastを渡す際、conditions hashに内に設定していて渡していたのを、astを渡すようの引数をadd_routeメソッドに追加して、そちら経由で渡すよう修正しています。

現状、conditions hashにastを追加する必要は無く、後で削除する必要もある為、そもそも渡さないようにしたとの事です。


extract method on wildcard path parameter handling

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

path parameterにワイルドーカードを指定された場合の処理を、add_wildcard_optionsメソッドに切り出しています。


rm path_params method

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

不要なpath_paramsメソッドを削除しています。

メソッドでは、astからJourney::Nodes::Symbolを検索し一致した値をto_symに変換したmapしていただけで、わざわざメソッドに切り出す程ではない、という事で削除されたようです。


deprecate passing a string for both the beginning path and :path option

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

routesにpathオプションを指定するのがdeprecateになりました。

pathオプションってまだ使用出来たんですねえ。


extract method on determining :to from the path

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

process_pathメソッド内で行っていた、pathからのtoの取得処理を、別メソッド(get_to_from_path)に切り出しています。


explicitly return nil from get_to_from_path

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

get_to_from_pathメソッドtoが取得出来なかった場合に、明示的にnilを返すよう修正しています。

初期化チェックを減らせるようにするために、明示的に返すようにしたようです。


remove process_path

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

toの初期化処理を外だしにした事により不要になったprocess_pathメソッドを削除しています。


Small fixes [ci skip]

rails guideのA Guide to Testing Rails Applicationsの修正です。

タイポ、グラマーの修正等をまとめて行っています。


pass the mapping object to build_route

ActionPackの修正です。

RouteSet#add_routeメソッドに、conditions hashの代わりに、Mappingクラスのオブジェクトを渡すよう修正しています。

add_routeの中でconditions hashを直接操作する事は無くなり、また、Mappingクラスのオブジェクトの方が値が整形済みで、必要な値の取得がしやすいため、修正したようです。


pass pass the mapping object down the add_route stack https://github.com/rails/rails/commit/6c48d9392fe964640fe5721fcd27bb170613cc27

ActionPackの修正です。

Routes#add_routeメソッドでmappingオブジェクトを渡せるようにする為のリファクタリングを行っており、検証用に一時的にRoutes#add_route2メソッドを追加しています。


rm add_route2

ActionPackの修正です。

先のコミットで一時的に作成した、Routes#add_route2メソッドを削除しています。


only keep one hash of named routes

ActionPackの修正です。

Routesクラスから、named_routes変数を削除しています。Routesクラスでは、named_routesとは別にouter router objectを保持しており、そちらからnamed routesも取得出来るので、別途変数を保持せず、outer router object経由で値を取得するよう修正しています。


Convert Releasing Rails guide to Markdown

Releasing Rails Guideのファイルのフォーマットを、rdocからMarkdownに変更しています。


use average_scheduled_poll_interval option instead of deprecated poll_interval

activejob/test/support/integration/adapters/sidekiq.rbの修正です。

sidekiq adapterのテストで、deprecatedになったpoll_intervalオプションの代わりに、average_scheduled_poll_intervalを使用するよう修正しています。