I would think this is a Ruby difference, but I’m using the same Ruby version 1.8.7. This is related to this post (to answer “why do you need this?”). This code works in 2.2.2
Loading development environment (Rails 2.2.2)
>> module ActionMailer
>> Utils.normalize_new_lines("blah")
>> end
but in 2.3.5 it fails
Loading development environment (Rails 2.3.5)
>> module ActionMailer
>> Utils.normalize_new_lines("blah")
>> end
NoMethodError: undefined method `normalize_new_lines' for ActionMailer::Utils:Module
from (irb):2
What’s new about 2.3.5 that this would fail? The method is there in 2.3.5, so this works
Loading development environment (Rails 2.3.5)
>> include ActionMailer
>> include Utils
>> normalize_new_lines("blah")
I realize this is probably an important Rails difference.
Looks like the code changed from version 2.2 to version 2.3.5
old:
new:
I guess you could restore the old behavior by calling
module_functionyourself:EDIT: Or better yet just include the module (per Simone)
>> include ActionMailer::Utils