2014/08/01分のコミットです。
CHANGELOGへの追加はありませんでした。
Refactor join_keys to remove complex conditionals
activerecord/lib/active_record/associations/join_dependency/join_association.rb
、
activerecord/lib/active_record/reflection.rb
の修正です。
join_keys処理のリファクタリングです。
部分部分をメソッドに切り出してリファクタリングを行っています。
Push options check up so we can simplify internal methods
actionpack/lib/action_dispatch/http/url.rb
の修正です。
メソッドの中で行っていた引数のチェック処理を、メソッドの呼び出し元で行うよう修正しています。
actionpack/lib/action_dispatch/http/url.rb
の修正です。
三項演算子を使用していた箇所をunlessを使用するよう修正しています。
Rename variable to better show its intent
actionpack/lib/action_dispatch/http/url.rb
の修正です。
変数名をresult
からpath
に修正しています。より適切な名前にリファクタリング。
Only concatenate path if it was given rather than converting blindly
actionpack/lib/action_dispatch/http/url.rb
の修正です。
変換処理の前に、値の存在チェックを行うよう修正しています。
- path << options[:path].to_s + path << options[:path] if options.key?(:path)
Do not reassign variable when mutation is happening
actionpack/lib/action_dispatch/http/url.rb
の修正です。
不要な変数への値の設定処理を削除しています。
Realign assignments :scissors:
actionpack/lib/action_dispatch/http/url.rb
の修正です。
不要スペースの削除。
Add ActiveRecord::Tasks::DatabaseTasks.migrate
activerecord/lib/active_record/tasks/database_tasks.rb
の修正です。
ActiveRecord::Tasks::DatabaseTasks.migrate
taskを追加しています。
activerecord/lib/active_record/railties/databases.rake
で定義されていた処理をメソッドに切り出した形です。テストはこの方がしやすそう。
Clarify how the ConnectionHandler works
activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
のdocの修正です。
connection poolについての説明を修正しています。サンプルも付いて大分分り易くなっています。
doc抜粋。
class Book < ActiveRecord::Base establish_connection "library_db" end class ScaryBook < Book end class GoodBook < Book end # # And a database.yml that looked like this: development: database: my_application host: localhost library_db: database: library host: some.library.org
do a hash lookup for collision detection
actionpack/lib/action_dispatch/routing/mapper.rb
の修正です。
routes
の検索処理をメソッドに切り出しています。
invert check so we fail faster
actionpack/lib/action_dispatch/routing/mapper.rb
の修正です。
candidate
の値のチェック処理の順番を逆にしています。
- candidate unless @set.named_routes.key?(candidate) || candidate !~ /\A[_a-z]/i + candidate unless candidate !~ /\A[_a-z]/i || @set.named_routes.key?(candidate)
失敗するのは早いほうが良い、という事なので、チェックにひっかかりそうな方から先に行うようにしたようです。
Remove being/number methods from transaction class
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
の修正です。
Transaction
クラスからbegin
、number
メソッドを削除しています。Transaction numberについては、呼び出し元のTransactionManager
クラスで設定するように修正しています。
Remove parent on Transaction object
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
の修正です。
Transaction
クラスからparent
を削除しています。元々number
メソッドで使用していたのですが、number
メソッドの削除に伴い、不要になったようです。
Make ClosedTransaction a null object
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
の修正です。
ClosedTransaction
クラス生成時に引数に@connection
を渡していたのを、引数無しにしています。元々@connection
は使用してなかった模様。
Move TransactionManager to bottom of class
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
の修正です。
TransactionManager
クラスをファイルの最下部に移動しています。
Replace ClosedTransaction with NullTransaction
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
の修正です。
ClosedTransaction
をNullTransaction
に名前を変更しています。
use get
instead of accessing the named routes internals
actionpack/lib/action_dispatch/routing/mapper.rb
の修正です。
named_routes
から値を取得するのに、get
メソッドを使用するよう修正しています。
activerecord/lib/active_record/type/serialized.rb
の修正です。
is_default_value?
メソッドをdefault_value?
メソッドにリネームしています。
Use available method rather than macro name checking
activerecord/lib/active_record/associations/through_association.rb
の修正です。
macroのチェック処理にbelongs_to?
メソッドを使用するよう修正しています。