diff options
-rw-r--r-- | runtime/doc/news.txt | 1 | ||||
-rw-r--r-- | runtime/lua/vim/lsp/rpc.lua | 6 |
2 files changed, 3 insertions, 4 deletions
diff --git a/runtime/doc/news.txt b/runtime/doc/news.txt index e74344cece..f7f86237f6 100644 --- a/runtime/doc/news.txt +++ b/runtime/doc/news.txt @@ -366,6 +366,7 @@ PERFORMANCE significantly improving |treesitter-highlight| performance. • Treesitter injection query iteration is now asynchronous, making edits in large buffers with combined injections much quicker. +• 10x reduction in blocking time when attaching an LSP to a large buffer. PLUGINS diff --git a/runtime/lua/vim/lsp/rpc.lua b/runtime/lua/vim/lsp/rpc.lua index a0d1fe776b..d31d94cab7 100644 --- a/runtime/lua/vim/lsp/rpc.lua +++ b/runtime/lua/vim/lsp/rpc.lua @@ -278,10 +278,8 @@ function Client:encode_and_send(payload) if self.transport:is_closing() then return false end - local jsonstr = assert( - vim.json.encode(payload), - string.format("Couldn't encode payload '%s'", vim.inspect(payload)) - ) + local jsonstr = vim.json.encode(payload) + self.transport:write(format_message_with_content_length(jsonstr)) return true end |