node-source-map-support icon indicating copy to clipboard operation
node-source-map-support copied to clipboard

Only first line working?

Open olalonde opened this issue 7 years ago • 2 comments

node v8.0.0

src/throw-err.js (not compiled)

import 'source-map-support/register'

const main = async () => {
  throw new Error('wooot')
}

main().catch(console.error)

lib/throw-err.js (compiled with babel)

'use strict';

require('source-map-support/register');

function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }

const main = (() => {
  var _ref = _asyncToGenerator(function* () {
    throw new Error('wooot');
  });

  return function main() {
    return _ref.apply(this, arguments);
  };
})();

main().catch(console.error);
//# sourceMappingURL=throw-err.js.map

lib/throw-err.js.map (source map)

{"version":3,"sources":["../src/throw-err.js"],"names":["main","Error","catch","console","error"],"mappings":";;AAAA;;;;AAEA,MAAMA;AAAA,+BAAO,aAAY;AACvB,UAAM,IAAIC,KAAJ,CAAU,OAAV,CAAN;AACD,GAFK;;AAAA;AAAA;AAAA;AAAA,IAAN;;AAIAD,OAAOE,KAAP,CAAaC,QAAQC,KAArB","file":"throw-err.js","sourcesContent":["import 'source-map-support/register'\n\nconst main = async () => {\n  throw new Error('wooot')\n}\n\nmain().catch(console.error)\n"]}
$ node lib/throw-err.js
Error: wooot
    at /Users/olalonde/code/binded/filepunk/src/throw-err.js:4:9
    at Generator.next (<anonymous>)
    at step (/Users/olalonde/code/binded/filepunk/lib/throw-err.js:5:191)
    at /Users/olalonde/code/binded/filepunk/lib/throw-err.js:5:437
    at Promise (<anonymous>)
    at /Users/olalonde/code/binded/filepunk/lib/throw-err.js:5:99
    at main (/Users/olalonde/code/binded/filepunk/src/throw-err.js:3:7)
    at Object.<anonymous> (/Users/olalonde/code/binded/filepunk/src/throw-err.js:7:1)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)

Why Is only the first line of the stack trace correct? at Generator.next (<anonymous>) and lines with lib/ should not be there.

olalonde avatar Jun 17 '17 01:06 olalonde

The same is happening to me on node 10. I'm using typescript to generate the sourcemap. Only the first line is correct. If you need more info let me know.

jdolle avatar May 26 '18 00:05 jdolle

Why Is only the first line of the stack trace correct?

It's not the only line.

at main (/Users/olalonde/code/binded/filepunk/src/throw-err.js:3:7)
at Object.<anonymous> (/Users/olalonde/code/binded/filepunk/src/throw-err.js:7:1)

The other lines are not in your sourcemap, so what is it you're expecting? (and how is source-map-support supposed to know how to do the thing)

at Generator.next (<anonymous>) [should not be there]

Why? Its in the provided stack trace, do you expect source-map-support to remove the line?

[{
	"source": "../src/throw-err.js",
	"generatedLine": 3,
	"generatedColumn": 0,
	"originalLine": 1,
	"originalColumn": 0,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 7,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 0,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 7,
	"generatedColumn": 6,
	"originalLine": 3,
	"originalColumn": 6,
	"name": "main"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 8,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 8,
	"generatedColumn": 31,
	"originalLine": 3,
	"originalColumn": 13,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 8,
	"generatedColumn": 44,
	"originalLine": 3,
	"originalColumn": 25,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 0,
	"originalLine": 4,
	"originalColumn": 2,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 10,
	"originalLine": 4,
	"originalColumn": 8,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 14,
	"originalLine": 4,
	"originalColumn": 12,
	"name": "Error"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 19,
	"originalLine": 4,
	"originalColumn": 8,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 20,
	"originalLine": 4,
	"originalColumn": 18,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 27,
	"originalLine": 4,
	"originalColumn": 8,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 9,
	"generatedColumn": 28,
	"originalLine": 4,
	"originalColumn": 2,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 10,
	"generatedColumn": 0,
	"originalLine": 5,
	"originalColumn": 1,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 10,
	"generatedColumn": 3,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 12,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 13,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 14,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 15,
	"generatedColumn": 0,
	"originalLine": 3,
	"originalColumn": 6,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 15,
	"generatedColumn": 4,
	"originalLine": 3,
	"originalColumn": 0,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 0,
	"originalLine": 7,
	"originalColumn": 0,
	"name": "main"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 7,
	"originalLine": 7,
	"originalColumn": 7,
	"name": "catch"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 12,
	"originalLine": 7,
	"originalColumn": 0,
	"name": null
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 13,
	"originalLine": 7,
	"originalColumn": 13,
	"name": "console"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 21,
	"originalLine": 7,
	"originalColumn": 21,
	"name": "error"
}, {
	"source": "../src/throw-err.js",
	"generatedLine": 17,
	"generatedColumn": 26,
	"originalLine": 7,
	"originalColumn": 0,
	"name": null
}]

thiakil avatar Sep 01 '18 05:09 thiakil