Skip to content

Display debugged sub-processes as a treeview #62972

Closed
@DonJayamanne

Description

@DonJayamanne

Terms

  • sub-process: It’s basically a process started by a parent process (analogous to spawn in node).

Debug toolbar should show run configurations in drop-down, not processes

  • The current solution implemented within the python extension for sub-process debugging is as follows:
    • User launches some python code in VSC debugger
    • The user code in the python program then spins up a sub process
    • The Python debug adapter intercepts the above call, and launches a sub-process in a remote debugging manner (so that the VS Code debugger can attach to it).
    • The extension gets a notification about this with the new process ID and starts a debug session by attaching to the above sub-process
    • We now have a dropdown in the debug toolbar with two items:
    • First item – Original debug configuration name
    • Second item – “Child Process xyz” (name provided by the extension when starting the new debug session)

Expected behavior

  • VSC needs to provide a way to display child processes in the UI.
  • Single click to stop debugging (when debugging child processes)

Current behavior

  • Python Extension is displaying child process as another debug configuration.
  • This leads to confusions amongst users.
    • The user launched one program for debugging, why are they now getting two debug sessions, with a stop and detach button?
    • The user has to click on the red icon to stop debugging twice (first Detach then Stop).
  • If the user were to start debugging some other application such as React/node.js (or similar), then this additional item in the dropdown of the debug toolbar adds to the confusion.
    • As before, the user started debugging two applications, but they have 3 items in the dropdown.

Metadata

Metadata

Labels

debugDebug viewlet, configurations, breakpoints, adapter issuesfeature-requestRequest for new features or functionalityrelease-notesRelease notes issuesverification-neededVerification of issue is requestedverifiedVerification succeeded

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions