sprockets 3.7.3 → 4.2.1

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.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +73 -261
  3. data/{LICENSE → MIT-LICENSE} +2 -2
  4. data/README.md +527 -320
  5. data/bin/sprockets +11 -7
  6. data/lib/rake/sprocketstask.rb +9 -4
  7. data/lib/sprockets/add_source_map_comment_to_asset_processor.rb +60 -0
  8. data/lib/sprockets/asset.rb +39 -27
  9. data/lib/sprockets/autoload/babel.rb +8 -0
  10. data/lib/sprockets/autoload/closure.rb +1 -0
  11. data/lib/sprockets/autoload/coffee_script.rb +1 -0
  12. data/lib/sprockets/autoload/eco.rb +1 -0
  13. data/lib/sprockets/autoload/ejs.rb +1 -0
  14. data/lib/sprockets/autoload/jsminc.rb +8 -0
  15. data/lib/sprockets/autoload/sass.rb +1 -0
  16. data/lib/sprockets/autoload/sassc.rb +8 -0
  17. data/lib/sprockets/autoload/uglifier.rb +1 -0
  18. data/lib/sprockets/autoload/yui.rb +1 -0
  19. data/lib/sprockets/autoload/zopfli.rb +7 -0
  20. data/lib/sprockets/autoload.rb +5 -0
  21. data/lib/sprockets/babel_processor.rb +66 -0
  22. data/lib/sprockets/base.rb +49 -12
  23. data/lib/sprockets/bower.rb +6 -3
  24. data/lib/sprockets/bundle.rb +41 -5
  25. data/lib/sprockets/cache/file_store.rb +25 -3
  26. data/lib/sprockets/cache/memory_store.rb +28 -10
  27. data/lib/sprockets/cache/null_store.rb +8 -0
  28. data/lib/sprockets/cache.rb +37 -2
  29. data/lib/sprockets/cached_environment.rb +15 -20
  30. data/lib/sprockets/closure_compressor.rb +1 -0
  31. data/lib/sprockets/coffee_script_processor.rb +19 -5
  32. data/lib/sprockets/compressing.rb +43 -3
  33. data/lib/sprockets/configuration.rb +5 -9
  34. data/lib/sprockets/context.rb +99 -25
  35. data/lib/sprockets/dependencies.rb +2 -1
  36. data/lib/sprockets/digest_utils.rb +35 -18
  37. data/lib/sprockets/directive_processor.rb +64 -38
  38. data/lib/sprockets/eco_processor.rb +2 -1
  39. data/lib/sprockets/ejs_processor.rb +2 -1
  40. data/lib/sprockets/encoding_utils.rb +1 -0
  41. data/lib/sprockets/environment.rb +9 -4
  42. data/lib/sprockets/erb_processor.rb +33 -32
  43. data/lib/sprockets/errors.rb +1 -0
  44. data/lib/sprockets/exporters/base.rb +71 -0
  45. data/lib/sprockets/exporters/file_exporter.rb +24 -0
  46. data/lib/sprockets/exporters/zlib_exporter.rb +33 -0
  47. data/lib/sprockets/exporters/zopfli_exporter.rb +14 -0
  48. data/lib/sprockets/exporting.rb +73 -0
  49. data/lib/sprockets/file_reader.rb +1 -0
  50. data/lib/sprockets/http_utils.rb +25 -7
  51. data/lib/sprockets/jsminc_compressor.rb +32 -0
  52. data/lib/sprockets/jst_processor.rb +11 -10
  53. data/lib/sprockets/loader.rb +91 -69
  54. data/lib/sprockets/manifest.rb +67 -64
  55. data/lib/sprockets/manifest_utils.rb +9 -6
  56. data/lib/sprockets/mime.rb +8 -62
  57. data/lib/sprockets/npm.rb +52 -0
  58. data/lib/sprockets/path_dependency_utils.rb +3 -11
  59. data/lib/sprockets/path_digest_utils.rb +2 -1
  60. data/lib/sprockets/path_utils.rb +88 -8
  61. data/lib/sprockets/paths.rb +1 -0
  62. data/lib/sprockets/preprocessors/default_source_map.rb +49 -0
  63. data/lib/sprockets/processing.rb +32 -62
  64. data/lib/sprockets/processor_utils.rb +28 -38
  65. data/lib/sprockets/resolve.rb +177 -93
  66. data/lib/sprockets/sass_cache_store.rb +2 -6
  67. data/lib/sprockets/sass_compressor.rb +13 -1
  68. data/lib/sprockets/sass_functions.rb +1 -0
  69. data/lib/sprockets/sass_importer.rb +1 -0
  70. data/lib/sprockets/sass_processor.rb +31 -10
  71. data/lib/sprockets/sassc_compressor.rb +56 -0
  72. data/lib/sprockets/sassc_processor.rb +297 -0
  73. data/lib/sprockets/server.rb +63 -40
  74. data/lib/sprockets/source_map_processor.rb +66 -0
  75. data/lib/sprockets/source_map_utils.rb +483 -0
  76. data/lib/sprockets/transformers.rb +63 -35
  77. data/lib/sprockets/uglifier_compressor.rb +21 -11
  78. data/lib/sprockets/unloaded_asset.rb +13 -11
  79. data/lib/sprockets/uri_tar.rb +1 -0
  80. data/lib/sprockets/uri_utils.rb +12 -12
  81. data/lib/sprockets/utils/gzip.rb +46 -14
  82. data/lib/sprockets/utils.rb +64 -90
  83. data/lib/sprockets/version.rb +2 -1
  84. data/lib/sprockets/yui_compressor.rb +1 -0
  85. data/lib/sprockets.rb +102 -39
  86. metadata +138 -46
  87. data/lib/sprockets/coffee_script_template.rb +0 -17
  88. data/lib/sprockets/deprecation.rb +0 -90
  89. data/lib/sprockets/eco_template.rb +0 -17
  90. data/lib/sprockets/ejs_template.rb +0 -17
  91. data/lib/sprockets/engines.rb +0 -92
  92. data/lib/sprockets/erb_template.rb +0 -11
  93. data/lib/sprockets/legacy.rb +0 -330
  94. data/lib/sprockets/legacy_proc_processor.rb +0 -35
  95. data/lib/sprockets/legacy_tilt_processor.rb +0 -29
  96. data/lib/sprockets/sass_template.rb +0 -19
