microsoft / microsoft/debug-adapter-protocol
Clarify the sequence for loading code/symbols
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 1.8k
- Forks
- 173
- Avg merge
- 7d 7h
- Merged PRs (30d)
- 2
Description
The sequence diagram in the documentation under the section 'Configuring breakpoint and exception behavior' is confusing for the scenario where code or symbols needs to be loaded into the debug adapter.
The setBreakpoints request resolves to the GDB 'break' command, then the launch request resolves to the 'file' command. These are out-of-order, issuing a 'break' before 'file' results in: No symbol table is loaded. Use the "file" command.
I'm developing a debug adapter for an interpreter running on a microcontroller and would like some clarity around using the launch request to load code into the interpreter. By the time the launch request is issued, a setBreakpoints request has already been completed. Is it expected the debug adapter cache breakpoints until the launch request, then load the symbols/code, then set the breakpoints? Or is it expected that loading symbols/code is outside the responsibility of the debug adapter and should be handled by an extension contributed command? Or should the code be loaded in the 'initialize' request (which assumes the session is always launching, never attaching)?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the sequence diagram in the documentation under “Configuring breakpoint and exception behavior,” then compare the setBreakpoints and launch requests with the stated GDB break and file commands. Clarify the expected ordering and responsibility for loading code or symbols, and update the diagram and surrounding text so the microcontroller debug-adapter scenario has an unambiguous workflow.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100