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

Quick pick items warning/error handling #173716

Closed
rebornix opened this issue Feb 7, 2023 · 4 comments
Closed

Quick pick items warning/error handling #173716

rebornix opened this issue Feb 7, 2023 · 4 comments
Assignees
Labels
under-discussion Issue is under discussion for relevance, priority, approach

Comments

@rebornix
Copy link
Member

rebornix commented Feb 7, 2023

Here are three common scenarios in notebooks where we want to present warning/error messages to users and improve the UX

  • Empty results from a quick pick item entry. This usually happens when users pick a quick pick item, which goes to the next quick pick step, but at the end there is no result in that step. We currently show a placeholder quick pick item there but

    • It might be too late to show this option
    • The quick pick item is not actionable and also doesn't look like a warning/error message, compared to the validation message we usually show in quick picks.
      Dupe of Asynchronous error handling in quick pick #174476
  • Input validation. When users try to connect VS Code to a remote Jupyter, we would show an error message to users if the server is not available. A common error in browsers is CORS and currently we only show a plain text message to users. It would be helpful if we could show some useful links that users can visit to get the server CORS enabled themselves Dupe of Support clickable links for input box descriptions #82112

image

  • Invalid Python environment in the kernel selection list. This usually happens when users have a partially broken Python environment. Jupyter or Python extension might be able to fix it, so we still present it to users (we don't automatically fix it for users, as it requires user consent). Currently, we put a warning codicon in the quick pick item title, but users don't know what the reason behind the "warning" is. Dupe of Allow quick pick to show a tooltip #174473

image

@daviddossett
Copy link
Contributor

Seems like there are three different concepts going on here. Some ideas from the hip:

  • Input validation: probably makes sense to look like your screenshot above
  • Inline warnings: this one looks like it could be more obvious—maybe warning text on the second line could work here?)

CleanShot 2023-02-08 at 10 25 49@2x

  • Empty states: it could be as simple as a diabled item with the option to customize the message? Else it falls back to a sensible default e.g.

CleanShot 2023-02-08 at 10 26 55@2x

@rebornix
Copy link
Member Author

rebornix commented Feb 9, 2023

Thanks @daviddossett, the proposals above look neat. here is a real world example for scenario 3.

Screen.Recording.2023-02-08.at.5.01.01.PM.mov

On startup, we have two remote servers stored in cache, and we present both of them to users. Only when users pick them, we will attempt to fetch kernels from the server. For the second one, since the server is already dead, we won't get any kernels back but only an error message, which can potentially explain why it fails.

@rebornix rebornix added this to the February 2023 milestone Feb 9, 2023
@TylerLeonhardt
Copy link
Member

This issue captures a lot of different use-cases and now that the dust has settled we should move these into smaller issues.

@TylerLeonhardt TylerLeonhardt removed this from the February 2023 milestone Feb 15, 2023
@TylerLeonhardt TylerLeonhardt added the under-discussion Issue is under discussion for relevance, priority, approach label Feb 15, 2023
@TylerLeonhardt
Copy link
Member

Linked each idea with a respective issue

@github-actions github-actions bot locked and limited conversation to collaborators Apr 1, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
under-discussion Issue is under discussion for relevance, priority, approach
Projects
None yet
Development

No branches or pull requests

3 participants