We upgraded a Rails 2 application to Rails 3.2 and Ruby 2.1, changed the mysql adapter from mysql
to mysql2
, but did not activitate the asset pipeline. Instead we used Sass the old-school way (stylesheets in public/sass/*.sass
) and relied on stylesheet_link_tag
to activate the Sass compiler.
Now all Sass-generated stylesheets inserted the following text into body:before
:
Encoding::CompatibilityError: incompatible character encodings: UTF-8 and ASCII-8BIT
I could get rid of this by removing all generated .css
files in public
and clearing the tmp/sass-cache
directory.
When this didn't help, try do add these following two lines above YourAppName::Application.initialize!
in your environment.rb
:
Encoding.default_external = Encoding::UTF_8
Encoding.default_internal = Encoding::UTF_8
Note that this error can also be caused by other things during an upgrade from Ruby 1.8.7 to something higher. See Google.
Posted by Henning Koch to makandra dev (2014-10-23 11:05)