Skip to content

Commit 37a1e24

Browse files
committed
Remove engines
1 parent fa40493 commit 37a1e24

File tree

11 files changed

+20
-121
lines changed

11 files changed

+20
-121
lines changed

lib/sprockets.rb

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,6 @@ module Sprockets
4343
dependencies: Set.new.freeze,
4444
dependency_resolvers: {}.freeze,
4545
digest_class: Digest::SHA256,
46-
engine_mime_types: {}.freeze,
47-
engines: {}.freeze,
4846
mime_exts: {}.freeze,
4947
mime_types: {}.freeze,
5048
paths: [].freeze,
@@ -159,14 +157,14 @@ module Sprockets
159157
register_transformer 'text/coffeescript', 'application/javascript', autoload_processor(:CoffeeScriptProcessor, 'sprockets/coffee_script_processor')
160158
register_preprocessor 'text/coffeescript', DirectiveProcessor.new(comments: ["#", ["###", "###"]])
161159

162-
# JST engines
160+
# JST processors
163161
register_mime_type 'text/eco', extensions: ['.eco', '.jst.eco']
164162
register_mime_type 'text/ejs', extensions: ['.ejs', '.jst.ejs']
165163
register_transformer 'text/eco', 'application/javascript+function', autoload_processor(:EcoProcessor, 'sprockets/eco_processor')
166164
register_transformer 'text/ejs', 'application/javascript+function', autoload_processor(:EjsProcessor, 'sprockets/ejs_processor')
167165
register_transformer 'application/javascript+function', 'application/javascript', autoload_processor(:JstProcessor, 'sprockets/jst_processor')
168166

169-
# CSS engines
167+
# CSS processors
170168
register_mime_type 'text/sass', extensions: ['.sass', '.css.sass']
171169
register_mime_type 'text/scss', extensions: ['.scss', '.css.scss']
172170
register_mime_type 'text/sass+ruby', extensions: ['.sass.erb', '.css.sass.erb']

lib/sprockets/configuration.rb

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
require 'sprockets/compressing'
22
require 'sprockets/dependencies'
3-
require 'sprockets/engines'
43
require 'sprockets/mime'
54
require 'sprockets/paths'
65
require 'sprockets/processing'
@@ -9,7 +8,7 @@
98

109
module Sprockets
1110
module Configuration
12-
include Paths, Mime, Engines, Transformers, Processing, Compressing, Dependencies, Utils
11+
include Paths, Mime, Transformers, Processing, Compressing, Dependencies, Utils
1312

1413
def initialize_configuration(parent)
1514
@config = parent.config

lib/sprockets/engines.rb

Lines changed: 0 additions & 66 deletions
This file was deleted.

lib/sprockets/loader.rb

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
require 'sprockets/asset'
22
require 'sprockets/digest_utils'
3-
require 'sprockets/engines'
43
require 'sprockets/errors'
54
require 'sprockets/file_reader'
65
require 'sprockets/mime'
@@ -16,7 +15,7 @@ module Sprockets
1615
# object.
1716
module Loader
1817
include DigestUtils, PathUtils, ProcessorUtils, URIUtils
19-
include Engines, Mime, Processing, Resolve, Transformers
18+
include Mime, Processing, Resolve, Transformers
2019

2120
# Public: Load Asset by AssetURI.
2221
#
@@ -77,7 +76,7 @@ def load_asset_by_uri(uri, filename, params)
7776
raise FileOutsidePaths, "#{filename} is no longer under a load path: #{self.paths.join(', ')}"
7877
end
7978

80-
logical_path, file_type, engine_extnames = parse_path_extnames(logical_path)
79+
logical_path, file_type = parse_path_extnames(logical_path)
8180
logical_path = normalize_logical_path(logical_path)
8281
name = logical_path
8382

@@ -90,9 +89,9 @@ def load_asset_by_uri(uri, filename, params)
9089
end
9190

9291
skip_bundle = params[:skip_bundle]
93-
processors = processors_for(type, file_type, engine_extnames, skip_bundle)
92+
processors = processors_for(type, file_type, skip_bundle)
9493

95-
processors_dep_uri = build_processors_uri(type, file_type, engine_extnames, skip_bundle)
94+
processors_dep_uri = build_processors_uri(type, file_type, skip_bundle)
9695
dependencies = self.dependencies + [processors_dep_uri]
9796

9897
# Read into memory and process if theres a processor pipeline

lib/sprockets/mime.rb

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,6 @@ def register_mime_type(mime_type, extensions: [], charset: nil)
6060
type[:charset] = charset if charset
6161
mime_types.merge(mime_type => type)
6262
end
63-
64-
self.config = hash_reassoc(config, :_extnames) do
65-
compute_extname_map
66-
end
6763
end
6864

6965
# Internal: Get detecter function for MIME type.
@@ -95,22 +91,5 @@ def read_file(filename, content_type = nil)
9591
data
9692
end
9793
end
98-
99-
private
100-
def compute_extname_map
101-
graph = {}
102-
103-
([[nil, nil]] + mime_exts.to_a).each do |format_extname, format_type|
104-
3.times do |n|
105-
engines.keys.permutation(n).each do |engine_extnames|
106-
key = "#{format_extname}#{engine_extnames.join}"
107-
type = format_type || engine_mime_types[engine_extnames.first]
108-
graph[key] = {type: type, engines: engine_extnames}
109-
end
110-
end
111-
end
112-
113-
graph
114-
end
11594
end
11695
end

