Upgraded to Rails 3.1.rc6
EDIT: I confirm it’s fixed in 3.1.0-stable, and this patch is not compatible with the stable version.
This night I upgraded my main app of the moment to Rails 3.1.rc6. I followed this awesome post and everything went fine. I had to fix one or two tests, and now I have to think about what goes to the asset pipeline or not, but everything works fine!
One little gotcha with this version though, Sprockets outputs a lot (and I mean a LOT) of deprecation warnings because of this: https://github.com/rails/rails/issues/2598
The interesting part of this patch can easily be backported in an initializer until 3.1-stable is released. Let’s put it in
config/initializers/sprockets_warnings_silencer.rb :
require 'sprockets/helpers/rails_helper'
module Helpers
module RailsHelper
class AssetPaths
def digest_for(logical_path)
if asset = asset_environment[logical_path]
return asset.digest_path
end
logical_path
end
def rewrite_asset_path(source, dir)
if source[0] == ?/
source
else
source = digest_for(source) if performing_caching?
source = File.join(dir, source)
source = "/#{url}" unless source =~ /^\//
source
end
end
end
end
end
Now let’s explore all the awesome features of Rails 3.1 ! (and first split my bloated CSS and Javascript files)