Skip to content

Commit 5803fd7

Browse files
committed
display a note about the breaking change when forgot the -loader prefix
1 parent afbdff4 commit 5803fd7

4 files changed

Lines changed: 19 additions & 0 deletions

File tree

lib/NormalModuleFactory.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,16 @@ NormalModuleFactory.prototype.resolveRequestArray = function resolveRequestArray
213213
if(array.length === 0) return callback(null, []);
214214
async.map(array, function(item, callback) {
215215
resolver.resolve(contextInfo, context, item.loader, function(err, result) {
216+
if(err && /^[^/]*$/.test(item.loader) && !/-loader$/.test(item.loader)) {
217+
return resolver.resolve(contextInfo, context, item.loader + "-loader", function(err2) {
218+
if(!err2) {
219+
err.message = err.message + "\n" +
220+
"BREAKING CHANGE: It's no longer allowed to omit the '-loader' prefix when using loaders.\n" +
221+
" You need to specify '" + item.loader + "-loader' instead of '" + item.loader + "'.";
222+
}
223+
callback(err);
224+
});
225+
}
216226
if(err) return callback(err);
217227
return callback(null, objectAssign({}, item, {
218228
loader: result
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
module.exports = [
2+
[/Can't resolve 'any' in/, /BREAKING CHANGE/, /any-loader/],
3+
[/Can't resolve 'other' in/]
4+
];
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
require.include("any!");
2+
require.include("other!");
3+
4+
it("should have correct errors", function() {})

test/cases/resolving/issue-2986/node_modules/any-loader.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)