Comparing version 0.12.7 to 0.12.8
@@ -57,3 +57,3 @@ | ||
}) | ||
.end(); | ||
.done(); | ||
}; | ||
@@ -83,3 +83,3 @@ | ||
}) | ||
.end(); | ||
.done(); | ||
}; | ||
@@ -86,0 +86,0 @@ |
@@ -52,3 +52,3 @@ /* <copyright> | ||
function onerror() { | ||
response.reject("Can't XHR " + JSON.stringify(url)); | ||
response.reject(new Error("Can't XHR " + JSON.stringify(url))); | ||
} | ||
@@ -55,0 +55,0 @@ |
{ | ||
"name": "mr", | ||
"version": "0.12.7", | ||
"version": "0.12.8", | ||
"description": "A refresh-only CommonJS module system for browsers, used in Montage", | ||
@@ -5,0 +5,0 @@ "main": "require", |
@@ -157,2 +157,4 @@ | ||
})); | ||
}, function (error) { | ||
module.error = error; | ||
}); | ||
@@ -169,3 +171,3 @@ } | ||
throw new Error( | ||
"Can't require " + JSON.stringify(module.id) + | ||
"Can't require module " + JSON.stringify(module.id) + | ||
" by alternate spelling " + JSON.stringify(topId) | ||
@@ -175,2 +177,13 @@ ); | ||
// check for load error | ||
if (module.error) { | ||
var error = new Error( | ||
"Can't require module " + JSON.stringify(module.id) + | ||
" via " + JSON.stringify(viaId) + | ||
" because " + module.error.message | ||
); | ||
error.cause = module.error; | ||
throw error; | ||
} | ||
// handle redirects | ||
@@ -268,11 +281,4 @@ if (module.redirect !== void 0) { | ||
return deepLoad(topId, viaId) | ||
// conconditionally require the module, but if there's an | ||
// error, throw it in a separate turn so it gets logged | ||
.then(function () { | ||
return require(topId); | ||
}, function (error) { | ||
Promise.nextTick(function () { | ||
throw error; | ||
}); | ||
return require(topId); | ||
}); | ||
@@ -279,0 +285,0 @@ }; |
@@ -37,5 +37,5 @@ /* <copyright> | ||
} catch (exception) { | ||
console.log(exception.message); | ||
test.assert(exception.message === 'Can\'t require module "a" via "program"'); | ||
test.print(exception.message); | ||
test.assert(/Can't require module "a" via "program" because Can't XHR /.test(exception.message)); | ||
} | ||
test.print('DONE', 'info'); |
@@ -5,4 +5,8 @@ var test = require("test"); | ||
throw "should not be able to require dev-dependency in production mode"; | ||
}, function (err) { | ||
test.assert(err.message === 'Can\'t require module "dev-dependency" via "program"', "cannot require dev-dependency in production mode"); | ||
}, function (error) { | ||
console.log(error.message); | ||
test.assert( | ||
/Can\'t require module "dev-dependency" via "program"/.test(error.message), | ||
"cannot require dev-dependency in production mode" | ||
); | ||
}) | ||
@@ -9,0 +13,0 @@ .then(function () { |
433061
8893
16