Overview of sync-ls
mainsync-ls is a synchronous LSP server implementation inspired by async-lsp. It is primarily used for tinymist.
Key characteristics:
- Supports both LSP and DAP with a common codebase.
- Handlers can obtain a mutable reference to the state (unlike
tower-lsp). - Designed for potentially better performance on
stdiotransport, especially on Windows. - Uses
req_queueandtransportextracted from therust-analyzerproject.
Note: The author recommends using async-lsp whenever possible unless there is a specific reason to use sync-ls.