data/lib/sprockets.rb CHANGED
@@ -1,10 +1,11 @@
1
1
  # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  require 'sprockets/version'
3
5
  require 'sprockets/cache'
4
6
  require 'sprockets/environment'
5
7
  require 'sprockets/errors'
6
8
  require 'sprockets/manifest'
7
- require 'sprockets/deprecation'
8
9
 
9
10
  module Sprockets
10
11
  require 'sprockets/processor_utils'
@@ -23,21 +24,21 @@ module Sprockets
23
24
  dependencies: Set.new.freeze,
24
25
  dependency_resolvers: {}.freeze,
25
26
  digest_class: Digest::SHA256,
26
- engine_mime_types: {}.freeze,
27
- engines: {}.freeze,
28
27
  mime_exts: {}.freeze,
29
28
  mime_types: {}.freeze,
30
29
  paths: [].freeze,
31
30
  pipelines: {}.freeze,
31
+ pipeline_exts: {}.freeze,
32
32
  postprocessors: Hash.new { |h, k| [].freeze }.freeze,
33
33
  preprocessors: Hash.new { |h, k| [].freeze }.freeze,
34
- registered_transformers: Hash.new { |h, k| {}.freeze }.freeze,
35
- root: File.expand_path('..', __FILE__).freeze,
34
+ registered_transformers: [].freeze,
35
+ root: __dir__.dup.freeze,
36
36
  transformers: Hash.new { |h, k| {}.freeze }.freeze,
37
+ exporters: Hash.new { |h, k| Set.new.freeze }.freeze,
37
38
  version: "",
38
- gzip_enabled: true
39
+ gzip_enabled: true,
40
+ export_concurrent: true
39
41
  }.freeze
