-
Notifications
You must be signed in to change notification settings - Fork 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
IDebugProtocolServer not using existing LaunchRequestArguments #842
Comments
Previously we would use LaunchRequestArguments, but those are actually not used and what is actually returned is a Map. This become a problem after the fix that deserialized arguments to correct params. Now, we use Map instead. Raised the issue here eclipse-lsp4j/lsp4j#842 Also fixed tests to use newest toolkit instead.
Previously we would use LaunchRequestArguments, but those are actually not used and what is actually returned is a Map. This become a problem after the fix that deserialized arguments to correct params. Now, we use Map instead. Raised the issue here eclipse-lsp4j/lsp4j#842 Also fixed tests to use newest toolkit instead.
Previously we would use LaunchRequestArguments, but those are actually not used and what is actually returned is a Map. This become a problem after the fix that deserialized arguments to correct params. Now, we use Map instead. Raised the issue here eclipse-lsp4j/lsp4j#842 Also fixed tests to use newest toolkit instead.
Previously we would use LaunchRequestArguments, but those are actually not used and what is actually returned is a Map. This become a problem after the fix that deserialized arguments to correct params. Now, we use Map instead. Raised the issue here eclipse-lsp4j/lsp4j#842 Also fixed tests to use newest toolkit instead.
Previously we would use LaunchRequestArguments, but those are actually not used and what is actually returned is a Map. This become a problem after the fix that deserialized arguments to correct params. Now, we use Map instead. Raised the issue here eclipse-lsp4j/lsp4j#842 Also fixed tests to use newest toolkit instead.
Perhaps If you have ideas of how to improve things so that partially typed value can be used here, I am open to PRs on this subject. Equally if you think that the wording can be better than "Since launching is debugger/runtime specific, the arguments for this request are not part of this specification." I am also open to PRs on this subject. |
I think the biggest confusion here was that for most of the methods there is a special parameters class, so I assumed this was the case here. Had it not existed I would probably have to dig in more to see what is going on. The other option is to have the map inside LaunchRequestArguments for all other keys aside from the known ones. So in short I see 2 solutions:
This all might be related to the fact that we don't actually implement the interfaces currently (we probably should), so if this expected it's save to close the issue. |
I suspect there are similar cases in the LSP - I will let one of the LSP maintainers comment about what they do before closing.
I am in favour of deprecating / commenting this.
I don't think this really works out of the box, but I guess it could if we add a custom type adapter that maps known fields to the right values and places the rest of them in the map.
I think that does have an effect here. |
I don't think I can really add anything to this discussion, except for noticing that besides So, there is one place where the Regarding the LSP side, it looks like the established pattern there is using an lsp4j/org.eclipse.lsp4j/src/main/java/org/eclipse/lsp4j/Protocol.xtend Lines 4947 to 4951 in f235e91
Having said that, I'd be in favour of keeping the existing method signatures for |
LaunchRequestArguments is not used in launch request in IDebugProtocolServer and doesn't look to be used at all.
Is that expected?
https://github.com/eclipse-lsp4j/lsp4j/blame/f235e91fbe2e45f62e185bbb9f6d21bed48eb2b9/org.eclipse.lsp4j.debug/src/main/java/org/eclipse/lsp4j/debug/services/IDebugProtocolServer.java#L174 uses a map instead.
The text was updated successfully, but these errors were encountered: