workers-sdk icon indicating copy to clipboard operation
workers-sdk copied to clipboard

Initial support for VSCode Javascript Debug Terminals

Open penalosa opened this issue 5 months ago • 3 comments

Fixes #[insert GH or internal issue link(s)].

Support for Javascript Debug Terminals in VSCode! This is an improvment to debugging DX when using VSCode—especially with multiple Workers. All you need to do is open a debug terminal, run wrangler dev, and the inspector will be connected—even when using using Wrangler's multiworker mode (which means you can set breakpoints across service bindings).

Caveats: this still doesn't work in the Vite plugin, and relies heavily on VSCode internals

See also https://github.com/microsoft/vscode-js-debug/issues/2233


  • Tests
    • [ ] TODO (before merge)
    • [ ] Tests included
    • [x] Tests not necessary because: this should be manually tested in VSCode
  • Wrangler / Vite E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)
    • [ ] I don't know
    • [ ] Required
    • [x] Not required because: this should be manually tested in VSCode
  • Public documentation
    • [x] TODO (before merge)
    • [ ] Cloudflare docs PR(s):
    • [ ] Documentation not necessary because:
  • Wrangler V3 Backport
    • [ ] TODO (before merge)
    • [ ] Wrangler PR:
    • [x] Not necessary because: not a patch change

penalosa avatar Jun 09 '25 16:06 penalosa

🦋 Changeset detected

Latest commit: ba17331fddacb3da107fdf159264d9762d8dd5f0

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 5 packages
Name Type
miniflare Patch
wrangler Patch
@cloudflare/pages-shared Patch
@cloudflare/vite-plugin Patch
@cloudflare/vitest-pool-workers Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

changeset-bot[bot] avatar Jun 09 '25 16:06 changeset-bot[bot]

create-cloudflare

npm i https://pkg.pr.new/create-cloudflare@9535
@cloudflare/kv-asset-handler

npm i https://pkg.pr.new/@cloudflare/kv-asset-handler@9535
miniflare

npm i https://pkg.pr.new/miniflare@9535
@cloudflare/pages-shared

npm i https://pkg.pr.new/@cloudflare/pages-shared@9535
@cloudflare/unenv-preset

npm i https://pkg.pr.new/@cloudflare/unenv-preset@9535
@cloudflare/vite-plugin

npm i https://pkg.pr.new/@cloudflare/vite-plugin@9535
@cloudflare/vitest-pool-workers

npm i https://pkg.pr.new/@cloudflare/vitest-pool-workers@9535
@cloudflare/workers-editor-shared

npm i https://pkg.pr.new/@cloudflare/workers-editor-shared@9535
wrangler

npm i https://pkg.pr.new/wrangler@9535

commit: ba17331

pkg-pr-new[bot] avatar Jun 09 '25 16:06 pkg-pr-new[bot]

Failed to automatically backport this PR's changes to Wrangler v3. Please manually create a PR targeting the v3-maintenance branch with your changes. Thank you for helping us keep Wrangler v3 supported!

Depending on your changes, running git rebase --onto v3-maintenance main penalosa/js-debug-terminal might be a good starting point.

github-actions[bot] avatar Jun 10 '25 15:06 github-actions[bot]

This is awesome and very exciting! What happens if the user hits d in Wrangler to open the dev tools when we have not created an inspector proxy?

They get a logged message saying the inspector is not available. Maybe that message should be clearer about why though

penalosa avatar Jul 02 '25 08:07 penalosa