40
- self.computed_config = {}
41
42
 
42
43
  @context_class = Context
43
44
 
@@ -48,7 +49,9 @@ module Sprockets
48
49
  # Common asset text types
49
50
  register_mime_type 'application/javascript', extensions: ['.js'], charset: :unicode
50
51
  register_mime_type 'application/json', extensions: ['.json'], charset: :unicode
52
+ register_mime_type 'application/ruby', extensions: ['.rb']
51
53
  register_mime_type 'application/xml', extensions: ['.xml']
54
+ register_mime_type 'application/manifest+json', extensions: ['.webmanifest']
52
55
  register_mime_type 'text/css', extensions: ['.css'], charset: :css
53
56
  register_mime_type 'text/html', extensions: ['.html', '.htm'], charset: :html
54
57
  register_mime_type 'text/plain', extensions: ['.txt', '.text']
@@ -70,84 +73,135 @@ module Sprockets
70
73
  register_mime_type 'audio/aiff', extensions: ['.aiff']
71
74
  register_mime_type 'audio/mpeg', extensions: ['.mp3', '.mp2', '.m2a', '.m3a']
72
75
  register_mime_type 'application/ogg', extensions: ['.ogx']
76
+ register_mime_type 'audio/ogg', extensions: ['.ogg', '.oga']
73
77
  register_mime_type 'audio/midi', extensions: ['.midi', '.mid']
74
78
  register_mime_type 'video/avi', extensions: ['.avi']
75
79
  register_mime_type 'audio/wave', extensions: ['.wav', '.wave']
76
80
  register_mime_type 'video/mp4', extensions: ['.mp4', '.m4v']
81
+ register_mime_type 'audio/aac', extensions: ['.aac']
82
+ register_mime_type 'audio/mp4', extensions: ['.m4a']
83
+ register_mime_type 'audio/flac', extensions: ['.flac']
77
84
 
78
85
  # Common font types
79
86
  register_mime_type 'application/vnd.ms-fontobject', extensions: ['.eot']
80
87
  register_mime_type 'application/x-font-opentype', extensions: ['.otf']
81
88
  register_mime_type 'application/x-font-ttf', extensions: ['.ttf']
82
89
  register_mime_type 'application/font-woff', extensions: ['.woff']
90
+ register_mime_type 'application/font-woff2', extensions: ['.woff2']
91
+
92
+ require 'sprockets/source_map_processor'
93
+ register_mime_type 'application/js-sourcemap+json', extensions: ['.js.map'], charset: :unicode
94
+ register_mime_type 'application/css-sourcemap+json', extensions: ['.css.map'], charset: :unicode
95
+ register_transformer 'application/javascript', 'application/js-sourcemap+json', SourceMapProcessor
96
+ register_transformer 'text/css', 'application/css-sourcemap+json', SourceMapProcessor
83
97
 
84
98
  register_pipeline :source do |env|
85
99
  []
86
100
  end
87
101
 
88
- register_pipeline :self do |env, type, file_type, engine_extnames|
89
- env.self_processors_for(type, file_type, engine_extnames)
102
+ register_pipeline :self do |env, type, file_type|
103
+ env.self_processors_for(type, file_type)
104
+ end
105
+
106
+ register_pipeline :default do |env, type, file_type|
107
+ env.default_processors_for(type, file_type)
90
108
  end
91
109
 
92
- register_pipeline :default do |env, type, file_type, engine_extnames|
93
- env.default_processors_for(type, file_type, engine_extnames)
110
+ require 'sprockets/add_source_map_comment_to_asset_processor'
111
+ register_pipeline :debug do
112
+ [AddSourceMapCommentToAssetProcessor]
94
113
  end
95
114
 
96
115
  require 'sprockets/directive_processor'
