sprockets 1.0.2 → 2.0.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.
Potentially problematic release.
This version of sprockets might be problematic. Click here for more details.
- data/LICENSE +21 -0
- data/README.md +356 -0
- data/lib/sprockets.rb +26 -37
- data/lib/sprockets/asset.rb +212 -0
- data/lib/sprockets/asset_attributes.rb +158 -0
- data/lib/sprockets/base.rb +163 -0
- data/lib/sprockets/bundled_asset.rb +258 -0
- data/lib/sprockets/cache/file_store.rb +41 -0
- data/lib/sprockets/caching.rb +123 -0
- data/lib/sprockets/charset_normalizer.rb +41 -0
- data/lib/sprockets/context.rb +217 -0
- data/lib/sprockets/digest.rb +67 -0
- data/lib/sprockets/directive_processor.rb +380 -0
- data/lib/sprockets/eco_template.rb +38 -0
- data/lib/sprockets/ejs_template.rb +37 -0
- data/lib/sprockets/engines.rb +98 -0
- data/lib/sprockets/environment.rb +81 -40
- data/lib/sprockets/errors.rb +17 -0
- data/lib/sprockets/index.rb +79 -0
- data/lib/sprockets/jst_processor.rb +26 -0
- data/lib/sprockets/mime.rb +38 -0
- data/lib/sprockets/processing.rb +280 -0
- data/lib/sprockets/processor.rb +32 -0
- data/lib/sprockets/safety_colons.rb +28 -0
- data/lib/sprockets/server.rb +272 -0
- data/lib/sprockets/static_asset.rb +86 -0
- data/lib/sprockets/trail.rb +114 -0
- data/lib/sprockets/utils.rb +67 -0
- data/lib/sprockets/version.rb +1 -7
- metadata +212 -64
- data/Rakefile +0 -19
- data/bin/sprocketize +0 -54
- data/ext/nph-sprockets.cgi +0 -127
- data/lib/sprockets/concatenation.rb +0 -36
- data/lib/sprockets/error.rb +0 -5
- data/lib/sprockets/pathname.rb +0 -37
- data/lib/sprockets/preprocessor.rb +0 -91
- data/lib/sprockets/secretary.rb +0 -106
- data/lib/sprockets/source_file.rb +0 -54
- data/lib/sprockets/source_line.rb +0 -82
- data/test/fixtures/assets/images/script_with_assets/one.png +0 -1
- data/test/fixtures/assets/images/script_with_assets/two.png +0 -1
- data/test/fixtures/assets/stylesheets/script_with_assets.css +0 -1
- data/test/fixtures/constants.yml +0 -1
- data/test/fixtures/double_slash_comments_that_are_not_requires_should_be_ignored_when_strip_comments_is_false.js +0 -8
- data/test/fixtures/double_slash_comments_that_are_not_requires_should_be_removed_by_default.js +0 -2
- data/test/fixtures/multiline_comments_should_be_removed_by_default.js +0 -4
- data/test/fixtures/requiring_a_file_after_it_has_already_been_required_should_do_nothing.js +0 -5
- data/test/fixtures/requiring_a_file_that_does_not_exist_should_raise_an_error.js +0 -1
- data/test/fixtures/requiring_a_single_file_should_replace_the_require_comment_with_the_file_contents.js +0 -3
- data/test/fixtures/requiring_the_current_file_should_do_nothing.js +0 -1
- data/test/fixtures/src/constants.yml +0 -3
- data/test/fixtures/src/foo.js +0 -1
- data/test/fixtures/src/foo/bar.js +0 -4
- data/test/fixtures/src/foo/foo.js +0 -1
- data/test/fixtures/src/script_with_assets.js +0 -3
- data/test/test_concatenation.rb +0 -28
- data/test/test_environment.rb +0 -64
- data/test/test_helper.rb +0 -55
- data/test/test_pathname.rb +0 -43
- data/test/test_preprocessor.rb +0 -107
- data/test/test_secretary.rb +0 -83
- data/test/test_source_file.rb +0 -34
- data/test/test_source_line.rb +0 -89
@@ -0,0 +1,67 @@
|
|
1
|
+
module Sprockets
|
2
|
+
# `Utils`, we didn't know where else to put it!
|
3
|
+
module Utils
|
4
|
+
# If theres encoding support (aka Ruby 1.9)
|
5
|
+
if "".respond_to?(:valid_encoding?)
|
6
|
+
# Define UTF-8 BOM pattern matcher.
|
7
|
+
# Avoid using a Regexp literal because it inheirts the files
|
8
|
+
# encoding and we want to avoid syntax errors in other interpreters.
|
9
|
+
UTF8_BOM_PATTERN = Regexp.new("\\A\uFEFF".encode('utf-8'))
|
10
|
+
|
11
|
+
def self.read_unicode(pathname)
|
12
|
+
pathname.read.tap do |data|
|
13
|
+
# Eager validate the file's encoding. In most cases we
|
14
|
+
# expect it to be UTF-8 unless `default_external` is set to
|
15
|
+
# something else. An error is usually raised if the file is
|
16
|
+
# saved as UTF-16 when we expected UTF-8.
|
17
|
+
if !data.valid_encoding?
|
18
|
+
raise EncodingError, "#{pathname} has a invalid " +
|
19
|
+
"#{data.encoding} byte sequence"
|
20
|
+
|
21
|
+
# If the file is UTF-8 and theres a BOM, strip it for safe concatenation.
|
22
|
+
elsif data.encoding.name == "UTF-8" && data =~ UTF8_BOM_PATTERN
|
23
|
+
data.sub!(UTF8_BOM_PATTERN, "")
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
else
|
29
|
+
# Define UTF-8 and UTF-16 BOM pattern matchers.
|
30
|
+
# Avoid using a Regexp literal to prevent syntax errors in other interpreters.
|
31
|
+
UTF8_BOM_PATTERN = Regexp.new("\\A\\xEF\\xBB\\xBF")
|
32
|
+
UTF16_BOM_PATTERN = Regexp.new("\\A(\\xFE\\xFF|\\xFF\\xFE)")
|
33
|
+
|
34
|
+
def self.read_unicode(pathname)
|
35
|
+
pathname.read.tap do |data|
|
36
|
+
# If the file is UTF-8 and theres a BOM, strip it for safe concatenation.
|
37
|
+
if data =~ UTF8_BOM_PATTERN
|
38
|
+
data.sub!(UTF8_BOM_PATTERN, "")
|
39
|
+
|
40
|
+
# If we find a UTF-16 BOM, theres nothing we can do on
|
41
|
+
# 1.8. Only UTF-8 is supported.
|
42
|
+
elsif data =~ UTF16_BOM_PATTERN
|
43
|
+
raise EncodingError, "#{pathname} has a UTF-16 BOM. " +
|
44
|
+
"Resave the file as UTF-8 or upgrade to Ruby 1.9."
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
# Prepends a leading "." to an extension if its missing.
|
51
|
+
#
|
52
|
+
# normalize_extension("js")
|
53
|
+
# # => ".js"
|
54
|
+
#
|
55
|
+
# normalize_extension(".css")
|
56
|
+
# # => ".css"
|
57
|
+
#
|
58
|
+
def self.normalize_extension(extension)
|
59
|
+
extension = extension.to_s
|
60
|
+
if extension[/^\./]
|
61
|
+
extension
|
62
|
+
else
|
63
|
+
".#{extension}"
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
data/lib/sprockets/version.rb
CHANGED
metadata
CHANGED
@@ -1,104 +1,252 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sprockets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 15
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 2
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
version: 2.0.0
|
5
11
|
platform: ruby
|
6
12
|
authors:
|
7
13
|
- Sam Stephenson
|
14
|
+
- Joshua Peek
|
8
15
|
autorequire:
|
9
16
|
bindir: bin
|
10
17
|
cert_chain: []
|
11
18
|
|
12
|
-
date:
|
19
|
+
date: 2011-08-29 00:00:00 -05:00
|
13
20
|
default_executable:
|
14
|
-
dependencies:
|
21
|
+
dependencies:
|
22
|
+
- !ruby/object:Gem::Dependency
|
23
|
+
name: hike
|
24
|
+
prerelease: false
|
25
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ~>
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
hash: 11
|
31
|
+
segments:
|
32
|
+
- 1
|
33
|
+
- 2
|
34
|
+
version: "1.2"
|
35
|
+
type: :runtime
|
36
|
+
version_requirements: *id001
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: rack
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
hash: 15
|
46
|
+
segments:
|
47
|
+
- 1
|
48
|
+
- 0
|
49
|
+
version: "1.0"
|
50
|
+
type: :runtime
|
51
|
+
version_requirements: *id002
|
52
|
+
- !ruby/object:Gem::Dependency
|
53
|
+
name: tilt
|
54
|
+
prerelease: false
|
55
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
56
|
+
none: false
|
57
|
+
requirements:
|
58
|
+
- - ~>
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
hash: 13
|
61
|
+
segments:
|
62
|
+
- 1
|
63
|
+
- 1
|
64
|
+
version: "1.1"
|
65
|
+
- - "!="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
hash: 27
|
68
|
+
segments:
|
69
|
+
- 1
|
70
|
+
- 3
|
71
|
+
- 0
|
72
|
+
version: 1.3.0
|
73
|
+
type: :runtime
|
74
|
+
version_requirements: *id003
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: coffee-script
|
77
|
+
prerelease: false
|
78
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
79
|
+
none: false
|
80
|
+
requirements:
|
81
|
+
- - ~>
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
hash: 3
|
84
|
+
segments:
|
85
|
+
- 2
|
86
|
+
- 0
|
87
|
+
version: "2.0"
|
88
|
+
type: :development
|
89
|
+
version_requirements: *id004
|
90
|
+
- !ruby/object:Gem::Dependency
|
91
|
+
name: eco
|
92
|
+
prerelease: false
|
93
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ~>
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
hash: 15
|
99
|
+
segments:
|
100
|
+
- 1
|
101
|
+
- 0
|
102
|
+
version: "1.0"
|
103
|
+
type: :development
|
104
|
+
version_requirements: *id005
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: ejs
|
107
|
+
prerelease: false
|
108
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
109
|
+
none: false
|
110
|
+
requirements:
|
111
|
+
- - ~>
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
hash: 15
|
114
|
+
segments:
|
115
|
+
- 1
|
116
|
+
- 0
|
117
|
+
version: "1.0"
|
118
|
+
type: :development
|
119
|
+
version_requirements: *id006
|
120
|
+
- !ruby/object:Gem::Dependency
|
121
|
+
name: execjs
|
122
|
+
prerelease: false
|
123
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
125
|
+
requirements:
|
126
|
+
- - ~>
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
hash: 15
|
129
|
+
segments:
|
130
|
+
- 1
|
131
|
+
- 0
|
132
|
+
version: "1.0"
|
133
|
+
type: :development
|
134
|
+
version_requirements: *id007
|
135
|
+
- !ruby/object:Gem::Dependency
|
136
|
+
name: json
|
137
|
+
prerelease: false
|
138
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
139
|
+
none: false
|
140
|
+
requirements:
|
141
|
+
- - ">="
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
hash: 3
|
144
|
+
segments:
|
145
|
+
- 0
|
146
|
+
version: "0"
|
147
|
+
type: :development
|
148
|
+
version_requirements: *id008
|
149
|
+
- !ruby/object:Gem::Dependency
|
150
|
+
name: rack-test
|
151
|
+
prerelease: false
|
152
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ">="
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
hash: 3
|
158
|
+
segments:
|
159
|
+
- 0
|
160
|
+
version: "0"
|
161
|
+
type: :development
|
162
|
+
version_requirements: *id009
|
163
|
+
- !ruby/object:Gem::Dependency
|
164
|
+
name: rake
|
165
|
+
prerelease: false
|
166
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
167
|
+
none: false
|
168
|
+
requirements:
|
169
|
+
- - ">="
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
hash: 3
|
172
|
+
segments:
|
173
|
+
- 0
|
174
|
+
version: "0"
|
175
|
+
type: :development
|
176
|
+
version_requirements: *id010
|
177
|
+
description: Sprockets is a Rack-based asset packaging system that concatenates and serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.
|
178
|
+
email:
|
179
|
+
- sstephenson@gmail.com
|
180
|
+
- josh@joshpeek.com
|
181
|
+
executables: []
|
15
182
|
|
16
|
-
description: Sprockets is a Ruby library that preprocesses and concatenates JavaScript source files.
|
17
|
-
email: sstephenson@gmail.com
|
18
|
-
executables:
|
19
|
-
- sprocketize
|
20
183
|
extensions: []
|
21
184
|
|
22
185
|
extra_rdoc_files: []
|
23
186
|
|
24
187
|
files:
|
25
|
-
-
|
26
|
-
-
|
27
|
-
- lib/sprockets
|
28
|
-
- lib/sprockets/
|
188
|
+
- README.md
|
189
|
+
- LICENSE
|
190
|
+
- lib/sprockets/asset.rb
|
191
|
+
- lib/sprockets/asset_attributes.rb
|
192
|
+
- lib/sprockets/base.rb
|
193
|
+
- lib/sprockets/bundled_asset.rb
|
194
|
+
- lib/sprockets/cache/file_store.rb
|
195
|
+
- lib/sprockets/caching.rb
|
196
|
+
- lib/sprockets/charset_normalizer.rb
|
197
|
+
- lib/sprockets/context.rb
|
198
|
+
- lib/sprockets/digest.rb
|
199
|
+
- lib/sprockets/directive_processor.rb
|
200
|
+
- lib/sprockets/eco_template.rb
|
201
|
+
- lib/sprockets/ejs_template.rb
|
202
|
+
- lib/sprockets/engines.rb
|
29
203
|
- lib/sprockets/environment.rb
|
30
|
-
- lib/sprockets/
|
31
|
-
- lib/sprockets/
|
32
|
-
- lib/sprockets/
|
33
|
-
- lib/sprockets/
|
34
|
-
- lib/sprockets/
|
35
|
-
- lib/sprockets/
|
204
|
+
- lib/sprockets/errors.rb
|
205
|
+
- lib/sprockets/index.rb
|
206
|
+
- lib/sprockets/jst_processor.rb
|
207
|
+
- lib/sprockets/mime.rb
|
208
|
+
- lib/sprockets/processing.rb
|
209
|
+
- lib/sprockets/processor.rb
|
210
|
+
- lib/sprockets/safety_colons.rb
|
211
|
+
- lib/sprockets/server.rb
|
212
|
+
- lib/sprockets/static_asset.rb
|
213
|
+
- lib/sprockets/trail.rb
|
214
|
+
- lib/sprockets/utils.rb
|
36
215
|
- lib/sprockets/version.rb
|
37
216
|
- lib/sprockets.rb
|
38
|
-
|
39
|
-
- test/fixtures/assets
|
40
|
-
- test/fixtures/assets/images
|
41
|
-
- test/fixtures/assets/images/script_with_assets
|
42
|
-
- test/fixtures/assets/images/script_with_assets/one.png
|
43
|
-
- test/fixtures/assets/images/script_with_assets/two.png
|
44
|
-
- test/fixtures/assets/stylesheets
|
45
|
-
- test/fixtures/assets/stylesheets/script_with_assets.css
|
46
|
-
- test/fixtures/constants.yml
|
47
|
-
- test/fixtures/double_slash_comments_that_are_not_requires_should_be_ignored_when_strip_comments_is_false.js
|
48
|
-
- test/fixtures/double_slash_comments_that_are_not_requires_should_be_removed_by_default.js
|
49
|
-
- test/fixtures/multiline_comments_should_be_removed_by_default.js
|
50
|
-
- test/fixtures/requiring_a_file_after_it_has_already_been_required_should_do_nothing.js
|
51
|
-
- test/fixtures/requiring_a_file_that_does_not_exist_should_raise_an_error.js
|
52
|
-
- test/fixtures/requiring_a_single_file_should_replace_the_require_comment_with_the_file_contents.js
|
53
|
-
- test/fixtures/requiring_the_current_file_should_do_nothing.js
|
54
|
-
- test/fixtures/src
|
55
|
-
- test/fixtures/src/constants.yml
|
56
|
-
- test/fixtures/src/foo
|
57
|
-
- test/fixtures/src/foo/bar.js
|
58
|
-
- test/fixtures/src/foo/foo.js
|
59
|
-
- test/fixtures/src/foo.js
|
60
|
-
- test/fixtures/src/script_with_assets.js
|
61
|
-
- test/test_concatenation.rb
|
62
|
-
- test/test_environment.rb
|
63
|
-
- test/test_helper.rb
|
64
|
-
- test/test_pathname.rb
|
65
|
-
- test/test_preprocessor.rb
|
66
|
-
- test/test_secretary.rb
|
67
|
-
- test/test_source_file.rb
|
68
|
-
- test/test_source_line.rb
|
69
|
-
- ext/nph-sprockets.cgi
|
70
|
-
has_rdoc: false
|
217
|
+
has_rdoc: true
|
71
218
|
homepage: http://getsprockets.org/
|
219
|
+
licenses: []
|
220
|
+
|
72
221
|
post_install_message:
|
73
222
|
rdoc_options: []
|
74
223
|
|
75
224
|
require_paths:
|
76
225
|
- lib
|
77
226
|
required_ruby_version: !ruby/object:Gem::Requirement
|
227
|
+
none: false
|
78
228
|
requirements:
|
79
229
|
- - ">="
|
80
230
|
- !ruby/object:Gem::Version
|
231
|
+
hash: 3
|
232
|
+
segments:
|
233
|
+
- 0
|
81
234
|
version: "0"
|
82
|
-
version:
|
83
235
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
236
|
+
none: false
|
84
237
|
requirements:
|
85
238
|
- - ">="
|
86
239
|
- !ruby/object:Gem::Version
|
240
|
+
hash: 3
|
241
|
+
segments:
|
242
|
+
- 0
|
87
243
|
version: "0"
|
88
|
-
version:
|
89
244
|
requirements: []
|
90
245
|
|
91
246
|
rubyforge_project: sprockets
|
92
|
-
rubygems_version: 1.
|
247
|
+
rubygems_version: 1.5.2
|
93
248
|
signing_key:
|
94
|
-
specification_version:
|
95
|
-
summary:
|
96
|
-
test_files:
|
97
|
-
|
98
|
-
- test/test_environment.rb
|
99
|
-
- test/test_helper.rb
|
100
|
-
- test/test_pathname.rb
|
101
|
-
- test/test_preprocessor.rb
|
102
|
-
- test/test_secretary.rb
|
103
|
-
- test/test_source_file.rb
|
104
|
-
- test/test_source_line.rb
|
249
|
+
specification_version: 3
|
250
|
+
summary: Rack-based asset packaging system
|
251
|
+
test_files: []
|
252
|
+
|
data/Rakefile
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
require "rubygems"
|
2
|
-
require "rake/testtask"
|
3
|
-
require "rake/gempackagetask"
|
4
|
-
|
5
|
-
task :default => :test
|
6
|
-
|
7
|
-
Rake::TestTask.new do |t|
|
8
|
-
t.libs << "test"
|
9
|
-
t.test_files = FileList["test/test_*.rb"]
|
10
|
-
t.verbose = true
|
11
|
-
end
|
12
|
-
|
13
|
-
Rake::GemPackageTask.new(eval(IO.read(File.join(File.dirname(__FILE__), "sprockets.gemspec")))) do |pkg|
|
14
|
-
require File.join(File.dirname(__FILE__), "lib", "sprockets", "version")
|
15
|
-
raise "Error: Sprockets::Version doesn't match gemspec" if Sprockets::Version::STRING != pkg.version.to_s
|
16
|
-
|
17
|
-
pkg.need_zip = true
|
18
|
-
pkg.need_tar = true
|
19
|
-
end
|
data/bin/sprocketize
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
require File.join(File.dirname(__FILE__), *%w".. lib sprockets")
|
4
|
-
require "optparse"
|
5
|
-
|
6
|
-
load_path = (ENV["SPROCKETS_PATH"] || "").split(":")
|
7
|
-
filenames = []
|
8
|
-
options = { :load_path => load_path, :source_files => filenames, :expand_paths => false }
|
9
|
-
|
10
|
-
OptionParser.new do |opts|
|
11
|
-
opts.summary_width = 28
|
12
|
-
opts.banner = "Usage: sprocketize [options] filename [filename ...]"
|
13
|
-
|
14
|
-
def opts.show_usage
|
15
|
-
puts self
|
16
|
-
exit
|
17
|
-
end
|
18
|
-
|
19
|
-
opts.on("-C DIRECTORY", "--directory=DIRECTORY", "Change to DIRECTORY before doing anything") do |directory|
|
20
|
-
Dir.chdir(directory)
|
21
|
-
end
|
22
|
-
|
23
|
-
opts.on("-I DIRECTORY", "--include-dir=DIRECTORY", "Adds the directory to the Sprockets load path") do |directory|
|
24
|
-
load_path << directory
|
25
|
-
end
|
26
|
-
|
27
|
-
opts.on("-a DIRECTORY", "--asset-root=DIRECTORY", "Copy provided assets into DIRECTORY") do |directory|
|
28
|
-
options[:asset_root] = directory
|
29
|
-
end
|
30
|
-
|
31
|
-
opts.on_tail("-h", "--help", "Shows this help message") do
|
32
|
-
opts.show_usage
|
33
|
-
end
|
34
|
-
|
35
|
-
opts.on_tail("-v", "--version", "Shows version") do
|
36
|
-
puts Sprockets::Version::STRING
|
37
|
-
exit
|
38
|
-
end
|
39
|
-
|
40
|
-
opts.show_usage if ARGV.empty?
|
41
|
-
|
42
|
-
begin
|
43
|
-
opts.order(ARGV) do |filename|
|
44
|
-
filenames << filename
|
45
|
-
end
|
46
|
-
rescue OptionParser::ParseError => e
|
47
|
-
opts.warn e.message
|
48
|
-
opts.show_usage
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
secretary = Sprockets::Secretary.new(options)
|
53
|
-
secretary.install_assets if options[:asset_root]
|
54
|
-
print secretary.concatenation
|