Skip to content

Debug Adapter Protocol lib #145

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

Closed
4 tasks done
TylerLeonhardt opened this issue Jul 1, 2019 · 11 comments
Closed
4 tasks done

Debug Adapter Protocol lib #145

TylerLeonhardt opened this issue Jul 1, 2019 · 11 comments

Comments

@TylerLeonhardt
Copy link
Collaborator

TylerLeonhardt commented Jul 1, 2019

Hi all 👋

The PowerShell language server will start making the transition to using the csharp-language-server-protocol project for the LSP message handling!

If you have any concerns about this, please let me know but I was wondering if there was a DAP implementation in C# that’s recommended to go along side this project.

Any thoughts?

  • protocol types
  • extensible launch and attach
  • DebugServer type
  • DebugClient type
@david-driscoll
Copy link
Member

I have not sat down to start work on a lib for the debug stuff, but it's something we could probably do fairly easily, I think they're both JsonRpc based iirc.

@TylerLeonhardt
Copy link
Collaborator Author

@david-driscoll If you folks can do the underlying work of giving me the ability to mark a message as “LSP or DAP” I can help csharp-language-server-protocol by creating most/all of the message interfaces & param types.

@TylerLeonhardt
Copy link
Collaborator Author

cc @mholo65

@TylerLeonhardt
Copy link
Collaborator Author

This is technically done... but it would be nice to have a formal DebugServer type similar to LanguageServer. It doesn't have to be too fancy, but ideally it would handle stuff like initialize cancel.

@TylerLeonhardt
Copy link
Collaborator Author

Additionally, a DebugClient offering similar things to LanguageClient would be awesome.

cc @tintoy who has done great work on the LanguageClient

@david-driscoll
Copy link
Member

Getting a DebugServer is next on my list... we can basically just steal the code you worked on it get things working! 👍

@TylerLeonhardt
Copy link
Collaborator Author

More or less. There's a ton of PSES specific code in there but it could be used as an example along with LanguageServer

@TylerLeonhardt
Copy link
Collaborator Author

Oh I forgot to mention... For the launch and attach request, I had to make own handlers because we add more properties to the launch.json.

Ex. Attach to process:

        {
                name: "PowerShell: Attach to PowerShell Host Process",
                type: "PowerShell",
                request: "attach",
                runspaceId: 1,
            }

Note the runspaceId.

So one other thing this needs is extensible launch/attach requests.

@TylerLeonhardt
Copy link
Collaborator Author

@tintoy I remember in Slack you said you had a DebugClient ready for me to try. Is that true?

@tintoy
Copy link
Collaborator

tintoy commented Nov 3, 2019

On my own branch yeah - it should be enough to get you started at least :)

https://github.com/tintoy/csharp-language-server-protocol/tree/feature/dap/client?files=1

@david-driscoll
Copy link
Member

I think we have these now!

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

3 participants