sprockets 2.6.0 → 4.2.2
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 +7 -0
- data/CHANGELOG.md +118 -0
- data/{LICENSE → MIT-LICENSE} +2 -2
- data/README.md +541 -289
- data/bin/sprockets +20 -7
- data/lib/rake/sprocketstask.rb +34 -17
- data/lib/sprockets/add_source_map_comment_to_asset_processor.rb +60 -0
- data/lib/sprockets/asset.rb +158 -210
- 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 -378
- 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 +84 -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 +166 -150
- data/lib/sprockets/dependencies.rb +74 -0
- data/lib/sprockets/digest_utils.rb +197 -0
- data/lib/sprockets/directive_processor.rb +241 -215
- data/lib/sprockets/eco_processor.rb +33 -0
- data/lib/sprockets/ejs_processor.rb +32 -0
- data/lib/sprockets/encoding_utils.rb +261 -0
- data/lib/sprockets/environment.rb +23 -64
- data/lib/sprockets/erb_processor.rb +43 -0
- data/lib/sprockets/errors.rb +5 -13
- data/lib/sprockets/exporters/base.rb +71 -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 +347 -0
- data/lib/sprockets/manifest.rb +228 -112
- data/lib/sprockets/manifest_utils.rb +48 -0
- data/lib/sprockets/mime.rb +78 -31
- 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 +43 -19
- data/lib/sprockets/preprocessors/default_source_map.rb +49 -0
- data/lib/sprockets/processing.rb +146 -164
- data/lib/sprockets/processor_utils.rb +170 -0
- data/lib/sprockets/resolve.rb +295 -0
- data/lib/sprockets/sass_cache_store.rb +20 -15
- data/lib/sprockets/sass_compressor.rb +55 -10
- data/lib/sprockets/sass_functions.rb +3 -70
- data/lib/sprockets/sass_importer.rb +3 -29
- 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 +159 -91
- 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 +194 -0
- data/lib/sprockets/utils/gzip.rb +99 -0
- data/lib/sprockets/utils.rb +193 -52
- data/lib/sprockets/version.rb +2 -1
- data/lib/sprockets/yui_compressor.rb +56 -0
- data/lib/sprockets.rb +217 -75
- metadata +272 -117
- data/lib/sprockets/asset_attributes.rb +0 -131
- data/lib/sprockets/bundled_asset.rb +0 -80
- 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/sass_template.rb +0 -60
- data/lib/sprockets/scss_template.rb +0 -13
- data/lib/sprockets/static_asset.rb +0 -58
metadata
CHANGED
|
@@ -1,233 +1,345 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sprockets
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
5
|
-
prerelease:
|
|
4
|
+
version: 4.2.2
|
|
6
5
|
platform: ruby
|
|
7
6
|
authors:
|
|
8
7
|
- Sam Stephenson
|
|
9
8
|
- Joshua Peek
|
|
10
|
-
autorequire:
|
|
11
9
|
bindir: bin
|
|
12
10
|
cert_chain: []
|
|
13
|
-
date:
|
|
11
|
+
date: 2025-04-19 00:00:00.000000000 Z
|
|
14
12
|
dependencies:
|
|
15
13
|
- !ruby/object:Gem::Dependency
|
|
16
|
-
name:
|
|
14
|
+
name: rack
|
|
17
15
|
requirement: !ruby/object:Gem::Requirement
|
|
18
|
-
none: false
|
|
19
16
|
requirements:
|
|
20
|
-
- -
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: 2.2.4
|
|
20
|
+
- - "<"
|
|
21
21
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: '
|
|
22
|
+
version: '4'
|
|
23
23
|
type: :runtime
|
|
24
24
|
prerelease: false
|
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
|
-
none: false
|
|
27
26
|
requirements:
|
|
28
|
-
- -
|
|
27
|
+
- - ">="
|
|
29
28
|
- !ruby/object:Gem::Version
|
|
30
|
-
version:
|
|
29
|
+
version: 2.2.4
|
|
30
|
+
- - "<"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '4'
|
|
31
33
|
- !ruby/object:Gem::Dependency
|
|
32
|
-
name:
|
|
34
|
+
name: concurrent-ruby
|
|
33
35
|
requirement: !ruby/object:Gem::Requirement
|
|
34
|
-
none: false
|
|
35
36
|
requirements:
|
|
36
|
-
- - ~>
|
|
37
|
+
- - "~>"
|
|
37
38
|
- !ruby/object:Gem::Version
|
|
38
39
|
version: '1.0'
|
|
39
40
|
type: :runtime
|
|
40
41
|
prerelease: false
|
|
41
42
|
version_requirements: !ruby/object:Gem::Requirement
|
|
42
|
-
none: false
|
|
43
43
|
requirements:
|
|
44
|
-
- - ~>
|
|
44
|
+
- - "~>"
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: '1.0'
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
|
-
name:
|
|
48
|
+
name: logger
|
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
|
50
|
-
none: false
|
|
51
50
|
requirements:
|
|
52
|
-
- -
|
|
51
|
+
- - ">="
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
53
|
+
version: '0'
|
|
55
54
|
type: :runtime
|
|
56
55
|
prerelease: false
|
|
57
56
|
version_requirements: !ruby/object:Gem::Requirement
|
|
58
|
-
none: false
|
|
59
57
|
requirements:
|
|
60
|
-
- -
|
|
58
|
+
- - ">="
|
|
61
59
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '
|
|
60
|
+
version: '0'
|
|
63
61
|
- !ruby/object:Gem::Dependency
|
|
64
|
-
name:
|
|
62
|
+
name: m
|
|
65
63
|
requirement: !ruby/object:Gem::Requirement
|
|
66
|
-
none: false
|
|
67
64
|
requirements:
|
|
68
|
-
- -
|
|
65
|
+
- - ">="
|
|
69
66
|
- !ruby/object:Gem::Version
|
|
70
|
-
version: '
|
|
71
|
-
|
|
67
|
+
version: '0'
|
|
68
|
+
type: :development
|
|
69
|
+
prerelease: false
|
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
71
|
+
requirements:
|
|
72
|
+
- - ">="
|
|
72
73
|
- !ruby/object:Gem::Version
|
|
73
|
-
version:
|
|
74
|
-
|
|
74
|
+
version: '0'
|
|
75
|
+
- !ruby/object:Gem::Dependency
|
|
76
|
+
name: babel-transpiler
|
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - "~>"
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: '0.6'
|
|
82
|
+
type: :development
|
|
75
83
|
prerelease: false
|
|
76
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
77
|
-
none: false
|
|
78
85
|
requirements:
|
|
79
|
-
- - ~>
|
|
86
|
+
- - "~>"
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: '0.6'
|
|
89
|
+
- !ruby/object:Gem::Dependency
|
|
90
|
+
name: closure-compiler
|
|
91
|
+
requirement: !ruby/object:Gem::Requirement
|
|
92
|
+
requirements:
|
|
93
|
+
- - "~>"
|
|
80
94
|
- !ruby/object:Gem::Version
|
|
81
95
|
version: '1.1'
|
|
82
|
-
|
|
96
|
+
type: :development
|
|
97
|
+
prerelease: false
|
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
99
|
+
requirements:
|
|
100
|
+
- - "~>"
|
|
83
101
|
- !ruby/object:Gem::Version
|
|
84
|
-
version: 1.
|
|
102
|
+
version: '1.1'
|
|
85
103
|
- !ruby/object:Gem::Dependency
|
|
86
|
-
name: coffee-script
|
|
104
|
+
name: coffee-script-source
|
|
87
105
|
requirement: !ruby/object:Gem::Requirement
|
|
88
|
-
none: false
|
|
89
106
|
requirements:
|
|
90
|
-
- - ~>
|
|
107
|
+
- - "~>"
|
|
91
108
|
- !ruby/object:Gem::Version
|
|
92
|
-
version: '
|
|
109
|
+
version: '1.6'
|
|
93
110
|
type: :development
|
|
94
111
|
prerelease: false
|
|
95
112
|
version_requirements: !ruby/object:Gem::Requirement
|
|
96
|
-
none: false
|
|
97
113
|
requirements:
|
|
98
|
-
- - ~>
|
|
114
|
+
- - "~>"
|
|
99
115
|
- !ruby/object:Gem::Version
|
|
100
|
-
version: '
|
|
116
|
+
version: '1.6'
|
|
101
117
|
- !ruby/object:Gem::Dependency
|
|
102
|
-
name: coffee-script
|
|
118
|
+
name: coffee-script
|
|
103
119
|
requirement: !ruby/object:Gem::Requirement
|
|
104
|
-
none: false
|
|
105
120
|
requirements:
|
|
106
|
-
- - ~>
|
|
121
|
+
- - "~>"
|
|
107
122
|
- !ruby/object:Gem::Version
|
|
108
|
-
version:
|
|
123
|
+
version: '2.2'
|
|
109
124
|
type: :development
|
|
110
125
|
prerelease: false
|
|
111
126
|
version_requirements: !ruby/object:Gem::Requirement
|
|
112
|
-
none: false
|
|
113
127
|
requirements:
|
|
114
|
-
- - ~>
|
|
128
|
+
- - "~>"
|
|
115
129
|
- !ruby/object:Gem::Version
|
|
116
|
-
version:
|
|
130
|
+
version: '2.2'
|
|
117
131
|
- !ruby/object:Gem::Dependency
|
|
118
132
|
name: eco
|
|
119
133
|
requirement: !ruby/object:Gem::Requirement
|
|
120
|
-
none: false
|
|
121
134
|
requirements:
|
|
122
|
-
- - ~>
|
|
135
|
+
- - "~>"
|
|
123
136
|
- !ruby/object:Gem::Version
|
|
124
137
|
version: '1.0'
|
|
125
138
|
type: :development
|
|
126
139
|
prerelease: false
|
|
127
140
|
version_requirements: !ruby/object:Gem::Requirement
|
|
128
|
-
none: false
|
|
129
141
|
requirements:
|
|
130
|
-
- - ~>
|
|
142
|
+
- - "~>"
|
|
131
143
|
- !ruby/object:Gem::Version
|
|
132
144
|
version: '1.0'
|
|
133
145
|
- !ruby/object:Gem::Dependency
|
|
134
146
|
name: ejs
|
|
135
147
|
requirement: !ruby/object:Gem::Requirement
|
|
136
|
-
none: false
|
|
137
148
|
requirements:
|
|
138
|
-
- - ~>
|
|
149
|
+
- - "~>"
|
|
139
150
|
- !ruby/object:Gem::Version
|
|
140
151
|
version: '1.0'
|
|
141
152
|
type: :development
|
|
142
153
|
prerelease: false
|
|
143
154
|
version_requirements: !ruby/object:Gem::Requirement
|
|
144
|
-
none: false
|
|
145
155
|
requirements:
|
|
146
|
-
- - ~>
|
|
156
|
+
- - "~>"
|
|
147
157
|
- !ruby/object:Gem::Version
|
|
148
158
|
version: '1.0'
|
|
149
159
|
- !ruby/object:Gem::Dependency
|
|
150
160
|
name: execjs
|
|
151
161
|
requirement: !ruby/object:Gem::Requirement
|
|
152
|
-
none: false
|
|
153
162
|
requirements:
|
|
154
|
-
- - ~>
|
|
163
|
+
- - "~>"
|
|
155
164
|
- !ruby/object:Gem::Version
|
|
156
|
-
version: '
|
|
165
|
+
version: '2.0'
|
|
157
166
|
type: :development
|
|
158
167
|
prerelease: false
|
|
159
168
|
version_requirements: !ruby/object:Gem::Requirement
|
|
160
|
-
none: false
|
|
161
169
|
requirements:
|
|
162
|
-
- - ~>
|
|
170
|
+
- - "~>"
|
|
163
171
|
- !ruby/object:Gem::Version
|
|
164
|
-
version: '
|
|
172
|
+
version: '2.0'
|
|
165
173
|
- !ruby/object:Gem::Dependency
|
|
166
|
-
name:
|
|
174
|
+
name: jsminc
|
|
167
175
|
requirement: !ruby/object:Gem::Requirement
|
|
168
|
-
none: false
|
|
169
176
|
requirements:
|
|
170
|
-
- -
|
|
177
|
+
- - "~>"
|
|
171
178
|
- !ruby/object:Gem::Version
|
|
172
|
-
version: '
|
|
179
|
+
version: '1.1'
|
|
173
180
|
type: :development
|
|
174
181
|
prerelease: false
|
|
175
182
|
version_requirements: !ruby/object:Gem::Requirement
|
|
176
|
-
none: false
|
|
177
183
|
requirements:
|
|
178
|
-
- -
|
|
184
|
+
- - "~>"
|
|
179
185
|
- !ruby/object:Gem::Version
|
|
180
|
-
version: '
|
|
186
|
+
version: '1.1'
|
|
187
|
+
- !ruby/object:Gem::Dependency
|
|
188
|
+
name: timecop
|
|
189
|
+
requirement: !ruby/object:Gem::Requirement
|
|
190
|
+
requirements:
|
|
191
|
+
- - "~>"
|
|
192
|
+
- !ruby/object:Gem::Version
|
|
193
|
+
version: 0.9.1
|
|
194
|
+
type: :development
|
|
195
|
+
prerelease: false
|
|
196
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
197
|
+
requirements:
|
|
198
|
+
- - "~>"
|
|
199
|
+
- !ruby/object:Gem::Version
|
|
200
|
+
version: 0.9.1
|
|
201
|
+
- !ruby/object:Gem::Dependency
|
|
202
|
+
name: minitest
|
|
203
|
+
requirement: !ruby/object:Gem::Requirement
|
|
204
|
+
requirements:
|
|
205
|
+
- - "~>"
|
|
206
|
+
- !ruby/object:Gem::Version
|
|
207
|
+
version: '5.0'
|
|
208
|
+
type: :development
|
|
209
|
+
prerelease: false
|
|
210
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
211
|
+
requirements:
|
|
212
|
+
- - "~>"
|
|
213
|
+
- !ruby/object:Gem::Version
|
|
214
|
+
version: '5.0'
|
|
215
|
+
- !ruby/object:Gem::Dependency
|
|
216
|
+
name: nokogiri
|
|
217
|
+
requirement: !ruby/object:Gem::Requirement
|
|
218
|
+
requirements:
|
|
219
|
+
- - "~>"
|
|
220
|
+
- !ruby/object:Gem::Version
|
|
221
|
+
version: '1.3'
|
|
222
|
+
type: :development
|
|
223
|
+
prerelease: false
|
|
224
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
225
|
+
requirements:
|
|
226
|
+
- - "~>"
|
|
227
|
+
- !ruby/object:Gem::Version
|
|
228
|
+
version: '1.3'
|
|
181
229
|
- !ruby/object:Gem::Dependency
|
|
182
230
|
name: rack-test
|
|
183
231
|
requirement: !ruby/object:Gem::Requirement
|
|
184
|
-
none: false
|
|
185
232
|
requirements:
|
|
186
|
-
- -
|
|
233
|
+
- - "~>"
|
|
187
234
|
- !ruby/object:Gem::Version
|
|
188
|
-
version:
|
|
235
|
+
version: 2.0.0
|
|
189
236
|
type: :development
|
|
190
237
|
prerelease: false
|
|
191
238
|
version_requirements: !ruby/object:Gem::Requirement
|
|
192
|
-
none: false
|
|
193
239
|
requirements:
|
|
194
|
-
- -
|
|
240
|
+
- - "~>"
|
|
195
241
|
- !ruby/object:Gem::Version
|
|
196
|
-
version:
|
|
242
|
+
version: 2.0.0
|
|
197
243
|
- !ruby/object:Gem::Dependency
|
|
198
244
|
name: rake
|
|
199
245
|
requirement: !ruby/object:Gem::Requirement
|
|
200
|
-
none: false
|
|
201
246
|
requirements:
|
|
202
|
-
- -
|
|
247
|
+
- - "~>"
|
|
203
248
|
- !ruby/object:Gem::Version
|
|
204
|
-
version: '
|
|
249
|
+
version: '13.2'
|
|
205
250
|
type: :development
|
|
206
251
|
prerelease: false
|
|
207
252
|
version_requirements: !ruby/object:Gem::Requirement
|
|
208
|
-
none: false
|
|
209
253
|
requirements:
|
|
210
|
-
- -
|
|
254
|
+
- - "~>"
|
|
211
255
|
- !ruby/object:Gem::Version
|
|
212
|
-
version: '
|
|
256
|
+
version: '13.2'
|
|
213
257
|
- !ruby/object:Gem::Dependency
|
|
214
258
|
name: sass
|
|
215
259
|
requirement: !ruby/object:Gem::Requirement
|
|
216
|
-
none: false
|
|
217
260
|
requirements:
|
|
218
|
-
- - ~>
|
|
261
|
+
- - "~>"
|
|
262
|
+
- !ruby/object:Gem::Version
|
|
263
|
+
version: '3.4'
|
|
264
|
+
type: :development
|
|
265
|
+
prerelease: false
|
|
266
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
267
|
+
requirements:
|
|
268
|
+
- - "~>"
|
|
269
|
+
- !ruby/object:Gem::Version
|
|
270
|
+
version: '3.4'
|
|
271
|
+
- !ruby/object:Gem::Dependency
|
|
272
|
+
name: sassc
|
|
273
|
+
requirement: !ruby/object:Gem::Requirement
|
|
274
|
+
requirements:
|
|
275
|
+
- - "~>"
|
|
276
|
+
- !ruby/object:Gem::Version
|
|
277
|
+
version: '2.0'
|
|
278
|
+
type: :development
|
|
279
|
+
prerelease: false
|
|
280
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
281
|
+
requirements:
|
|
282
|
+
- - "~>"
|
|
283
|
+
- !ruby/object:Gem::Version
|
|
284
|
+
version: '2.0'
|
|
285
|
+
- !ruby/object:Gem::Dependency
|
|
286
|
+
name: uglifier
|
|
287
|
+
requirement: !ruby/object:Gem::Requirement
|
|
288
|
+
requirements:
|
|
289
|
+
- - ">="
|
|
219
290
|
- !ruby/object:Gem::Version
|
|
220
|
-
version: '3
|
|
291
|
+
version: '2.3'
|
|
221
292
|
type: :development
|
|
222
293
|
prerelease: false
|
|
223
294
|
version_requirements: !ruby/object:Gem::Requirement
|
|
224
|
-
none: false
|
|
225
295
|
requirements:
|
|
226
|
-
- -
|
|
296
|
+
- - ">="
|
|
227
297
|
- !ruby/object:Gem::Version
|
|
228
|
-
version: '3
|
|
298
|
+
version: '2.3'
|
|
299
|
+
- !ruby/object:Gem::Dependency
|
|
300
|
+
name: yui-compressor
|
|
301
|
+
requirement: !ruby/object:Gem::Requirement
|
|
302
|
+
requirements:
|
|
303
|
+
- - "~>"
|
|
304
|
+
- !ruby/object:Gem::Version
|
|
305
|
+
version: '0.12'
|
|
306
|
+
type: :development
|
|
307
|
+
prerelease: false
|
|
308
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
309
|
+
requirements:
|
|
310
|
+
- - "~>"
|
|
311
|
+
- !ruby/object:Gem::Version
|
|
312
|
+
version: '0.12'
|
|
313
|
+
- !ruby/object:Gem::Dependency
|
|
314
|
+
name: zopfli
|
|
315
|
+
requirement: !ruby/object:Gem::Requirement
|
|
316
|
+
requirements:
|
|
317
|
+
- - "~>"
|
|
318
|
+
- !ruby/object:Gem::Version
|
|
319
|
+
version: 0.0.4
|
|
320
|
+
type: :development
|
|
321
|
+
prerelease: false
|
|
322
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
323
|
+
requirements:
|
|
324
|
+
- - "~>"
|
|
325
|
+
- !ruby/object:Gem::Version
|
|
326
|
+
version: 0.0.4
|
|
327
|
+
- !ruby/object:Gem::Dependency
|
|
328
|
+
name: rubocop-performance
|
|
329
|
+
requirement: !ruby/object:Gem::Requirement
|
|
330
|
+
requirements:
|
|
331
|
+
- - "~>"
|
|
332
|
+
- !ruby/object:Gem::Version
|
|
333
|
+
version: '1.3'
|
|
334
|
+
type: :development
|
|
335
|
+
prerelease: false
|
|
336
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
337
|
+
requirements:
|
|
338
|
+
- - "~>"
|
|
339
|
+
- !ruby/object:Gem::Version
|
|
340
|
+
version: '1.3'
|
|
229
341
|
description: Sprockets is a Rack-based asset packaging system that concatenates and
|
|
230
|
-
serves JavaScript, CoffeeScript, CSS,
|
|
342
|
+
serves JavaScript, CoffeeScript, CSS, Sass, and SCSS.
|
|
231
343
|
email:
|
|
232
344
|
- sstephenson@gmail.com
|
|
233
345
|
- josh@joshpeek.com
|
|
@@ -236,66 +348,109 @@ executables:
|
|
|
236
348
|
extensions: []
|
|
237
349
|
extra_rdoc_files: []
|
|
238
350
|
files:
|
|
351
|
+
- CHANGELOG.md
|
|
352
|
+
- MIT-LICENSE
|
|
239
353
|
- README.md
|
|
240
|
-
-
|
|
354
|
+
- bin/sprockets
|
|
241
355
|
- lib/rake/sprocketstask.rb
|
|
356
|
+
- lib/sprockets.rb
|
|
357
|
+
- lib/sprockets/add_source_map_comment_to_asset_processor.rb
|
|
242
358
|
- lib/sprockets/asset.rb
|
|
243
|
-
- lib/sprockets/
|
|
359
|
+
- lib/sprockets/autoload.rb
|
|
360
|
+
- lib/sprockets/autoload/babel.rb
|
|
361
|
+
- lib/sprockets/autoload/closure.rb
|
|
362
|
+
- lib/sprockets/autoload/coffee_script.rb
|
|
363
|
+
- lib/sprockets/autoload/eco.rb
|
|
364
|
+
- lib/sprockets/autoload/ejs.rb
|
|
365
|
+
- lib/sprockets/autoload/jsminc.rb
|
|
366
|
+
- lib/sprockets/autoload/sass.rb
|
|
367
|
+
- lib/sprockets/autoload/sassc.rb
|
|
368
|
+
- lib/sprockets/autoload/uglifier.rb
|
|
369
|
+
- lib/sprockets/autoload/yui.rb
|
|
370
|
+
- lib/sprockets/autoload/zopfli.rb
|
|
371
|
+
- lib/sprockets/babel_processor.rb
|
|
244
372
|
- lib/sprockets/base.rb
|
|
245
|
-
- lib/sprockets/
|
|
373
|
+
- lib/sprockets/bower.rb
|
|
374
|
+
- lib/sprockets/bundle.rb
|
|
375
|
+
- lib/sprockets/cache.rb
|
|
246
376
|
- lib/sprockets/cache/file_store.rb
|
|
247
|
-
- lib/sprockets/
|
|
248
|
-
- lib/sprockets/
|
|
377
|
+
- lib/sprockets/cache/memory_store.rb
|
|
378
|
+
- lib/sprockets/cache/null_store.rb
|
|
379
|
+
- lib/sprockets/cached_environment.rb
|
|
380
|
+
- lib/sprockets/closure_compressor.rb
|
|
381
|
+
- lib/sprockets/coffee_script_processor.rb
|
|
382
|
+
- lib/sprockets/compressing.rb
|
|
383
|
+
- lib/sprockets/configuration.rb
|
|
249
384
|
- lib/sprockets/context.rb
|
|
385
|
+
- lib/sprockets/dependencies.rb
|
|
386
|
+
- lib/sprockets/digest_utils.rb
|
|
250
387
|
- lib/sprockets/directive_processor.rb
|
|
251
|
-
- lib/sprockets/
|
|
252
|
-
- lib/sprockets/
|
|
253
|
-
- lib/sprockets/
|
|
388
|
+
- lib/sprockets/eco_processor.rb
|
|
389
|
+
- lib/sprockets/ejs_processor.rb
|
|
390
|
+
- lib/sprockets/encoding_utils.rb
|
|
254
391
|
- lib/sprockets/environment.rb
|
|
392
|
+
- lib/sprockets/erb_processor.rb
|
|
255
393
|
- lib/sprockets/errors.rb
|
|
256
|
-
- lib/sprockets/
|
|
394
|
+
- lib/sprockets/exporters/base.rb
|
|
395
|
+
- lib/sprockets/exporters/file_exporter.rb
|
|
396
|
+
- lib/sprockets/exporters/zlib_exporter.rb
|
|
397
|
+
- lib/sprockets/exporters/zopfli_exporter.rb
|
|
398
|
+
- lib/sprockets/exporting.rb
|
|
399
|
+
- lib/sprockets/file_reader.rb
|
|
400
|
+
- lib/sprockets/http_utils.rb
|
|
401
|
+
- lib/sprockets/jsminc_compressor.rb
|
|
257
402
|
- lib/sprockets/jst_processor.rb
|
|
403
|
+
- lib/sprockets/loader.rb
|
|
258
404
|
- lib/sprockets/manifest.rb
|
|
405
|
+
- lib/sprockets/manifest_utils.rb
|
|
259
406
|
- lib/sprockets/mime.rb
|
|
407
|
+
- lib/sprockets/npm.rb
|
|
408
|
+
- lib/sprockets/path_dependency_utils.rb
|
|
409
|
+
- lib/sprockets/path_digest_utils.rb
|
|
410
|
+
- lib/sprockets/path_utils.rb
|
|
260
411
|
- lib/sprockets/paths.rb
|
|
261
|
-
- lib/sprockets/
|
|
412
|
+
- lib/sprockets/preprocessors/default_source_map.rb
|
|
262
413
|
- lib/sprockets/processing.rb
|
|
263
|
-
- lib/sprockets/
|
|
264
|
-
- lib/sprockets/
|
|
414
|
+
- lib/sprockets/processor_utils.rb
|
|
415
|
+
- lib/sprockets/resolve.rb
|
|
265
416
|
- lib/sprockets/sass_cache_store.rb
|
|
266
417
|
- lib/sprockets/sass_compressor.rb
|
|
267
418
|
- lib/sprockets/sass_functions.rb
|
|
268
419
|
- lib/sprockets/sass_importer.rb
|
|
269
|
-
- lib/sprockets/
|
|
270
|
-
- lib/sprockets/
|
|
420
|
+
- lib/sprockets/sass_processor.rb
|
|
421
|
+
- lib/sprockets/sassc_compressor.rb
|
|
422
|
+
- lib/sprockets/sassc_processor.rb
|
|
271
423
|
- lib/sprockets/server.rb
|
|
272
|
-
- lib/sprockets/
|
|
424
|
+
- lib/sprockets/source_map_processor.rb
|
|
425
|
+
- lib/sprockets/source_map_utils.rb
|
|
426
|
+
- lib/sprockets/transformers.rb
|
|
427
|
+
- lib/sprockets/uglifier_compressor.rb
|
|
428
|
+
- lib/sprockets/unloaded_asset.rb
|
|
429
|
+
- lib/sprockets/uri_tar.rb
|
|
430
|
+
- lib/sprockets/uri_utils.rb
|
|
273
431
|
- lib/sprockets/utils.rb
|
|
432
|
+
- lib/sprockets/utils/gzip.rb
|
|
274
433
|
- lib/sprockets/version.rb
|
|
275
|
-
- lib/sprockets.rb
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
434
|
+
- lib/sprockets/yui_compressor.rb
|
|
435
|
+
homepage: https://github.com/rails/sprockets
|
|
436
|
+
licenses:
|
|
437
|
+
- MIT
|
|
438
|
+
metadata: {}
|
|
280
439
|
rdoc_options: []
|
|
281
440
|
require_paths:
|
|
282
441
|
- lib
|
|
283
442
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
284
|
-
none: false
|
|
285
443
|
requirements:
|
|
286
|
-
- -
|
|
444
|
+
- - ">="
|
|
287
445
|
- !ruby/object:Gem::Version
|
|
288
|
-
version:
|
|
446
|
+
version: 2.5.0
|
|
289
447
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
290
|
-
none: false
|
|
291
448
|
requirements:
|
|
292
|
-
- -
|
|
449
|
+
- - ">="
|
|
293
450
|
- !ruby/object:Gem::Version
|
|
294
451
|
version: '0'
|
|
295
452
|
requirements: []
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
signing_key:
|
|
299
|
-
specification_version: 3
|
|
453
|
+
rubygems_version: 3.6.2
|
|
454
|
+
specification_version: 4
|
|
300
455
|
summary: Rack-based asset packaging system
|
|
301
456
|
test_files: []
|
|
@@ -1,131 +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
|
-
path_without_extensions = extensions.inject(pathname) { |p, ext| p.sub(ext, '') }
|
|
21
|
-
|
|
22
|
-
# optimization: component.json can only be nested one level deep
|
|
23
|
-
if !path_without_extensions.to_s.index('/')
|
|
24
|
-
paths << path_without_extensions.join("component.json").to_s
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
if pathname.basename(extensions.join).to_s != 'index'
|
|
28
|
-
paths << path_without_extensions.join("index#{extensions.join}").to_s
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
paths
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# Reverse guess logical path for fully expanded path.
|
|
35
|
-
#
|
|
36
|
-
# This has some known issues. For an example if a file is
|
|
37
|
-
# shaddowed in the path, but is required relatively, its logical
|
|
38
|
-
# path will be incorrect.
|
|
39
|
-
def logical_path
|
|
40
|
-
if root_path = environment.paths.detect { |path| pathname.to_s[path] }
|
|
41
|
-
path = pathname.to_s.sub("#{root_path}/", '')
|
|
42
|
-
path = pathname.relative_path_from(Pathname.new(root_path)).to_s
|
|
43
|
-
path = engine_extensions.inject(path) { |p, ext| p.sub(ext, '') }
|
|
44
|
-
path = "#{path}#{engine_format_extension}" unless format_extension
|
|
45
|
-
path
|
|
46
|
-
else
|
|
47
|
-
raise FileOutsidePaths, "#{pathname} isn't in paths: #{environment.paths.join(', ')}"
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
# Returns `Array` of extension `String`s.
|
|
52
|
-
#
|
|
53
|
-
# "foo.js.coffee"
|
|
54
|
-
# # => [".js", ".coffee"]
|
|
55
|
-
#
|
|
56
|
-
def extensions
|
|
57
|
-
@extensions ||= @pathname.basename.to_s.scan(/\.[^.]+/)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# Returns the format extension.
|
|
61
|
-
#
|
|
62
|
-
# "foo.js.coffee"
|
|
63
|
-
# # => ".js"
|
|
64
|
-
#
|
|
65
|
-
def format_extension
|
|
66
|
-
extensions.reverse.detect { |ext|
|
|
67
|
-
@environment.mime_types(ext) && !@environment.engines(ext)
|
|
68
|
-
}
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
# Returns an `Array` of engine extensions.
|
|
72
|
-
#
|
|
73
|
-
# "foo.js.coffee.erb"
|
|
74
|
-
# # => [".coffee", ".erb"]
|
|
75
|
-
#
|
|
76
|
-
def engine_extensions
|
|
77
|
-
exts = extensions
|
|
78
|
-
|
|
79
|
-
if offset = extensions.index(format_extension)
|
|
80
|
-
exts = extensions[offset+1..-1]
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
exts.select { |ext| @environment.engines(ext) }
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
# Returns engine classes.
|
|
87
|
-
def engines
|
|
88
|
-
engine_extensions.map { |ext| @environment.engines(ext) }
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
# Returns all processors to run on the path.
|
|
92
|
-
def processors
|
|
93
|
-
environment.preprocessors(content_type) +
|
|
94
|
-
engines.reverse +
|
|
95
|
-
environment.postprocessors(content_type)
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
# Returns the content type for the pathname. Falls back to `application/octet-stream`.
|
|
99
|
-
def content_type
|
|
100
|
-
@content_type ||= begin
|
|
101
|
-
if format_extension.nil?
|
|
102
|
-
engine_content_type || 'application/octet-stream'
|
|
103
|
-
else
|
|
104
|
-
@environment.mime_types(format_extension) ||
|
|
105
|
-
engine_content_type ||
|
|
106
|
-
'application/octet-stream'
|
|
107
|
-
end
|
|
108
|
-
end
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
private
|
|
112
|
-
# Returns implicit engine content type.
|
|
113
|
-
#
|
|
114
|
-
# `.coffee` files carry an implicit `application/javascript`
|
|
115
|
-
# content type.
|
|
116
|
-
def engine_content_type
|
|
117
|
-
engines.reverse.each do |engine|
|
|
118
|
-
if engine.respond_to?(:default_mime_type) && engine.default_mime_type
|
|
119
|
-
return engine.default_mime_type
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
nil
|
|
123
|
-
end
|
|
124
|
-
|
|
125
|
-
def engine_format_extension
|
|
126
|
-
if content_type = engine_content_type
|
|
127
|
-
environment.extension_for_mime_type(content_type)
|
|
128
|
-
end
|
|
129
|
-
end
|
|
130
|
-
end
|
|
131
|
-
end
|