sprockets 2.2.3 → 4.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.
- checksums.yaml +5 -5
- data/CHANGELOG.md +68 -0
- data/README.md +482 -255
- data/bin/sprockets +20 -7
- data/lib/rake/sprocketstask.rb +28 -15
- data/lib/sprockets/add_source_map_comment_to_asset_processor.rb +60 -0
- data/lib/sprockets/asset.rb +142 -207
- data/lib/sprockets/autoload/babel.rb +8 -0
- data/lib/sprockets/autoload/closure.rb +8 -0
- data/lib/sprockets/autoload/coffee_script.rb +8 -0
- data/lib/sprockets/autoload/eco.rb +8 -0
- data/lib/sprockets/autoload/ejs.rb +8 -0
- data/lib/sprockets/autoload/jsminc.rb +8 -0
- data/lib/sprockets/autoload/sass.rb +8 -0
- data/lib/sprockets/autoload/sassc.rb +8 -0
- data/lib/sprockets/autoload/uglifier.rb +8 -0
- data/lib/sprockets/autoload/yui.rb +8 -0
- data/lib/sprockets/autoload/zopfli.rb +7 -0
- data/lib/sprockets/autoload.rb +16 -0
- data/lib/sprockets/babel_processor.rb +66 -0
- data/lib/sprockets/base.rb +89 -249
- data/lib/sprockets/bower.rb +61 -0
- data/lib/sprockets/bundle.rb +105 -0
- data/lib/sprockets/cache/file_store.rb +190 -14
- data/lib/sprockets/cache/memory_store.rb +75 -0
- data/lib/sprockets/cache/null_store.rb +54 -0
- data/lib/sprockets/cache.rb +271 -0
- data/lib/sprockets/cached_environment.rb +64 -0
- data/lib/sprockets/closure_compressor.rb +48 -0
- data/lib/sprockets/coffee_script_processor.rb +39 -0
- data/lib/sprockets/compressing.rb +134 -0
- data/lib/sprockets/configuration.rb +79 -0
- data/lib/sprockets/context.rb +204 -135
- data/lib/sprockets/dependencies.rb +74 -0
- data/lib/sprockets/digest_utils.rb +200 -0
- data/lib/sprockets/directive_processor.rb +224 -216
- data/lib/sprockets/eco_processor.rb +33 -0
- data/lib/sprockets/ejs_processor.rb +32 -0
- data/lib/sprockets/encoding_utils.rb +262 -0
- data/lib/sprockets/environment.rb +23 -68
- data/lib/sprockets/erb_processor.rb +37 -0
- data/lib/sprockets/errors.rb +6 -13
- data/lib/sprockets/exporters/base.rb +72 -0
- data/lib/sprockets/exporters/file_exporter.rb +24 -0
- data/lib/sprockets/exporters/zlib_exporter.rb +33 -0
- data/lib/sprockets/exporters/zopfli_exporter.rb +14 -0
- data/lib/sprockets/exporting.rb +73 -0
- data/lib/sprockets/file_reader.rb +16 -0
- data/lib/sprockets/http_utils.rb +135 -0
- data/lib/sprockets/jsminc_compressor.rb +32 -0
- data/lib/sprockets/jst_processor.rb +36 -19
- data/lib/sprockets/loader.rb +343 -0
- data/lib/sprockets/manifest.rb +231 -96
- data/lib/sprockets/manifest_utils.rb +48 -0
- data/lib/sprockets/mime.rb +80 -32
- data/lib/sprockets/npm.rb +52 -0
- data/lib/sprockets/path_dependency_utils.rb +77 -0
- data/lib/sprockets/path_digest_utils.rb +48 -0
- data/lib/sprockets/path_utils.rb +367 -0
- data/lib/sprockets/paths.rb +82 -0
- data/lib/sprockets/preprocessors/default_source_map.rb +49 -0
- data/lib/sprockets/processing.rb +140 -192
- data/lib/sprockets/processor_utils.rb +169 -0
- data/lib/sprockets/resolve.rb +295 -0
- data/lib/sprockets/sass_cache_store.rb +30 -0
- data/lib/sprockets/sass_compressor.rb +63 -0
- data/lib/sprockets/sass_functions.rb +3 -0
- data/lib/sprockets/sass_importer.rb +3 -0
- data/lib/sprockets/sass_processor.rb +313 -0
- data/lib/sprockets/sassc_compressor.rb +56 -0
- data/lib/sprockets/sassc_processor.rb +297 -0
- data/lib/sprockets/server.rb +138 -90
- data/lib/sprockets/source_map_processor.rb +66 -0
- data/lib/sprockets/source_map_utils.rb +483 -0
- data/lib/sprockets/transformers.rb +173 -0
- data/lib/sprockets/uglifier_compressor.rb +66 -0
- data/lib/sprockets/unloaded_asset.rb +139 -0
- data/lib/sprockets/uri_tar.rb +99 -0
- data/lib/sprockets/uri_utils.rb +191 -0
- data/lib/sprockets/utils/gzip.rb +99 -0
- data/lib/sprockets/utils.rb +186 -53
- data/lib/sprockets/version.rb +2 -1
- data/lib/sprockets/yui_compressor.rb +56 -0
- data/lib/sprockets.rb +217 -52
- metadata +250 -59
- data/LICENSE +0 -21
- data/lib/sprockets/asset_attributes.rb +0 -126
- data/lib/sprockets/bundled_asset.rb +0 -79
- data/lib/sprockets/caching.rb +0 -96
- data/lib/sprockets/charset_normalizer.rb +0 -41
- data/lib/sprockets/eco_template.rb +0 -38
- data/lib/sprockets/ejs_template.rb +0 -37
- data/lib/sprockets/engines.rb +0 -74
- data/lib/sprockets/index.rb +0 -99
- data/lib/sprockets/processed_asset.rb +0 -152
- data/lib/sprockets/processor.rb +0 -32
- data/lib/sprockets/safety_colons.rb +0 -28
- data/lib/sprockets/static_asset.rb +0 -57
- data/lib/sprockets/trail.rb +0 -90
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sprockets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sam Stephenson
|
@@ -9,24 +9,30 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2019-10-08 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: rack
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - "
|
18
|
+
- - ">"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '1'
|
21
|
+
- - "<"
|
19
22
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
23
|
+
version: '3'
|
21
24
|
type: :runtime
|
22
25
|
prerelease: false
|
23
26
|
version_requirements: !ruby/object:Gem::Requirement
|
24
27
|
requirements:
|
25
|
-
- - "
|
28
|
+
- - ">"
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: '1'
|
31
|
+
- - "<"
|
26
32
|
- !ruby/object:Gem::Version
|
27
|
-
version: '
|
33
|
+
version: '3'
|
28
34
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
35
|
+
name: concurrent-ruby
|
30
36
|
requirement: !ruby/object:Gem::Requirement
|
31
37
|
requirements:
|
32
38
|
- - "~>"
|
@@ -40,67 +46,75 @@ dependencies:
|
|
40
46
|
- !ruby/object:Gem::Version
|
41
47
|
version: '1.0'
|
42
48
|
- !ruby/object:Gem::Dependency
|
43
|
-
name:
|
49
|
+
name: m
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: babel-transpiler
|
44
64
|
requirement: !ruby/object:Gem::Requirement
|
45
65
|
requirements:
|
46
66
|
- - "~>"
|
47
67
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
49
|
-
type: :
|
68
|
+
version: '0.6'
|
69
|
+
type: :development
|
50
70
|
prerelease: false
|
51
71
|
version_requirements: !ruby/object:Gem::Requirement
|
52
72
|
requirements:
|
53
73
|
- - "~>"
|
54
74
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
75
|
+
version: '0.6'
|
56
76
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
77
|
+
name: closure-compiler
|
58
78
|
requirement: !ruby/object:Gem::Requirement
|
59
79
|
requirements:
|
60
80
|
- - "~>"
|
61
81
|
- !ruby/object:Gem::Version
|
62
82
|
version: '1.1'
|
63
|
-
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
version: 1.3.0
|
66
|
-
type: :runtime
|
83
|
+
type: :development
|
67
84
|
prerelease: false
|
68
85
|
version_requirements: !ruby/object:Gem::Requirement
|
69
86
|
requirements:
|
70
87
|
- - "~>"
|
71
88
|
- !ruby/object:Gem::Version
|
72
89
|
version: '1.1'
|
73
|
-
- - "!="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 1.3.0
|
76
90
|
- !ruby/object:Gem::Dependency
|
77
|
-
name: coffee-script
|
91
|
+
name: coffee-script-source
|
78
92
|
requirement: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
96
|
+
version: '1.6'
|
83
97
|
type: :development
|
84
98
|
prerelease: false
|
85
99
|
version_requirements: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
101
|
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
103
|
+
version: '1.6'
|
90
104
|
- !ruby/object:Gem::Dependency
|
91
|
-
name: coffee-script
|
105
|
+
name: coffee-script
|
92
106
|
requirement: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
110
|
+
version: '2.2'
|
97
111
|
type: :development
|
98
112
|
prerelease: false
|
99
113
|
version_requirements: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
115
|
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
117
|
+
version: '2.2'
|
104
118
|
- !ruby/object:Gem::Dependency
|
105
119
|
name: eco
|
106
120
|
requirement: !ruby/object:Gem::Requirement
|
@@ -135,58 +149,184 @@ dependencies:
|
|
135
149
|
requirements:
|
136
150
|
- - "~>"
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
152
|
+
version: '2.0'
|
139
153
|
type: :development
|
140
154
|
prerelease: false
|
141
155
|
version_requirements: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
157
|
- - "~>"
|
144
158
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
159
|
+
version: '2.0'
|
146
160
|
- !ruby/object:Gem::Dependency
|
147
|
-
name:
|
161
|
+
name: jsminc
|
148
162
|
requirement: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- - "
|
164
|
+
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
|
-
version: '
|
166
|
+
version: '1.1'
|
153
167
|
type: :development
|
154
168
|
prerelease: false
|
155
169
|
version_requirements: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
|
-
- - "
|
171
|
+
- - "~>"
|
158
172
|
- !ruby/object:Gem::Version
|
159
|
-
version: '
|
173
|
+
version: '1.1'
|
174
|
+
- !ruby/object:Gem::Dependency
|
175
|
+
name: timecop
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 0.9.1
|
181
|
+
type: :development
|
182
|
+
prerelease: false
|
183
|
+
version_requirements: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - "~>"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: 0.9.1
|
188
|
+
- !ruby/object:Gem::Dependency
|
189
|
+
name: minitest
|
190
|
+
requirement: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - "~>"
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '5.0'
|
195
|
+
type: :development
|
196
|
+
prerelease: false
|
197
|
+
version_requirements: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - "~>"
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '5.0'
|
202
|
+
- !ruby/object:Gem::Dependency
|
203
|
+
name: nokogiri
|
204
|
+
requirement: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - "~>"
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '1.3'
|
209
|
+
type: :development
|
210
|
+
prerelease: false
|
211
|
+
version_requirements: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - "~>"
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: '1.3'
|
160
216
|
- !ruby/object:Gem::Dependency
|
161
217
|
name: rack-test
|
162
218
|
requirement: !ruby/object:Gem::Requirement
|
163
219
|
requirements:
|
164
|
-
- - "
|
220
|
+
- - "~>"
|
165
221
|
- !ruby/object:Gem::Version
|
166
|
-
version: '0'
|
222
|
+
version: '0.6'
|
167
223
|
type: :development
|
168
224
|
prerelease: false
|
169
225
|
version_requirements: !ruby/object:Gem::Requirement
|
170
226
|
requirements:
|
171
|
-
- - "
|
227
|
+
- - "~>"
|
172
228
|
- !ruby/object:Gem::Version
|
173
|
-
version: '0'
|
229
|
+
version: '0.6'
|
174
230
|
- !ruby/object:Gem::Dependency
|
175
231
|
name: rake
|
232
|
+
requirement: !ruby/object:Gem::Requirement
|
233
|
+
requirements:
|
234
|
+
- - "~>"
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '12.0'
|
237
|
+
type: :development
|
238
|
+
prerelease: false
|
239
|
+
version_requirements: !ruby/object:Gem::Requirement
|
240
|
+
requirements:
|
241
|
+
- - "~>"
|
242
|
+
- !ruby/object:Gem::Version
|
243
|
+
version: '12.0'
|
244
|
+
- !ruby/object:Gem::Dependency
|
245
|
+
name: sass
|
246
|
+
requirement: !ruby/object:Gem::Requirement
|
247
|
+
requirements:
|
248
|
+
- - "~>"
|
249
|
+
- !ruby/object:Gem::Version
|
250
|
+
version: '3.4'
|
251
|
+
type: :development
|
252
|
+
prerelease: false
|
253
|
+
version_requirements: !ruby/object:Gem::Requirement
|
254
|
+
requirements:
|
255
|
+
- - "~>"
|
256
|
+
- !ruby/object:Gem::Version
|
257
|
+
version: '3.4'
|
258
|
+
- !ruby/object:Gem::Dependency
|
259
|
+
name: sassc
|
260
|
+
requirement: !ruby/object:Gem::Requirement
|
261
|
+
requirements:
|
262
|
+
- - "~>"
|
263
|
+
- !ruby/object:Gem::Version
|
264
|
+
version: '2.0'
|
265
|
+
type: :development
|
266
|
+
prerelease: false
|
267
|
+
version_requirements: !ruby/object:Gem::Requirement
|
268
|
+
requirements:
|
269
|
+
- - "~>"
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: '2.0'
|
272
|
+
- !ruby/object:Gem::Dependency
|
273
|
+
name: uglifier
|
176
274
|
requirement: !ruby/object:Gem::Requirement
|
177
275
|
requirements:
|
178
276
|
- - ">="
|
179
277
|
- !ruby/object:Gem::Version
|
180
|
-
version: '
|
278
|
+
version: '2.3'
|
181
279
|
type: :development
|
182
280
|
prerelease: false
|
183
281
|
version_requirements: !ruby/object:Gem::Requirement
|
184
282
|
requirements:
|
185
283
|
- - ">="
|
186
284
|
- !ruby/object:Gem::Version
|
187
|
-
version: '
|
285
|
+
version: '2.3'
|
286
|
+
- !ruby/object:Gem::Dependency
|
287
|
+
name: yui-compressor
|
288
|
+
requirement: !ruby/object:Gem::Requirement
|
289
|
+
requirements:
|
290
|
+
- - "~>"
|
291
|
+
- !ruby/object:Gem::Version
|
292
|
+
version: '0.12'
|
293
|
+
type: :development
|
294
|
+
prerelease: false
|
295
|
+
version_requirements: !ruby/object:Gem::Requirement
|
296
|
+
requirements:
|
297
|
+
- - "~>"
|
298
|
+
- !ruby/object:Gem::Version
|
299
|
+
version: '0.12'
|
300
|
+
- !ruby/object:Gem::Dependency
|
301
|
+
name: zopfli
|
302
|
+
requirement: !ruby/object:Gem::Requirement
|
303
|
+
requirements:
|
304
|
+
- - "~>"
|
305
|
+
- !ruby/object:Gem::Version
|
306
|
+
version: 0.0.4
|
307
|
+
type: :development
|
308
|
+
prerelease: false
|
309
|
+
version_requirements: !ruby/object:Gem::Requirement
|
310
|
+
requirements:
|
311
|
+
- - "~>"
|
312
|
+
- !ruby/object:Gem::Version
|
313
|
+
version: 0.0.4
|
314
|
+
- !ruby/object:Gem::Dependency
|
315
|
+
name: rubocop-performance
|
316
|
+
requirement: !ruby/object:Gem::Requirement
|
317
|
+
requirements:
|
318
|
+
- - "~>"
|
319
|
+
- !ruby/object:Gem::Version
|
320
|
+
version: '1.3'
|
321
|
+
type: :development
|
322
|
+
prerelease: false
|
323
|
+
version_requirements: !ruby/object:Gem::Requirement
|
324
|
+
requirements:
|
325
|
+
- - "~>"
|
326
|
+
- !ruby/object:Gem::Version
|
327
|
+
version: '1.3'
|
188
328
|
description: Sprockets is a Rack-based asset packaging system that concatenates and
|
189
|
-
serves JavaScript, CoffeeScript, CSS,
|
329
|
+
serves JavaScript, CoffeeScript, CSS, Sass, and SCSS.
|
190
330
|
email:
|
191
331
|
- sstephenson@gmail.com
|
192
332
|
- josh@joshpeek.com
|
@@ -195,40 +335,92 @@ executables:
|
|
195
335
|
extensions: []
|
196
336
|
extra_rdoc_files: []
|
197
337
|
files:
|
198
|
-
-
|
338
|
+
- CHANGELOG.md
|
199
339
|
- README.md
|
200
340
|
- bin/sprockets
|
201
341
|
- lib/rake/sprocketstask.rb
|
202
342
|
- lib/sprockets.rb
|
343
|
+
- lib/sprockets/add_source_map_comment_to_asset_processor.rb
|
203
344
|
- lib/sprockets/asset.rb
|
204
|
-
- lib/sprockets/
|
345
|
+
- lib/sprockets/autoload.rb
|
346
|
+
- lib/sprockets/autoload/babel.rb
|
347
|
+
- lib/sprockets/autoload/closure.rb
|
348
|
+
- lib/sprockets/autoload/coffee_script.rb
|
349
|
+
- lib/sprockets/autoload/eco.rb
|
350
|
+
- lib/sprockets/autoload/ejs.rb
|
351
|
+
- lib/sprockets/autoload/jsminc.rb
|
352
|
+
- lib/sprockets/autoload/sass.rb
|
353
|
+
- lib/sprockets/autoload/sassc.rb
|
354
|
+
- lib/sprockets/autoload/uglifier.rb
|
355
|
+
- lib/sprockets/autoload/yui.rb
|
356
|
+
- lib/sprockets/autoload/zopfli.rb
|
357
|
+
- lib/sprockets/babel_processor.rb
|
205
358
|
- lib/sprockets/base.rb
|
206
|
-
- lib/sprockets/
|
359
|
+
- lib/sprockets/bower.rb
|
360
|
+
- lib/sprockets/bundle.rb
|
361
|
+
- lib/sprockets/cache.rb
|
207
362
|
- lib/sprockets/cache/file_store.rb
|
208
|
-
- lib/sprockets/
|
209
|
-
- lib/sprockets/
|
363
|
+
- lib/sprockets/cache/memory_store.rb
|
364
|
+
- lib/sprockets/cache/null_store.rb
|
365
|
+
- lib/sprockets/cached_environment.rb
|
366
|
+
- lib/sprockets/closure_compressor.rb
|
367
|
+
- lib/sprockets/coffee_script_processor.rb
|
368
|
+
- lib/sprockets/compressing.rb
|
369
|
+
- lib/sprockets/configuration.rb
|
210
370
|
- lib/sprockets/context.rb
|
371
|
+
- lib/sprockets/dependencies.rb
|
372
|
+
- lib/sprockets/digest_utils.rb
|
211
373
|
- lib/sprockets/directive_processor.rb
|
212
|
-
- lib/sprockets/
|
213
|
-
- lib/sprockets/
|
214
|
-
- lib/sprockets/
|
374
|
+
- lib/sprockets/eco_processor.rb
|
375
|
+
- lib/sprockets/ejs_processor.rb
|
376
|
+
- lib/sprockets/encoding_utils.rb
|
215
377
|
- lib/sprockets/environment.rb
|
378
|
+
- lib/sprockets/erb_processor.rb
|
216
379
|
- lib/sprockets/errors.rb
|
217
|
-
- lib/sprockets/
|
380
|
+
- lib/sprockets/exporters/base.rb
|
381
|
+
- lib/sprockets/exporters/file_exporter.rb
|
382
|
+
- lib/sprockets/exporters/zlib_exporter.rb
|
383
|
+
- lib/sprockets/exporters/zopfli_exporter.rb
|
384
|
+
- lib/sprockets/exporting.rb
|
385
|
+
- lib/sprockets/file_reader.rb
|
386
|
+
- lib/sprockets/http_utils.rb
|
387
|
+
- lib/sprockets/jsminc_compressor.rb
|
218
388
|
- lib/sprockets/jst_processor.rb
|
389
|
+
- lib/sprockets/loader.rb
|
219
390
|
- lib/sprockets/manifest.rb
|
391
|
+
- lib/sprockets/manifest_utils.rb
|
220
392
|
- lib/sprockets/mime.rb
|
221
|
-
- lib/sprockets/
|
393
|
+
- lib/sprockets/npm.rb
|
394
|
+
- lib/sprockets/path_dependency_utils.rb
|
395
|
+
- lib/sprockets/path_digest_utils.rb
|
396
|
+
- lib/sprockets/path_utils.rb
|
397
|
+
- lib/sprockets/paths.rb
|
398
|
+
- lib/sprockets/preprocessors/default_source_map.rb
|
222
399
|
- lib/sprockets/processing.rb
|
223
|
-
- lib/sprockets/
|
224
|
-
- lib/sprockets/
|
400
|
+
- lib/sprockets/processor_utils.rb
|
401
|
+
- lib/sprockets/resolve.rb
|
402
|
+
- lib/sprockets/sass_cache_store.rb
|
403
|
+
- lib/sprockets/sass_compressor.rb
|
404
|
+
- lib/sprockets/sass_functions.rb
|
405
|
+
- lib/sprockets/sass_importer.rb
|
406
|
+
- lib/sprockets/sass_processor.rb
|
407
|
+
- lib/sprockets/sassc_compressor.rb
|
408
|
+
- lib/sprockets/sassc_processor.rb
|
225
409
|
- lib/sprockets/server.rb
|
226
|
-
- lib/sprockets/
|
227
|
-
- lib/sprockets/
|
410
|
+
- lib/sprockets/source_map_processor.rb
|
411
|
+
- lib/sprockets/source_map_utils.rb
|
412
|
+
- lib/sprockets/transformers.rb
|
413
|
+
- lib/sprockets/uglifier_compressor.rb
|
414
|
+
- lib/sprockets/unloaded_asset.rb
|
415
|
+
- lib/sprockets/uri_tar.rb
|
416
|
+
- lib/sprockets/uri_utils.rb
|
228
417
|
- lib/sprockets/utils.rb
|
418
|
+
- lib/sprockets/utils/gzip.rb
|
229
419
|
- lib/sprockets/version.rb
|
230
|
-
|
231
|
-
|
420
|
+
- lib/sprockets/yui_compressor.rb
|
421
|
+
homepage: https://github.com/rails/sprockets
|
422
|
+
licenses:
|
423
|
+
- MIT
|
232
424
|
metadata: {}
|
233
425
|
post_install_message:
|
234
426
|
rdoc_options: []
|
@@ -238,15 +430,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
238
430
|
requirements:
|
239
431
|
- - ">="
|
240
432
|
- !ruby/object:Gem::Version
|
241
|
-
version:
|
433
|
+
version: 2.5.0
|
242
434
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
243
435
|
requirements:
|
244
436
|
- - ">="
|
245
437
|
- !ruby/object:Gem::Version
|
246
438
|
version: '0'
|
247
439
|
requirements: []
|
248
|
-
|
249
|
-
rubygems_version: 2.2.2
|
440
|
+
rubygems_version: 3.0.3
|
250
441
|
signing_key:
|
251
442
|
specification_version: 4
|
252
443
|
summary: Rack-based asset packaging system
|
data/LICENSE
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
Copyright (c) 2011 Sam Stephenson
|
2
|
-
Copyright (c) 2011 Joshua Peek
|
3
|
-
|
4
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
5
|
-
a copy of this software and associated documentation files (the
|
6
|
-
"Software"), to deal in the Software without restriction, including
|
7
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
8
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
-
permit persons to whom the Software is furnished to do so, subject to
|
10
|
-
the following conditions:
|
11
|
-
|
12
|
-
The above copyright notice and this permission notice shall be
|
13
|
-
included in all copies or substantial portions of the Software.
|
14
|
-
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -1,126 +0,0 @@
|
|
1
|
-
require 'pathname'
|
2
|
-
|
3
|
-
module Sprockets
|
4
|
-
# `AssetAttributes` is a wrapper similar to `Pathname` that provides
|
5
|
-
# some helper accessors.
|
6
|
-
#
|
7
|
-
# These methods should be considered internalish.
|
8
|
-
class AssetAttributes
|
9
|
-
attr_reader :environment, :pathname
|
10
|
-
|
11
|
-
def initialize(environment, path)
|
12
|
-
@environment = environment
|
13
|
-
@pathname = path.is_a?(Pathname) ? path : Pathname.new(path.to_s)
|
14
|
-
end
|
15
|
-
|
16
|
-
# Returns paths search the load path for.
|
17
|
-
def search_paths
|
18
|
-
paths = [pathname.to_s]
|
19
|
-
|
20
|
-
if pathname.basename(extensions.join).to_s != 'index'
|
21
|
-
path_without_extensions = extensions.inject(pathname) { |p, ext| p.sub(ext, '') }
|
22
|
-
index_path = path_without_extensions.join("index#{extensions.join}").to_s
|
23
|
-
paths << index_path
|
24
|
-
end
|
25
|
-
|
26
|
-
paths
|
27
|
-
end
|
28
|
-
|
29
|
-
# Reverse guess logical path for fully expanded path.
|
30
|
-
#
|
31
|
-
# This has some known issues. For an example if a file is
|
32
|
-
# shaddowed in the path, but is required relatively, its logical
|
33
|
-
# path will be incorrect.
|
34
|
-
def logical_path
|
35
|
-
if root_path = environment.paths.detect { |path| pathname.to_s[path] }
|
36
|
-
path = pathname.to_s.sub("#{root_path}/", '')
|
37
|
-
path = pathname.relative_path_from(Pathname.new(root_path)).to_s
|
38
|
-
path = engine_extensions.inject(path) { |p, ext| p.sub(ext, '') }
|
39
|
-
path = "#{path}#{engine_format_extension}" unless format_extension
|
40
|
-
path
|
41
|
-
else
|
42
|
-
raise FileOutsidePaths, "#{pathname} isn't in paths: #{environment.paths.join(', ')}"
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
# Returns `Array` of extension `String`s.
|
47
|
-
#
|
48
|
-
# "foo.js.coffee"
|
49
|
-
# # => [".js", ".coffee"]
|
50
|
-
#
|
51
|
-
def extensions
|
52
|
-
@extensions ||= @pathname.basename.to_s.scan(/\.[^.]+/)
|
53
|
-
end
|
54
|
-
|
55
|
-
# Returns the format extension.
|
56
|
-
#
|
57
|
-
# "foo.js.coffee"
|
58
|
-
# # => ".js"
|
59
|
-
#
|
60
|
-
def format_extension
|
61
|
-
extensions.reverse.detect { |ext|
|
62
|
-
@environment.mime_types(ext) && !@environment.engines(ext)
|
63
|
-
}
|
64
|
-
end
|
65
|
-
|
66
|
-
# Returns an `Array` of engine extensions.
|
67
|
-
#
|
68
|
-
# "foo.js.coffee.erb"
|
69
|
-
# # => [".coffee", ".erb"]
|
70
|
-
#
|
71
|
-
def engine_extensions
|
72
|
-
exts = extensions
|
73
|
-
|
74
|
-
if offset = extensions.index(format_extension)
|
75
|
-
exts = extensions[offset+1..-1]
|
76
|
-
end
|
77
|
-
|
78
|
-
exts.select { |ext| @environment.engines(ext) }
|
79
|
-
end
|
80
|
-
|
81
|
-
# Returns engine classes.
|
82
|
-
def engines
|
83
|
-
engine_extensions.map { |ext| @environment.engines(ext) }
|
84
|
-
end
|
85
|
-
|
86
|
-
# Returns all processors to run on the path.
|
87
|
-
def processors
|
88
|
-
environment.preprocessors(content_type) +
|
89
|
-
engines.reverse +
|
90
|
-
environment.postprocessors(content_type)
|
91
|
-
end
|
92
|
-
|
93
|
-
# Returns the content type for the pathname. Falls back to `application/octet-stream`.
|
94
|
-
def content_type
|
95
|
-
@content_type ||= begin
|
96
|
-
if format_extension.nil?
|
97
|
-
engine_content_type || 'application/octet-stream'
|
98
|
-
else
|
99
|
-
@environment.mime_types(format_extension) ||
|
100
|
-
engine_content_type ||
|
101
|
-
'application/octet-stream'
|
102
|
-
end
|
103
|
-
end
|
104
|
-
end
|
105
|
-
|
106
|
-
private
|
107
|
-
# Returns implicit engine content type.
|
108
|
-
#
|
109
|
-
# `.coffee` files carry an implicit `application/javascript`
|
110
|
-
# content type.
|
111
|
-
def engine_content_type
|
112
|
-
engines.reverse.each do |engine|
|
113
|
-
if engine.respond_to?(:default_mime_type) && engine.default_mime_type
|
114
|
-
return engine.default_mime_type
|
115
|
-
end
|
116
|
-
end
|
117
|
-
nil
|
118
|
-
end
|
119
|
-
|
120
|
-
def engine_format_extension
|
121
|
-
if content_type = engine_content_type
|
122
|
-
environment.extension_for_mime_type(content_type)
|
123
|
-
end
|
124
|
-
end
|
125
|
-
end
|
126
|
-
end
|
@@ -1,79 +0,0 @@
|
|
1
|
-
require 'sprockets/asset'
|
2
|
-
require 'sprockets/errors'
|
3
|
-
require 'fileutils'
|
4
|
-
require 'set'
|
5
|
-
require 'zlib'
|
6
|
-
|
7
|
-
module Sprockets
|
8
|
-
# `BundledAsset`s are used for files that need to be processed and
|
9
|
-
# concatenated with other assets. Use for `.js` and `.css` files.
|
10
|
-
class BundledAsset < Asset
|
11
|
-
attr_reader :source
|
12
|
-
|
13
|
-
def initialize(environment, logical_path, pathname)
|
14
|
-
super(environment, logical_path, pathname)
|
15
|
-
|
16
|
-
@processed_asset = environment.find_asset(pathname, :bundle => false)
|
17
|
-
@required_assets = @processed_asset.required_assets
|
18
|
-
|
19
|
-
@source = ""
|
20
|
-
|
21
|
-
# Explode Asset into parts and gather the dependency bodies
|
22
|
-
to_a.each { |dependency| @source << dependency.to_s }
|
23
|
-
|
24
|
-
# Run bundle processors on concatenated source
|
25
|
-
context = environment.context_class.new(environment, logical_path, pathname)
|
26
|
-
@source = context.evaluate(pathname, :data => @source,
|
27
|
-
:processors => environment.bundle_processors(content_type))
|
28
|
-
|
29
|
-
@mtime = to_a.map(&:mtime).max
|
30
|
-
@length = Rack::Utils.bytesize(source)
|
31
|
-
@digest = environment.digest.update(source).hexdigest
|
32
|
-
end
|
33
|
-
|
34
|
-
# Initialize `BundledAsset` from serialized `Hash`.
|
35
|
-
def init_with(environment, coder)
|
36
|
-
super
|
37
|
-
|
38
|
-
@processed_asset = environment.find_asset(pathname, :bundle => false)
|
39
|
-
@required_assets = @processed_asset.required_assets
|
40
|
-
|
41
|
-
if @processed_asset.dependency_digest != coder['required_assets_digest']
|
42
|
-
raise UnserializeError, "processed asset belongs to a stale environment"
|
43
|
-
end
|
44
|
-
|
45
|
-
@source = coder['source']
|
46
|
-
end
|
47
|
-
|
48
|
-
# Serialize custom attributes in `BundledAsset`.
|
49
|
-
def encode_with(coder)
|
50
|
-
super
|
51
|
-
|
52
|
-
coder['source'] = source
|
53
|
-
coder['required_assets_digest'] = @processed_asset.dependency_digest
|
54
|
-
end
|
55
|
-
|
56
|
-
# Get asset's own processed contents. Excludes any of its required
|
57
|
-
# dependencies but does run any processors or engines on the
|
58
|
-
# original file.
|
59
|
-
def body
|
60
|
-
@processed_asset.source
|
61
|
-
end
|
62
|
-
|
63
|
-
# Return an `Array` of `Asset` files that are declared dependencies.
|
64
|
-
def dependencies
|
65
|
-
to_a.reject { |a| a.eql?(@processed_asset) }
|
66
|
-
end
|
67
|
-
|
68
|
-
# Expand asset into an `Array` of parts.
|
69
|
-
def to_a
|
70
|
-
required_assets
|
71
|
-
end
|
72
|
-
|
73
|
-
# Checks if Asset is stale by comparing the actual mtime and
|
74
|
-
# digest to the inmemory model.
|
75
|
-
def fresh?(environment)
|
76
|
-
@processed_asset.fresh?(environment)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
end
|