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

Debug: The stop/continue all model breaks the debug adapter for Firefox #6400

Closed
egamma opened this issue May 16, 2016 · 6 comments
Closed
Assignees
Labels
debug Debug viewlet, configurations, breakpoints, adapter issues important Issue identified as high-priority
Milestone

Comments

@egamma
Copy link
Member

egamma commented May 16, 2016

  • VSCode Version: 1.1.1

See: #6304 (comment)

@egamma egamma added debug Debug viewlet, configurations, breakpoints, adapter issues important Issue identified as high-priority labels May 16, 2016
@weinand weinand added this to the May 2016 milestone May 16, 2016
@weinand weinand assigned isidorn and unassigned weinand May 19, 2016
@weinand
Copy link
Contributor

weinand commented May 19, 2016

@isidorn I've added an attribute allThreadsContinued to the ContinueResponse. Please interpret it as follows:

  • if it is missing or if its value is true, implement the old VS Code 1.0 behaviour: show all threads as running.
  • if the value is false show only the thread with the specified thread id as running.

@hbenl and @felixfbecker since you both need the single thread behaviour I suggest that you start to return the allThreadsContinued: false from the implementation of your continueRequest. VS Code 1.2.0 will be the first version that makes use of it.

@felixfbecker please let us know when we can remove our php workaround.

@weinand
Copy link
Contributor

weinand commented May 19, 2016

@isidorn isidorn assigned weinand and unassigned isidorn May 19, 2016
@hbenl
Copy link

hbenl commented May 19, 2016

So what about the StoppedEvent - does VS Code assume that only a single thread has stopped (note that the threadId in this event is not optional)? If so, maybe making the threadId optional would make sense (otherwise debug adapters implementing the stop/continue all model would have to send one event per thread).

@weinand
Copy link
Contributor

weinand commented May 20, 2016

@hbenl so far we have identified two use cases for the StoppedEvent:

  • if allThreadsStopped is false (or if this attribute is missing) the thread with id threadId has stopped and all other threads continue to run.
  • if allThreadsStopped is true all threads have stopped and the thread with id threadId is the one in 'focus', that is the UI will auto expand it.

Yes, in the second case we could make threadId optional.
In the 'all threads stopped' model there is no need to send StoppedEvents for every thread. Just set allThreadsStopped to true instead.

@hbenl
Copy link

hbenl commented May 20, 2016

OK, I had missed the addition of the allThreadsStopped attribute. Thanks for clarifying.

@felixfbecker
Copy link
Contributor

@weinand implemented allThreadsStopped in 1.9.0

@vscodebot vscodebot bot locked and limited conversation to collaborators Nov 18, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
debug Debug viewlet, configurations, breakpoints, adapter issues important Issue identified as high-priority
Projects
None yet
Development

No branches or pull requests

5 participants