Late diagnostic population
I don't really know if this is a csharp_ls issue or neovim/my config, but
csharp_ls does not yield diagnostics and other features such as highlighting after loading solution. Instead it does so after current buffer is modified. It has been this way for a long time since I started using neovim and I couldn't really fix it. Does not reproduce with omnisharp.
I have a plugin that sends .notify('textDocument/didOpen') for all files in workspace to language servers in order to populate workspace diagnostics - it doesn't have effect for csharp_ls either, though omnisharp-roslyn works in that case, as well as other language servers.
if the reason for this isn't apparent right away I can try to strip my config for minimal reproduction setup
system: Windows 11, Neovim 0.10.0
neovim request params:
{ textDocument = { uri = <path>, version = 0, text = vim.fn.join(vim.fn.readfile(path), '\n'), languageId = <filetype> }
This may actually be a bug as this did work before and I do remember fixing a bug like this already. Tests for csharp-ls are sorely missing..
with 0.15 there has been implementation added that supports pull diagnostics (i.e. the editor can request diagnostics instead of the server pushing them)
that should've sped things up considerably
Closing, -- please reopen if this is still an issue with the latest releases