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

Kernel Picker MRU #166339

Closed
rebornix opened this issue Nov 15, 2022 · 0 comments
Closed

Kernel Picker MRU #166339

rebornix opened this issue Nov 15, 2022 · 0 comments
Assignees
Labels
on-testplan ux User experience issues
Milestone

Comments

@rebornix
Copy link
Member

In microsoft/vscode-jupyter#11904 we are exploring improvements to the kernel picker. Current kernel picker presents all kernels in a flat list, it works well for scenarios where kernels are fixed (e.g., .NET) but it's not great when the kernel list is dynamic and involves user interaction. The Jupyter extension supports to use local Jupyter kernel specs, existing Python environments on user's system, or any remote Jupyter server(user provided or offered by 3rd party) as execution engine (i.e., kernels), but users find them often lost in either long list of all available kernels.

Here we want to explore a MRU list for kernels when users switch between various kernels for different purposes, hiding kernels that are not frequently used, or only create kernels/controllers when they are manually picked. It will cover following basic scenarios:

New user

Users would see suggested kernels from notebook extensions they installed

image

Kernels whose relevance to the active notebook/environment are folded into action More Kernels (${count} ...) and users can browse them by picking this action

image

If users are not happy with either, they can still choose to create new Jupyter kernels through the action Select another Jupyter kernel contributed by Jupyter extension, through which they can use a Python environment as a kernel, connect a remote jupyter server, or start a new Jupyter server from GitHub/AZML.

image

Second time +

Once users pick a kernel and use it, VS Code will cache the user selection and generate a MRU list based on the kernel selection history. Next time when users open a new notebook, VS Code will present the top N items in the MRU list to users

image


In addition to above basic scenarios, we also need to ensure that

  • This new experience will be behind a setting/experiment and we would also migrate users existing kernel selection history to the new MRU list, users should take no extra step to use the previously selected kernel to run code, until they decide to switch to another kernel.
  • Extension which contribute NotebookControllers to their own custom notebook shouldn't have a degraded experience with the new MRU experience.
@rebornix rebornix added notebook-kernel ux User experience issues labels Nov 15, 2022
@rebornix rebornix added this to the November 2022 milestone Nov 15, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Jan 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
on-testplan ux User experience issues
Projects
None yet
Development

No branches or pull requests

2 participants