97
- register_preprocessor 'text/css', DirectiveProcessor.new(
98
- comments: ["//", ["/*", "*/"]]
99
- )
100
- register_preprocessor 'application/javascript', DirectiveProcessor.new(
101
- comments: ["//", ["/*", "*/"]] + ["#", ["###", "###"]]
102
- )
116
+ register_preprocessor 'text/css', DirectiveProcessor.new(comments: ["//", ["/*", "*/"]])
117
+ register_preprocessor 'application/javascript', DirectiveProcessor.new(comments: ["//", ["/*", "*/"]])
103
118
 
104
119
  require 'sprockets/bundle'
105
120
  register_bundle_processor 'application/javascript', Bundle
106
121
  register_bundle_processor 'text/css', Bundle
107
122
 
108
- register_bundle_metadata_reducer '*/*', :data, proc { "" }, :+
109
- register_bundle_metadata_reducer 'application/javascript', :data, proc { "" }, Utils.method(:concat_javascript_sources)
123
+ register_bundle_metadata_reducer '*/*', :data, proc { +"" }, :concat
124
+ register_bundle_metadata_reducer 'application/javascript', :data, proc { +"" }, Utils.method(:concat_javascript_sources)
110
125
  register_bundle_metadata_reducer '*/*', :links, :+
126
+ register_bundle_metadata_reducer '*/*', :sources, proc { [] }, :+
111
127
 
112
128
  require 'sprockets/closure_compressor'
113
129
  require 'sprockets/sass_compressor'
130
+ require 'sprockets/sassc_compressor'
131
+ require 'sprockets/jsminc_compressor'
114
132
  require 'sprockets/uglifier_compressor'
115
133
  require 'sprockets/yui_compressor'
116
134
  register_compressor 'text/css', :sass, SassCompressor
135
+ register_compressor 'text/css', :sassc, SasscCompressor
117
136
  register_compressor 'text/css', :scss, SassCompressor
137
+ register_compressor 'text/css', :scssc, SasscCompressor
118
138
  register_compressor 'text/css', :yui, YUICompressor
119
139
  register_compressor 'application/javascript', :closure, ClosureCompressor
140
+ register_compressor 'application/javascript', :jsmin, JSMincCompressor
141
+ register_compressor 'application/javascript', :jsminc, JSMincCompressor
120
142
  register_compressor 'application/javascript', :uglifier, UglifierCompressor
121
143
  register_compressor 'application/javascript', :uglify, UglifierCompressor
122
144
  register_compressor 'application/javascript', :yui, YUICompressor
123
145
 
146
+ # Babel, TheFuture™ is now
147
+ require 'sprockets/babel_processor'
148
+ register_mime_type 'application/ecmascript-6', extensions: ['.es6'], charset: :unicode
149
+ register_transformer 'application/ecmascript-6', 'application/javascript', BabelProcessor
150
+ register_preprocessor 'application/ecmascript-6', DirectiveProcessor.new(comments: ["//", ["/*", "*/"]])
151
+
124
152
  # Mmm, CoffeeScript
125
153
  require 'sprockets/coffee_script_processor'
126
- Deprecation.silence do
127
- register_engine '.coffee', CoffeeScriptProcessor, mime_type: 'application/javascript', silence_deprecation: true
128
- end
154
+ register_mime_type 'text/coffeescript', extensions: ['.coffee', '.js.coffee']
155
+ register_transformer 'text/coffeescript', 'application/javascript', CoffeeScriptProcessor
156
+ register_preprocessor 'text/coffeescript', DirectiveProcessor.new(comments: ["#", ["###", "###"]])
129
157
 
130
- # JST engines
158
+ # JST processors
131
159
  require 'sprockets/eco_processor'
132
160
  require 'sprockets/ejs_processor'
133
161
  require 'sprockets/jst_processor'
