Skip to content

Conversation

david-driscoll
Copy link
Member

Adds support for running requests that do not make changes to the workspace in parallel.

This is technically not officially supported by the spec but allows some things to speed up request handling

To disable it's possible to supply your own IRequestProcessIdentifier into LanguageServer.

@david-driscoll
Copy link
Member Author

This has breaking changes (yay for sticking to 0.x versions at the moment, lol).
cc @tintoy

@david-driscoll david-driscoll merged commit 80e1b38 into master Oct 30, 2017
@david-driscoll david-driscoll deleted the serially-parallel branch October 30, 2017 19:14
@tintoy
Copy link
Collaborator

tintoy commented Oct 30, 2017

I've been toying with the idea of using AKKA.NET to model background processing in my language service; assuming my code is already thread-safe do I still have anything to worry about?

@tintoy
Copy link
Collaborator

tintoy commented Oct 30, 2017

Sorry, I mean anything to worry about in the context of this change?

@tintoy
Copy link
Collaborator

tintoy commented Oct 30, 2017

BTW, my LSP client is concurrency-agnostic but I'll add some tests to make sure that's the still the case :)

@david-driscoll
Copy link
Member Author

I don't think it would be a problem, as long as it's safe for each thread to call across. All this does it allows things like completion, and signature help which might fire at the same time, to both come back as fast as possible.

And if you want PR you're client into the repo I'd love to have it around! 👍

@tintoy
Copy link
Collaborator

tintoy commented Oct 30, 2017

Sure - I'll work up a PR sometime later this week :)

@tintoy
Copy link
Collaborator

tintoy commented Nov 3, 2017

@david-driscoll should I move it into the OmniSharp.Extensions.LanguageClient namespace? I'm fine with that, BTW.

@david-driscoll
Copy link
Member Author

david-driscoll commented Nov 3, 2017 via email

@tintoy
Copy link
Collaborator

tintoy commented Nov 3, 2017

I'm on it :)

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 this pull request may close these issues.

2 participants