rapper 0.2.4 → 0.3.0
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/Gemfile +1 -2
- data/README.markdown +3 -2
- data/VERSION +1 -1
- data/lib/rapper/compressors.rb +19 -1
- data/lib/rapper/errors.rb +3 -0
- data/lib/rapper/helpers.rb +6 -6
- data/lib/rapper/html_tags.rb +20 -13
- data/lib/rapper/utils.rb +7 -2
- data/rapper.gemspec +6 -5
- data/spec/fixtures/config/asset_definitions/missing_file/stylesheets.yml +10 -0
- data/spec/fixtures/config/assets.yml +3 -0
- data/spec/rapper_spec.rb +58 -32
- metadata +33 -32
data/Gemfile
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
source "http://rubygems.org"
|
2
2
|
|
3
|
-
gem "closure-compiler", "~> 1.0.0"
|
4
|
-
|
5
3
|
group :development do
|
6
4
|
gem "rspec", "~> 1.3.1"
|
7
5
|
gem "yard", "~> 0.6.4"
|
@@ -9,4 +7,5 @@ group :development do
|
|
9
7
|
gem "bundler", "~> 1.0.0"
|
10
8
|
gem "jeweler", "~> 1.5.2"
|
11
9
|
gem "rake", "~> 0.8.7"
|
10
|
+
gem "closure-compiler", "~> 1.0.0"
|
12
11
|
end
|
data/README.markdown
CHANGED
@@ -75,9 +75,9 @@ Rapper provides helper methods to generate HTML include tags for your assets in
|
|
75
75
|
|
76
76
|
Rapper's view helpers respect your `bundle` setting. If it is `true`, a singe include tag for the joined asset will be returned. If bundling is `false`, it will return include tags for every component file of the asset (as a single string).
|
77
77
|
|
78
|
-
Rapper provides helper methods for each definition type. For instance, if you have "javascripts.yml" and "stylesheets.yml" definition files, Rapper will provide `
|
78
|
+
Rapper provides helper methods for each definition type. For instance, if you have "javascripts.yml" and "stylesheets.yml" definition files, Rapper will provide `include_javascripts` and `include_stylesheets` helper methods. Just pass the name of the asset to the helper method as a symbol and the correct HTML will be returned:
|
79
79
|
|
80
|
-
|
80
|
+
include_stylesheets :mootools
|
81
81
|
# <script src="/javascripts/assets/mootools.js"></script>
|
82
82
|
|
83
83
|
## Versioning
|
@@ -126,6 +126,7 @@ Rapper's got a Gemfile. You know what to do.
|
|
126
126
|
|
127
127
|
## Version history
|
128
128
|
|
129
|
+
* **0.3.0** - Remove hard Closure Compiler dependency (it will still need to be installed to compress JS), shorter view helper method names.
|
129
130
|
* **0.2.4** - Add tag_paths() to get all file paths for a given asset.
|
130
131
|
* **0.2.2** - Change tag_root behavior to not add `.../assets` path suffix when a `destination_root` is defined.
|
131
132
|
* **0.2.1** - Add tag_files() to get all file paths for a given asset.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.3.0
|
data/lib/rapper/compressors.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
require File.expand_path( File.dirname( __FILE__ ) + "/../yui/css_compressor.rb" )
|
2
|
-
require "closure-compiler"
|
3
2
|
require 'fileutils'
|
3
|
+
begin
|
4
|
+
require "closure-compiler"
|
5
|
+
rescue LoadError; end
|
4
6
|
|
5
7
|
module Rapper
|
6
8
|
# Compression handlers for various types of assets. And by "various" I mean
|
@@ -79,6 +81,8 @@ module Rapper
|
|
79
81
|
register ".css"
|
80
82
|
|
81
83
|
def self.do_compress( file_path, opts={} )
|
84
|
+
return unless compressor_available?
|
85
|
+
|
82
86
|
css = read_file( file_path )
|
83
87
|
css = YUI::CSS.compress( css )
|
84
88
|
destination = writable_file( file_path )
|
@@ -87,6 +91,12 @@ module Rapper
|
|
87
91
|
destination.write "\n"
|
88
92
|
destination.close
|
89
93
|
end
|
94
|
+
|
95
|
+
def self.compressor_available?
|
96
|
+
YUI::CSS.is_a?( Class )
|
97
|
+
rescue NameError
|
98
|
+
false
|
99
|
+
end
|
90
100
|
end
|
91
101
|
|
92
102
|
# Uses Google's Closure Compiler (via DocumentCloud's closure-compiler gem)
|
@@ -95,6 +105,8 @@ module Rapper
|
|
95
105
|
register ".js"
|
96
106
|
|
97
107
|
def self.do_compress( file_path, opts={} )
|
108
|
+
return unless closure_available?
|
109
|
+
|
98
110
|
closure = Closure::Compiler.new( opts )
|
99
111
|
|
100
112
|
js = read_file( file_path )
|
@@ -104,6 +116,12 @@ module Rapper
|
|
104
116
|
destination.write "\n"
|
105
117
|
destination.close
|
106
118
|
end
|
119
|
+
|
120
|
+
def self.closure_available?
|
121
|
+
Closure::Compiler.is_a?( Class )
|
122
|
+
rescue NameError
|
123
|
+
false
|
124
|
+
end
|
107
125
|
end
|
108
126
|
|
109
127
|
end
|
data/lib/rapper/errors.rb
CHANGED
@@ -17,5 +17,8 @@ module Rapper
|
|
17
17
|
# Raised when attempting to compress a file with an extension that Rapper
|
18
18
|
# doesn't recognize.
|
19
19
|
class UnknownFileExtension < StandardError; end
|
20
|
+
|
21
|
+
# Raised when an asset definition refers to a file that doesn't exist.
|
22
|
+
class MissingComponentFile < StandardError; end
|
20
23
|
end
|
21
24
|
end
|
data/lib/rapper/helpers.rb
CHANGED
@@ -3,7 +3,7 @@ module Rapper
|
|
3
3
|
module HelperSetup
|
4
4
|
|
5
5
|
# Loads view helpers for any/all available web frameworks available.
|
6
|
-
# TODO:
|
6
|
+
# TODO: Clean up.
|
7
7
|
def setup_helpers
|
8
8
|
if Rapper::ViewHelpers.const_defined?( :RAPPER )
|
9
9
|
Rapper::ViewHelpers.send( :remove_const, :RAPPER )
|
@@ -25,13 +25,13 @@ module Rapper
|
|
25
25
|
|
26
26
|
def self.included( klass )
|
27
27
|
klass.class_eval do
|
28
|
-
# Define a "
|
29
|
-
#
|
30
|
-
#
|
31
|
-
#
|
28
|
+
# Define a "include_FOO" method for each definition type. For example,
|
29
|
+
# if you have "stylesheets" and "javascripts" definitions, you'll have
|
30
|
+
# "include_stylesheets( name )" and "include_javascripts( name )"
|
31
|
+
# methods.
|
32
32
|
RAPPER.definitions.each do |type, definition|
|
33
33
|
tag_method = RAPPER.tag_method_for_type( type )
|
34
|
-
define_method "
|
34
|
+
define_method "include_#{type}".to_sym do |name|
|
35
35
|
RAPPER.send( tag_method, type, name )
|
36
36
|
end
|
37
37
|
end
|
data/lib/rapper/html_tags.rb
CHANGED
@@ -40,6 +40,19 @@ module Rapper
|
|
40
40
|
self.get_tag( CssTag, type, name )
|
41
41
|
end
|
42
42
|
|
43
|
+
# Same as `tag_files`, but includes version query string if needed.
|
44
|
+
def tag_paths( type, name )
|
45
|
+
definition = @definitions[type]
|
46
|
+
if self.get_config( 'version' )
|
47
|
+
version = definition.get_version( name )
|
48
|
+
tag_files( type, name ).map{|path| "#{path}?v=#{version}"}
|
49
|
+
else
|
50
|
+
tag_files( type, name )
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
protected
|
55
|
+
|
43
56
|
# Get all paths for a given asset. If bundling is turned on, a one-item
|
44
57
|
# array is returned containing the path to the asset file. Otherwise, an
|
45
58
|
# array of all component paths for the asset are returned.
|
@@ -58,19 +71,13 @@ module Rapper
|
|
58
71
|
end
|
59
72
|
end
|
60
73
|
|
61
|
-
#
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
tag_files( type, name )
|
69
|
-
end
|
70
|
-
end
|
71
|
-
|
72
|
-
protected
|
73
|
-
|
74
|
+
# Get the HTML for an asset.
|
75
|
+
#
|
76
|
+
# @param [Rapper::HtmlTags::Tag] klass The HTML generator class to use.
|
77
|
+
#
|
78
|
+
# @param [String] type Asset type.
|
79
|
+
#
|
80
|
+
# @param [String] name Asset name.
|
74
81
|
def get_tag( klass, type, name )
|
75
82
|
definition = @definitions[type]
|
76
83
|
style = self.get_config( 'tag_style' ).to_sym
|
data/lib/rapper/utils.rb
CHANGED
@@ -15,8 +15,13 @@ module Rapper
|
|
15
15
|
#
|
16
16
|
# @param [String] destination_file Destination for concatenated output.
|
17
17
|
def join_files( source_files, destination_file )
|
18
|
-
source_files = Array( source_files ).uniq
|
19
|
-
|
18
|
+
source_files = Array( source_files ).uniq
|
19
|
+
source_files.any? do |path|
|
20
|
+
unless File.exists?( path )
|
21
|
+
raise Rapper::Errors::MissingComponentFile, "#{path} doesn't exist."
|
22
|
+
end
|
23
|
+
end
|
24
|
+
system "cat #{source_files.join( " " )} > #{destination_file}"
|
20
25
|
end
|
21
26
|
|
22
27
|
end
|
data/rapper.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rapper}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.3.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tyson Tate"]
|
12
|
-
s.date = %q{2011-04-
|
12
|
+
s.date = %q{2011-04-05}
|
13
13
|
s.description = %q{Static asset packager and compressor with versioning and built-in view helpers. Compresses files only when they need compressing.}
|
14
14
|
s.email = %q{tyson@tysontate.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -41,6 +41,7 @@ Gem::Specification.new do |s|
|
|
41
41
|
"spec/fixtures/config/asset_definitions/base/javascripts.yml",
|
42
42
|
"spec/fixtures/config/asset_definitions/base/stylesheets.yml",
|
43
43
|
"spec/fixtures/config/asset_definitions/custom_destination/javascripts.yml",
|
44
|
+
"spec/fixtures/config/asset_definitions/missing_file/stylesheets.yml",
|
44
45
|
"spec/fixtures/config/assets.yml",
|
45
46
|
"spec/fixtures/javascripts/simple_1.js",
|
46
47
|
"spec/fixtures/javascripts/simple_2.js",
|
@@ -133,30 +134,30 @@ Gem::Specification.new do |s|
|
|
133
134
|
s.specification_version = 3
|
134
135
|
|
135
136
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
136
|
-
s.add_runtime_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
137
137
|
s.add_development_dependency(%q<rspec>, ["~> 1.3.1"])
|
138
138
|
s.add_development_dependency(%q<yard>, ["~> 0.6.4"])
|
139
139
|
s.add_development_dependency(%q<bluecloth>, ["~> 2.0.10"])
|
140
140
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
141
141
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
142
142
|
s.add_development_dependency(%q<rake>, ["~> 0.8.7"])
|
143
|
+
s.add_development_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
143
144
|
else
|
144
|
-
s.add_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
145
145
|
s.add_dependency(%q<rspec>, ["~> 1.3.1"])
|
146
146
|
s.add_dependency(%q<yard>, ["~> 0.6.4"])
|
147
147
|
s.add_dependency(%q<bluecloth>, ["~> 2.0.10"])
|
148
148
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
149
149
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
150
150
|
s.add_dependency(%q<rake>, ["~> 0.8.7"])
|
151
|
+
s.add_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
151
152
|
end
|
152
153
|
else
|
153
|
-
s.add_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
154
154
|
s.add_dependency(%q<rspec>, ["~> 1.3.1"])
|
155
155
|
s.add_dependency(%q<yard>, ["~> 0.6.4"])
|
156
156
|
s.add_dependency(%q<bluecloth>, ["~> 2.0.10"])
|
157
157
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
158
158
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
159
159
|
s.add_dependency(%q<rake>, ["~> 0.8.7"])
|
160
|
+
s.add_dependency(%q<closure-compiler>, ["~> 1.0.0"])
|
160
161
|
end
|
161
162
|
end
|
162
163
|
|
@@ -32,6 +32,9 @@ test_custom_destination:
|
|
32
32
|
definition_root: spec/fixtures/config/asset_definitions/custom_destination
|
33
33
|
bundle: true
|
34
34
|
compress: false
|
35
|
+
test_missing_file:
|
36
|
+
<<: *base
|
37
|
+
definition_root: spec/fixtures/config/asset_definitions/missing_file
|
35
38
|
test_tag_paths:
|
36
39
|
<<: *base
|
37
40
|
bundle: true
|
data/spec/rapper_spec.rb
CHANGED
@@ -67,16 +67,6 @@ describe Rapper do
|
|
67
67
|
]
|
68
68
|
]
|
69
69
|
end
|
70
|
-
|
71
|
-
it "provides tag files and paths" do
|
72
|
-
rapper = Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_tag_paths" )
|
73
|
-
rapper.tag_files( "javascripts", "multiple_files" ).should == ["/javascripts/assets/multiple_files.js"]
|
74
|
-
rapper.tag_paths( "javascripts", "multiple_files" ).should == ["/javascripts/assets/multiple_files.js?v=f3d9"]
|
75
|
-
|
76
|
-
rapper = Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_tag_paths_no_bundle" )
|
77
|
-
rapper.tag_files( "javascripts", "multiple_files" ).should == ["/javascripts/simple_1.js", "/javascripts/simple_2.js"]
|
78
|
-
rapper.tag_paths( "javascripts", "multiple_files" ).should == ["/javascripts/simple_1.js?v=f3d9", "/javascripts/simple_2.js?v=f3d9"]
|
79
|
-
end
|
80
70
|
end
|
81
71
|
|
82
72
|
describe "logging" do
|
@@ -147,8 +137,21 @@ describe Rapper do
|
|
147
137
|
Dir[ "tmp/custom_destination/*" ].should == ["tmp/custom_destination/multiple_files.js"]
|
148
138
|
end
|
149
139
|
|
150
|
-
it "doesn't use the defaut
|
151
|
-
@rapper.js_tag( "javascripts", "multiple_files" ).should ==
|
140
|
+
it "doesn't use the defaut '/assets' tag root" do
|
141
|
+
@rapper.js_tag( "javascripts", "multiple_files" ).should ==
|
142
|
+
"<script src=\"/javascripts/multiple_files.js?v=f3d9\"></script>"
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
describe "misc. methods" do
|
147
|
+
it "provides tag files and paths" do
|
148
|
+
rapper = Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_tag_paths" )
|
149
|
+
rapper.tag_paths( "javascripts", "multiple_files" ).should ==
|
150
|
+
["/javascripts/assets/multiple_files.js?v=f3d9"]
|
151
|
+
|
152
|
+
rapper = Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_tag_paths_no_bundle" )
|
153
|
+
rapper.tag_paths( "javascripts", "multiple_files" ).should ==
|
154
|
+
["/javascripts/simple_1.js?v=f3d9", "/javascripts/simple_2.js?v=f3d9"]
|
152
155
|
end
|
153
156
|
end
|
154
157
|
|
@@ -173,7 +176,6 @@ describe Rapper do
|
|
173
176
|
rapper.package
|
174
177
|
|
175
178
|
paths.each do |path|
|
176
|
-
|
177
179
|
# Produces the same exact individual files
|
178
180
|
file_names( path[:results] ).should == file_names( path[:expecteds] )
|
179
181
|
# Contents are all the same
|
@@ -191,7 +193,13 @@ describe Rapper do
|
|
191
193
|
end
|
192
194
|
|
193
195
|
describe "bundling" do
|
194
|
-
it "raises an error if a file doesn't exist"
|
196
|
+
it "raises an error if a file doesn't exist" do
|
197
|
+
rapper = Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_missing_file" )
|
198
|
+
|
199
|
+
lambda do
|
200
|
+
rapper.package
|
201
|
+
end.should raise_error( Rapper::Errors::MissingComponentFile )
|
202
|
+
end
|
195
203
|
end
|
196
204
|
|
197
205
|
describe "view helpers" do
|
@@ -204,40 +212,58 @@ describe Rapper do
|
|
204
212
|
|
205
213
|
it "returns tags for component files when bundling is off" do
|
206
214
|
Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test_no_bundle" )
|
207
|
-
@controller.
|
208
|
-
|
209
|
-
@controller.
|
210
|
-
|
215
|
+
@controller.include_stylesheets( :single_file ).should ==
|
216
|
+
"<link rel=\"stylesheet\" href=\"/stylesheets/simple_1.css\">"
|
217
|
+
@controller.include_stylesheets( :multiple_files ).should ==
|
218
|
+
"<link rel=\"stylesheet\" href=\"/stylesheets/simple_1.css\">\n<link rel=\"stylesheet\" href=\"/stylesheets/simple_2.css\">"
|
219
|
+
@controller.include_javascripts( :single_file ).should ==
|
220
|
+
"<script src=\"/javascripts/simple_1.js\"></script>"
|
221
|
+
@controller.include_javascripts( :multiple_files ).should ==
|
222
|
+
"<script src=\"/javascripts/simple_1.js\"></script>\n<script src=\"/javascripts/simple_2.js\"></script>"
|
211
223
|
end
|
212
224
|
|
213
225
|
it "returns tags for asset when bundling is on" do
|
214
226
|
Rapper::Engine.new( "spec/fixtures/config/assets.yml", "test" )
|
215
|
-
@controller.
|
216
|
-
|
217
|
-
@controller.
|
218
|
-
|
227
|
+
@controller.include_stylesheets( :single_file ).should ==
|
228
|
+
"<link type=\"text/css\" rel=\"stylesheet\" href=\"/stylesheets/assets/single_file.css\">"
|
229
|
+
@controller.include_stylesheets( :multiple_files ).should ==
|
230
|
+
"<link type=\"text/css\" rel=\"stylesheet\" href=\"/stylesheets/assets/multiple_files.css\">"
|
231
|
+
@controller.include_javascripts( :single_file ).should ==
|
232
|
+
"<script type=\"text/javascript\" src=\"/javascripts/assets/single_file.js\"></script>"
|
233
|
+
@controller.include_javascripts( :multiple_files ).should ==
|
234
|
+
"<script type=\"text/javascript\" src=\"/javascripts/assets/multiple_files.js\"></script>"
|
219
235
|
end
|
220
236
|
|
221
237
|
it "can return xhtml tags" do
|
222
238
|
Rapper::Engine.new( "spec/fixtures/config/assets.yml", "xhtml_tags" )
|
223
|
-
@controller.
|
224
|
-
|
225
|
-
@controller.
|
226
|
-
|
239
|
+
@controller.include_stylesheets( :single_file ).should ==
|
240
|
+
"<link type=\"text/css\" rel=\"stylesheet\" href=\"/stylesheets/assets/single_file.css\" />"
|
241
|
+
@controller.include_stylesheets( :multiple_files ).should ==
|
242
|
+
"<link type=\"text/css\" rel=\"stylesheet\" href=\"/stylesheets/assets/multiple_files.css\" />"
|
243
|
+
@controller.include_javascripts( :single_file ).should ==
|
244
|
+
"<script type=\"text/javascript\" src=\"/javascripts/assets/single_file.js\"></script>"
|
245
|
+
@controller.include_javascripts( :multiple_files ).should ==
|
246
|
+
"<script type=\"text/javascript\" src=\"/javascripts/assets/multiple_files.js\"></script>"
|
227
247
|
end
|
228
248
|
|
229
249
|
it "can return html5 tags" do
|
230
250
|
Rapper::Engine.new( "spec/fixtures/config/assets.yml", "html5_tags" )
|
231
|
-
@controller.
|
232
|
-
|
233
|
-
@controller.
|
234
|
-
|
251
|
+
@controller.include_stylesheets( :single_file ).should ==
|
252
|
+
"<link rel=\"stylesheet\" href=\"/stylesheets/assets/single_file.css\">"
|
253
|
+
@controller.include_stylesheets( :multiple_files ).should ==
|
254
|
+
"<link rel=\"stylesheet\" href=\"/stylesheets/assets/multiple_files.css\">"
|
255
|
+
@controller.include_javascripts( :single_file ).should ==
|
256
|
+
"<script src=\"/javascripts/assets/single_file.js\"></script>"
|
257
|
+
@controller.include_javascripts( :multiple_files ).should ==
|
258
|
+
"<script src=\"/javascripts/assets/multiple_files.js\"></script>"
|
235
259
|
end
|
236
260
|
|
237
261
|
it "adds a version number if versioning is on" do
|
238
262
|
Rapper::Engine.new( "spec/fixtures/config/assets.yml", "versions" )
|
239
|
-
@controller.
|
240
|
-
|
263
|
+
@controller.include_stylesheets( :single_file ).should ==
|
264
|
+
"<link rel=\"stylesheet\" href=\"/stylesheets/assets/single_file.css?v=1e17\">"
|
265
|
+
@controller.include_javascripts( :single_file ).should ==
|
266
|
+
"<script src=\"/javascripts/assets/single_file.js?v=98bc\"></script>"
|
241
267
|
end
|
242
268
|
end
|
243
269
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rapper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 3
|
9
|
+
- 0
|
10
|
+
version: 0.3.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Tyson Tate
|
@@ -15,28 +15,12 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-04-
|
18
|
+
date: 2011-04-05 00:00:00 -07:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
24
|
-
none: false
|
25
|
-
requirements:
|
26
|
-
- - ~>
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
hash: 23
|
29
|
-
segments:
|
30
|
-
- 1
|
31
|
-
- 0
|
32
|
-
- 0
|
33
|
-
version: 1.0.0
|
34
|
-
type: :runtime
|
35
|
-
requirement: *id001
|
36
|
-
name: closure-compiler
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
prerelease: false
|
39
|
-
version_requirements: &id002 !ruby/object:Gem::Requirement
|
40
24
|
none: false
|
41
25
|
requirements:
|
42
26
|
- - ~>
|
@@ -48,11 +32,11 @@ dependencies:
|
|
48
32
|
- 1
|
49
33
|
version: 1.3.1
|
50
34
|
type: :development
|
51
|
-
requirement: *
|
35
|
+
requirement: *id001
|
52
36
|
name: rspec
|
53
37
|
- !ruby/object:Gem::Dependency
|
54
38
|
prerelease: false
|
55
|
-
version_requirements: &
|
39
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
56
40
|
none: false
|
57
41
|
requirements:
|
58
42
|
- - ~>
|
@@ -64,11 +48,11 @@ dependencies:
|
|
64
48
|
- 4
|
65
49
|
version: 0.6.4
|
66
50
|
type: :development
|
67
|
-
requirement: *
|
51
|
+
requirement: *id002
|
68
52
|
name: yard
|
69
53
|
- !ruby/object:Gem::Dependency
|
70
54
|
prerelease: false
|
71
|
-
version_requirements: &
|
55
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
72
56
|
none: false
|
73
57
|
requirements:
|
74
58
|
- - ~>
|
@@ -80,11 +64,11 @@ dependencies:
|
|
80
64
|
- 10
|
81
65
|
version: 2.0.10
|
82
66
|
type: :development
|
83
|
-
requirement: *
|
67
|
+
requirement: *id003
|
84
68
|
name: bluecloth
|
85
69
|
- !ruby/object:Gem::Dependency
|
86
70
|
prerelease: false
|
87
|
-
version_requirements: &
|
71
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
88
72
|
none: false
|
89
73
|
requirements:
|
90
74
|
- - ~>
|
@@ -96,11 +80,11 @@ dependencies:
|
|
96
80
|
- 0
|
97
81
|
version: 1.0.0
|
98
82
|
type: :development
|
99
|
-
requirement: *
|
83
|
+
requirement: *id004
|
100
84
|
name: bundler
|
101
85
|
- !ruby/object:Gem::Dependency
|
102
86
|
prerelease: false
|
103
|
-
version_requirements: &
|
87
|
+
version_requirements: &id005 !ruby/object:Gem::Requirement
|
104
88
|
none: false
|
105
89
|
requirements:
|
106
90
|
- - ~>
|
@@ -112,11 +96,11 @@ dependencies:
|
|
112
96
|
- 2
|
113
97
|
version: 1.5.2
|
114
98
|
type: :development
|
115
|
-
requirement: *
|
99
|
+
requirement: *id005
|
116
100
|
name: jeweler
|
117
101
|
- !ruby/object:Gem::Dependency
|
118
102
|
prerelease: false
|
119
|
-
version_requirements: &
|
103
|
+
version_requirements: &id006 !ruby/object:Gem::Requirement
|
120
104
|
none: false
|
121
105
|
requirements:
|
122
106
|
- - ~>
|
@@ -128,8 +112,24 @@ dependencies:
|
|
128
112
|
- 7
|
129
113
|
version: 0.8.7
|
130
114
|
type: :development
|
131
|
-
requirement: *
|
115
|
+
requirement: *id006
|
132
116
|
name: rake
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
prerelease: false
|
119
|
+
version_requirements: &id007 !ruby/object:Gem::Requirement
|
120
|
+
none: false
|
121
|
+
requirements:
|
122
|
+
- - ~>
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
hash: 23
|
125
|
+
segments:
|
126
|
+
- 1
|
127
|
+
- 0
|
128
|
+
- 0
|
129
|
+
version: 1.0.0
|
130
|
+
type: :development
|
131
|
+
requirement: *id007
|
132
|
+
name: closure-compiler
|
133
133
|
description: Static asset packager and compressor with versioning and built-in view helpers. Compresses files only when they need compressing.
|
134
134
|
email: tyson@tysontate.com
|
135
135
|
executables: []
|
@@ -164,6 +164,7 @@ files:
|
|
164
164
|
- spec/fixtures/config/asset_definitions/base/javascripts.yml
|
165
165
|
- spec/fixtures/config/asset_definitions/base/stylesheets.yml
|
166
166
|
- spec/fixtures/config/asset_definitions/custom_destination/javascripts.yml
|
167
|
+
- spec/fixtures/config/asset_definitions/missing_file/stylesheets.yml
|
167
168
|
- spec/fixtures/config/assets.yml
|
168
169
|
- spec/fixtures/javascripts/simple_1.js
|
169
170
|
- spec/fixtures/javascripts/simple_2.js
|