-
Notifications
You must be signed in to change notification settings - Fork 468
Provide client-side snippet until language server is ready #2240
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
Conversation
Tried it and this PR didn't solve the problem completely. There is another factor that causes the code snippet not to work. On the jdt.ls server side, it registers capability for "textDocumement/completion" after initialized, which would cause both the client and server side to declare the completion provider before the server was full ready, and the server side would block the entire completion from working. From the perspective of LSP, |
This is a great finding! Currently we register the capabilities earlier than the server is able to dealing with those request. During this time window, if user starts to typing or doing other operations, a lot of requests sending from client to server and queued there, which makes the import time becomes 'longer'. Server needs to treat with those queued request but most of them are out-of-date. |
There is a feature request microsoft/vscode#107343 about showing results from different completion providers incrementally, but it's still under discussion. if we want to mitigate the issue for now, we need to delay registering completion capability on the server side until the language server is actually ready. |
Signed-off-by: sheche <[email protected]>
Signed-off-by: sheche <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It works fine with the latest commit. Feel free to merge this PR once eclipse-jdtls/eclipse.jdt.ls#1979 is merged.
This PR fix #684
Signed-off-by: Sheng Chen[email protected]