Stop logging parser noise and propagate phantom-parse errors#36
Open
BobDu wants to merge 1 commit into
Open
Conversation
Two small cleanups in QueryEditorPane.parseAndDecoratePromise: - Drop the three console.log statements that print the current word, cursor position, and word bounds. They look like leftover debug output, fire on every parse pass, and clutter end-user devtools. - Attach the existing custom error listener to the phantom-character re-parser that runs when the first parse produces no statements. The primary parser already calls removeErrorListeners() and adds the SqlBaseErrorListener so syntax errors land in `errors`; the recovery parser created when statements.length == 0 did neither, so its errors fell back to ANTLR's default ConsoleErrorListener (printing to console.error) and never reached the collected errors list. Mirror the primary parser's setup. Signed-off-by: BobDu <i@bobdu.cc>
|
Thank you for your pull request and welcome to the Trino community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. Continue to work with us on the review and improvements in this PR, and submit the signed CLA to cla@trino.io. Photos, scans, or digitally-signed PDF files are all suitable. Processing may take a few days. The CLA needs to be on file before we merge your changes. For more information, see https://github.com/trinodb/cla |
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.
Summary
Two small frontend cleanups in
QueryEditorPane.parseAndDecoratePromise:Remove
console.lognoise. Threeconsole.logcalls dumpcurrentWord,caretPosition, and word bounds on every parse pass. They look like leftover debug output and clutter the browser devtools console of anyone embedding the editor.Propagate phantom-parse errors. When the first parse produces no statements, the code re-parses the input with a phantom character inserted at the cursor (to keep the syntax tree alive for tooltip/hover lookup). The primary parser swaps the default ANTLR error listener for the custom
SqlBaseErrorListenerso syntax errors are collected inerrors. The recovery parser never did, so its errors fell back to ANTLR'sConsoleErrorListener(printing toconsole.error) and never reached the collectederrorslist. Mirror the primary parser's setup onparserWithChar.Test plan
npm run lint— cleannpm run prettier:check— cleannpm run build—tsc && vite buildsucceedsCurrent word being parsedlines.