nodexh 4.0.2 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/main.js CHANGED
@@ -1,16 +1,19 @@
1
1
  (function() {
2
2
  'use strict';
3
- var SFMODULES, exit_handler, format_stack, inspect, write_to_stderr;
3
+ var SFMODULES, debug, exit_handler, format_stack, inspect, write_to_stderr;
4
4
 
5
5
  //###########################################################################################################
6
6
  // blue # Слава Україні
7
7
  // yellow # Слава Україні
8
+ // SFMODULES = require '../../bricabrac-sfmodules'
8
9
  SFMODULES = require('bricabrac-sfmodules');
9
10
 
10
11
  ({format_stack} = SFMODULES.unstable.require_format_stack());
11
12
 
12
13
  ({inspect} = require('node:util'));
13
14
 
15
+ ({debug} = console);
16
+
14
17
  //-----------------------------------------------------------------------------------------------------------
15
18
  write_to_stderr = function(text) {
16
19
  return process.stderr.write(text + '\n');
@@ -18,11 +21,32 @@
18
21
 
19
22
  //-----------------------------------------------------------------------------------------------------------
20
23
  exit_handler = function(error, origin) {
24
+ var secondary_error, stack_rpr;
21
25
  // _exit_handler error, origin
26
+ // debug "Ωnodexh___1 received non-error value (before) #{inspect error}"
27
+ // debug 'Ωnodexh___2', Error.isError error
22
28
  if (!Error.isError(error)) {
23
- error = new Error(`Ωnodexh___5 (not a JS Error value) ${inspect(error)}`);
29
+ error = new Error(`Ωnodexh___3 (not a JS Error value) ${inspect(error)}`);
30
+ debug(`Ωnodexh___4 received non-error value (after) ${error}`);
31
+ }
32
+ try {
33
+ //.........................................................................................................
34
+ stack_rpr = format_stack(error);
35
+ } catch (error1) {
36
+ secondary_error = error1;
37
+ debug('Ωnodexh___5');
38
+ debug('Ωnodexh___6', '-'.repeat(108));
39
+ debug('Ωnodexh___7');
40
+ debug("Ωnodexh___8 when trying to call `format_stack()`, an error was thrown:");
41
+ debug('Ωnodexh___9');
42
+ debug('Ωnodexh__10', inspect(secondary_error));
43
+ debug('Ωnodexh__11');
44
+ debug('Ωnodexh__12', '-'.repeat(108));
45
+ debug('Ωnodexh__13');
46
+ stack_rpr = new Error(`Ωnodexh__14 (not a JS Error value) ${inspect(error)}`);
24
47
  }
25
- write_to_stderr(format_stack(error));
48
+ //.........................................................................................................
49
+ write_to_stderr(stack_rpr);
26
50
  setImmediate((function() {
27
51
  return process.exit(111);
28
52
  }));
@@ -42,4 +66,4 @@
42
66
 
43
67
  }).call(this);
44
68
 
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21haW4uY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQUE7QUFBQSxNQUFBLFNBQUEsRUFBQSxZQUFBLEVBQUEsWUFBQSxFQUFBLE9BQUEsRUFBQSxlQUFBOzs7OztFQU1BLFNBQUEsR0FBNEIsT0FBQSxDQUFRLHFCQUFSOztFQUM1QixDQUFBLENBQUUsWUFBRixDQUFBLEdBQTRCLFNBQVMsQ0FBQyxRQUFRLENBQUMsb0JBQW5CLENBQUEsQ0FBNUI7O0VBQ0EsQ0FBQSxDQUFFLE9BQUYsQ0FBQSxHQUE0QixPQUFBLENBQVEsV0FBUixDQUE1QixFQVJBOzs7RUFXQSxlQUFBLEdBQWtCLFFBQUEsQ0FBRSxJQUFGLENBQUE7V0FBWSxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQWYsQ0FBcUIsSUFBQSxHQUFPLElBQTVCO0VBQVosRUFYbEI7OztFQWNBLFlBQUEsR0FBZSxRQUFBLENBQUUsS0FBRixFQUFTLE1BQVQsQ0FBQSxFQUFBOztJQUViLEtBQU8sS0FBSyxDQUFDLE9BQU4sQ0FBYyxLQUFkLENBQVA7TUFDRSxLQUFBLEdBQVEsSUFBSSxLQUFKLENBQVUsQ0FBQSxtQ0FBQSxDQUFBLENBQXNDLE9BQUEsQ0FBUSxLQUFSLENBQXRDLENBQUEsQ0FBVixFQURWOztJQUVBLGVBQUEsQ0FBZ0IsWUFBQSxDQUFhLEtBQWIsQ0FBaEI7SUFDQSxZQUFBLENBQWEsQ0FBRSxRQUFBLENBQUEsQ0FBQTthQUFHLE9BQU8sQ0FBQyxJQUFSLENBQWEsR0FBYjtJQUFILENBQUYsQ0FBYjtBQUNBLFdBQU87RUFOTSxFQWRmOzs7RUF5QkEsSUFBTyxtREFBUDtJQUNFO0lBQ0EsTUFBTSxDQUFFLE1BQU0sQ0FBQyxHQUFQLENBQVcsdUJBQVgsQ0FBRixDQUFOLEdBQStDO0lBQy9DLE9BQU8sQ0FBQyxJQUFSLENBQWEsbUJBQWIsRUFBbUMsWUFBbkM7SUFDQSxPQUFPLENBQUMsSUFBUixDQUFhLG9CQUFiLEVBQW1DLFlBQW5DLEVBSkY7R0F6QkE7OztFQWlDQSxNQUFNLENBQUMsT0FBUCxHQUFpQixDQUFFLFlBQUY7QUFqQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiXG4ndXNlIHN0cmljdCdcblxuXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiMgYmx1ZSAgICAjINCh0LvQsNCy0LAg0KPQutGA0LDRl9C90ZZcbiMgeWVsbG93ICAjINCh0LvQsNCy0LAg0KPQutGA0LDRl9C90ZZcblNGTU9EVUxFUyAgICAgICAgICAgICAgICAgPSByZXF1aXJlICdicmljYWJyYWMtc2Ztb2R1bGVzJ1xueyBmb3JtYXRfc3RhY2ssICAgICAgICAgfSA9IFNGTU9EVUxFUy51bnN0YWJsZS5yZXF1aXJlX2Zvcm1hdF9zdGFjaygpXG57IGluc3BlY3QsICAgICAgICAgICAgICB9ID0gcmVxdWlyZSAnbm9kZTp1dGlsJ1xuXG4jLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbndyaXRlX3RvX3N0ZGVyciA9ICggdGV4dCApIC0+IHByb2Nlc3Muc3RkZXJyLndyaXRlIHRleHQgKyAnXFxuJ1xuXG4jLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmV4aXRfaGFuZGxlciA9ICggZXJyb3IsIG9yaWdpbiApIC0+XG4gICMgX2V4aXRfaGFuZGxlciBlcnJvciwgb3JpZ2luXG4gIHVubGVzcyBFcnJvci5pc0Vycm9yIGVycm9yXG4gICAgZXJyb3IgPSBuZXcgRXJyb3IgXCLOqW5vZGV4aF9fXzUgKG5vdCBhIEpTIEVycm9yIHZhbHVlKSAje2luc3BlY3QgZXJyb3J9XCJcbiAgd3JpdGVfdG9fc3RkZXJyIGZvcm1hdF9zdGFjayBlcnJvclxuICBzZXRJbW1lZGlhdGUgKCAtPiBwcm9jZXNzLmV4aXQgMTExIClcbiAgcmV0dXJuIG51bGxcblxuXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xudW5sZXNzIGdsb2JhbFsgU3ltYm9sLmZvciAnY25kLWV4Y2VwdGlvbi1oYW5kbGVyJyBdP1xuICBudWxsXG4gIGdsb2JhbFsgU3ltYm9sLmZvciAnY25kLWV4Y2VwdGlvbi1oYW5kbGVyJyBdID0gdHJ1ZVxuICBwcm9jZXNzLm9uY2UgJ3VuY2F1Z2h0RXhjZXB0aW9uJywgIGV4aXRfaGFuZGxlclxuICBwcm9jZXNzLm9uY2UgJ3VuaGFuZGxlZFJlamVjdGlvbicsIGV4aXRfaGFuZGxlclxuXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xubW9kdWxlLmV4cG9ydHMgPSB7IGV4aXRfaGFuZGxlciwgfVxuXG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21haW4uY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQUE7QUFBQSxNQUFBLFNBQUEsRUFBQSxLQUFBLEVBQUEsWUFBQSxFQUFBLFlBQUEsRUFBQSxPQUFBLEVBQUEsZUFBQTs7Ozs7O0VBT0EsU0FBQSxHQUE0QixPQUFBLENBQVEscUJBQVI7O0VBQzVCLENBQUEsQ0FBRSxZQUFGLENBQUEsR0FBNEIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxvQkFBbkIsQ0FBQSxDQUE1Qjs7RUFDQSxDQUFBLENBQUUsT0FBRixDQUFBLEdBQTRCLE9BQUEsQ0FBUSxXQUFSLENBQTVCOztFQUNBLENBQUEsQ0FBRSxLQUFGLENBQUEsR0FBNEIsT0FBNUIsRUFWQTs7O0VBYUEsZUFBQSxHQUFrQixRQUFBLENBQUUsSUFBRixDQUFBO1dBQVksT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFmLENBQXFCLElBQUEsR0FBTyxJQUE1QjtFQUFaLEVBYmxCOzs7RUFnQkEsWUFBQSxHQUFlLFFBQUEsQ0FBRSxLQUFGLEVBQVMsTUFBVCxDQUFBO0FBQ2YsUUFBQSxlQUFBLEVBQUEsU0FBQTs7OztJQUdFLEtBQU8sS0FBSyxDQUFDLE9BQU4sQ0FBYyxLQUFkLENBQVA7TUFDRSxLQUFBLEdBQVEsSUFBSSxLQUFKLENBQVUsQ0FBQSxtQ0FBQSxDQUFBLENBQXNDLE9BQUEsQ0FBUSxLQUFSLENBQXRDLENBQUEsQ0FBVjtNQUNSLEtBQUEsQ0FBTSxDQUFBLDZDQUFBLENBQUEsQ0FBZ0QsS0FBaEQsQ0FBQSxDQUFOLEVBRkY7O0FBSUE7O01BQ0UsU0FBQSxHQUFZLFlBQUEsQ0FBYSxLQUFiLEVBRGQ7S0FFQSxjQUFBO01BQU07TUFDSixLQUFBLENBQU0sYUFBTjtNQUNBLEtBQUEsQ0FBTSxhQUFOLEVBQXFCLEdBQUcsQ0FBQyxNQUFKLENBQVcsR0FBWCxDQUFyQjtNQUNBLEtBQUEsQ0FBTSxhQUFOO01BQ0EsS0FBQSxDQUFNLHdFQUFOO01BQ0EsS0FBQSxDQUFNLGFBQU47TUFDQSxLQUFBLENBQU0sYUFBTixFQUFxQixPQUFBLENBQVEsZUFBUixDQUFyQjtNQUNBLEtBQUEsQ0FBTSxhQUFOO01BQ0EsS0FBQSxDQUFNLGFBQU4sRUFBcUIsR0FBRyxDQUFDLE1BQUosQ0FBVyxHQUFYLENBQXJCO01BQ0EsS0FBQSxDQUFNLGFBQU47TUFDQSxTQUFBLEdBQVksSUFBSSxLQUFKLENBQVUsQ0FBQSxtQ0FBQSxDQUFBLENBQXNDLE9BQUEsQ0FBUSxLQUFSLENBQXRDLENBQUEsQ0FBVixFQVZkO0tBVEY7O0lBcUJFLGVBQUEsQ0FBZ0IsU0FBaEI7SUFDQSxZQUFBLENBQWEsQ0FBRSxRQUFBLENBQUEsQ0FBQTthQUFHLE9BQU8sQ0FBQyxJQUFSLENBQWEsR0FBYjtJQUFILENBQUYsQ0FBYjtBQUNBLFdBQU87RUF4Qk0sRUFoQmY7OztFQTZDQSxJQUFPLG1EQUFQO0lBQ0U7SUFDQSxNQUFNLENBQUUsTUFBTSxDQUFDLEdBQVAsQ0FBVyx1QkFBWCxDQUFGLENBQU4sR0FBK0M7SUFDL0MsT0FBTyxDQUFDLElBQVIsQ0FBYSxtQkFBYixFQUFtQyxZQUFuQztJQUNBLE9BQU8sQ0FBQyxJQUFSLENBQWEsb0JBQWIsRUFBbUMsWUFBbkMsRUFKRjtHQTdDQTs7O0VBcURBLE1BQU0sQ0FBQyxPQUFQLEdBQWlCLENBQUUsWUFBRjtBQXJEakIiLCJzb3VyY2VzQ29udGVudCI6WyJcbid1c2Ugc3RyaWN0J1xuXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuIyBibHVlICAgICMg0KHQu9Cw0LLQsCDQo9C60YDQsNGX0L3RllxuIyB5ZWxsb3cgICMg0KHQu9Cw0LLQsCDQo9C60YDQsNGX0L3RllxuIyBTRk1PRFVMRVMgICAgICAgICAgICAgICAgID0gcmVxdWlyZSAnLi4vLi4vYnJpY2FicmFjLXNmbW9kdWxlcydcblNGTU9EVUxFUyAgICAgICAgICAgICAgICAgPSByZXF1aXJlICdicmljYWJyYWMtc2Ztb2R1bGVzJ1xueyBmb3JtYXRfc3RhY2ssICAgICAgICAgfSA9IFNGTU9EVUxFUy51bnN0YWJsZS5yZXF1aXJlX2Zvcm1hdF9zdGFjaygpXG57IGluc3BlY3QsICAgICAgICAgICAgICB9ID0gcmVxdWlyZSAnbm9kZTp1dGlsJ1xueyBkZWJ1ZywgICAgICAgICAgICAgICAgfSA9IGNvbnNvbGVcblxuIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG53cml0ZV90b19zdGRlcnIgPSAoIHRleHQgKSAtPiBwcm9jZXNzLnN0ZGVyci53cml0ZSB0ZXh0ICsgJ1xcbidcblxuIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5leGl0X2hhbmRsZXIgPSAoIGVycm9yLCBvcmlnaW4gKSAtPlxuICAjIF9leGl0X2hhbmRsZXIgZXJyb3IsIG9yaWdpblxuICAjIGRlYnVnIFwizqlub2RleGhfX18xIHJlY2VpdmVkIG5vbi1lcnJvciB2YWx1ZSAoYmVmb3JlKSAje2luc3BlY3QgZXJyb3J9XCJcbiAgIyBkZWJ1ZyAnzqlub2RleGhfX18yJywgRXJyb3IuaXNFcnJvciBlcnJvclxuICB1bmxlc3MgRXJyb3IuaXNFcnJvciBlcnJvclxuICAgIGVycm9yID0gbmV3IEVycm9yIFwizqlub2RleGhfX18zIChub3QgYSBKUyBFcnJvciB2YWx1ZSkgI3tpbnNwZWN0IGVycm9yfVwiXG4gICAgZGVidWcgXCLOqW5vZGV4aF9fXzQgcmVjZWl2ZWQgbm9uLWVycm9yIHZhbHVlIChhZnRlcikgI3tlcnJvcn1cIlxuICAjLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uXG4gIHRyeVxuICAgIHN0YWNrX3JwciA9IGZvcm1hdF9zdGFjayBlcnJvclxuICBjYXRjaCBzZWNvbmRhcnlfZXJyb3JcbiAgICBkZWJ1ZyAnzqlub2RleGhfX181J1xuICAgIGRlYnVnICfOqW5vZGV4aF9fXzYnLCAnLScucmVwZWF0IDEwOFxuICAgIGRlYnVnICfOqW5vZGV4aF9fXzcnXG4gICAgZGVidWcgXCLOqW5vZGV4aF9fXzggd2hlbiB0cnlpbmcgdG8gY2FsbCBgZm9ybWF0X3N0YWNrKClgLCBhbiBlcnJvciB3YXMgdGhyb3duOlwiXG4gICAgZGVidWcgJ86pbm9kZXhoX19fOSdcbiAgICBkZWJ1ZyAnzqlub2RleGhfXzEwJywgaW5zcGVjdCBzZWNvbmRhcnlfZXJyb3JcbiAgICBkZWJ1ZyAnzqlub2RleGhfXzExJ1xuICAgIGRlYnVnICfOqW5vZGV4aF9fMTInLCAnLScucmVwZWF0IDEwOFxuICAgIGRlYnVnICfOqW5vZGV4aF9fMTMnXG4gICAgc3RhY2tfcnByID0gbmV3IEVycm9yIFwizqlub2RleGhfXzE0IChub3QgYSBKUyBFcnJvciB2YWx1ZSkgI3tpbnNwZWN0IGVycm9yfVwiXG4gICMuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi5cbiAgd3JpdGVfdG9fc3RkZXJyIHN0YWNrX3JwclxuICBzZXRJbW1lZGlhdGUgKCAtPiBwcm9jZXNzLmV4aXQgMTExIClcbiAgcmV0dXJuIG51bGxcblxuXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xudW5sZXNzIGdsb2JhbFsgU3ltYm9sLmZvciAnY25kLWV4Y2VwdGlvbi1oYW5kbGVyJyBdP1xuICBudWxsXG4gIGdsb2JhbFsgU3ltYm9sLmZvciAnY25kLWV4Y2VwdGlvbi1oYW5kbGVyJyBdID0gdHJ1ZVxuICBwcm9jZXNzLm9uY2UgJ3VuY2F1Z2h0RXhjZXB0aW9uJywgIGV4aXRfaGFuZGxlclxuICBwcm9jZXNzLm9uY2UgJ3VuaGFuZGxlZFJlamVjdGlvbicsIGV4aXRfaGFuZGxlclxuXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xubW9kdWxlLmV4cG9ydHMgPSB7IGV4aXRfaGFuZGxlciwgfVxuXG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nodexh",
3
- "version": "4.0.2",
3
+ "version": "4.1.1",
4
4
  "description": "a wrapper around the `node` executable for better stacktraces with sourcemaps, sourcecode excerpts",
5
5
  "main": "lib/main.js",
6
6
  "bin": {
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "homepage": "https://github.com/loveencounterflow/nodexh",
25
25
  "dependencies": {
26
- "bricabrac-sfmodules": "^0.14.1"
26
+ "bricabrac-sfmodules": "^0.21.0"
27
27
  },
28
28
  "scripts": {
29
29
  "build": "coffee --map -o lib -c src"
package/src/main.coffee CHANGED
@@ -5,9 +5,11 @@
5
5
  ############################################################################################################
6
6
  # blue # Слава Україні
7
7
  # yellow # Слава Україні
8
+ # SFMODULES = require '../../bricabrac-sfmodules'
8
9
  SFMODULES = require 'bricabrac-sfmodules'
9
10
  { format_stack, } = SFMODULES.unstable.require_format_stack()
10
11
  { inspect, } = require 'node:util'
12
+ { debug, } = console
11
13
 
12
14
  #-----------------------------------------------------------------------------------------------------------
13
15
  write_to_stderr = ( text ) -> process.stderr.write text + '\n'
@@ -15,9 +17,27 @@ write_to_stderr = ( text ) -> process.stderr.write text + '\n'
15
17
  #-----------------------------------------------------------------------------------------------------------
16
18
  exit_handler = ( error, origin ) ->
17
19
  # _exit_handler error, origin
20
+ # debug "Ωnodexh___1 received non-error value (before) #{inspect error}"
21
+ # debug 'Ωnodexh___2', Error.isError error
18
22
  unless Error.isError error
19
- error = new Error "Ωnodexh___5 (not a JS Error value) #{inspect error}"
20
- write_to_stderr format_stack error
23
+ error = new Error "Ωnodexh___3 (not a JS Error value) #{inspect error}"
24
+ debug "Ωnodexh___4 received non-error value (after) #{error}"
25
+ #.........................................................................................................
26
+ try
27
+ stack_rpr = format_stack error
28
+ catch secondary_error
29
+ debug 'Ωnodexh___5'
30
+ debug 'Ωnodexh___6', '-'.repeat 108
31
+ debug 'Ωnodexh___7'
32
+ debug "Ωnodexh___8 when trying to call `format_stack()`, an error was thrown:"
33
+ debug 'Ωnodexh___9'
34
+ debug 'Ωnodexh__10', inspect secondary_error
35
+ debug 'Ωnodexh__11'
36
+ debug 'Ωnodexh__12', '-'.repeat 108
37
+ debug 'Ωnodexh__13'
38
+ stack_rpr = new Error "Ωnodexh__14 (not a JS Error value) #{inspect error}"
39
+ #.........................................................................................................
40
+ write_to_stderr stack_rpr
21
41
  setImmediate ( -> process.exit 111 )
22
42
  return null
23
43