Skip to content

fix expert lsp stdio and register capability#5113

Merged
hsanson merged 2 commits intodense-analysis:masterfrom
coriocactus:fix-expert-lsp-stdio-and-register-capability
Apr 10, 2026
Merged

fix expert lsp stdio and register capability#5113
hsanson merged 2 commits intodense-analysis:masterfrom
coriocactus:fix-expert-lsp-stdio-and-register-capability

Conversation

@coriocactus
Copy link
Copy Markdown
Contributor

tested with expert v0.1.0 installed via homebrew and ale at ba8b9cba (2026-04-01) installed via vim-plug on macos

expert's lsp server requires --stdio to use stdio transport (see expert README and expert --help), but the ale linter definition launched it without the flag so the server never entered lsp mode

separately, expert sends a client/registerCapability request after initialization to dynamically register capabilities, and ale had no handler for it, i.e., the server blocked waiting for a response and never processed textDocument/didOpen or any subsequent messages, making features like go-to-definition non-functional

the first commit adds --stdio to the expert launch command, the second adds a handler that acknowledges client/registerCapability requests with a null response, matching how ale already handles workspace/configuration

note: client/registerCapability is part of the lsp spec and other servers may also use it, so this fix is not expert-specific

expert requires --stdio to use stdio transport but the linter
definition launched it without the flag, so the server never
entered lsp mode
some lsp servers like expert send a client/registerCapability
request after initialization to dynamically register capabilities,
if ale does not respond the server blocks and never processes
further messages like textDocument/didOpen
Copy link
Copy Markdown
Contributor

@hsanson hsanson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix.

@hsanson hsanson merged commit 6ba798d into dense-analysis:master Apr 10, 2026
8 checks passed
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