vscode-jupyter
vscode-jupyter copied to clipboard
Executing cells on an existing remote jupyter server does not work after switching to it from a different server with a lot of kernelspecs
When switching from an existing remote Jupyter server with a lot (e.g. 250) of kernelspecs to a different existing remote Jupyter server, I am unable to execute any cells on the new server. The UI shows a kernel on it being selected properly, but the cell does not appear to be executed.
Environment data
-
VS Code version: Reproduced the same way in both 1.85.2 and the current vscode-insiders: 1.86.0-insider (commit: feff7c8a7e1c82320380f42d898a1e03051fefb7)
-
Jupyter Extension version (available under the Extensions sidebar): Reproduced the same way with both v2024.1.2024012502 (pre-release), as well as a version from around a month ago
-
Python Extension version (available under the Extensions sidebar): v2023.25.10221012 (pre-release), as well as a version from around a month ago
-
OS (Windows | Mac | Linux distro) and version: Reproduced in both Mac (14.1.2) and Linux
-
Python and/or Anaconda version: python 3.11
Selected Jupyter core packages... IPython : 8.20.0 ipykernel : 6.29.0 ipywidgets : 8.1.1 jupyter_client : 8.6.0 jupyter_core : 5.7.1 jupyter_server : 2.12.5 jupyterlab : 4.0.11 nbclient : 0.9.0 nbconvert : 7.14.2 nbformat : 5.9.2 notebook : 7.0.7 qtconsole : 5.5.1 traitlets : 5.14.1
Also reproduced with some other versions of Jupyter core packages.
Expected behaviour
When switching to a new remote server and executing a cell, the cell should either be executed, or an obvious error should be shown in the UI for why the cell can't be executed.
Actual behaviour
Cell does not execute. Kernel picker shows that the new kernel on the new server has been selected.
Steps to reproduce:
- Create a lot of kernelspecs (I used a script to generate 250. The issue did not appear with just 10).
- Run at least two jupyter notebook servers (e.g.
jupyter notebook --no-browser). - Connect to one server as an "Existing Jupyter Server". Execute a cell. It should connect and execute fine.
- Connect to the other server as an "Existing Jupyter Server". It should show the new kernel selected normally in the top right. Execute a cell. The cell will not output any results.
Logs
Output for Jupyter in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Jupyter)
The two servers are on ports 8280 and 8180.
...
11:55:20.331 [info] Process Execution: /opt/homebrew/bin/python3 -m pip list
11:55:21.198 [info] No interpreter for Pylance for Notebook URI "~/pg/misc-python/example.ipynb"
11:55:21.301 [info] End refreshing Kernel Picker (1706288119843)
11:56:11.828 [warn] Password for http://localhost:8280/ was invalid.
11:56:11.981 [debug] Disposing Jupyter Lab Helper
11:56:11.981 [debug] SessionManager - dispose contents manager
11:56:11.981 [debug] ShutdownSessionAndConnection - dispose session manager
11:56:11.982 [debug] Finished disposing Jupyter Lab Helper
11:56:18.167 [info] Start refreshing Kernel Picker (1706288178167)
11:56:18.193 [warn] Password for http://localhost:8280/ was invalid.
11:56:18.284 [debug] Disposing Jupyter Lab Helper
11:56:18.284 [debug] SessionManager - dispose contents manager
11:56:18.284 [debug] ShutdownSessionAndConnection - dispose session manager
11:56:18.285 [debug] Finished disposing Jupyter Lab Helper
11:56:18.285 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
11:56:18.380 [info] End refreshing Kernel Picker (1706288178167)
11:56:20.981 [debug] KernelProvider switched kernel to id = 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher
11:56:20.982 [debug] Initialize notebook communications for editor ~/pg/misc-python/example.ipynb
11:56:20.982 [debug] Resolving notebook UI Comms (resolve) for ~/pg/misc-python/example.ipynb
11:56:20.982 [debug] initialize CommonMessageCoordinator
11:56:20.983 [debug] Registering commtarget jupyter.widget
11:56:20.983 [debug] IPyWidgetMessageDispatcher.initialize
11:56:20.983 [debug] Attempting to determine version of IPyWidgets
11:56:20.983 [debug] Controller selection change completed
11:56:20.983 [debug] Waiting for IPyWidgets version
11:56:20.983 [debug] Waiting for IPyWidgets version promise
11:56:33.790 [info] Handle Execution of Cells 0 for ~/pg/misc-python/example.ipynb
11:56:33.790 [debug] start the kernel, options.disableUI=false for ~/pg/misc-python/example.ipynb
11:56:33.791 [info] Starting Kernel startUsingRemoteKernelSpec, 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher for '~/pg/misc-python/example.ipynb' (disableUI=false)
11:56:33.797 [warn] Password for http://localhost:8280/ was invalid.
11:56:33.879 [debug] createNewKernelSession 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher
11:56:33.921 [info] http://localhost:8280/: Kernel started: fad513c9-664a-4b1e-9474-fb0574f9f92f
11:56:33.921 [debug] Waiting for idle on (kernel): fad513c9-664a-4b1e-9474-fb0574f9f92f -> unknown
11:56:34.211 [debug] Got status busy in waitForIdleOnSession
11:56:34.211 [debug] Got status idle in waitForIdleOnSession
11:56:34.211 [debug] Finished waiting for idle on (kernel): fad513c9-664a-4b1e-9474-fb0574f9f92f -> idle
11:56:34.212 [info] Started session for kernel startUsingRemoteKernelSpec:00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher
11:56:34.212 [debug] Started running kernel initialization for ~/pg/misc-python/example.ipynb
11:56:34.213 [debug] Executing silently Code (idle) = try:\nimport ipywidgets as _VSCODE_ipywidgets\nprint("e976ee50-99ed-4aba-9b6b-9dcd5634d07d:IPy
11:56:34.252 [debug] Executing silently Code (completed) = try:\nimport ipywidgets as _VSCODE_ipywidgets\nprint("e976ee50-99ed-4aba-9b6b-9dcd5634d07d:IPy with 1 output(s)
11:56:34.252 [debug] Determined IPyWidgets Version as 8
11:56:34.252 [debug] Version of IPyWidgets 8 determined after 13.269s
11:56:34.254 [debug] Executing silently Code (idle) = import os as _VSCODE_os\nimport sys as _VSCODE_sys\n%cd "~/pg/misc-python"\nif _VSCODE_os.get
11:56:34.262 [debug] Executing silently Code (completed) = import os as _VSCODE_os\nimport sys as _VSCODE_sys\n%cd "~/pg/misc-python"\nif _VSCODE_os.get with 2 output(s)
11:56:34.262 [debug] Requesting Kernel info
11:56:34.262 [debug] Got Kernel info
11:56:34.262 [debug] End running kernel initialization, now waiting for idle
11:56:34.262 [debug] Waiting for idle on (kernel): fad513c9-664a-4b1e-9474-fb0574f9f92f -> idle
11:56:34.262 [debug] Finished waiting for idle on (kernel): fad513c9-664a-4b1e-9474-fb0574f9f92f -> idle
11:56:34.262 [debug] End running kernel initialization, session is idle
11:56:34.263 [debug] Updating preferred kernel for remote notebook fad513c9-664a-4b1e-9474-fb0574f9f92f
11:56:34.263 [info] Registering Kernel Completion Provider from kernel kernel11 for language python
11:56:34.263 [info] Start refreshing Kernel Picker (1706288194263)
11:56:34.263 [debug] IPyWidgetScriptSource.initialize
11:56:34.264 [debug] IPyWidgetMessageDispatcher.initialize
11:56:34.265 [debug] Storing Preferred remote kernel for ~/pg/misc-python/example.ipynb is fad513c9-664a-4b1e-9474-fb0574f9f92f
11:56:34.267 [debug] Cell Index:0 sent to kernel
11:56:34.271 [debug] Executing silently Code (idle) = # Copyright (c) Microsoft Corporation. All rights reserved.\n# Licensed under the MIT License.\n# Sou
11:56:34.302 [debug] Start cell 0 execution @ 1706288194302 (clear output)
11:56:34.302 [info] Kernel acknowledged execution of cell 0 @ 1706288194302
11:56:34.359 [debug] Disposing Jupyter Lab Helper
11:56:34.359 [debug] SessionManager - dispose contents manager
11:56:34.359 [debug] ShutdownSessionAndConnection - dispose session manager
11:56:34.360 [debug] Finished disposing Jupyter Lab Helper
11:56:34.360 [debug] UniversalRemoteKernelFinder: Writing 252 remote kernel connection metadata to cache
11:56:34.363 [info] End cell 0 execution after 0.06s, completed @ 1706288194362, started @ 1706288194302
11:56:34.363 [debug] Cell 0 executed successfully
11:56:34.364 [debug] Executing silently Code (completed) = # Copyright (c) Microsoft Corporation. All rights reserved.\n# Licensed under the MIT License.\n# Sou with 1 output(s)
11:56:34.365 [debug] Widget Outputs include, ['/jupyter-js-widgets/extension.js']
11:56:34.410 [info] End refreshing Kernel Picker (1706288194263)
11:56:34.819 [debug] IPyWidgetMessageDispatcher.initialize
11:56:34.819 [debug] Web view is ready to receive widget messages
11:56:34.824 [error] Error downloading from http://localhost:8280/nbextensions/jupyter-js-widgets/extension.js: Not Found
11:56:34.824 [warn] Failed to fetch script sources [Error: Error downloading from http://localhost:8280/nbextensions/jupyter-js-widgets/extension.js: Not Found
at ST.getWidgetScriptSource (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:86551)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async ST.getConfigFromWidget (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:83432)
at async Promise.all (index 0)
at async ST.getWidgetModuleMappingsImpl (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:83856)
at async gT.getWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:79989)
at async ~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:23931
at async Promise.all (index 1)
at async jy.getWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:23842)
at async eT.sendWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:28208)]
11:56:34.824 [debug] Widget Message: Received IPyWidgets_kernelOptions in ScriptManager
11:56:34.824 [debug] Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions
11:56:34.825 [debug] IPyWidgetMessageDispatcher.initialize
11:56:34.826 [debug] IPyWidgetMessageDispatcher.initialize
11:56:34.826 [debug] Widget Message: data-base-url set to http://localhost:8280/
11:56:34.835 [debug] Widget Message: Received IPyWidgets_kernelOptions in ScriptManager
11:56:34.835 [debug] Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions
11:56:34.835 [debug] Widget Message: data-base-url set to http://localhost:8280/
11:56:51.760 [warn] Password for http://localhost:8180/ was invalid.
11:56:51.901 [debug] Disposing Jupyter Lab Helper
11:56:51.901 [debug] SessionManager - dispose contents manager
11:56:51.901 [debug] ShutdownSessionAndConnection - dispose session manager
11:56:51.902 [debug] Finished disposing Jupyter Lab Helper
11:56:54.323 [info] Start refreshing Kernel Picker (1706288214323)
11:56:54.339 [debug] Preferred Remote kernel for ~/pg/misc-python/example.ipynb is fad513c9-664a-4b1e-9474-fb0574f9f92f
11:56:54.367 [warn] Password for http://localhost:8180/ was invalid.
11:56:54.474 [debug] Disposing Jupyter Lab Helper
11:56:54.474 [debug] SessionManager - dispose contents manager
11:56:54.474 [debug] ShutdownSessionAndConnection - dispose session manager
11:56:54.475 [debug] Finished disposing Jupyter Lab Helper
11:56:54.475 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
11:56:54.601 [info] End refreshing Kernel Picker (1706288214323)
11:57:01.125 [info] Disposing kernel 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher for notebook ~/pg/misc-python/example.ipynb due to selection of another kernel or closing of the notebook
11:57:01.125 [info] Dispose Kernel '~/pg/misc-python/example.ipynb' associated with '~/pg/misc-python/example.ipynb'
11:57:01.125 [debug] Cancel pending cells
11:57:01.125 [debug] Shutdown session - current session, called from
at QD.shutdownImplementation (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:249:33639)
at QD.disposeAsync (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:249:32648)
at e (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:252:31465)
at a_.dispose (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:252:31699)
at r.onDidChangeSelectedNotebooks (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:66980)
11:57:01.125 [debug] shutdownSession fad513c9-664a-4b1e-9474-fb0574f9f92f, 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher - start
11:57:01.125 [debug] Session cannot be shutdown 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher
11:57:01.125 [debug] Disposing Jupyter Lab Helper
11:57:01.125 [debug] SessionManager - dispose contents manager
11:57:01.126 [debug] ShutdownSessionAndConnection - dispose session manager
11:57:01.126 [debug] Shutdown session -- complete
11:57:01.126 [debug] shutdownSession fad513c9-664a-4b1e-9474-fb0574f9f92f, 00c689b23e4b73d253f2f379ca84073a40faf255f8475cd1c82c3b9911558b3a..kernel11./python./.-m#ipykernel_launcher - shutdown complete
11:57:01.127 [debug] Kernel got disposed, hence there is no longer a kernel associated with ~/pg/misc-python/example.ipynb
11:57:01.128 [debug] Finished disposing Jupyter Lab Helper
11:57:03.127 [info] Start refreshing Kernel Picker (1706288223127)
11:57:03.239 [debug] Disposing Jupyter Lab Helper
11:57:03.239 [debug] SessionManager - dispose contents manager
11:57:03.239 [debug] ShutdownSessionAndConnection - dispose session manager
11:57:03.240 [debug] Finished disposing Jupyter Lab Helper
11:57:03.240 [debug] UniversalRemoteKernelFinder: Writing 252 remote kernel connection metadata to cache
11:57:03.255 [debug] Disposing Jupyter Lab Helper
11:57:03.255 [debug] SessionManager - dispose contents manager
11:57:03.256 [debug] ShutdownSessionAndConnection - dispose session manager
11:57:03.256 [debug] Finished disposing Jupyter Lab Helper
11:57:03.256 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
11:57:03.320 [info] End refreshing Kernel Picker (1706288223127)
11:57:05.802 [info] Handle Execution of Cells 0 for ~/pg/misc-python/example.ipynb
Thanks for filing this issue and sorry you are running into this problem.
When switching to the new server, is that server http://localhost:8180/
Based on the logs the password provided to this server is invalid
Also out of curiosity, do you have 250 Python kernelspecs with different environment variables? Or are they a mix of python and non python, and multiple python kernelspecs pointing to different versions Just trying to understand the scenarios under which users would have such a large number.
Thanks again.
Thanks for looking into this!
When switching to the new server, is that server http://localhost:8180/ Based on the logs the password provided to this server is invalid
Yes, but I don't believe this is relevant. These logs are just from a minimal vscode/jupyter setup that I used to reproduce the issue. The logs also show the same warning for 8280 (the initial server), which connected and executed fine. Furthermore, I also have no issues switching between the servers when there are only 10 kernelspecs generated. Also, the thing that matters is which server I connect to first; the servers I used to reproduce the issue are identical except for the port, and the issue can be reproduced in the other order (first connecting to 8180, then 8280).
Also out of curiosity, do you have 250 Python kernelspecs with different environment variables? Or are they a mix of python and non python, and multiple python kernelspecs pointing to different versions Just trying to understand the scenarios under which users would have such a large number.
These are all python kernelspecs. There are some different cases where it's useful to have a lot of python kernelspecs available on remote servers, but this example can also be reproduced in a simple way just by generating a bunch locally.
I've tried this at my end, and do so see any issues with connecting (switching) to remove Jupyter servers with over 255 kernels. Please can you try this again and share the logs, I'm hoping there might be something different in the logs that might help figure this out.
Same jupyter versions as above.
Logs from the video (first server is 8201, second one is 8202). I start adding the first server around 22:28:21
Visual Studio Code - Insiders (1.86.0-insider, undefined, desktop)
Jupyter Extension Version: 2024.1.2024012502.
Python Extension Version: 2023.25.10292213.
Pylance Extension Version: 2024.1.102.
Platform: darwin (arm64).
No workspace folder opened.
22:26:15.482 [debug] Get Custom Env Variables, Class name = Tm (started execution), Arg 1: undefined, Arg 2: "RunPythonCode"
22:26:15.482 [info] Start refreshing Kernel Picker (1706671575482)
22:26:15.491 [info] Using Pylance
22:26:15.493 [debug] Get Custom Env Variables, Class name = Tm, completed in 11ms, has a truthy return value, Arg 1: undefined, Arg 2: "RunPythonCode"
22:26:15.493 [debug] Jupyter Paths /kernels:
22:26:15.494 [debug] Kernel Spec Root Paths, /usr/share/jupyter/kernels, /usr/local/share/jupyter/kernels, ~/Library/Jupyter/kernels
22:26:15.496 [debug] Preferred Remote kernel for ~/pg/misc-python/example.ipynb is 19fcf447-7129-41da-92e0-225e609384c7
22:26:15.496 [info] End refreshing Kernel Picker (1706671575482)
22:26:15.499 [debug] No controller, hence notebook communications cannot be initialized for editor ~/pg/misc-python/example.ipynb
22:26:15.499 [info] Start refreshing Interpreter Kernel Picker
22:26:15.499 [info] Start refreshing Kernel Picker (1706671575499)
22:26:15.605 [debug] Search for KernelSpecs in Interpreter /usr/bin/python3
22:26:15.605 [debug] Finding Global Python KernelSpecs
22:26:15.606 [debug] Search for KernelSpecs in Interpreter /opt/homebrew/bin/python3
22:26:15.606 [debug] Full interpreter list is length: 2, /usr/bin/python3::Unknown:/usr/bin/python3, /opt/homebrew/bin/python3::Unknown:/opt/homebrew/bin/python3
22:26:15.606 [debug] Getting activated env variables, Class name = mp (started execution), Arg 1: undefined, Arg 2: "/opt/homebrew/bin/python3", Arg 3: undefined
22:26:15.606 [debug] Get Custom Env Variables, Class name = Tm (started execution), Arg 1: undefined, Arg 2: "RunPythonCode"
22:26:15.606 [debug] Get Custom Env Variables, Class name = Tm, completed in 0ms, has a truthy return value, Arg 1: undefined, Arg 2: "RunPythonCode"
22:26:15.612 [debug] Kernels for interpreter /usr/bin/python3 are .jvsc74a57bd031f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6./usr/bin/python3./usr/bin/python3.-m#ipykernel_launcher
22:26:15.612 [debug] Kernels for interpreter /opt/homebrew/bin/python3 are .jvsc74a57bd0b0fa6594d8f4cbf19f97940f81e996739fb7646882a419484c72d19e05852a7e./opt/homebrew/bin/python3./opt/homebrew/bin/python3.-m#ipykernel_launcher
22:26:15.775 [debug] Full interpreter list is length: 2, /usr/bin/python3::Unknown:/usr/bin/python3, /opt/homebrew/bin/python3::Unknown:/opt/homebrew/bin/python3
22:26:15.775 [debug] Refreshed Environments
22:26:15.795 [debug] Conda file returned by Python Extension is conda
22:26:15.817 [warn] Failed to get activated env vars for /opt/homebrew/bin/python3 in 211ms
22:26:15.818 [debug] Create ProcessService, Class name = _m (started execution), Arg 1: undefined
22:26:15.818 [debug] Get Custom Env Variables, Class name = Tm (started execution), Arg 1: undefined, Arg 2: "RunNonPythonCode", Arg 3: undefined
22:26:15.818 [debug] Get Custom Env Variables, Class name = Tm, completed in 0ms, has a truthy return value, Arg 1: undefined, Arg 2: "RunNonPythonCode", Arg 3: undefined
22:26:15.818 [debug] Create ProcessService, Class name = _m, completed in 0ms, has a truthy return value, Arg 1: undefined
22:26:15.818 [info] Process Execution: /opt/homebrew/bin/python3 -c "import site;print("USER_BASE_VALUE");print(site.USER_BASE);print("USER_BASE_VALUE");"
22:26:15.835 [debug] USER_SITE for /opt/homebrew/bin/python3 is ~/Library/Python/3.11/bin
22:26:15.835 [debug] Prepend PATH with user site path for /opt/homebrew/bin/python3, user site ~/Library/Python/3.11/bin
22:26:15.835 [debug] Prepend PATH with python bin for /opt/homebrew/bin/python3
22:26:15.835 [debug] Activated Env Variables for /opt/homebrew/bin/python3,
PATH value is /opt/homebrew/bin:~/Library/Python/3.11/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin and
Path value is undefined
22:26:15.836 [debug] Getting activated env variables, Class name = mp, completed in 230ms, has a truthy return value, Arg 1: undefined, Arg 2: "/opt/homebrew/bin/python3", Arg 3: undefined
22:26:15.836 [info] Process Execution: /opt/homebrew/bin/python3 -m pip list
22:26:16.674 [info] No interpreter for Pylance for Notebook URI "~/pg/misc-python/example.ipynb"
22:26:16.779 [info] End refreshing Kernel Picker (1706671575499)
22:27:00.672 [debug] Preferred Remote kernel for Untitled-1.ipynb is undefined
22:27:00.674 [info] No interpreter for Pylance for Notebook URI "Untitled-1.ipynb"
22:27:00.690 [debug] No controller, hence notebook communications cannot be initialized for editor Untitled-1.ipynb
22:27:01.885 [debug] No controller, hence notebook communications cannot be initialized for editor ~/pg/misc-python/example.ipynb
22:27:02.589 [debug] No controller, hence notebook communications cannot be initialized for editor Untitled-1.ipynb
22:27:38.197 [debug] Preferred Remote kernel for ~/pg/misc-python/demo.ipynb is undefined
22:27:38.197 [info] No interpreter for Pylance for Notebook URI "~/pg/misc-python/demo.ipynb"
22:27:38.235 [debug] No controller, hence notebook communications cannot be initialized for editor ~/pg/misc-python/demo.ipynb
22:28:21.756 [warn] Password for http://localhost:8201/ was invalid.
22:28:21.892 [debug] Disposing Jupyter Lab Helper
22:28:21.892 [debug] SessionManager - dispose contents manager
22:28:21.892 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:21.893 [debug] Finished disposing Jupyter Lab Helper
22:28:23.685 [info] Start refreshing Kernel Picker (1706671703685)
22:28:23.687 [debug] Preferred Remote kernel for ~/pg/misc-python/demo.ipynb is undefined
22:28:23.708 [warn] Password for http://localhost:8201/ was invalid.
22:28:23.788 [debug] Disposing Jupyter Lab Helper
22:28:23.788 [debug] SessionManager - dispose contents manager
22:28:23.788 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:23.788 [debug] Finished disposing Jupyter Lab Helper
22:28:23.788 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
22:28:23.873 [info] End refreshing Kernel Picker (1706671703685)
22:28:27.897 [info] No interpreter for Pylance for Notebook URI "~/pg/misc-python/demo.ipynb"
22:28:27.898 [debug] KernelProvider switched kernel to id = 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher
22:28:27.898 [debug] Initialize notebook communications for editor ~/pg/misc-python/demo.ipynb
22:28:27.898 [debug] Resolving notebook UI Comms (resolve) for ~/pg/misc-python/demo.ipynb
22:28:27.898 [debug] initialize CommonMessageCoordinator
22:28:27.899 [debug] Registering commtarget jupyter.widget
22:28:27.899 [debug] IPyWidgetMessageDispatcher.initialize
22:28:27.899 [debug] Attempting to determine version of IPyWidgets
22:28:27.900 [debug] Controller selection change completed
22:28:27.900 [debug] Waiting for IPyWidgets version
22:28:27.900 [debug] Waiting for IPyWidgets version promise
22:28:29.115 [info] Handle Execution of Cells 0 for ~/pg/misc-python/demo.ipynb
22:28:29.116 [debug] start the kernel, options.disableUI=false for ~/pg/misc-python/demo.ipynb
22:28:29.116 [info] Starting Kernel startUsingRemoteKernelSpec, 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher for '~/pg/misc-python/demo.ipynb' (disableUI=false)
22:28:29.122 [warn] Password for http://localhost:8201/ was invalid.
22:28:29.186 [debug] createNewKernelSession 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher
22:28:29.219 [info] http://localhost:8201/: Kernel started: e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3
22:28:29.219 [debug] Waiting for idle on (kernel): e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3 -> unknown
22:28:29.505 [debug] Got status busy in waitForIdleOnSession
22:28:29.505 [debug] Got status idle in waitForIdleOnSession
22:28:29.505 [debug] Finished waiting for idle on (kernel): e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3 -> idle
22:28:29.505 [info] Started session for kernel startUsingRemoteKernelSpec:845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher
22:28:29.506 [debug] Started running kernel initialization for ~/pg/misc-python/demo.ipynb
22:28:29.506 [debug] Executing silently Code (idle) = try:\nimport ipywidgets as _VSCODE_ipywidgets\nprint("e976ee50-99ed-4aba-9b6b-9dcd5634d07d:IPy
22:28:29.539 [debug] Executing silently Code (completed) = try:\nimport ipywidgets as _VSCODE_ipywidgets\nprint("e976ee50-99ed-4aba-9b6b-9dcd5634d07d:IPy with 1 output(s)
22:28:29.539 [debug] Determined IPyWidgets Version as 8
22:28:29.539 [debug] Version of IPyWidgets 8 determined after 1.64s
22:28:29.540 [debug] Executing silently Code (idle) = import os as _VSCODE_os\nimport sys as _VSCODE_sys\n%cd "~/pg/misc-python"\nif _VSCODE_os.get
22:28:29.545 [debug] Executing silently Code (completed) = import os as _VSCODE_os\nimport sys as _VSCODE_sys\n%cd "~/pg/misc-python"\nif _VSCODE_os.get with 2 output(s)
22:28:29.545 [debug] Requesting Kernel info
22:28:29.545 [debug] Got Kernel info
22:28:29.545 [debug] End running kernel initialization, now waiting for idle
22:28:29.546 [debug] Waiting for idle on (kernel): e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3 -> idle
22:28:29.546 [debug] Finished waiting for idle on (kernel): e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3 -> idle
22:28:29.546 [debug] End running kernel initialization, session is idle
22:28:29.546 [debug] Updating preferred kernel for remote notebook e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3
22:28:29.546 [info] Registering Kernel Completion Provider from kernel kernel244 for language python
22:28:29.546 [info] Start refreshing Kernel Picker (1706671709546)
22:28:29.547 [debug] IPyWidgetScriptSource.initialize
22:28:29.547 [debug] IPyWidgetMessageDispatcher.initialize
22:28:29.548 [debug] Storing Preferred remote kernel for ~/pg/misc-python/demo.ipynb is e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3
22:28:29.549 [debug] Cell Index:0 sent to kernel
22:28:29.552 [debug] Executing silently Code (idle) = # Copyright (c) Microsoft Corporation. All rights reserved.\n# Licensed under the MIT License.\n# Sou
22:28:29.573 [debug] Start cell 0 execution @ 1706671709573 (clear output)
22:28:29.574 [info] Kernel acknowledged execution of cell 0 @ 1706671709573
22:28:29.576 [info] End cell 0 execution after 0.003s, completed @ 1706671709576, started @ 1706671709573
22:28:29.576 [debug] Cell 0 executed successfully
22:28:29.628 [debug] Disposing Jupyter Lab Helper
22:28:29.628 [debug] SessionManager - dispose contents manager
22:28:29.628 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:29.628 [debug] Finished disposing Jupyter Lab Helper
22:28:29.628 [debug] UniversalRemoteKernelFinder: Writing 252 remote kernel connection metadata to cache
22:28:29.630 [debug] Executing silently Code (completed) = # Copyright (c) Microsoft Corporation. All rights reserved.\n# Licensed under the MIT License.\n# Sou with 1 output(s)
22:28:29.631 [debug] Widget Outputs include, ['/jupyter-js-widgets/extension.js']
22:28:29.655 [info] End refreshing Kernel Picker (1706671709546)
22:28:30.113 [debug] IPyWidgetMessageDispatcher.initialize
22:28:30.113 [debug] Web view is ready to receive widget messages
22:28:30.116 [error] Error downloading from http://localhost:8201/nbextensions/jupyter-js-widgets/extension.js: Not Found
22:28:30.116 [warn] Failed to fetch script sources [Error: Error downloading from http://localhost:8201/nbextensions/jupyter-js-widgets/extension.js: Not Found
at ST.getWidgetScriptSource (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:86551)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async ST.getConfigFromWidget (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:83432)
at async Promise.all (index 0)
at async ST.getWidgetModuleMappingsImpl (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:83856)
at async gT.getWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:79989)
at async ~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:23931
at async Promise.all (index 1)
at async jy.getWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:23842)
at async eT.sendWidgetScriptSources (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:28208)]
22:28:30.118 [debug] Widget Message: Received IPyWidgets_kernelOptions in ScriptManager
22:28:30.118 [debug] Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions
22:28:30.118 [debug] IPyWidgetMessageDispatcher.initialize
22:28:30.118 [debug] IPyWidgetMessageDispatcher.initialize
22:28:30.119 [debug] Widget Message: data-base-url set to http://localhost:8201/
22:28:30.123 [debug] Widget Message: Received IPyWidgets_kernelOptions in ScriptManager
22:28:30.123 [debug] Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions
22:28:30.123 [debug] Widget Message: data-base-url set to http://localhost:8201/
22:28:43.560 [warn] Password for http://localhost:8202/ was invalid.
22:28:43.646 [debug] Disposing Jupyter Lab Helper
22:28:43.646 [debug] SessionManager - dispose contents manager
22:28:43.646 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:43.646 [debug] Finished disposing Jupyter Lab Helper
22:28:45.144 [info] Start refreshing Kernel Picker (1706671725144)
22:28:45.162 [debug] Preferred Remote kernel for ~/pg/misc-python/demo.ipynb is e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3
22:28:45.170 [warn] Password for http://localhost:8202/ was invalid.
22:28:45.250 [debug] Disposing Jupyter Lab Helper
22:28:45.250 [debug] SessionManager - dispose contents manager
22:28:45.250 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:45.250 [debug] Finished disposing Jupyter Lab Helper
22:28:45.250 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
22:28:45.346 [info] End refreshing Kernel Picker (1706671725144)
22:28:48.098 [info] Disposing kernel 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher for notebook ~/pg/misc-python/demo.ipynb due to selection of another kernel or closing of the notebook
22:28:48.098 [info] Dispose Kernel '~/pg/misc-python/demo.ipynb' associated with '~/pg/misc-python/demo.ipynb'
22:28:48.098 [debug] Cancel pending cells
22:28:48.098 [debug] Shutdown session - current session, called from
at QD.shutdownImplementation (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:249:33639)
at QD.disposeAsync (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:249:32648)
at e (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:252:31465)
at a_.dispose (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:252:31699)
at r.onDidChangeSelectedNotebooks (~/.vscode-insiders/extensions/ms-toolsai.jupyter-2024.1.2024012502-darwin-arm64/dist/extension.node.js:282:66980)
22:28:48.098 [debug] shutdownSession e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3, 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher - start
22:28:48.098 [debug] Session cannot be shutdown 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher
22:28:48.098 [debug] Disposing Jupyter Lab Helper
22:28:48.098 [debug] SessionManager - dispose contents manager
22:28:48.098 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:48.099 [debug] Shutdown session -- complete
22:28:48.099 [debug] shutdownSession e2f6d78b-87b7-4fb9-84b6-97ab4b5264d3, 845deed76cc6d29f1ff305087b959ac8d3fc2fc4f7ff0c3ab3af05500991bec5..kernel244./python./.-m#ipykernel_launcher - shutdown complete
22:28:48.100 [debug] Kernel got disposed, hence there is no longer a kernel associated with ~/pg/misc-python/demo.ipynb
22:28:48.100 [debug] Finished disposing Jupyter Lab Helper
22:28:49.733 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:50.100 [info] Start refreshing Kernel Picker (1706671730100)
22:28:50.180 [debug] Disposing Jupyter Lab Helper
22:28:50.180 [debug] SessionManager - dispose contents manager
22:28:50.180 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:50.180 [debug] Finished disposing Jupyter Lab Helper
22:28:50.180 [debug] UniversalRemoteKernelFinder: Writing 252 remote kernel connection metadata to cache
22:28:50.200 [debug] Disposing Jupyter Lab Helper
22:28:50.200 [debug] SessionManager - dispose contents manager
22:28:50.200 [debug] ShutdownSessionAndConnection - dispose session manager
22:28:50.200 [debug] Finished disposing Jupyter Lab Helper
22:28:50.200 [debug] UniversalRemoteKernelFinder: Writing 251 remote kernel connection metadata to cache
22:28:50.256 [info] End refreshing Kernel Picker (1706671730100)
22:28:50.360 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:51.055 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:51.487 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:53.552 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:53.790 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:53.966 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:54.158 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:54.334 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:54.508 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:54.677 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:54.887 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.078 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.241 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.413 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.579 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.723 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:55.876 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:56.032 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
22:28:56.381 [info] Handle Execution of Cells 1 for ~/pg/misc-python/demo.ipynb
@andyscho thanks for looking into this and finding the root cause Closing as upstream issue https://github.com/microsoft/vscode/issues/204416
Marking as a dupe to exclude from verification