134
- Deprecation.silence do
135
- register_engine '.jst', JstProcessor, mime_type: 'application/javascript', silence_deprecation: true
136
- register_engine '.eco', EcoProcessor, mime_type: 'application/javascript', silence_deprecation: true
137
- register_engine '.ejs', EjsProcessor, mime_type: 'application/javascript', silence_deprecation: true
138
- end
139
-
140
- # CSS engines
141
- require 'sprockets/sass_processor'
142
- Deprecation.silence do
143
- register_engine '.sass', SassProcessor, mime_type: 'text/css', silence_deprecation: true
144
- register_engine '.scss', ScssProcessor, mime_type: 'text/css', silence_deprecation: true
145
- end
162
+ register_mime_type 'text/eco', extensions: ['.eco', '.jst.eco']
163
+ register_mime_type 'text/ejs', extensions: ['.ejs', '.jst.ejs']
164
+ register_transformer 'text/eco', 'application/javascript+function', EcoProcessor
165
+ register_transformer 'text/ejs', 'application/javascript+function', EjsProcessor
166
+ register_transformer 'application/javascript+function', 'application/javascript', JstProcessor
167
+
168
+ # CSS processors
169
+ require 'sprockets/sassc_processor'
170
+ register_mime_type 'text/sass', extensions: ['.sass', '.css.sass']
171
+ register_mime_type 'text/scss', extensions: ['.scss', '.css.scss']
172
+ register_transformer 'text/sass', 'text/css', SasscProcessor
173
+ register_transformer 'text/scss', 'text/css', ScsscProcessor
174
+ register_preprocessor 'text/sass', DirectiveProcessor.new(comments: ["//", ["/*", "*/"]])
175
+ register_preprocessor 'text/scss', DirectiveProcessor.new(comments: ["//", ["/*", "*/"]])
146
176
  register_bundle_metadata_reducer 'text/css', :sass_dependencies, Set.new, :+
147
177
 
148
- # Other
178
+ # ERB
149
179
  require 'sprockets/erb_processor'
150
- register_engine '.erb', ERBProcessor, mime_type: 'text/plain', silence_deprecation: true
180
+ register_transformer_suffix(%w(
181
+ application/ecmascript-6
182
+ application/javascript
183
+ application/json
184
+ application/manifest+json
185
+ application/xml
186
+ text/coffeescript
187
+ text/css
188
+ text/html
189
+ text/plain
190
+ text/sass
191
+ text/scss
192
+ text/yaml
193
+ text/eco
194
+ text/ejs
195
+ ), 'application/\2+ruby', '.erb', ERBProcessor)
196
+
197
+ register_mime_type 'application/html+ruby', extensions: ['.html.erb', '.erb', '.rhtml'], charset: :html
198
+ register_mime_type 'application/xml+ruby', extensions: ['.xml.erb', '.rxml']
199
+
200
+ require 'sprockets/exporters/file_exporter'
201
+ require 'sprockets/exporters/zlib_exporter'
202
+ require 'sprockets/exporters/zopfli_exporter'
203
+ register_exporter '*/*', Exporters::FileExporter
204
+ register_exporter '*/*', Exporters::ZlibExporter
151
205
 
152
206
  register_dependency_resolver 'environment-version' do |env|
153
207
  env.version
@@ -161,9 +215,18 @@ module Sprockets
161
215
  register_dependency_resolver 'processors' do |env, str|
162
216
  env.resolve_processors_cache_key_uri(str)
163
217
  end
218
+ register_dependency_resolver 'env' do |env, str|
219
+ _, var = str.split(':', 2)
220
+ ENV[var]
221
+ end
164
222
 
165
223
  depend_on 'environment-version'
166
224
  depend_on 'environment-paths'
167
- end
168
225
 
169
- require 'sprockets/legacy'
226
+ require 'sprockets/preprocessors/default_source_map'
227
+ register_preprocessor 'text/css', Preprocessors::DefaultSourceMap.new
228
+ register_preprocessor 'application/javascript', Preprocessors::DefaultSourceMap.new
229
+
230
+ register_bundle_metadata_reducer 'text/css', :map, proc { |input| { "version" => 3, "file" => PathUtils.split_subpath(input[:load_path], input[:filename]), "sections" => [] } }, SourceMapUtils.method(:concat_source_maps)
231
+ register_bundle_metadata_reducer 'application/javascript', :map, proc { |input| { "version" => 3, "file" => PathUtils.split_subpath(input[:load_path], input[:filename]), "sections" => [] } }, SourceMapUtils.method(:concat_source_maps)
232
+ end
metadata CHANGED
@@ -1,64 +1,78 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sprockets
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.7.3
4
+ version: 4.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Stephenson
8
8
  - Joshua Peek
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-03-28 00:00:00.000000000 Z
12
+ date: 2023-09-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: base64
15
+ name: rack
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '0'
20
+ version: 2.2.4
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '4'
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
25
28
  - - ">="
