6
lorentz
311d

VSCode is doing really strange things to my language server, in such variety that I'm starting to suspect that it's simply incorrect because it's very unlikely that I'd misunderstand so many distinct things at once.

- The trace level is verbose, yet VSCode absolutely spams the LS with trace: off requests

- the capability update request I used to set file watchers never gets a response even though the standard clearly states that all requests must get responses or progress reports quickly, and I'm not getting file updates even after vscode responds to a file system change. By the way, if file watching is a capability, why can't I set it in the protocol handshake with all the other capabilities?

- my semantic token provider (used for syntax highlighting) is simply ignored, no requests, no errors

- the debug console is spamming editor internal errors

Comments
  • 2
    Every time I call client.setTrace(Trace.Verbose), VSCode sends a new { "$/setTrace", "params": { "value": "off" } } notification to the language server.

    I'm impressed at how well Microsoft separates its talented language devs from everyone else. None of their other products inherit the tiniest fragment of the reliability of their languages.
  • 1
    Update: I had a deadlock. I feel very stupid now, but the incorrectly forwarded trace setting is still a very clear VSCode bug
Add Comment