なるようになるブログ

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

rails commit log流し読み(2014/09/28)

2014/09/28分のコミットです。

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


Merge pull request #17077 from schneems/schneems/backtrace-string-allocations

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

Stringの生成処理をループの外で行うようにして、インスタンス生成処理を減らすよう改善しています。

+ EMPTY_STRING = ''.freeze
+ SLASH = '/'.freeze
+ DOT_SLASH = './'.freeze


- add_filter { |line| line.sub("#{Rails.root}/", '') }
- add_filter { |line| line.sub(RENDER_TEMPLATE_PATTERN, '') }
- add_filter { |line| line.sub('./', '/') } # for tests
+ @root = "#{Rails.root}/".freeze
+ add_filter { |line| line.sub(@root, EMPTY_STRING) }
+ add_filter { |line| line.sub(RENDER_TEMPLATE_PATTERN, EMPTY_STRING) }
+ add_filter { |line| line.sub(DOT_SLASH, SLASH) } # for tests