26
29
  - !ruby/object:Gem::Version
27
- version: '0'
30
+ version: 2.2.4
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '4'
28
34
  - !ruby/object:Gem::Dependency
29
- name: rack
35
+ name: concurrent-ruby
30
36
  requirement: !ruby/object:Gem::Requirement
31
37
  requirements:
32
- - - ">"
33
- - !ruby/object:Gem::Version
34
- version: '1'
35
- - - "<"
38
+ - - "~>"
36
39
  - !ruby/object:Gem::Version
37
- version: '3'
40
+ version: '1.0'
38
41
  type: :runtime
39
42
  prerelease: false
40
43
  version_requirements: !ruby/object:Gem::Requirement
41
44
  requirements:
42
- - - ">"
45
+ - - "~>"
43
46
  - !ruby/object:Gem::Version
44
- version: '1'
45
- - - "<"
47
+ version: '1.0'
48
+ - !ruby/object:Gem::Dependency
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
+ - - ">="
46
60
  - !ruby/object:Gem::Version
47
- version: '3'
61
+ version: '0'
48
62
  - !ruby/object:Gem::Dependency
49
- name: concurrent-ruby
63
+ name: babel-transpiler
50
64
  requirement: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '1.0'
55
- type: :runtime
68
+ version: '0.6'
69
+ type: :development
56
70
  prerelease: false
57
71
  version_requirements: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: '1.0'
75
+ version: '0.6'
62
76
  - !ruby/object:Gem::Dependency
63
77
  name: closure-compiler
64
78
  requirement: !ruby/object:Gem::Requirement
@@ -143,6 +157,34 @@ dependencies:
143
157
  - - "~>"
144
158
  - !ruby/object:Gem::Version
145
159
  version: '2.0'
160
+ - !ruby/object:Gem::Dependency
161
+ name: jsminc
162
+ requirement: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '1.1'
167
+ type: :development
168
+ prerelease: false
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::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
146
188
  - !ruby/object:Gem::Dependency
147
189
  name: minitest
148
190
  requirement: !ruby/object:Gem::Requirement
@@ -177,54 +219,68 @@ dependencies:
177
219
  requirements:
178
220
  - - "~>"
179
221
  - !ruby/object:Gem::Version
180
- version: '0.6'
222
+ version: 2.0.0
181
223
  type: :development
182
224
  prerelease: false
183
225
  version_requirements: !ruby/object:Gem::Requirement
184
226
  requirements:
185
227
  - - "~>"
186
228
  - !ruby/object:Gem::Version
187
- version: '0.6'
229
+ version: 2.0.0
188
230
  - !ruby/object:Gem::Dependency
189
231
  name: rake
190
232
  requirement: !ruby/object:Gem::Requirement
191
233
  requirements:
192
- - - ">="
234
+ - - "~>"
193
235
  - !ruby/object:Gem::Version
194
- version: '0'
236
+ version: '12.0'
195
237
  type: :development
196
238
  prerelease: false
197
239
  version_requirements: !ruby/object:Gem::Requirement
198
240
  requirements:
199
- - - ">="
241
+ - - "~>"
200
242
  - !ruby/object:Gem::Version
201
- version: '0'
243
+ version: '12.0'
202
244
  - !ruby/object:Gem::Dependency
203
245
  name: sass
204
246
  requirement: !ruby/object:Gem::Requirement
205
247
  requirements:
206
248
  - - "~>"
207
249
  - !ruby/object:Gem::Version
208
- version: '3.1'
250
+ version: '3.4'
209
251
  type: :development
210
252
  prerelease: false
211
253
  version_requirements: !ruby/object:Gem::Requirement
