Make libide-lsp send "Initialized" as the second lsp request
If I read the spec correctly the Lsp Client should always send an "Initialized" as the second request to the server. https://microsoft.github.io/language-server-protocol/specification#initialized
However libide doesn't currently send Initialize, and that works fine with lsp-servers such as rls. https://gitlab.gnome.org/GNOME/gnome-builder/blob/master/src/libide/lsp/ide-lsp-client.c#L870
However the lsp-server named rustanalyzer treats initialized as mandarory and fails if the client doesn't send initialized, https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/gen_lsp_server/src/lib.rs#L119
I admit that the spec is a little unclear, but I think that the rust analyzer is correct here. Anyway it could be great to have libide send Initialized so that one can make a rustanalyzer-lsp-plugin.py.
Here are some related issues https://github.com/prabirshrestha/vim-lsp/issues/166 https://github.com/Microsoft/language-server-protocol/issues/180