flow
flow copied to clipboard
Add implementationProvider capability to lsp server
Proposal
Add the implementationProvider capability to the lsp server.
Use case
Make (probably) most editors work properly with flow. I just configured my Emacs for flow and goto definition stopped working since it is expected that the lsp-server takes cares of that when using lsp. I'm not sure how you expect it to work now but I can't navigate between files using goto definition inside of my own project atm.
I am also not getting any js code completions for imported symbols, is this supposed to work in parallel with some other lsp-server? How do you integrate with other editors?
go-to-definition is powered by the definition provider. the implementation provider is a different thing, go-to-implementation. it's for jumping from an interface to classes that implement that interface. you're right that Flow doesn't support that yet.
but if you're trying to jump to the definition of an identifier or an object property or something, that is a different thing. if completion isn't working either then it sounds like something is wrong with the setup in general. what extension are you using? does it have a way of logging the LSP traffic?
the implementation provider is a different thing, go-to-implementation. it's for jumping from an interface to classes that implement that interface. you're right that Flow doesn't support that yet.
@mroch Is there another issue tracker for this go to implementation feature? I want to subscribe it and be notified. Thanks in advance.
I seems typescript doesn't support it either. It's a pain when developing.
https://github.com/microsoft/TypeScript/issues/37777
https://github.com/microsoft/TypeScript/issues/6209