techee / geany-lsp

LSP plugin for the Geany editor
GNU General Public License v2.0
19 stars 1 forks source link

Performance problem in json-glib #16

Closed techee closed 1 year ago

techee commented 1 year ago

I've discovered the source of the performance problem with semantic tokens, it's

https://gitlab.gnome.org/GNOME/json-glib/-/merge_requests/60

It can be reproduced e.g. on Editor.cxx of Scintilla which freezes Geany on load with semantic tokens enabled and then repeatedly when editing the file and the edit has some impact on the semantic tokens.

Now I'm afraid that before this change gets to distributions, it will take several years. One option is to disable semantic tokens by default and warn users which would be a bit unfortunate because the colorization is quite nice, the other direction in which I'll probably go is to ship json-glib and jsonrpc-glib together with the plugin. These aren't big and it should hopefully not be a big problem.

techee commented 1 year ago

Fixed by including sources of json-glib and jsonrpc-glib.