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

Report progress for indexing operations #5

Open
5 tasks
radeksimko opened this issue Feb 21, 2020 · 0 comments
Open
5 tasks

Report progress for indexing operations #5

radeksimko opened this issue Feb 21, 2020 · 0 comments
Labels

Comments

@radeksimko
Copy link
Member

radeksimko commented Feb 21, 2020

Background

The language server performs indexing of files, which involves parsing, decoding, running external commands or processing HTTP requests to external server - all of which can take time. Currently these time-consuming operations run on the background and don't "block" the user, but until indexing is finished the user may experience inaccurate or incomplete IntelliSense data.

It is currently very difficult/impossible for the user to tell when the indexing has finished.

Indexing happens on the following occasions:

  • initialize
  • textDocument/didOpen
  • textDocument/didChange
  • textDocument/didChangeWatchedFiles
  • workspace/didChangeWorkspaceFolders

Proposal

  • Introduce synchronisation primitives as per Measure performance of indexer(s) #1056
  • Report progress on walking and job completion
    • initialize
    • textDocument/didChangeWatchedFiles
    • workspace/didChangeWorkspaceFolders

Implementation Notes

The LSP allows the server to register progress via window/workDoneProgress/* and $/progress.

@radeksimko radeksimko added the good first issue Good for newcomers label Jul 22, 2020
@radeksimko radeksimko added enhancement New feature or request and removed good first issue Good for newcomers labels Jan 14, 2021
@radeksimko radeksimko changed the title Implement progress reporting Report progress for indexing operations Sep 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant