Stillat / vscode-antlers-language-server

Provides rich language features for Statamic's Antlers templating language, including code completions, syntax highlighting, and more.
https://antlers.dev
MIT License
36 stars 3 forks source link

AntlersLS crashes in Neovim #59

Closed calebdw closed 1 year ago

calebdw commented 1 year ago

Describe the bug Hello, I tried using the language server in Neovim, through the LspConfig and Mason, however, as soon as I open an antlers file the server crashed with the following error:

[WARN][2023-02-12 19:59:42] .../lua/vim/lsp.lua:1072    "server_request: no handler found for"  "antlers/projectDetailsAvailable"

[ERROR][2023-02-12 19:59:43] .../vim/lsp/rpc.lua:734    "rpc"   "antlersls" "stderr"    "/home/cwhite/.local/share/nvim/mason/packages/antlers-language-server/node_modules/antlers-language-server/server.js:5\n${JSON.stringify(x.error,void 0,4)}`):n.error(\"Received response message without id. No further error information provided.\");else{let R=String(x.id),v=P[R];if(Ys(x,v),v){delete P[R];try{if(x.error){let E=x.error;v.reject(new Se.ResponseError(E.code,E.message,E.data))}else if(x.result!==void 0)v.resolve(x.result);else throw new Error(\"Should never happen.\")}catch(E){E.message?n.error(`Response handler '${v.method}' failed with message: ${E.message}`):n.error(`Response handler '${v.method}' failed unexpectedly.`)}}}}function Dt(x){if(tt())return;let R,v;if(x.method===vl.type.method)v=E=>{let D=E.id,S=g[String(D)];S&&S.cancel()};else{let E=f[x.method];E&&(v=E.handler,R=E.type)}if(v||d)try{Hs(x),v?x.params===void 0?(R!==void 0&&R.numberOfParams!==0&&R.parameterStructures!==Se.ParameterStructures.byName&&n.error(`Notification ${x.method} defines ${R.numberOfParams} params but recevied none.`),v()):Array.isArray(x.params)?(R!==void 0&&(R.parameterStructures===Se.ParameterStructures.byName&&n.error(`Notification ${x.method} defines parameters by name but received parameters by position`),R.numberOfParams!==x.params.length&&n.error(`Notification ${x.method} defines ${R.numberOfParams} params but received ${x.params.length} argumennts`)),v(...x.params)):(R!==void 0&&R.parameterStructures===Se.ParameterStructures.byPosition&&n.error(`Notification ${x.method} defines parameters by position but received parameters by name`),v(x.params)):d&&d(x.method,x.params)}catch(E){E.message?n.error(`Notification handler '${x.method}' failed with message: ${E.message}`):n.error(`Notification handler '${x.method}' failed unexpectedly.`)}else w.fire(x)}function gn(x){if(!x){n.error(\"Received empty message.\");return}n.error(`Received message which is neither a response nor a notification message:\n                                                                                                                                                                                                                              ^\n\nWu [Error]: MethodNotFound\n    at Ee (/home/cwhite/.local/share/nvim/mason/packages/antlers-language-server/node_modules/antlers-language-server/server.js:5:223)\n    at pe (/home/cwhite/.local/share/nvim/mason/packages/antlers-language-server/node_modules/antlers-language-server/server.js:4:11251)\n    at Immediate.<anonymous> (/home/cwhite/.local/share/nvim/mason/packages/antlers-language-server/node_modules/antlers-language-server/server.js:4:11101)\n    at process.processImmediate (node:internal/timers:476:21) {\n  code: -32601,\n  data: undefined\n}\n\nNode.js v18.14.0\n"

Impacted Products Which Antlers Toolbox products does this bug apply to?

Versions and Other Plugins/Extensions Version should be latest published to npm (1.1.10).

To Reproduce

  1. Install antlersls via LspConfig/Mason.
  2. Open antlers template file.

Expected behavior The language server to work as expected.

Additional context Add any other context about the problem here.

JohnathonKoster commented 1 year ago

Hi there!

I've removed that server initiated request from build 1.1.11 which should resolve your issue. I don't use Neovim, so haven't been able to verify, but that server-initiated request should no longer be triggered after updating 👍

calebdw commented 1 year ago

Awesome thanks!