-
-
Notifications
You must be signed in to change notification settings - Fork 226
Description
I'm trying to make language-server work with Helix. But it looks like lsp doesn't respond to initialize request properly before sending its own requests. According to the spec:
Until the server has responded to the initialize request with an InitializeResult, the client must not send any additional requests or notifications to the server. In addition the server is not allowed to send any requests or notifications to the client until it has responded with an InitializeResult, with the exception that during the initialize request the server is allowed to send the notifications window/showMessage, window/logMessage and telemetry/event as well as the window/showMessageRequest request to the client.
Language server: @tailwindcss/[email protected]
tailwind-language-server --stdio
Expected:
-> {"jsonrpc":"2.0","method":"initialize","params":{ ... },"id":0}
<- {"jsonrpc":"2.0","id":0,"result": { ... }}
Received:
-> {"jsonrpc":"2.0","method":"initialize","params":{ ... },"id":0}
<- {"jsonrpc":"2.0","id":0,"method":"workspace/configuration","params":{"items":[{"section":"editor"}]}}
<- {"jsonrpc":"2.0","id":1,"method":"workspace/configuration","params":{"items":[{"section":"tailwindCSS"}]}}
I would assume that this line is the reason
| let globalSettings = await getConfiguration() |
And this these are the lines that send requests before the initialize response.
| let [editor, tailwindCSS] = await Promise.all([ |