2016/12/02分のコミットです。
CHANGELOGへの追加はありませんでした。
Yarn: Move node_modules, package.json, and yarn.lock file to vendor (#27245)
railtiesの修正です。
rails newに--yarnオプションを指定した際に生成するpackage.jsonをvendor配下に生成するよう修正しています。
また、bin配下にyarnコマンドを実行するためのbinstubを追加しています。追加された左記のbinstubはvendorディレクトリ配下でyarnコマンドを実行するようになっており、node_modulesもvendorディレクトリ配下で管理するようにしています。
Stop using the pg Float encoder
activerecord/lib/active_record/connection_adapters/postgresql_adapter.rbの修正です。
pg gemのFloat encoder(PG::TextEncoder::Float)を使用しないよう修正しています。
map[Integer] = PG::TextEncoder::Integer.new
map[TrueClass] = PG::TextEncoder::Boolean.new
map[FalseClass] = PG::TextEncoder::Boolean.new
- map[Float] = PG::TextEncoder::Float.new
@connection.type_map_for_queries = map
pg gemのtype mapにFloatを指定してしまうと、RubyでFloatとして扱われるデータが全てfloat4又はfloat8として扱われてしまい、RubyでFloatとして扱われているがPostgreでは左記以外の型として扱っているデータ(e.g. money型)を保存する際にエラーになってしまう為、Rails 4までと同様に、Rails内部で保持しているencode処理を使用するよう修正しています。
Exclude singleton classes from subclasses and descendants
activesupport/lib/active_support/core_ext/class/subclasses.rbの修正です。
Class.descendants、Class.subclassesメソッドの戻り値にSingleton classも含まれてしまっていたのを、含まないよう修正しています。
Ruby 2.3からObjectSpace.each_objectの戻り値にSingleton classも含むようなり、その影響との事です。
参考:Bug #11360: Singleton class doesn't appear by ObjectSpace.each_object
use yarn binstub in bin/update
railties/lib/rails/generators/rails/app/templates/bin/update.ttの修正です。
bin/update scriptで先ほど追加されたbin/yarn scriptを使用するよう修正しています。