aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/sprockets/assets.rake
diff options
context:
space:
mode:
authorGuillermo Iguaran <guilleiguaran@gmail.com>2011-09-20 02:12:29 -0500
committerGuillermo Iguaran <guilleiguaran@gmail.com>2011-09-20 22:01:09 -0500
commit857d20efdab98cf56b777e034e1f150187c5fe9a (patch)
tree253036942d75a6d912d511472710b3e4412d422a /actionpack/lib/sprockets/assets.rake
parent7dbf6960c090c67073f6c68f32e418b26f9a93ef (diff)
downloadrails-857d20efdab98cf56b777e034e1f150187c5fe9a.tar.gz
rails-857d20efdab98cf56b777e034e1f150187c5fe9a.tar.bz2
rails-857d20efdab98cf56b777e034e1f150187c5fe9a.zip
Move precompile task to Sprockets::StaticCompiler
Diffstat (limited to 'actionpack/lib/sprockets/assets.rake')
-rw-r--r--actionpack/lib/sprockets/assets.rake24
1 files changed, 2 insertions, 22 deletions
diff --git a/actionpack/lib/sprockets/assets.rake b/actionpack/lib/sprockets/assets.rake
index 81223b7ead..e38ac6b489 100644
--- a/actionpack/lib/sprockets/assets.rake
+++ b/actionpack/lib/sprockets/assets.rake
@@ -20,30 +20,10 @@ namespace :assets do
config = Rails.application.config
env = Rails.application.assets
target = Pathname.new(File.join(Rails.public_path, config.assets.prefix))
- manifest = {}
manifest_path = config.assets.manifest || target
- config.assets.precompile.each do |path|
- env.each_logical_path do |logical_path|
- if path.is_a?(Regexp)
- next unless path.match(logical_path)
- elsif path.is_a?(Proc)
- next unless path.call(logical_path)
- else
- next unless File.fnmatch(path.to_s, logical_path)
- end
-
- if asset = env.find_asset(logical_path)
- asset_path = config.assets.digest ? asset.digest_path : logical_path
- manifest[logical_path] = asset_path
- filename = target.join(asset_path)
-
- mkdir_p filename.dirname
- asset.write_to(filename)
- asset.write_to("#{filename}.gz") if filename.to_s =~ /\.(css|js)$/
- end
- end
- end
+ static_compiler = Sprockets::StaticCompiler.new(env, target, :digest => config.assets.digest)
+ manifest = static_compiler.precompile(config.assets.precompile)
File.open("#{manifest_path}/manifest.yml", 'wb') do |f|
YAML.dump(manifest, f)