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

Implement completionItem/resolve #903

Open
krassowski opened this issue Jan 24, 2021 · 1 comment
Open

Implement completionItem/resolve #903

krassowski opened this issue Jan 24, 2021 · 1 comment

Comments

@krassowski
Copy link

krassowski commented Jan 24, 2021

This is a proposal to implement completionItem/resolve in order to improve the speed of completions; the need to resolve documentation dynamically was confirmed by profiling in #826.

The idea is that the textDocument/completion sends only the properties which are cheap to compute (say label, sortText, insertText, etc), while documentation, detail (and any other property since LSP 3.16.0) would be only sent once the clients requests to resolve the details with the completionItem/resolve request. This improves the initial speed and gives the user all information - no compromise.

The lag for completionItem/resolve can be lower than the perception threshold (dozens of milliseconds), and the client can pre-fetch a few completionItem/resolve as soon as it gets the completion result (I implemented this in my client here).

Would any of the maintainers be interested in accepting a PR that would do that? Any design suggestions?

I am opening this issue before starting any work as I see multiple PR hanging without response. Do I understand that this repository is now maintained by volunteers and not by the palantir anymore?

@ccordoba12
Copy link
Contributor

Would any of the maintainers be interested in accepting a PR that would do that?

If it helps to improve the speed of completions, we're very interested on it.

Any design suggestions?

Not from my side. @andfoy, do you have suggestions for @krassowski?

Do I understand that this repository is now maintained by volunteers and not by the palantir anymore?

It's been maintained by the Spyder team since a year and a half ago. However, sometimes we've got busy with other things and don't have time to merge work here.

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

Successfully merging a pull request may close this issue.

2 participants