Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Breakpoints do not bind when debugging localhost url using WSL

Open
#344 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
linux, node.js, typescript, vscode, webpack

Research direction

Reproduce the issue with the provided VS Code Firefox launch configuration in a TypeScript webpack project served from WSL, comparing the localhost and network URLs. Start by investigating how the Firefox debug adapter handles URL matching, source maps, and pathMappings; done means breakpoints bind when debugging the localhost URL, while the existing network URL behavior remains working.

Written by the indexing model from the issue text.

Description

bug remote development windows

I have a typescript webpack project running on WSL serving on the following addresses:

<i> [webpack-dev-server] Project is running at:
<i> [webpack-dev-server] Loopback: http://localhost:8080/
<i> [webpack-dev-server] On Your Network (IPv4): http://172.23.198.163:8080/

I can access both addresses, but debug breakpoints will not bind when accessing the page through the localhost url. When I restart the debug session using the network url, the breakpoints do bind. This is an issue not only for network access reasons, but because certain web APIs cannot be accessed in insecure contexts (e.g. crypto.subtle)

This is only an issue when serving from WSL. When running the project from a normal windows environment both urls work fine.

The Chrome debugger does not have this issue with WSL.

This issue is only with breakpoints in vscode. The browser debugger works fine. Source maps are being loaded.

{
    "configurations": [
        {
            "type": "firefox",
            "request": "launch",
            "name": "firefox",
            "url": "http://localhost:8080",
            // "url": "http://172.23.198.163:8080",
            "webRoot": "${workspaceFolder}",
            "skipFiles": [
                "<node_internals>/**",
                "**/node_modules/**"
            ],
            "pathMappings": [
                {
                    "url": "webpack://<my-cool-project>/src",
                    "path": "${workspaceFolder}/src"
                }
            ]
        },
        {
            "name": "chrome",
            "request": "launch",
            "type": "chrome",
            "url": "http://localhost:8080",
            "webRoot": "${workspaceFolder}",
            "skipFiles": [
                "<node_internals>/**",
                "**/node_modules/**"
            ]
        }
    ]
}
firefox developer edition
version: 119.0b2 (64-bit)
node version: 18.18.0
WSL version: 1.2.5.0
Kernel version: 5.15.90.1
WSLg version: 1.0.51
MSRDC version: 1.2.3770
Direct3D version: 1.608.2-61064218
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22621.2134
Dominant language
TypeScript
Stars
446
Forks
77
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from firefox-devtools/vscode-firefox-debug

All issues in firefox-devtools/vscode-firefox-debug

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.