212
254
  requirements:
213
255
  - - "~>"
214
256
  - !ruby/object:Gem::Version
215
- version: '3.1'
257
+ version: '3.4'
216
258
  - !ruby/object:Gem::Dependency
217
- name: uglifier
259
+ name: sassc
218
260
  requirement: !ruby/object:Gem::Requirement
219
261
  requirements:
220
262
  - - "~>"
221
263
  - !ruby/object:Gem::Version
222
- version: '2.3'
264
+ version: '2.0'
223
265
  type: :development
224
266
  prerelease: false
225
267
  version_requirements: !ruby/object:Gem::Requirement
226
268
  requirements:
227
269
  - - "~>"
270
+ - !ruby/object:Gem::Version
271
+ version: '2.0'
272
+ - !ruby/object:Gem::Dependency
273
+ name: uglifier
274
+ requirement: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - ">="
277
+ - !ruby/object:Gem::Version
278
+ version: '2.3'
279
+ type: :development
280
+ prerelease: false
281
+ version_requirements: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - ">="
228
284
  - !ruby/object:Gem::Version
229
285
  version: '2.3'
230
286
  - !ruby/object:Gem::Dependency
@@ -241,8 +297,36 @@ dependencies:
241
297
  - - "~>"
242
298
  - !ruby/object:Gem::Version
243
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'
244
328
  description: Sprockets is a Rack-based asset packaging system that concatenates and
245
- serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.
329
+ serves JavaScript, CoffeeScript, CSS, Sass, and SCSS.
246
330
  email:
247
331
  - sstephenson@gmail.com
248
332
  - josh@joshpeek.com
@@ -252,20 +336,26 @@ extensions: []
252
336
  extra_rdoc_files: []
253
337
  files:
254
338
  - CHANGELOG.md
255
- - LICENSE
339
+ - MIT-LICENSE
256
340
  - README.md
257
341
  - bin/sprockets
258
342
  - lib/rake/sprocketstask.rb
259
343
  - lib/sprockets.rb
344
+ - lib/sprockets/add_source_map_comment_to_asset_processor.rb
260
345
  - lib/sprockets/asset.rb
261
346
  - lib/sprockets/autoload.rb
347
+ - lib/sprockets/autoload/babel.rb
262
348
  - lib/sprockets/autoload/closure.rb
263
349
  - lib/sprockets/autoload/coffee_script.rb
264
350
  - lib/sprockets/autoload/eco.rb
265
351
  - lib/sprockets/autoload/ejs.rb
352
+ - lib/sprockets/autoload/jsminc.rb
266
353
  - lib/sprockets/autoload/sass.rb
354
+ - lib/sprockets/autoload/sassc.rb
267
355
  - lib/sprockets/autoload/uglifier.rb
268
356
  - lib/sprockets/autoload/yui.rb
357
+ - lib/sprockets/autoload/zopfli.rb
358
+ - lib/sprockets/babel_processor.rb
269
359
  - lib/sprockets/base.rb
270
360
  - lib/sprockets/bower.rb
271
361
  - lib/sprockets/bundle.rb
@@ -276,38 +366,37 @@ files:
276
366
  - lib/sprockets/cached_environment.rb
277
367
  - lib/sprockets/closure_compressor.rb
278
368
  - lib/sprockets/coffee_script_processor.rb
279
- - lib/sprockets/coffee_script_template.rb
280
369
  - lib/sprockets/compressing.rb
281
370
  - lib/sprockets/configuration.rb
282
371
  - lib/sprockets/context.rb
283
372
  - lib/sprockets/dependencies.rb
284
- - lib/sprockets/deprecation.rb
285
373
  - lib/sprockets/digest_utils.rb
286
374
  - lib/sprockets/directive_processor.rb
287
375
  - lib/sprockets/eco_processor.rb
288
- - lib/sprockets/eco_template.rb
289
376
  - lib/sprockets/ejs_processor.rb
290
- - lib/sprockets/ejs_template.rb
291
377
  - lib/sprockets/encoding_utils.rb
