Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lsp: better handling of non-actionable error messages #16439

Closed
jespertheend opened this issue Aug 14, 2022 · 13 comments
Closed

lsp: better handling of non-actionable error messages #16439

jespertheend opened this issue Aug 14, 2022 · 13 comments
Labels
lsp related to the language server suggestion suggestions for new features (yet to be agreed)

Comments

@jespertheend
Copy link
Contributor

jespertheend commented Aug 14, 2022

Is your feature request related to a problem? Please describe.

The Deno extension shows a lot of error notifications, more than any of the extensions I'm currently using. Some examples include:

This leads to frustration because these notifications don't work like toasts, so you have to manually dismiss them.
This also takes attention away from notifications that actually do matter.

Describe the solution you'd like

The solution here is probably less trivial than I expect it to be. Ideally there would be different settings for different kind of notifications. So the user can choose which notifications to subscribe to.
But if this is not feasible, a single option to suppress all errors would be helpful as well I think.

@kitsonk kitsonk added the suggestion suggestions for new features (yet to be agreed) label Oct 27, 2022
@kitsonk kitsonk transferred this issue from denoland/vscode_deno Oct 27, 2022
@kitsonk kitsonk changed the title An option to suppress some notifications. lsp: better handling of non-actionable error messages Oct 27, 2022
@kitsonk kitsonk added the lsp related to the language server label Oct 27, 2022
@kitsonk
Copy link
Contributor

kitsonk commented Oct 27, 2022

In many cases, when we get an error back from the integrated TypeScript language server, we send it to the client as an error, which creates a pop, but ultimately the error is unactionable, and often transitory, where typing a little bit more resolves the internal TypeScript language server debug issue. We should in a lot of cases, just continue to log these out to the extension log, but just return an empty return value instead of erroring.

@lemmon-714
Copy link

Please, as VSCode has no means to enable extension error popups (yes I'm aware of "silence notifications", does not affect extension-error-popups) I have to constantly yet unpredictably close those unactionable irritations.

@bartlomieju
Copy link
Member

@crowlKats please take a look

@lemmon-714
Copy link

Any progress on this? It's extremely irritating. Thank you

@bartlomieju
Copy link
Member

Any progress on this? It's extremely irritating. Thank you

Which messages are you getting most often?

@lemmon-714
Copy link

It's calm right now; this one just appeared:

Screenshot 2023-01-07 at 18 25 10

Screenshot 2023-01-07 at 18 25 30

It looks quite familiar though. Might be it. The one I'm talking about happens when editing files, so they of course don't make much sense while I'm in the process of typing.

thank you!

@bartlomieju
Copy link
Member

That message should be now fixed in V1.29.2. let me know if this happens after upgrade

@lemmon-714
Copy link

Might be that I'm in the wrong repo, this is my version:

Screenshot 2023-01-10 at 15 48 38

Screenshot 2023-01-10 at 15 47 48

@bartlomieju
Copy link
Member

Might be that I'm in the wrong repo, this is my version:

Screenshot 2023-01-10 at 15 48 38 Screenshot 2023-01-10 at 15 47 48

This is the version of the vscode_deno plugin, what is the Deno version if you evaluate deno --version in the terminal?

@lemmon-714
Copy link

Ah, makes sense, I assumed it's an issue with the plugin. Was on an older version of Deno indeed, updating now. Thank you!

@nayeemrmn
Copy link
Collaborator

Error notifications are usually bugs. Let's continue in individual issues if they come up.

@jespertheend
Copy link
Contributor Author

I'm sorry but I really don't think notifications are intended for that use case. All extensions I know like eslint, prettier and even TypeScript itself use the output panel for errors.
Errors often occur when hovering over symbols or when modifying files, which makes the notifications frequent and annoying.
On top of that, vscode has no built-in way to suppress error notifications so the only thing you can do to get rid of them is to disable the extension. 😕

@nayeemrmn
Copy link
Collaborator

@jespertheend The notifications are the default behaviour when an LSP response returns an error, we don't do anything in particular to cause that. I see them for rust-analyzer sometimes as well. When I say bugs I mean bugs with the LSP to be clear. If you know of any triggers currently, please report them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lsp related to the language server suggestion suggestions for new features (yet to be agreed)
Projects
None yet
Development

No branches or pull requests

6 participants