Issue Type: Bug
After getting te last update, breakpoints no longer work. The breakpoints are breaking on the wrong line of code and therefore are not working.
VS Code version: Code 1.21.0 (9a199d77c82fcb82f39c68bb33c614af01c111ba, 2018-03-07T11:04:09.969Z)
OS version: Windows_NT x64 6.1.7601
System Info
|Item|Value|
|---|---|
|CPUs|Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz (12 x 3491)|
|Memory (System)|15.92GB (6.54GB free)|
|Process Argv|C:\Program Files\Microsoft VS Code\Code.exe|
|Screen Reader|no|
|VM|0%|
Extensions (8)
Extension|Author (truncated)|Version
---|---|---
npm-intellisense|chr|1.3.0
vscode-eslint|dba|1.4.7
vscode-html-css|ecm|0.2.0
auto-rename-tag|for|0.0.15
Angular-BeastCode|Mik|5.2.18
team|ms-|1.122.0
debugger-for-chrome|msj|4.2.0
vscode-icons|rob|7.21.0
Reproduces without extensions
Wow there cowboy. What language are you debugging?
Can you provide a simple repository for which we can reproduce this constantly?
The language is typescript\JavaScript. I have not had this problem until
the latest update this week. I do not have a repo at this point as this is
code I a developing at work. I can try to reproduce in another project if
need be.
Paul
On Mar 13, 2018 8:39 AM, "Isidor Nikolic" notifications@github.com wrote:
Wow there cowboy. What language are you debugging?
Can you provide a simple repository for which we can reproduce this
constantly?โ
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/45657#issuecomment-372667637,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKcQtlyhNrr67bf0F4vHuWhWHEXbDVWXks5td8vzgaJpZM4SosJt
.
I got the same problem using typescript and ts-node. It works when I'm using the keyword debugger though.
This is a showstopper, have to downgrade (again)
If you want an example, you may clone https://github.com/lostfields/express-ts-router and open the workspace file after installing dependency and launch the debug "Launch mocha tests (workspace)" after inserting a breaking to /src/test/basic.ts:29
@lostfields the launch.json is missing from the project. How does your launch.json look like?
@weinand the launch is inside the .code-workspace file. You have to open it as a workspace (not folder).
Aha, thanks. I've filed an issue about this https://github.com/Microsoft/vscode/issues/45749
Your setup works fine for me on macOS with VS Code 1.21 and 1.22.
I'll try to reproduce on Windows...
Same problem here. Here's a little project I've created for showcase the problem. If you set a breakpoint in the gulpFile.js, it's not going to get hit. Interestingly, after changing the casing from gulpFile.js to gulpfile.js and re-setting the breakpoints, they do get hit!
My problem started breakpoints in ts files and Jest test suites though, so I tried the trick of changing the casing there, but it doesn't work the same way.
EDIT: I'm working on Windows
Yep, I can repro on Windows.
Are you all seeing this issue on Windows?
@weinand I'm on Windows.
@roblourens I've produced debug-logs
for VS Code 1.20.3 (where the bp is hit) and 1.21.0 (where the bp is missed).
There is an interesting difference when the TS file with the breakpoint ("basic.ts") is loaded. In 1.20.3 the load triggers a SourceMaps.setBP in 1.21.0 it does not.
Please note that we started to normalize drive letters in 1.21 (see #43959). But I could not spot any drive-letter-casing differences in the logs.
VS Code 1.20.3:
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts
SourceMap: creating for c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\\Users\\weinand\\Projects\\REPROS\\bug45657\\express-ts-router\\src\\test\\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test
SourceMaps.scriptParsed: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts was just loaded and has mapped sources: ["c:\\Users\\weinand\\Projects\\REPROS\\bug45657\\express-ts-router\\src\\test\\basic.ts"]
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts:22:1 to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts:16:5
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts:29:1 to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts:20:9
โ To target: "{\"id\":13,\"method\":\"Debugger.getPossibleBreakpoints\",\"params\":{\"start\":{\"scriptId\":\"195\",\"lineNumber\":15,\"columnNumber\":0},\"end\":{\"scriptId\":\"195\",\"lineNumber\":16,\"columnNumber\":0},\"restrictToFunction\":false}}"
โ To target: "{\"id\":14,\"method\":\"Debugger.getPossibleBreakpoints\",\"params\":{\"start\":{\"scriptId\":\"195\",\"lineNumber\":19,\"columnNumber\":0},\"end\":{\"scriptId\":\"195\",\"lineNumber\":20,\"columnNumber\":0},\"restrictToFunction\":false}}"
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"196",....
VS Code 1.21.2:
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts
SourceMap: creating for c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\\Users\\weinand\\Projects\\REPROS\\bug45657\\express-ts-router\\src\\test\\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test
SourceMaps.scriptParsed: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts was just loaded and has mapped sources: ["c:\\Users\\weinand\\Projects\\REPROS\\bug45657\\express-ts-router\\src\\test\\basic.ts"]
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"195",....
I am on Windows as well. This just started after the last update.
Paul
On Mar 14, 2018 7:02 AM, "Andre Weinand" notifications@github.com wrote:
@roblourens https://github.com/roblourens I've produced debug-logs
https://github.com/Microsoft/vscode/files/1810886/traces.zip
for VS Code 1.20.3 (where the bp is hit) and 1.21.0 (where the bp is
missed).There is an interesting difference when the TS file with the breakpoint
("basic.ts") is loaded. In 1.20.3 the load triggers a SourceMaps.setBP in
1.21.0 it does not.Please note that we started to normalize drive letters in 1.21 (see #43959
https://github.com/Microsoft/vscode/issues/43959).VS Code 1.20.3:
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts
SourceMap: creating for c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest
SourceMaps.scriptParsed: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts was just loaded and has mapped sources: ["c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts"]
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts:22:1 to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts:16:5
SourceMaps.setBP: Mapped c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts:29:1 to c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts:20:9
โ To target: "{\"id\":13,\"method\":\"Debugger.getPossibleBreakpoints\",\"params\":{\"start\":{\"scriptId\":\"195\",\"lineNumber\":15,\"columnNumber\":0},\"end\":{\"scriptId\":\"195\",\"lineNumber\":16,\"columnNumber\":0},\"restrictToFunction\":false}}"
โ To target: "{\"id\":14,\"method\":\"Debugger.getPossibleBreakpoints\",\"params\":{\"start\":{\"scriptId\":\"195\",\"lineNumber\":19,\"columnNumber\":0},\"end\":{\"scriptId\":\"195\",\"lineNumber\":20,\"columnNumber\":0},\"restrictToFunction\":false}}"
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"196",....VS Code 1.21.2:
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts
SourceMap: creating for c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest
SourceMaps.scriptParsed: c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\srctest\basic.ts was just loaded and has mapped sources: ["c:\Users\weinand\Projects\REPROS\bug45657\express-ts-router\src\test\basic.ts"]
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"195",....โ
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/45657#issuecomment-372997271,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKcQtr2OKUNq_FVGJqjo2yTgldBKHWk1ks5teQbpgaJpZM4SosJt
.
@weinand Thanks for the logs, wish I'd seen them earlier today. I came to the same conclusion after much debugging. I don't think I knew about the drive letter normalization. Unfortunately the debug adapter normalizes to lower case, but doesn't do it for one case that's being hit here.
Summary - this was broken by #43959, there is one case where the adapter doesn't correctly fix the drive letter case. I have a low-impact fix, everyone please try it in tomorrow's Insiders build (or the next vscode-chrome-debug update) and let me know how it goes.
Marked as candidate in case we get a 1.21.2 out but wouldn't trigger a .2 by itself.
The best workaround for people using 1.21 is to set the outFiles parameter in your launch config so that the adapter can load the sourcemaps before debugging starts. This is generally the best thing to do, and partly explains why this wasn't found earlier, because it won't repro with that set.
For people using ts-node, outFiles doesn't help because the sourcemaps don't exist on disk, so they can't be preloaded. The only workaround there is to deactivate then reactive breakpoints after debugging has started, since the bug is avoided if BPs are set when the scripts have been loaded. Or, right click the breakpoints pane and "Reapply all breakpoints".
I just tested the latest insiders build and it's still not working quite right. See my comment in an example project here.
Some breakpoints are being hit again. However, not all of them. Some are skipped.
Or, right click the breakpoints pane and "Reapply all breakpoints". (https://github.com/Microsoft/vscode/issues/45657#issuecomment-373556464)
This seems to work for plain debugging but not for tests in our ts-node + Jest + ts-jest project:

For reference, ts-jest issue: https://github.com/kulshekhar/ts-jest/issues/466
I'm experimenting some more and some things seem really weird. For example, when trying to debug Jest tests in TS, ever even try hits a breakpoint while every odd one fails. Maybe Jest is doing something funny because on every other run, I see this progress bar in the console:

and breakpoints are not hit only when I see this. Strange..
BTW this is in Insiders (1.22.0-insider 9160e85b1ab0333dfe697032f90da494f1f81fd4) where I can confirm the current patch seems to generally work, compared to 1.21.1 stable version which never hits any breakpoints in my test scenario.
Can you share your project? I tried the repo from https://github.com/kulshekhar/ts-jest/issues/466 and it now works fine for me.
@roblourens I actually just reproduced the issue with the repo given in kulshekhar/ts-jest#466 in 1.22.0-insider 9160e85. Is there more info I could provide?
If there's a remaining issue, it's a race condition or something that is difficult to repro. I only have access to Windows VMs right now, maybe it's easier to reproduce on a physical Windows machine, which I don't have at the moment.
But it would be very helpful if you could run with "trace": true on 1.20 where it works as expected and upload the log, then repeat it on 1.22.0-insider where it does not work as expected.
When using ts-node which transpiles ts in memory, it's impossible for us to guarantee that we'll be able to hit breakpoints in code that runs immediately, because there's a race between the script starting to run, and the debug adapter loading the sourcemap and setting the breakpoint. So anything in the debug adapter could have changed the timing to make this less likely to work.
@roblourens Are there links to previous Insider versions of VSCode? I'd try the 1.20 version but hesitate to do so in my main VSCode installation. (Would be interesting to have access to previous links to VSCode Insiders anyway.)
https://github.com/lostfields/express-ts-router
@roblourens It doesn't work for me in this project, works in 1.20.1, but not in 1.22.0-insider. I got the logs but they are huge, so I just include a small part that I think shows the problem
1.20.1
SourceMap: creating for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist\tsconfig.js
SourceMap: sourceRoot:
SourceMap: sources: ["../src/tsconfig.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist
SourceMaps.scriptParsed: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist\tsconfig.js was just loaded and has mapped sources: ["c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\tsconfig\\src\\tsconfig.ts"]
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"192","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-json-comments\\index.js","startLine":0,"startColumn":0,"endLine":71,"endColumn":3,"executionContextId":1,"hash":"6D4014000209C27442AA30424E1170189E4D3573","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":1766,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"index.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-json-comments\\index.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"193","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\typescript\\lib\\typescript.js","startLine":0,"startColumn":0,"endLine":97971,"endColumn":3,"executionContextId":1,"hash":"F32664E2E09E04656BBAD2F232D917D0D95649B1","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":5526829,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"typescript.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\typescript\\lib\\typescript.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"194","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\mocha\\lib\\interfaces\\common.js","startLine":0,"startColumn":0,"endLine":156,"endColumn":3,"executionContextId":1,"hash":"675DCC9316BAEC53A3BF404242AF9288D0CFABC2","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":3864,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"common.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\mocha\\lib\\interfaces\\common.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"195","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts","startLine":0,"startColumn":0,"endLine":35,"endColumn":3,"executionContextId":1,"hash":"E8E3ED130B72C1008AC5C213F289D81A10B0D834","isLiveEdit":false,"sourceMapURL":"data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQzpcXFVzZXJzXFxOaWNvbGFpXFxTb3VyY2VcXFdvcmtzcGFjZXNcXGxvc3RmaWVsZHNcXGV4cHJlc3MtdHMtcm91dGVyXFxzcmNcXHRlc3RcXGJhc2ljLnRzIiwic291cmNlcyI6WyJDOlxcVXNlcnNcXE5pY29sYWlcXFNvdXJjZVxcV29ya3NwYWNlc1xcbG9zdGZpZWxkc1xcZXhwcmVzcy10cy1yb3V0ZXJcXHNyY1xcdGVzdFxcYmFzaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBZ0M7QUFDaEMseUNBQWlDO0FBRWpDLG1DQUFrQztBQUNsQyxzQ0FBbUM7QUFFbkMsSUFBSSxHQUFHLEdBQUcsT0FBTyxFQUFFLEVBQ2YsTUFBTSxHQUFHLElBQUksY0FBTSxFQUFFLENBQUE7QUFFekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7S0FDWixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7SUFDZCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUM1RCxDQUFDLENBQUMsQ0FBQTtBQUVOLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0tBQ2YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQ2QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDcEQsQ0FBQyxDQUFDLENBQUM7QUFFUCxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtBQUdyQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBRXZDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFFaEIsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekMsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsUUFBUSxDQUFDO2FBQ2IsTUFBTSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUM7YUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWhCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDekMsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDN0MsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsWUFBWSxDQUFDO2FBQ2pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO2FBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVoQixNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0J1xyXG5pbXBvcnQgeyBhZ2VudCB9IGZyb20gJ3N1cGVydGVzdCdcclxuXHJcbmltcG9ydCAqIGFzIGV4cHJlc3MgZnJvbSAnZXhwcmVzcydcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnLi8uLi9pbmRleCdcclxuXHJcbmxldCBhcHAgPSBleHByZXNzKCksXHJcbiAgICByb3V0ZXIgPSBuZXcgUm91dGVyKClcclxuXHJcbnJvdXRlci5yb3V0ZSgnLycpXHJcbiAgICAuZ2V0KChyZXEsIHJlcykgPT4ge1xyXG4gICAgICAgIHJlcy5zdGF0dXMoMjAwKS5zZW5kKFt7IHVzZXI6ICczMjEnIH0sIHsgdXNlcjogJzMyMScgfV0pXHJcbiAgICB9KVxyXG5cclxucm91dGVyLnJvdXRlKCcvOmlkJylcclxuICAgIC5nZXQoKHJlcSwgcmVzKSA9PiB7XHJcbiAgICAgICAgcmVzLnN0YXR1cygyMDApLnNlbmQoeyB1c2VyOiByZXEucGFyYW1zWydpZCddIH0pXHJcbiAgICB9KTtcclxuXHJcbmFwcC51c2UoJy91c2VycycsIHJvdXRlci5nZXRSb3V0ZXIoKSlcclxuXHJcblxyXG5kZXNjcmliZSgnV2hlbiB1c2luZyBhIHBsYWluIHJvdXRlcicsICgpID0+IHtcclxuXHJcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMnLCBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgbGV0IHJlc3BvbnNlID0gYXdhaXQgYWdlbnQoYXBwKVxyXG4gICAgICAgICAgICAuZ2V0KCcvdXNlcnMnKVxyXG4gICAgICAgICAgICAuZXhwZWN0KCdDb250ZW50LVR5cGUnLCAvanNvbi8pXHJcbiAgICAgICAgICAgIC5leHBlY3QoMjAwKVxyXG5cclxuICAgICAgICBhc3NlcnQuZXF1YWwocmVzcG9uc2UuYm9keS5sZW5ndGgsIDIpXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMvMTIzJywgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGFnZW50KGFwcClcclxuICAgICAgICAgICAgLmdldCgnL3VzZXJzLzEyMycpXHJcbiAgICAgICAgICAgIC5leHBlY3QoJ0NvbnRlbnQtVHlwZScsIC9qc29uLylcclxuICAgICAgICAgICAgLmV4cGVjdCgyMDApXHJcblxyXG4gICAgICAgIGFzc2VydC5lcXVhbChyZXNwb25zZS5ib2R5LnVzZXIsICcxMjMnKVxyXG4gICAgfSlcclxufSkiXX0=","hasSourceURL":false,"isModule":false,"length":4907,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
SourceMaps.getMapForGeneratedPath: Finding SourceMap for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts by URI: data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQzpcXFVzZXJzXFxOaWNvbGFpXFxTb3VyY2VcXFdvcmtzcGFjZXNcXGxvc3RmaWVsZHNcXGV4cHJlc3MtdHMtcm91dGVyXFxzcmNcXHRlc3RcXGJhc2ljLnRzIiwic291cmNlcyI6WyJDOlxcVXNlcnNcXE5pY29sYWlcXFNvdXJjZVxcV29ya3NwYWNlc1xcbG9zdGZpZWxkc1xcZXhwcmVzcy10cy1yb3V0ZXJcXHNyY1xcdGVzdFxcYmFzaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBZ0M7QUFDaEMseUNBQWlDO0FBRWpDLG1DQUFrQztBQUNsQyxzQ0FBbUM7QUFFbkMsSUFBSSxHQUFHLEdBQUcsT0FBTyxFQUFFLEVBQ2YsTUFBTSxHQUFHLElBQUksY0FBTSxFQUFFLENBQUE7QUFFekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7S0FDWixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7SUFDZCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUM1RCxDQUFDLENBQUMsQ0FBQTtBQUVOLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0tBQ2YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQ2QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDcEQsQ0FBQyxDQUFDLENBQUM7QUFFUCxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtBQUdyQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBRXZDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFFaEIsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekMsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsUUFBUSxDQUFDO2FBQ2IsTUFBTSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUM7YUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWhCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDekMsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDN0MsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsWUFBWSxDQUFDO2FBQ2pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO2FBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVoQixNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0J1xyXG5pbXBvcnQgeyBhZ2VudCB9IGZyb20gJ3N1cGVydGVzdCdcclxuXHJcbmltcG9ydCAqIGFzIGV4cHJlc3MgZnJvbSAnZXhwcmVzcydcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnLi8uLi9pbmRleCdcclxuXHJcbmxldCBhcHAgPSBleHByZXNzKCksXHJcbiAgICByb3V0ZXIgPSBuZXcgUm91dGVyKClcclxuXHJcbnJvdXRlci5yb3V0ZSgnLycpXHJcbiAgICAuZ2V0KChyZXEsIHJlcykgPT4ge1xyXG4gICAgICAgIHJlcy5zdGF0dXMoMjAwKS5zZW5kKFt7IHVzZXI6ICczMjEnIH0sIHsgdXNlcjogJzMyMScgfV0pXHJcbiAgICB9KVxyXG5cclxucm91dGVyLnJvdXRlKCcvOmlkJylcclxuICAgIC5nZXQoKHJlcSwgcmVzKSA9PiB7XHJcbiAgICAgICAgcmVzLnN0YXR1cygyMDApLnNlbmQoeyB1c2VyOiByZXEucGFyYW1zWydpZCddIH0pXHJcbiAgICB9KTtcclxuXHJcbmFwcC51c2UoJy91c2VycycsIHJvdXRlci5nZXRSb3V0ZXIoKSlcclxuXHJcblxyXG5kZXNjcmliZSgnV2hlbiB1c2luZyBhIHBsYWluIHJvdXRlcicsICgpID0+IHtcclxuXHJcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMnLCBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgbGV0IHJlc3BvbnNlID0gYXdhaXQgYWdlbnQoYXBwKVxyXG4gICAgICAgICAgICAuZ2V0KCcvdXNlcnMnKVxyXG4gICAgICAgICAgICAuZXhwZWN0KCdDb250ZW50LVR5cGUnLCAvanNvbi8pXHJcbiAgICAgICAgICAgIC5leHBlY3QoMjAwKVxyXG5cclxuICAgICAgICBhc3NlcnQuZXF1YWwocmVzcG9uc2UuYm9keS5sZW5ndGgsIDIpXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMvMTIzJywgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGFnZW50KGFwcClcclxuICAgICAgICAgICAgLmdldCgnL3VzZXJzLzEyMycpXHJcbiAgICAgICAgICAgIC5leHBlY3QoJ0NvbnRlbnQtVHlwZScsIC9qc29uLylcclxuICAgICAgICAgICAgLmV4cGVjdCgyMDApXHJcblxyXG4gICAgICAgIGFzc2VydC5lcXVhbChyZXNwb25zZS5ib2R5LnVzZXIsICcxMjMnKVxyXG4gICAgfSlcclxufSkiXX0=
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts
SourceMap: creating for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test
SourceMaps.scriptParsed: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts was just loaded and has mapped sources: ["c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts"]
To client: {"seq":0,"type":"event","event":"output","body":{"category":"telemetry","output":"setBreakpointsRequest","data":{"fileExt":".ts"}}}
SourceMaps.setBP: Mapped c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts to c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts
SourceMaps.setBP: Mapped c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts:30:1 to c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts:21:9
โ To target: "{\"id\":13,\"method\":\"Debugger.getPossibleBreakpoints\",\"params\":{\"start\":{\"scriptId\":\"195\",\"lineNumber\":20,\"columnNumber\":0},\"end\":{\"scriptId\":\"195\",\"lineNumber\":21,\"columnNumber\":0},\"restrictToFunction\":false}}"
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"196","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\supertest\\index.js","startLine":0,"startColumn":0,"endLine":46,"endColumn":3,"executionContextId":1,"hash":"905B4470D6BCBC897C0587C6A6573DB4D932FE13","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":786,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"197","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\methods\\index.js","startLine":0,"startColumn":0,"endLine":70,"endColumn":3,"executionContextId":1,"hash":"0F1111B3FED621B43B4EE9906DA9ECACE19E5794","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":1106,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"198","url":"http.js","startLine":0,"startColumn":0,"endLine":62,"endColumn":3,"executionContextId":1,"hash":"17E6DC81738DE70047293A827301CEE4EFE9C074","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":2150,"stackTrace":{"callFrames":[{"functionName":"runInThisContext","scriptId":"21","url":"bootstrap_node.js","lineNumber":495,"columnNumber":19}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"basic.ts","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts","origin":"read-only content from Node.js"}}}
1.22.0-insider
SourceMap: creating for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist\tsconfig.js
SourceMap: sourceRoot:
SourceMap: sources: ["../src/tsconfig.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist
SourceMaps.scriptParsed: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\node_modules\tsconfig\dist\tsconfig.js was just loaded and has mapped sources: ["c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\tsconfig\\src\\tsconfig.ts"]
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"190","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-bom\\index.js","startLine":0,"startColumn":0,"endLine":15,"endColumn":3,"executionContextId":1,"hash":"EB1ADBB3ECB4E5E3D027C264FF25D23520C4E3A5","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":383,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"index.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-bom\\index.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"191","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-json-comments\\index.js","startLine":0,"startColumn":0,"endLine":71,"endColumn":3,"executionContextId":1,"hash":"6D4014000209C27442AA30424E1170189E4D3573","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":1766,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"index.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\strip-json-comments\\index.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"192","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\typescript\\lib\\typescript.js","startLine":0,"startColumn":0,"endLine":97971,"endColumn":3,"executionContextId":1,"hash":"F32664E2E09E04656BBAD2F232D917D0D95649B1","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":5526829,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"typescript.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\typescript\\lib\\typescript.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"193","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\mocha\\lib\\interfaces\\common.js","startLine":0,"startColumn":0,"endLine":156,"endColumn":3,"executionContextId":1,"hash":"675DCC9316BAEC53A3BF404242AF9288D0CFABC2","isLiveEdit":false,"sourceMapURL":"","hasSourceURL":false,"isModule":false,"length":3864,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"common.js","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\node_modules\\mocha\\lib\\interfaces\\common.js","origin":"read-only content from Node.js"}}}
โ From target: {"method":"Debugger.scriptParsed","params":{"scriptId":"194","url":"C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts","startLine":0,"startColumn":0,"endLine":35,"endColumn":3,"executionContextId":1,"hash":"E8E3ED130B72C1008AC5C213F289D81A10B0D834","isLiveEdit":false,"sourceMapURL":"data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQzpcXFVzZXJzXFxOaWNvbGFpXFxTb3VyY2VcXFdvcmtzcGFjZXNcXGxvc3RmaWVsZHNcXGV4cHJlc3MtdHMtcm91dGVyXFxzcmNcXHRlc3RcXGJhc2ljLnRzIiwic291cmNlcyI6WyJDOlxcVXNlcnNcXE5pY29sYWlcXFNvdXJjZVxcV29ya3NwYWNlc1xcbG9zdGZpZWxkc1xcZXhwcmVzcy10cy1yb3V0ZXJcXHNyY1xcdGVzdFxcYmFzaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBZ0M7QUFDaEMseUNBQWlDO0FBRWpDLG1DQUFrQztBQUNsQyxzQ0FBbUM7QUFFbkMsSUFBSSxHQUFHLEdBQUcsT0FBTyxFQUFFLEVBQ2YsTUFBTSxHQUFHLElBQUksY0FBTSxFQUFFLENBQUE7QUFFekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7S0FDWixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7SUFDZCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUM1RCxDQUFDLENBQUMsQ0FBQTtBQUVOLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0tBQ2YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQ2QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDcEQsQ0FBQyxDQUFDLENBQUM7QUFFUCxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtBQUdyQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBRXZDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFFaEIsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekMsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsUUFBUSxDQUFDO2FBQ2IsTUFBTSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUM7YUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWhCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDekMsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDN0MsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsWUFBWSxDQUFDO2FBQ2pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO2FBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVoQixNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0J1xyXG5pbXBvcnQgeyBhZ2VudCB9IGZyb20gJ3N1cGVydGVzdCdcclxuXHJcbmltcG9ydCAqIGFzIGV4cHJlc3MgZnJvbSAnZXhwcmVzcydcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnLi8uLi9pbmRleCdcclxuXHJcbmxldCBhcHAgPSBleHByZXNzKCksXHJcbiAgICByb3V0ZXIgPSBuZXcgUm91dGVyKClcclxuXHJcbnJvdXRlci5yb3V0ZSgnLycpXHJcbiAgICAuZ2V0KChyZXEsIHJlcykgPT4ge1xyXG4gICAgICAgIHJlcy5zdGF0dXMoMjAwKS5zZW5kKFt7IHVzZXI6ICczMjEnIH0sIHsgdXNlcjogJzMyMScgfV0pXHJcbiAgICB9KVxyXG5cclxucm91dGVyLnJvdXRlKCcvOmlkJylcclxuICAgIC5nZXQoKHJlcSwgcmVzKSA9PiB7XHJcbiAgICAgICAgcmVzLnN0YXR1cygyMDApLnNlbmQoeyB1c2VyOiByZXEucGFyYW1zWydpZCddIH0pXHJcbiAgICB9KTtcclxuXHJcbmFwcC51c2UoJy91c2VycycsIHJvdXRlci5nZXRSb3V0ZXIoKSlcclxuXHJcblxyXG5kZXNjcmliZSgnV2hlbiB1c2luZyBhIHBsYWluIHJvdXRlcicsICgpID0+IHtcclxuXHJcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMnLCBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgbGV0IHJlc3BvbnNlID0gYXdhaXQgYWdlbnQoYXBwKVxyXG4gICAgICAgICAgICAuZ2V0KCcvdXNlcnMnKVxyXG4gICAgICAgICAgICAuZXhwZWN0KCdDb250ZW50LVR5cGUnLCAvanNvbi8pXHJcbiAgICAgICAgICAgIC5leHBlY3QoMjAwKVxyXG5cclxuICAgICAgICBhc3NlcnQuZXF1YWwocmVzcG9uc2UuYm9keS5sZW5ndGgsIDIpXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMvMTIzJywgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGFnZW50KGFwcClcclxuICAgICAgICAgICAgLmdldCgnL3VzZXJzLzEyMycpXHJcbiAgICAgICAgICAgIC5leHBlY3QoJ0NvbnRlbnQtVHlwZScsIC9qc29uLylcclxuICAgICAgICAgICAgLmV4cGVjdCgyMDApXHJcblxyXG4gICAgICAgIGFzc2VydC5lcXVhbChyZXNwb25zZS5ib2R5LnVzZXIsICcxMjMnKVxyXG4gICAgfSlcclxufSkiXX0=","hasSourceURL":false,"isModule":false,"length":4907,"stackTrace":{"callFrames":[{"functionName":"createScript","scriptId":"48","url":"vm.js","lineNumber":79,"columnNumber":9}]}}}
SourceMaps.getMapForGeneratedPath: Finding SourceMap for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts by URI: data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQzpcXFVzZXJzXFxOaWNvbGFpXFxTb3VyY2VcXFdvcmtzcGFjZXNcXGxvc3RmaWVsZHNcXGV4cHJlc3MtdHMtcm91dGVyXFxzcmNcXHRlc3RcXGJhc2ljLnRzIiwic291cmNlcyI6WyJDOlxcVXNlcnNcXE5pY29sYWlcXFNvdXJjZVxcV29ya3NwYWNlc1xcbG9zdGZpZWxkc1xcZXhwcmVzcy10cy1yb3V0ZXJcXHNyY1xcdGVzdFxcYmFzaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBZ0M7QUFDaEMseUNBQWlDO0FBRWpDLG1DQUFrQztBQUNsQyxzQ0FBbUM7QUFFbkMsSUFBSSxHQUFHLEdBQUcsT0FBTyxFQUFFLEVBQ2YsTUFBTSxHQUFHLElBQUksY0FBTSxFQUFFLENBQUE7QUFFekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7S0FDWixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7SUFDZCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUM1RCxDQUFDLENBQUMsQ0FBQTtBQUVOLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0tBQ2YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQ2QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDcEQsQ0FBQyxDQUFDLENBQUM7QUFFUCxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtBQUdyQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBRXZDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFFaEIsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekMsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsUUFBUSxDQUFDO2FBQ2IsTUFBTSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUM7YUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWhCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDekMsQ0FBQyxDQUFDLENBQUE7SUFFRixFQUFFLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDN0MsSUFBSSxRQUFRLEdBQUcsTUFBTSxpQkFBSyxDQUFDLEdBQUcsQ0FBQzthQUMxQixHQUFHLENBQUMsWUFBWSxDQUFDO2FBQ2pCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO2FBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVoQixNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0J1xyXG5pbXBvcnQgeyBhZ2VudCB9IGZyb20gJ3N1cGVydGVzdCdcclxuXHJcbmltcG9ydCAqIGFzIGV4cHJlc3MgZnJvbSAnZXhwcmVzcydcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnLi8uLi9pbmRleCdcclxuXHJcbmxldCBhcHAgPSBleHByZXNzKCksXHJcbiAgICByb3V0ZXIgPSBuZXcgUm91dGVyKClcclxuXHJcbnJvdXRlci5yb3V0ZSgnLycpXHJcbiAgICAuZ2V0KChyZXEsIHJlcykgPT4ge1xyXG4gICAgICAgIHJlcy5zdGF0dXMoMjAwKS5zZW5kKFt7IHVzZXI6ICczMjEnIH0sIHsgdXNlcjogJzMyMScgfV0pXHJcbiAgICB9KVxyXG5cclxucm91dGVyLnJvdXRlKCcvOmlkJylcclxuICAgIC5nZXQoKHJlcSwgcmVzKSA9PiB7XHJcbiAgICAgICAgcmVzLnN0YXR1cygyMDApLnNlbmQoeyB1c2VyOiByZXEucGFyYW1zWydpZCddIH0pXHJcbiAgICB9KTtcclxuXHJcbmFwcC51c2UoJy91c2VycycsIHJvdXRlci5nZXRSb3V0ZXIoKSlcclxuXHJcblxyXG5kZXNjcmliZSgnV2hlbiB1c2luZyBhIHBsYWluIHJvdXRlcicsICgpID0+IHtcclxuXHJcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMnLCBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgbGV0IHJlc3BvbnNlID0gYXdhaXQgYWdlbnQoYXBwKVxyXG4gICAgICAgICAgICAuZ2V0KCcvdXNlcnMnKVxyXG4gICAgICAgICAgICAuZXhwZWN0KCdDb250ZW50LVR5cGUnLCAvanNvbi8pXHJcbiAgICAgICAgICAgIC5leHBlY3QoMjAwKVxyXG5cclxuICAgICAgICBhc3NlcnQuZXF1YWwocmVzcG9uc2UuYm9keS5sZW5ndGgsIDIpXHJcbiAgICB9KVxyXG5cclxuICAgIGl0KCdzaG91bGQgcm91dGUgR0VUIGZvciAvdXNlcnMvMTIzJywgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGFnZW50KGFwcClcclxuICAgICAgICAgICAgLmdldCgnL3VzZXJzLzEyMycpXHJcbiAgICAgICAgICAgIC5leHBlY3QoJ0NvbnRlbnQtVHlwZScsIC9qc29uLylcclxuICAgICAgICAgICAgLmV4cGVjdCgyMDApXHJcblxyXG4gICAgICAgIGFzc2VydC5lcXVhbChyZXNwb25zZS5ib2R5LnVzZXIsICcxMjMnKVxyXG4gICAgfSlcclxufSkiXX0=
SourceMaps.getMapForGeneratedPath: Using inlined sourcemap in c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts
SourceMap: creating for c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts
SourceMap: sourceRoot: undefined
SourceMap: sources: ["C:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts"]
SourceMap: no sourceRoot specified, using script dirname: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test
SourceMaps.scriptParsed: c:\Users\Lostfields\Source\Workspaces\lostfields\express-ts-router\src\test\basic.ts was just loaded and has mapped sources: ["c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts"]
To client: {"seq":0,"type":"event","event":"loadedSource","body":{"reason":"new","source":{"name":"basic.ts","path":"c:\\Users\\Lostfields\\Source\\Workspaces\\lostfields\\express-ts-router\\src\\test\\basic.ts","origin":"read-only content from Node.js"}}}
I've noticed that 1.20.1 has about 5 entries of To client: {"seq":0,"type":"event","event":"output","body":{"category":"telemetry","output":"setBreakpointsRequest","data":{"fileExt":".ts"}}} but 1.22.0 only has 1 entry.
@roblourens why is this closed when it still doesn't work?
@roblourens
Or, right click the breakpoints pane and "Reapply all breakpoints".
@roblourens @JosepAlacid reapply breakpoints works but I really hope that's a temporary work-around.
When can we expect it to be fixed and released - it is very annoying to write tests without debugging...
@lostfields Trying multiple projects and windows machines, I still haven't been able to reproduce another issue in Insiders.
That part of the log isn't large enough, could you upload the whole thing? You can send it to the email address in my profile if that's easier.
Also, could you set "breakOnLoadStrategy": "regex" in the launch config and try again? You will get a warning about that property not being recognized but you can ignore it. It's an experimental feature that could help here.
@roblourens Hi, I've mailed you the logs now, for the newest insider vs vscode 1.20.1. Have you opened the project at https://github.com/lostfields/express-ts-router as a Workspace ? The workspace file contains the launch code I've been using.
{
"name": "Launch mocha tests",
"type": "node",
"request": "launch",
"program": "${workspaceRoot:express-ts-router}/node_modules/mocha/bin/_mocha",
"stopOnEntry": false,
"args": ["--no-timeouts", "--compilers", "ts:ts-node/register", "${workspaceRoot:express-ts-router}/src/test/*.ts"],
"cwd": "${workspaceRoot:express-ts-router}",
"protocol": "inspector",
"trace": true
}
Still got issues. I had to remove the "breakOnLoadStrategy" for 1.20.1 since my breakpoints didn't hit when I had this. For 1.22.0 it didn't matter whether it was there or not, since my breakpoints never hit.
@roblourens I may have found something interesting. Open my project as a Workspace using the express-ts-router.code-workspace file at "https://github.com/lostfields/express-ts-router". It seems like it never hit breakpoints in other files but the startup file.
Debugging by launching "Run program (workspace)" works if I place a breakpoint at src/index.ts:10, but it does not break at my breakpoint at src/express/router.ts:15
I did the same thing here, breakpoints at src/index.ts:10 and src/express/router.ts:15. The last one didn't hit, I had to set a breakpoint at src/index.ts:8 to get all breakpoints to hit. Seems like a race condition as you mentioned earlier.
Never hits the breakpoint if I place it at src/test/basic.ts:30
Hits the breakpoint at src/test/basic.ts:30
Yes, I've been opening it as a workspace and testing with the same launch config and setup, and hitting the breakpoint consistently. Received the logs, thanks.
I recently upgraded to 1.21.0 and now 1.21.1, both of which broke the breakpoints. I tried going back to version 1.16, which really messed things up, so now I am at 1.21.1. Is there going to be a fix to this?
@roblourens my disk (harddrive) is pretty slow at the moment, may that affect anything?
Version 1.22.0-insider
Commit b75321329388d74e34f79dcfcb789246e31836a8
Date 2018-03-22T06:16:52.928Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64
Looking at it offline with @lostfields, we found that an old version of the node-debug2 extension was somehow installed.
@borekb I think you also are still having issues using Insiders. Could you check whether you have anything at <home folder>/.vscode-insiders/extensions/ms-vscode.node-debug2-something?
@roblourens Nope :(
~/.vscode-insiders/extensions
$ ls -l
total 12
drwxr-xr-x 1 Borek 197609 0 Feb 22 09:16 EditorConfig.editorconfig-0.12.1/
drwxr-xr-x 1 Borek 197609 0 Mar 6 13:47 Shan.code-settings-sync-2.9.0/
drwxr-xr-x 1 Borek 197609 0 Mar 10 14:30 yzhang.markdown-all-in-one-1.1.0/
for me the latest version of the insiders fixed it ๐
Still broke Debugger for Chrome version 4.2.2, Vs Code 1.21.1
Please open a new issue in https://github.com/microsoft/vscode-chrome-debug/issues with details
That is the whole issue that got me onto this thread. Chrome debugging.
Unfortunately I do not have the luxury of time to help out by installing
and trying out all of these different versions as I am the sole dev on a
big project right now.
Paul
On Mon, Mar 26, 2018, 1:13 AM Rob Lourens notifications@github.com wrote:
Please open a new issue in
https://github.com/microsoft/vscode-chrome-debug/issues with detailsโ
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/45657#issuecomment-376057016,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKcQtk3DuNpLcjDRlY-WqYplZG5pC9Fnks5tiIb2gaJpZM4SosJt
.
@roblourens can you provide more details about what we should verify?
Easy way is to clone https://github.com/Jostar1024/ts-jest-vscode-1.21.0, set breakpoints in the tests, run the launch config. It should hit the BPs in insiders but not stable
Most helpful comment
@roblourens why is this closed when it still doesn't work?