Skip to content

Known O# LSP issues #5429

@JoeRobich

Description

@JoeRobich

When running with the C# extension built from the feature/lsp-engine branch and omnisharp.enableLSPDriver set to "true".

  • LSP Logging to the OmniSharp log is duplicating every line (Register the LanguageServerLogger only once OmniSharp/omnisharp-roslyn#2473)
  • O# LSP sends across multiple registrations for the same command. One for the C# handlers and a second for the Cake handlers. This causes LSP features to not register. Removing the OmniSharp.Cake.dll from the O# distribution is a workaround. DavidB suggests having O# LSP merge the registrations by combining the document selectors. (Implement LSP CodeAction resolve OmniSharp/omnisharp-roslyn#2467)
  • Some features do not consistently trigger (Signature Help, Format Document on Type,).
  • Some features seems to double register (Completion, Hover,).
  • Need to add support for metadata documents and source generated documents.
  • CodeLens handler does not support Run/Debug Test lenses.
  • InlayHint handler can't be implemented until csharp-language-server-protocol updates to 3.17 api.
  • Diagnostics handler is not implemented.
  • Need to implement custom LSP commands for some O# functionality FixAll, Run/Debug Tests in Context.
  • Many messages are still being sent to O# using their O# protocol adapter (RequestWorkspaceInformation, etc...). This may not be an issues unless O# wants to remove the adapter and O# protocol support.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions