Skip to content

Language Server support #71

@Sysix

Description

@Sysix

Hello 👋

I would love to support --type-aware flag for the oxc_language_server.
At the moment, I do not know if all the use cases are supported:

File Content in Memory

oxc_language_server supports linting when typing. This means, that the file content (for multiple files) on the file system is probably outdated.
Preferable, some command flag could be run to identify different files in memory.

Keep the Command running

Because we are supporting on type. The lint command is executed multiple times in a short time. To safe resources, a command which accept streaming stdin would be preferable.

Create own LSP Server?

Vue Language Server 3 splits now the logic between typescript and vue and created a bridge between them:
vuejs/language-tools#5456

The way vue language server communicate with typescript language server.
In version 2, in order to drop the takeover mode for a more compatible solution with typescript language server, another layer of complexity was introduced (named pipes server) to help vue language server communicate with typescript language server(vue tsserver plugin). However, it seems caused many issues since v2 was released. Therefore, in the new major version, it has been removed and the responsibility of communication transferred to the lsp client side.

I do not like this idea TBH. The oxc_language_server should be plug and play like the CLI tool oxlint. Setting up the editor for it is not a great experience.
Some editors support .toml/.yml configuration with servers. These editors would now need a custom script / plugin to run with type aware linting.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions