Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debug Breakpoints not working #45657

Closed
psmocko opened this issue Mar 13, 2018 · 41 comments
Closed

Debug Breakpoints not working #45657

psmocko opened this issue Mar 13, 2018 · 41 comments
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug candidate Issue identified as probable candidate for fixing in the next release debug Debug viewlet, configurations, breakpoints, adapter issues verified Verification succeeded
Milestone

Comments

@psmocko
Copy link

psmocko commented Mar 13, 2018

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 (9a199d7, 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
@isidorn
Copy link
Contributor

isidorn commented Mar 13, 2018

Wow there cowboy. What language are you debugging?
Can you provide a simple repository for which we can reproduce this constantly?

@isidorn isidorn added the info-needed Issue requires more information from poster label Mar 13, 2018
@psmocko
Copy link
Author

psmocko commented Mar 13, 2018 via email

@isidorn isidorn assigned roblourens and weinand and unassigned isidorn Mar 13, 2018
@isidorn isidorn added the debug Debug viewlet, configurations, breakpoints, adapter issues label Mar 13, 2018
@lostfields
Copy link

lostfields commented Mar 14, 2018

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

@weinand
Copy link
Contributor

weinand commented Mar 14, 2018

@lostfields the launch.json is missing from the project. How does your launch.json look like?

@lostfields
Copy link

lostfields commented Mar 14, 2018

@weinand the launch is inside the .code-workspace file. You have to open it as a workspace (not folder).

@weinand
Copy link
Contributor

weinand commented Mar 14, 2018

Aha, thanks. I've filed an issue about this #45749

@weinand
Copy link
Contributor

weinand commented Mar 14, 2018

Your setup works fine for me on macOS with VS Code 1.21 and 1.22.
I'll try to reproduce on Windows...

@chrumck
Copy link

chrumck commented Mar 14, 2018

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

@weinand
Copy link
Contributor

weinand commented Mar 14, 2018

Yep, I can repro on Windows.
Are you all seeing this issue on Windows?

@chrumck
Copy link

chrumck commented Mar 14, 2018

@weinand I'm on Windows.

@weinand
Copy link
Contributor

weinand commented Mar 14, 2018

@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",....

@weinand weinand removed their assignment Mar 14, 2018
@weinand weinand added bug Issue identified by VS Code Team member as probable bug and removed info-needed Issue requires more information from poster labels Mar 14, 2018
@psmocko
Copy link
Author

psmocko commented Mar 14, 2018 via email

@roblourens
Copy link
Member

@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.

@roblourens roblourens added the candidate Issue identified as probable candidate for fixing in the next release label Mar 15, 2018
@roblourens
Copy link
Member

roblourens commented Mar 15, 2018

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".

roblourens added a commit to microsoft/vscode-chrome-debug-core that referenced this issue Mar 15, 2018
@lostfields
Copy link

lostfields commented Mar 18, 2018

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.

@lostfields
Copy link

@roblourens why is this closed when it still doesn't work?

@JosepAlacid
Copy link

@roblourens

Or, right click the breakpoints pane and "Reapply all breakpoints".

@lostfields
Copy link

@roblourens @JosepAlacid reapply breakpoints works but I really hope that's a temporary work-around.

@vytautas-pranskunas-
Copy link

When can we expect it to be fixed and released - it is very annoying to write tests without debugging...

@roblourens
Copy link
Member

@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.

@lostfields
Copy link

@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.

@lostfields
Copy link

lostfields commented Mar 22, 2018

@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.

Launch "Run program (workspace)"

1.22.0

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

1.20.1

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.

Launch "Launch mocha tests (workspace)"

1.22.0

Never hits the breakpoint if I place it at src/test/basic.ts:30

1.20.1

Hits the breakpoint at src/test/basic.ts:30

@roblourens
Copy link
Member

roblourens commented Mar 22, 2018

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.

@denismp
Copy link

denismp commented Mar 22, 2018

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
Copy link
Member

Try Insiders https://code.visualstudio.com/insiders

#45657 (comment)

@lostfields
Copy link

@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

@roblourens
Copy link
Member

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 roblourens added this to the March 2018 milestone Mar 23, 2018
@borekb
Copy link

borekb commented Mar 23, 2018

@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/

@dh94
Copy link

dh94 commented Mar 24, 2018

for me the latest version of the insiders fixed it 👌

@FilipLaurentiu
Copy link

Still broke Debugger for Chrome version 4.2.2, Vs Code 1.21.1

@roblourens
Copy link
Member

Please open a new issue in https://github.com/microsoft/vscode-chrome-debug/issues with details

@psmocko
Copy link
Author

psmocko commented Mar 26, 2018 via email

@rebornix
Copy link
Member

@roblourens can you provide more details about what we should verify?

@rebornix rebornix added the verification-steps-needed Steps to verify are needed for verification label Mar 30, 2018
@roblourens
Copy link
Member

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

@rebornix rebornix added verified Verification succeeded and removed verification-steps-needed Steps to verify are needed for verification labels Mar 30, 2018
@vscodebot vscodebot bot locked and limited conversation to collaborators Apr 30, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug candidate Issue identified as probable candidate for fixing in the next release debug Debug viewlet, configurations, breakpoints, adapter issues verified Verification succeeded
Projects
None yet
Development

No branches or pull requests