TypeFox / ls-api

MOVED TO
https://github.com/eclipse/lsp4j
20 stars 8 forks source link

After a parsing error, reader doesn't work any more #43

Closed mickaelistria closed 8 years ago

mickaelistria commented 8 years ago

I have the case where I see that a parsing error on the reader side (such as the possible ones reported in #23 ) makes that all future requests to the language server are sent, the the stream receives the response from server, but the ls-api MessageReader doesn't seem to parse them any more, so operations all return a timeout.

In case of a parsing error, the language endpoint should still be usable for other operations (an error in hover should still allow to use completion).

mickaelistria commented 8 years ago

At the moment, this issue and probably child issue #44 are the ones that are the most annoying for the Eclipse IDE integration

mickaelistria commented 8 years ago

It seems like the possible errors thrown by handleMessage on line 203 of LanguageServerProtocol.xtend should be caught, logged and not thrown.

mickaelistria commented 8 years ago

Or maybe the condition line 205

val result = handleMessage(input, headers)
if (!result) keepRunning = false

IMO, the loop should be continued even if the message wasn't properly handled.

svenefftinge commented 8 years ago

I merged #55. Please reopen if there is still something to be done about this.