Hello! I hope everyone is doing well and staying well and healthy.
I will reference the images included at the bottom of the post as I go along.
I am using Eclipse Theia and have made a language server plugin using VSCode’s language server API that can display some documentation for the command/parameter/keyword that we are autocompleting as part of the completion resolve - something like the first image.
The documentation displayed uses VSCode’s MarkupContent type for CompletionItem.documentation, which is analogous to MarkdownString, which is used for monaco.languages.CompletionItem.documentation.
I recently upgraded my Theia version from 1.32 to 1.34, and noticed that for the completion resolve, this MarkupContent is no longer displayed (see the second image).
While trying to diagnose when this changed, I figured out that some change between Theia versions 1.32 and 1.33 is behind this issue seeing as this issue exists in 1.33 - what this change is however, I am still trying to find out.
It is interesting to note that for Hover, documentation also uses this MarkupContent structure from the language server side yet it still displays properly, even though the completionItem resolve does not.
Two questions are resultant from this:
- Why would MarkupContent not be rendered for completionItem resolve, but is rendered fine for something like the Hover documentation?
- If I wanted to compare the two versions side-by-side to see what might have led to this issue, where is a good place to look in the node_modules we install or on the repository? I suspect that either monaco, monaco-editor-core, or plugin-ext would be of interest, but I am not quite sure.
Note that I haven’t tested other areas that can show similar documentation - I only show documentation with the completionItem resolve and Hover.
Thanks in advance!