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.
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
andjsonrpc-glib
together with the plugin. These aren't big and it should hopefully not be a big problem.