292
- - lib/sprockets/engines.rb
293
378
  - lib/sprockets/environment.rb
294
379
  - lib/sprockets/erb_processor.rb
295
- - lib/sprockets/erb_template.rb
296
380
  - lib/sprockets/errors.rb
381
+ - lib/sprockets/exporters/base.rb
382
+ - lib/sprockets/exporters/file_exporter.rb
383
+ - lib/sprockets/exporters/zlib_exporter.rb
384
+ - lib/sprockets/exporters/zopfli_exporter.rb
385
+ - lib/sprockets/exporting.rb
297
386
  - lib/sprockets/file_reader.rb
298
387
  - lib/sprockets/http_utils.rb
388
+ - lib/sprockets/jsminc_compressor.rb
299
389
  - lib/sprockets/jst_processor.rb
300
- - lib/sprockets/legacy.rb
301
- - lib/sprockets/legacy_proc_processor.rb
302
- - lib/sprockets/legacy_tilt_processor.rb
303
390
  - lib/sprockets/loader.rb
304
391
  - lib/sprockets/manifest.rb
305
392
  - lib/sprockets/manifest_utils.rb
306
393
  - lib/sprockets/mime.rb
394
+ - lib/sprockets/npm.rb
307
395
  - lib/sprockets/path_dependency_utils.rb
308
396
  - lib/sprockets/path_digest_utils.rb
309
397
  - lib/sprockets/path_utils.rb
310
398
  - lib/sprockets/paths.rb
399
+ - lib/sprockets/preprocessors/default_source_map.rb
311
400
  - lib/sprockets/processing.rb
312
401
  - lib/sprockets/processor_utils.rb
313
402
  - lib/sprockets/resolve.rb
@@ -316,8 +405,11 @@ files:
316
405
  - lib/sprockets/sass_functions.rb
317
406
  - lib/sprockets/sass_importer.rb
318
407
  - lib/sprockets/sass_processor.rb
319
- - lib/sprockets/sass_template.rb
408
+ - lib/sprockets/sassc_compressor.rb
409
+ - lib/sprockets/sassc_processor.rb
320
410
  - lib/sprockets/server.rb
411
+ - lib/sprockets/source_map_processor.rb
412
+ - lib/sprockets/source_map_utils.rb
321
413
  - lib/sprockets/transformers.rb
322
414
  - lib/sprockets/uglifier_compressor.rb
323
415
  - lib/sprockets/unloaded_asset.rb
@@ -331,7 +423,7 @@ homepage: https://github.com/rails/sprockets
331
423
  licenses:
332
424
  - MIT
333
425
  metadata: {}
334
- post_install_message:
426
+ post_install_message:
335
427
  rdoc_options: []
336
428
  require_paths:
337
429
  - lib
@@ -339,15 +431,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
339
431
  requirements:
340
432
  - - ">="
341
433
  - !ruby/object:Gem::Version
342
- version: 1.9.3
434
+ version: 2.5.0
343
435
  required_rubygems_version: !ruby/object:Gem::Requirement
344
436
  requirements:
345
437
  - - ">="
346
438
  - !ruby/object:Gem::Version
347
439
  version: '0'
348
440
  requirements: []
349
- rubygems_version: 3.5.3
350
- signing_key:
441
+ rubygems_version: 3.4.10
442
+ signing_key:
351
443
  specification_version: 4
352
444
  summary: Rack-based asset packaging system
353
445
  test_files: []
@@ -1,17 +0,0 @@
1
- require 'sprockets/coffee_script_processor'
2
-
3
- module Sprockets
4
- # Deprecated
5
- module CoffeeScriptTemplate
6
- VERSION = CoffeeScriptProcessor::VERSION
7
-
8
- def self.cache_key
9
- CoffeeScriptProcessor.cache_key
10
- end
11
-
12
- def self.call(*args)
13
- Deprecation.new.warn "CoffeeScriptTemplate is deprecated please use CoffeeScriptProcessor instead"
14
- CoffeeScriptProcessor.call(*args)
15
- end
16
- end
17
- end