lib/sprockets/processing.rb

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
require 'source_map'
2-
require 'sprockets/engines'
32
require 'sprockets/mime'
43
require 'sprockets/processor_utils'
54
require 'sprockets/uri_utils'
@@ -177,23 +176,20 @@ def process_bundle_reducers(assets, reducers)
177176
protected
178177
def resolve_processors_cache_key_uri(uri)
179178
params = parse_uri_query_params(uri[11..-1])
180-
params[:engine_extnames] = params[:engines] ? params[:engines].split(',') : []
181-
processors = processors_for(params[:type], params[:file_type], params[:engine_extnames], params[:skip_bundle])
179+
processors = processors_for(params[:type], params[:file_type], params[:skip_bundle])
182180
processors_cache_keys(processors)
183181
end
184182

185-
def build_processors_uri(type, file_type, engine_extnames, skip_bundle)
186-
engines = engine_extnames.join(',') if engine_extnames.any?
183+
def build_processors_uri(type, file_type, skip_bundle)
187184
query = encode_uri_query_params(
188185
type: type,
189186
file_type: file_type,
190-
engines: engines,
191187
skip_bundle: skip_bundle
192188
)
193189
"processors:#{query}"
194190
end
195191

196-
def processors_for(type, file_type, engine_extnames, skip_bundle)
192+
def processors_for(type, file_type, skip_bundle)
197193
processors = []
198194

199195
bundled_processors = skip_bundle ? [] : config[:bundle_processors][type]
@@ -202,12 +198,9 @@ def processors_for(type, file_type, engine_extnames, skip_bundle)
202198
processors.concat bundled_processors
203199
else
204200
processors.concat config[:postprocessors][type]
205-
206201
if type != file_type && processor = transformers[file_type][type]
207202
processors << processor
208203
end
209-
210-
processors.concat engine_extnames.map { |ext| engines[ext] }
211204
processors.concat config[:preprocessors][file_type]
212205
end
213206

lib/sprockets/resolve.rb

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def resolve_absolute_path(paths, filename, accept, skip_bundle)
6262
# Ensure path is under load paths
6363
return nil, deps unless paths_split(paths, filename)
6464

65-
mime_type = parse_path_extnames(filename)[1]
65+
_, mime_type = match_path_extname(filename, mime_exts)
6666
type = resolve_transform_type(mime_type, accept)
6767
return nil, deps if accept && !type
6868

@@ -84,7 +84,7 @@ def resolve_relative_path(paths, path, dirname, accept, skip_bundle)
8484
end
8585

8686
def resolve_logical_path(paths, logical_path, accept, skip_bundle)
87-
logical_name, mime_type, _ = parse_path_extnames(logical_path)
87+
logical_name, mime_type = parse_path_extnames(logical_path)
8888
parsed_accept = parse_accept_options(mime_type, accept)
8989
transformed_accepts = expand_transform_accepts(parsed_accept)
9090
filename, mime_type, deps = resolve_under_paths(paths, logical_name, transformed_accepts)
@@ -151,7 +151,7 @@ def path_matches(load_path, logical_name, logical_basename)
151151

152152
result = resolve_alternates(load_path, logical_name)
153153
result[0].each do |fn|
154-
candidates << [fn, parse_path_extnames(fn)[1]]
154+
candidates << [fn, match_path_extname(fn, mime_exts)[1]]
155155
end
156156
deps.merge(result[1])
157157

@@ -166,7 +166,7 @@ def dirname_matches(dirname, basename)
166166
candidates = []
167167
entries, deps = self.entries_with_dependencies(dirname)
168168
entries.each do |entry|
169-
name, type, _ = parse_path_extnames(entry)
169+
name, type = parse_path_extnames(entry)
170170
if basename == name
171171
candidates << [File.join(dirname, entry), type]
172172
end
@@ -178,18 +178,18 @@ def resolve_alternates(load_path, logical_name)
178178
return [], Set.new
179179
end
180180

181-
# Internal: Returns the name, mime type and `Array` of engine extensions.
181+
# Internal: Returns the name and mime type.
182182
#
183183
# "foo.coffee.erb"
184-
# # => ["foo", "application/javascript", [".coffee", ".erb"]]
184+
# # => ["foo", "application/javascript"]
185185
#
186186
def parse_path_extnames(path)
187-
extname, value = match_path_extname(path, config[:_extnames])
187+
extname, type = match_path_extname(path, mime_exts)
188188
if extname
189189
name = path[0...-extname.length]
190-
return name, value[:type], value[:engines]
190+
return name, type
191191
else
192-
return path, nil, []
192+
return path, nil
193193
end
194194
end
195195
end

test/fixtures/engines/hello.alert

Lines changed: 0 additions & 1 deletion
This file was deleted.

test/fixtures/engines/moo.js

Lines changed: 0 additions & 1 deletion
This file was deleted.

test/test_asset.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -952,7 +952,7 @@ def setup
952952
assert_equal "application/javascript", asset.content_type
953953
end
954954

955-
test "asset falls back to engines default mime type" do
955+
test "asset falls back to files default mime type" do
956956
asset = asset("default_mime_type.js")
957957
assert_equal "application/javascript", asset.content_type
958958
end

test/test_path_utils.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ def test_entries
2626
"default",
2727
"directives",
2828
"encoding",
29-
"engines",
3029
"errors",
3130
"octicons",
3231
"paths",

0 commit comments

Comments
 (0)