-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Tracking lsp spec compliance (from version 3.3) #134
Comments
This comment has been minimized.
This comment has been minimized.
I would love support for this one in particular:
|
@EggBaconAndSpam I believe we are yet to add workspace support first. I think we have the types defined, but yes this would be a great feature to have! It might be nice to have a separate issue for this since there’s probably a lot of discussion needed around how the VFS/api will work around it, assuming that we’re adding deeper integration than just handlers. |
My use-case is the following: I would like to be able to create files via the "workspace/applyEdit" command; as far as I understand it workspaces as a concept are largely orthogonal to this feature. Currently the corresponding haskell-lsp-types definition only covers edits to existing files: (From WorkspaceEdit.hs)
Which corresponds to
|
I just made a pair of PRs for 3.11 and 3.12 support. They're not really adequately tested yet but hopefully this is a step in the right direction. |
This comment has been minimized.
This comment has been minimized.
Support for |
#290 should fix the last remaining place that needs |
I was having a look and it looks like lots of things in the list are done, sadly I can't check the checkboxes. |
@michaelpj i suspected most of them was done too, what about copy it in a new comment and check what do you know about? I did that in #134 (comment) |
I think it's almost all done! As far as I can see it's only some 3.16 things that are missing. Note that this is based on going through @jneira 's list not the full LSP changelog. The remaining items are two substantial ones and one easy one:
|
Oh, other things we're missing from 3.16:
|
We have semantic tokens support and call hierarchy! |
Since 3.16, there are new number types https://microsoft.github.io/language-server-protocol/specifications/specification-current/#number . We may want to provide newtype wrappers for them as using |
I'm going to try and update the checklist in the original description and remove the others! |
I wonder if this list should be also placed in docs for reference, in the README? |
I think if we were going to do that we'd want to actually list all the things we've implemented, which would be a bit tedious. I think it might be good to say which versions we have completely supported and which ones are partial, though. |
Okay, main checklist should be up-to-date. I think we're actually doing pretty well: we're missing a few things from 3.16, but that's it. |
We are also missing codeAction/resolve, which is new in 3.16. This is a blocker for implementing haskell/haskell-language-server#3534 |
We're generating the code from the metamodel now, so we should have full compliance with 3.17. |
EDITED by @jneira: we are gonna put here the main checklist of features to give it more visibility
3.3
Hover
, still needed for some others) tracked by Support MarkdownClientCapabilities #3293.11
3.12
3.13
3.14
3.15
3.16
The text was updated successfully, but these errors were encountered: