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

Meaning of "restart" in "disconnect" and "terminate" events #74

Open
int19h opened this issue Aug 22, 2019 · 3 comments
Open

Meaning of "restart" in "disconnect" and "terminate" events #74

int19h opened this issue Aug 22, 2019 · 3 comments
Labels
clarification Protocol clarification

Comments

@int19h
Copy link

int19h commented Aug 22, 2019

The spec just says:

A value of true indicates that this 'terminate' request is part of a restart sequence.

It is not clear what this means, exactly - the term restart sequence is not defined anywhere. It seems like it is connected in some way to "restart" request, but it's not clear how they all interact.

(#73 is possibly related)

@weinand weinand changed the title Meaning of "reset" in "disconnect" and "terminate" events Meaning of "restart" in "disconnect" and "terminate" events Sep 5, 2019
@weinand weinand self-assigned this Sep 5, 2019
@weinand weinand added the clarification Protocol clarification label Sep 5, 2019
@haneefdm
Copy link
Contributor

haneefdm commented Sep 8, 2019

Yes, this is a bit unclear for me too. I am currently ignoring -- it never seems to be true -- probably because my extension supports a restart. I have a feeling that for extensions that don't support a restart request, a disconnect is called first before a full restart happens

@weinand
Copy link
Contributor

weinand commented Sep 9, 2019

"restart sequence" means:
terminate current debug session via the disconnect request and immediately start a new session via the launch or attach request

For the "launch" case "restart" can be used to pickup source changes that are not automatically picked up while the program is running.

For the "attach" case "restart" has no direct effect on the debug target because the debug target continues running. But it still might have an effect on debugging because the debug adapter is restarted and this could pick up changes to files that the debug adapter uses, e.g. source maps.

@polinasok
Copy link
Contributor

Wouldn't initialize (plus potentially more requests depending on how initialize event is implemented, see https://microsoft.github.io/debug-adapter-protocol/overview) be part of the restart sequence?

Would the restart sequence happen only if supportsRestartRequest is false? Otherwise, would restart just result in a single RestartRequest?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clarification Protocol clarification
Projects
None yet
Development

No branches or pull requests

4 participants