From 4840157779e0493717c859f02f19b336cd1e4860 Mon Sep 17 00:00:00 2001 From: Sam Clegg Date: Tue, 26 Mar 2019 10:02:55 -0700 Subject: [PATCH] Reduce the default verbosity of JS library error messages (#8339) Currently the entire library is printed which makes seeing the actual error very difficult. Normally the filename and line number should be sufficient and we can put the rest of it befind VERBOSE=1. --- src/modules.js | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/modules.js b/src/modules.js index aa06c0e609c0..1ecfce4a24c4 100644 --- a/src/modules.js +++ b/src/modules.js @@ -160,11 +160,24 @@ var LibraryManager = { processed = processMacros(preprocess(src, filename)); eval(processed); } catch(e) { - var details = [e, e.lineNumber ? 'line number: ' + e.lineNumber : '', (e.stack || "").toString().replace('Object.', filename)]; + var details = [e, e.lineNumber ? 'line number: ' + e.lineNumber : '']; + if (VERBOSE) { + details.push((e.stack || "").toString().replace('Object.', filename)); + } if (processed) { - error('failure to execute js library "' + filename + '": ' + details + '\npreprocessed source (you can run a js engine on this to get a clearer error message sometimes):\n=============\n' + processed + '\n=============\n'); + error('failure to execute js library "' + filename + '": ' + details); + if (VERBOSE) { + error('preprocessed source (you can run a js engine on this to get a clearer error message sometimes):\n=============\n' + processed + '\n============='); + } else { + error('use -s VERBOSE to see more details') + } } else { - error('failure to process js library "' + filename + '": ' + details + '\noriginal source:\n=============\n' + src + '\n=============\n'); + error('failure to process js library "' + filename + '": ' + details); + if (VERBOSE) { + error('original source:\n=============\n' + src + '\n============='); + } else { + error('use -s VERBOSE to see more details') + } } throw e; }