guard-rails-assets 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +1 -0
- data/guard-rails-assets.gemspec +1 -1
- data/lib/guard/rails-assets.rb +0 -0
- data/lib/guard/rails-assets/cli_runner.rb +0 -0
- data/lib/guard/rails-assets/rails_runner.rb +44 -11
- data/lib/guard/rails-assets/templates/Guardfile +0 -0
- data/lib/guard/version.rb +1 -1
- data/spec/guard/rails-assets/cli_runner_spec.rb +0 -0
- data/spec/guard/rails-assets/rails_runner_spec.rb +0 -0
- data/spec/guard/rails-assets_spec.rb +0 -0
- data/spec/spec_helper.rb +0 -0
- data/spec/support/shared_examples.rb +0 -0
- data/spec/support/stdout_helper.rb +0 -0
- metadata +19 -15
data/.gitignore
CHANGED
data/guard-rails-assets.gemspec
CHANGED
data/lib/guard/rails-assets.rb
CHANGED
File without changes
|
File without changes
|
@@ -2,6 +2,8 @@ require 'rake/dsl_definition'
|
|
2
2
|
module Guard
|
3
3
|
|
4
4
|
class RailsAssets::RailsRunner
|
5
|
+
include Rake::DSL
|
6
|
+
|
5
7
|
@@rails_booted = false # Only one rails app is allowed, so make it a class var
|
6
8
|
@@rails_env = nil
|
7
9
|
|
@@ -13,14 +15,6 @@ module Guard
|
|
13
15
|
# TODO: Hack due to Rails 3.1 issue: https://github.com/rails/rails/issues/2663#issuecomment-1990121
|
14
16
|
ENV["RAILS_GROUPS"] ||= "assets"
|
15
17
|
ENV["RAILS_ENV"] ||= @@rails_env
|
16
|
-
|
17
|
-
# TODO: Now another hack: Rails replaces Rails.application.assets with Rails.applciation.assets.index
|
18
|
-
# (this happens when config.action_controller.perform_caching is true)
|
19
|
-
# It caches all the assets, so that the Rake task can't be run multiple times
|
20
|
-
require 'sprockets/environment'
|
21
|
-
Sprockets::Environment.class_eval do
|
22
|
-
def index; self; end # instead of Index.new(self)
|
23
|
-
end
|
24
18
|
end
|
25
19
|
|
26
20
|
# Methods to run the asset pipeline
|
@@ -28,6 +22,8 @@ module Guard
|
|
28
22
|
def self.boot_rails
|
29
23
|
return if @@rails_booted
|
30
24
|
puts "Booting Rails for #{@@rails_env} environment."
|
25
|
+
require "fileutils"
|
26
|
+
|
31
27
|
apply_hacks
|
32
28
|
require 'rake'
|
33
29
|
require "#{Dir.pwd}/config/environment.rb"
|
@@ -39,6 +35,42 @@ module Guard
|
|
39
35
|
end
|
40
36
|
|
41
37
|
|
38
|
+
def clean
|
39
|
+
Rake::Task["tmp:cache:clear"].execute
|
40
|
+
# copy from the "assets:clean" Rake task
|
41
|
+
config = ::Rails.application.config
|
42
|
+
public_asset_path = File.join(Rails.public_path, config.assets.prefix)
|
43
|
+
rm_rf public_asset_path, :secure => true
|
44
|
+
end
|
45
|
+
|
46
|
+
def precompile
|
47
|
+
# copy from the "assets:precompile" Rake task
|
48
|
+
|
49
|
+
# Ensure that action view is loaded and the appropriate sprockets hooks get executed
|
50
|
+
ActionView::Base
|
51
|
+
|
52
|
+
config = ::Rails.application.config
|
53
|
+
config.assets.compile = true
|
54
|
+
|
55
|
+
env = ::Rails.application.assets
|
56
|
+
|
57
|
+
# Always compile files and avoid use of existing precompiled assets
|
58
|
+
config.assets.compile = true
|
59
|
+
config.assets.digests = {}
|
60
|
+
|
61
|
+
target = File.join(::Rails.public_path, config.assets.prefix)
|
62
|
+
static_compiler = Sprockets::StaticCompiler.new(env, target, :digest => config.assets.digest)
|
63
|
+
|
64
|
+
manifest = static_compiler.precompile(config.assets.precompile)
|
65
|
+
manifest_path = config.assets.manifest || target
|
66
|
+
FileUtils.mkdir_p(manifest_path)
|
67
|
+
|
68
|
+
File.open("#{manifest_path}/manifest.yml", 'wb') do |f|
|
69
|
+
YAML.dump(manifest, f)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
|
42
74
|
# Runs the asset pipeline compiler.
|
43
75
|
#
|
44
76
|
# @return [ Boolean ] Whether the compilation was successful or not
|
@@ -46,13 +78,14 @@ module Guard
|
|
46
78
|
self.class.boot_rails
|
47
79
|
return false unless @@rails_booted
|
48
80
|
begin
|
49
|
-
|
50
|
-
|
51
|
-
Rake::Task['assets:precompile'].execute
|
81
|
+
clean
|
82
|
+
precompile
|
52
83
|
true
|
53
84
|
rescue => e
|
54
85
|
puts "An error occurred compiling assets: #{e}"
|
55
86
|
false
|
87
|
+
ensure
|
88
|
+
::Rails.application.assets.instance_eval { expire_index! }
|
56
89
|
end
|
57
90
|
end
|
58
91
|
end
|
File without changes
|
data/lib/guard/version.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-rails-assets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,12 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-
|
13
|
-
default_executable:
|
12
|
+
date: 2011-10-03 00:00:00.000000000Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: guard
|
17
|
-
requirement: &
|
16
|
+
requirement: &70238059275400 !ruby/object:Gem::Requirement
|
18
17
|
none: false
|
19
18
|
requirements:
|
20
19
|
- - ! '>='
|
@@ -22,10 +21,10 @@ dependencies:
|
|
22
21
|
version: '0'
|
23
22
|
type: :runtime
|
24
23
|
prerelease: false
|
25
|
-
version_requirements: *
|
24
|
+
version_requirements: *70238059275400
|
26
25
|
- !ruby/object:Gem::Dependency
|
27
26
|
name: rake
|
28
|
-
requirement: &
|
27
|
+
requirement: &70238059274540 !ruby/object:Gem::Requirement
|
29
28
|
none: false
|
30
29
|
requirements:
|
31
30
|
- - ! '>='
|
@@ -33,21 +32,21 @@ dependencies:
|
|
33
32
|
version: '0'
|
34
33
|
type: :runtime
|
35
34
|
prerelease: false
|
36
|
-
version_requirements: *
|
35
|
+
version_requirements: *70238059274540
|
37
36
|
- !ruby/object:Gem::Dependency
|
38
37
|
name: rails
|
39
|
-
requirement: &
|
38
|
+
requirement: &70238059269600 !ruby/object:Gem::Requirement
|
40
39
|
none: false
|
41
40
|
requirements:
|
42
41
|
- - ! '>='
|
43
42
|
- !ruby/object:Gem::Version
|
44
|
-
version: 3.1.
|
43
|
+
version: 3.1.1.rc2
|
45
44
|
type: :runtime
|
46
45
|
prerelease: false
|
47
|
-
version_requirements: *
|
46
|
+
version_requirements: *70238059269600
|
48
47
|
- !ruby/object:Gem::Dependency
|
49
48
|
name: rspec
|
50
|
-
requirement: &
|
49
|
+
requirement: &70238059269020 !ruby/object:Gem::Requirement
|
51
50
|
none: false
|
52
51
|
requirements:
|
53
52
|
- - ! '>='
|
@@ -55,7 +54,7 @@ dependencies:
|
|
55
54
|
version: '0'
|
56
55
|
type: :development
|
57
56
|
prerelease: false
|
58
|
-
version_requirements: *
|
57
|
+
version_requirements: *70238059269020
|
59
58
|
description: guard-rails-assets automatically generates JavaScript, CSS, Image files
|
60
59
|
using Rails assets pipelie
|
61
60
|
email:
|
@@ -80,7 +79,6 @@ files:
|
|
80
79
|
- spec/spec_helper.rb
|
81
80
|
- spec/support/shared_examples.rb
|
82
81
|
- spec/support/stdout_helper.rb
|
83
|
-
has_rdoc: true
|
84
82
|
homepage: http://github.com/dnagir/guard-rails-assets
|
85
83
|
licenses: []
|
86
84
|
post_install_message:
|
@@ -101,8 +99,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
101
99
|
version: '0'
|
102
100
|
requirements: []
|
103
101
|
rubyforge_project: guard-rails-assets
|
104
|
-
rubygems_version: 1.
|
102
|
+
rubygems_version: 1.8.10
|
105
103
|
signing_key:
|
106
104
|
specification_version: 3
|
107
105
|
summary: Guard for compiling Rails assets
|
108
|
-
test_files:
|
106
|
+
test_files:
|
107
|
+
- spec/guard/rails-assets/cli_runner_spec.rb
|
108
|
+
- spec/guard/rails-assets/rails_runner_spec.rb
|
109
|
+
- spec/guard/rails-assets_spec.rb
|
110
|
+
- spec/spec_helper.rb
|
111
|
+
- spec/support/shared_examples.rb
|
112
|
+
- spec/support/stdout_helper.rb
|