Skip to content

language_server: rearchitect lsp for oxlint, oxfmt and vscode #15119

@Boshen

Description

@Boshen
  • add --lsp to both oxlint and oxfmt binary feat(cli): add --lsp flag to oxlint to run language server #15038
  • oxlint --lsp will only provide linting and oxfmt --lsp will only provide formatting
    refactor oxc_language_server to make linting and formatting capabilities pluggable to support above
  • zed / jetbrain / vim (coc) will call these servers separately
  • for vscode extension, align to the above editors, i.e. no longer bundle its own oxlint / oxfmt version, it will always call the servers from project
  • for releasing versions, oxlint and oxfmt will be published at the same time with the exact same version, but people can bump packages individually to avoid chaos.

Change in architecture:

  • oxc_language_server should accept different tools
  • oxlint --lsp and oxfmt --lsp uses oxc_language_server with only the required tool
  • IDE is calling oxlint --lsp and oxfmt --lsp
  • oxc_language_server should be generic to support other tools too (vitest, ...)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions