},
emitError: pscMessage => {
if (pscMessage.length) {
+ const modules = [];
+
const matchErrorsSeparator = /\n(?=Error)/;
const errors = pscMessage.split(matchErrorsSeparator);
for (const error of errors) {
}
}
- if (typeof this.extractPursDependenciesFromError === 'function') {
- const dependencies = this.extractPursDependenciesFromError(error) || [];
+ const desc = {
+ name: baseModuleName,
+ filename: baseModulePath
+ };
+
+ if (typeof this.describePscError === 'function') {
+ const { dependencies = [], details } = this.describePscError(error, desc);
for (const dep of dependencies) {
this.addDependency(dep);
}
+
+ Object.assign(desc, details);
}
+
+ modules.push(desc);
}
- CACHE_VAR.errors.push(pscMessage);
+ CACHE_VAR.errors.push(new utils.PscError(pscMessage, modules));
}
}
}