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

Consider supporting an LSP debug extension #221

Open
gatesn opened this issue Jan 10, 2018 · 3 comments
Open

Consider supporting an LSP debug extension #221

gatesn opened this issue Jan 10, 2018 · 3 comments

Comments

@gatesn
Copy link
Contributor

gatesn commented Jan 10, 2018

VSCode has a well-defined debugger protocol, if we wrapped this in a debug namespace then it wouldn't be unreasonable to write a thin-wrapper in the VSCode client extension to support debugging in the language server.

The advantage of this is that other editors could then write their own translation layers to this debug protocol. @lgeiger is this something Atom might be able to support?

LSP4J is working on releasing the Java interfaces for the protocol here: https://github.com/eclipse/lsp4j/tree/master/org.eclipse.lsp4j.debug/src/main/java/org/eclipse/lsp4j/debug/services

@lgeiger
Copy link
Contributor

lgeiger commented Jan 10, 2018

AFAIK Atom currently has no official debugger protocol, though I think https://nuclide.io does something similar.

Since this isn't part of the language server spec, I don't think atom-language will implement this any time soon.

That said I'm sure it's possible to implement something similar for Atom if someone is interested and has time doing it.

@exploide
Copy link
Contributor

exploide commented Jan 12, 2018

According to atom/atom#9841 (comment) Nuclide devs are working with Atom devs to bring Nuclide's debugging functionality to Atom. I would assume this will happen in an extensible way.

Though, it's stated there that Nuclide debugger already supports Python. But I haven't tried this and don't know if this is already awesome or something experimental that could benefit from an improved language-server-python based debugger.

EDIT: and according to facebookarchive/atom-ide-ui#75 (comment) it most likely will be the VSCode debug extension API ;)

@jamding
Copy link

jamding commented May 7, 2018

Both DAP and LSP have mechanisms for request-response and single-sided event emitting, and for the most part there's pretty obvious mappings from 1 message format to the other, but worth calling out that the debug protocol's "events" have a seq field whereas the LSP's "notifications" do not.

Really simple proposal would be wrapping an event's seq and body as fields in a notification's params field

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

No branches or pull requests

4 participants