Conversation
- Add stateless webview panel for LiquidJava with interactive json viewer for derivation nodes - Add new command to show all commands, executed when status bar indicator is clicked - Update VS Code and language client version to support handleDiagnostics middleware - Code refactoring
- Refactor webview ui code - Introduce error kinds to refinement errors
Displays a "View Details" button above liquid java errors that executes the liquidjava.showView command
CatarinaGamboa
approved these changes
Nov 21, 2025
Collaborator
CatarinaGamboa
left a comment
There was a problem hiding this comment.
Awesome 🎉 A couple requests:
- add some more documentation to the classes for maintainability - as in for it to be easier to be changed by other people - add it at least to the places I mentioned
- in a separate PR, you can add these new features to the README? Like the image you have in the PR description is pretty cool, and showcasing the new features would be very helpful!
| private messageEmitter = new vscode.EventEmitter<any>(); | ||
| public readonly onDidReceiveMessage = this.messageEmitter.event; | ||
|
|
||
| constructor(private readonly extensionUri: vscode.Uri) {} |
Collaborator
There was a problem hiding this comment.
didnt know this was possible haha
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces the new LiquidJava sidebar with a webview to display errors and warnings in more detail. The language server publishes the native diagnostics to the client and now also sends a notification with the custom liquidjava diagnostics, which are then used to display in the webview. The webview uses vanilla HTML, CSS and JavaScript for the user interface, since a framework like React would cause performance issues and overhead.
The current architecture of the LiquidJava extension is as follows:
Additional Changes
foundexpression by clicking on them, using the derivation nodesstart,stop,restartandverifycommands)liquidjava.showViewcommand to open the sidebarpassedorfailedusing the diagnostics middleware instead of stdout from the language server