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

Matplotlib widget does not load when CDN is disabled and when connected to a Remote Jupyter Server #10510

Closed
DonJayamanne opened this issue Jun 20, 2022 · 7 comments · Fixed by #10509 or #10661
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug ipywidgets Rendering, loading, saving, anything to do with IPyWidgets triage-needed Issue needs to be triaged verified Verification succeeded
Milestone

Comments

@DonJayamanne
Copy link
Contributor

DonJayamanne commented Jun 20, 2022

  • First render a cell with a 3rd party widget & enable CDNs
  • Then go into settings and update the widget cdn as follows "jupyter.widgetScriptSources": []
  • Now reload VS Code (basically we've turned off CDN)
  • Connect to a remote server
  • Run a cell that renders a Matplotlib plot
  • Nothing happens for 1 full minute

Basically we're at a dead lock,

  • The kernel messages are being synced and any subsequent kernel message cannot be procesed as we're still waiting for the UI kernel message to compete,
  • However the UI side is waiting for widgets to load
  • On the extension host side, the code is waiting for some new kernel request to complete (fetch list of widgets via an exec request)

Solutions

  • Ensure we load list of widgets on remote early
  • Ensure we don't wait for previous kernel messages to complete when sending internal requests (requests generated by the extension)
@DonJayamanne DonJayamanne added the bug Issue identified by VS Code Team member as probable bug label Jun 20, 2022
@DonJayamanne DonJayamanne self-assigned this Jun 20, 2022
@DonJayamanne DonJayamanne added the ipywidgets Rendering, loading, saving, anything to do with IPyWidgets label Jun 20, 2022
@github-actions github-actions bot added the triage-needed Issue needs to be triaged label Jun 20, 2022
@DonJayamanne DonJayamanne added this to the June 2022 milestone Jun 20, 2022
@rchiodo rchiodo added verified Verification succeeded and removed triage-needed Issue needs to be triaged labels Jun 30, 2022
@rchiodo
Copy link
Contributor

rchiodo commented Jun 30, 2022

I'm not really sure what is supposed to happen here.

I did this:

  • Set "jupyter.widgetScriptSources": [],
  • Connected to a remote server
  • Ran something with a widget

I get this dialog three times in a row:

image

Then this pops up in the bottom right:

image

Restarting the kernel does NOT make the widget appear.

I also thought we weren't supposed to need the CDN on remote? It should be able to pull the js files from the nbextension folder, right?

@rchiodo rchiodo reopened this Jun 30, 2022
@github-actions github-actions bot added the triage-needed Issue needs to be triaged label Jun 30, 2022
@rchiodo rchiodo added verification-found Issue verification failed and removed triage-needed Issue needs to be triaged verified Verification succeeded labels Jun 30, 2022
@rchiodo
Copy link
Contributor

rchiodo commented Jun 30, 2022

Log output when doing this in the web with beakerx

` Visual Studio Code - Insiders (1.69.0-insider, undefined, vscode.dev) Jupyter Extension Version: 2022.6.1001831043. Python Extension Version: 2022.9.11811011. No workspace folder opened. User belongs to experiment group 'jupyterTest' User belongs to experiment group 'jupyterEnhancedDataViewer' info 15:47:29.26: Loading webview. View is notset info 15:47:29.26: Loading web view... info 15:47:29.27: Webview panel created. debug 15:47:29.212: KernelFinder discovered 0 local and 0 remote kernels debug 15:47:29.212: Found 0 cached controllers debug 15:47:29.212: Creating 0 controllers debug 15:47:29.220: KernelFinder discovered 0 local and 0 remote kernels debug 15:47:29.220: Found 0 non-cached controllers debug 15:47:29.220: Creating 0 controllers info 15:47:29.862: Web view react rendered error 15:48:4.76: No remote controllers info 15:48:4.76: Preferred Remote kernel for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb is 6aa254d4-a5dc-4db0-9b4c-56ac4dce9626 debug 15:48:4.78: No controller, hence notebook communications cannot be initialized for editor /Testing_3/ipwidget_tests/beakerx_widgets.ipynb info 15:48:18.79: Creating server with url : http://localhost:8888/ debug 15:48:18.196: Disposing session manager debug 15:48:18.196: SessionManager - dispose contents manager debug 15:48:18.196: ShutdownSessionAndConnection - dispose session manager debug 15:48:18.196: Finished disposing jupyter session manager info 15:48:18.207: Checking for server existence. info 15:48:18.208: Checking for server usability. info 15:48:18.208: Starting notebook server. info 15:48:18.209: Connecting to server info 15:48:18.210: Connecting to process server info 15:48:18.210: Connecting server kernel http://localhost:8888/ Connecting to Jupyter server at http://localhost:8888/ info 15:48:18.210: Creating server with url : http://localhost:8888/ info 15:48:18.211: Connection complete server info 15:48:18.212: Server started. info 15:48:18.212: Creating server with url : http://localhost:8888/ debug 15:48:18.414: Disposing session manager debug 15:48:18.414: SessionManager - dispose contents manager debug 15:48:18.414: ShutdownSessionAndConnection - dispose session manager debug 15:48:18.414: Finished disposing jupyter session manager debug 15:48:18.419: KernelFinder discovered 0 local and 23 remote kernels debug 15:48:18.419: Found 23 cached controllers debug 15:48:18.419: Creating 23 controllers debug 15:48:18.420: Creating notebook controller with name Python 3 (ipykernel) (manualTestFile_3.ipynb) debug 15:48:18.421: Creating notebook controller with name Python 3 (ipykernel) (manualTestFile_3.ipynb) debug 15:48:18.421: Creating notebook controller with name Python 3 (ipykernel) (ipyleaflets_py.ipynb) debug 15:48:18.421: Creating notebook controller with name Python 3 (ipykernel) (ipyleaflets_py.ipynb) debug 15:48:18.422: Creating notebook controller with name Python 3 (ipykernel) (k3d_widgets.ipynb) debug 15:48:18.422: Creating notebook controller with name Python 3 (ipykernel) (k3d_widgets.ipynb) debug 15:48:18.422: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) debug 15:48:18.423: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) debug 15:48:18.423: Creating notebook controller with name Python 3 (ipykernel) (standard_widgets.ipynb) debug 15:48:18.423: Creating notebook controller with name Python 3 (ipykernel) (standard_widgets.ipynb) debug 15:48:18.424: Creating notebook controller with name Python 3 (ipykernel) (ipyleaflets.ipynb) debug 15:48:18.424: Creating notebook controller with name Python 3 (ipykernel) (ipyleaflets.ipynb) debug 15:48:18.424: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) debug 15:48:18.424: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) debug 15:48:18.425: Creating notebook controller with name Python 3 (ipykernel) (manualTestFile.ipynb) debug 15:48:18.425: Creating notebook controller with name Python 3 (ipykernel) (manualTestFile.ipynb) debug 15:48:18.425: Creating notebook controller with name .NET (C#) debug 15:48:18.426: Creating notebook controller with name .NET (C#) debug 15:48:18.426: Creating notebook controller with name .NET (F#) debug 15:48:18.426: Creating notebook controller with name .NET (F#) debug 15:48:18.426: Creating notebook controller with name .NET (PowerShell) debug 15:48:18.426: Creating notebook controller with name .NET (PowerShell) debug 15:48:18.427: Creating notebook controller with name .venvkernel debug 15:48:18.427: Creating notebook controller with name .venvkernel debug 15:48:18.427: Creating notebook controller with name .venvnokernel debug 15:48:18.427: Creating notebook controller with name .venvnokernel debug 15:48:18.428: Creating notebook controller with name Python (bad kernel) debug 15:48:18.428: Creating notebook controller with name Python (bad kernel) debug 15:48:18.429: Creating notebook controller with name custom-kernel-name debug 15:48:18.429: Creating notebook controller with name custom-kernel-name debug 15:48:18.429: Creating notebook controller with name Dupe Env Dos debug 15:48:18.429: Creating notebook controller with name Dupe Env Dos debug 15:48:18.430: Creating notebook controller with name Dupe Env Uno debug 15:48:18.430: Creating notebook controller with name Dupe Env Uno debug 15:48:18.430: Creating notebook controller with name JavaScript (Node.js) debug 15:48:18.430: Creating notebook controller with name JavaScript (Node.js) debug 15:48:18.430: Creating notebook controller with name Julia 1.7.1 debug 15:48:18.431: Creating notebook controller with name Julia 1.7.1 debug 15:48:18.431: Creating notebook controller with name Python (other-env) debug 15:48:18.431: Creating notebook controller with name Python (other-env) debug 15:48:18.431: Creating notebook controller with name special_venv_kernel debug 15:48:18.431: Creating notebook controller with name special_venv_kernel debug 15:48:18.432: Creating notebook controller with name VenvWithSpaces debug 15:48:18.432: Creating notebook controller with name VenvWithSpaces debug 15:48:18.432: Creating notebook controller with name Python 3 (ipykernel) debug 15:48:18.432: Creating notebook controller with name Python 3 (ipykernel) info 15:48:18.438: Creating server with url : http://localhost:8888/ debug 15:48:18.562: Disposing session manager debug 15:48:18.562: SessionManager - dispose contents manager debug 15:48:18.562: ShutdownSessionAndConnection - dispose session manager debug 15:48:18.562: Finished disposing jupyter session manager debug 15:48:18.567: KernelFinder discovered 0 local and 23 remote kernels debug 15:48:18.567: Found 23 non-cached controllers debug 15:48:18.567: Creating 23 controllers info 15:48:28.332: Execute Cell 1 /Testing_3/ipwidget_tests/beakerx_widgets.ipynb debug 15:48:28.332: start the kernel, options.disableUI=false debug 15:48:28.333: Start Jupyter Session in kernel.ts with disableUI = false info 15:48:28.334: Starting Jupyter Session id = 'startUsingRemoteKernelSpec:d8ff405d5482ab07010b2b887927dc51ae08dc8bb964525fd15fe22a44dcf99f..python3./python./.-m#ipykernel_launcher' for '/Testing_3/ipwidget_tests/beakerx_widgets.ipynb' (disableUI=false) debug 15:48:28.338: KernelProvider switched kernel to id = d8ff405d5482ab07010b2b887927dc51ae08dc8bb964525fd15fe22a44dcf99f..python3./python./.-m#ipykernel_launcher debug 15:48:28.338: Intiailize notebook communications for editor /Testing_3/ipwidget_tests/beakerx_widgets.ipynb debug 15:48:28.338: Resolving notebook UI Comms (resolve) for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb debug 15:48:28.338: initialize CommonMessageCoordinator debug 15:48:28.340: Registering commtarget jupyter.widget debug 15:48:28.340: IPyWidgetMessageDispatcher.initialize debug 15:48:28.341: Controller selection change completed debug 15:48:28.399: createNewKernelSession d8ff405d5482ab07010b2b887927dc51ae08dc8bb964525fd15fe22a44dcf99f..python3./python./.-m#ipykernel_launcher http://localhost:8888/: Kernel started: 2def1a4a-6d52-449d-882f-4fe9b805a46f info 15:48:28.579: Waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> unknown debug 15:48:28.848: IPyWidgetMessageDispatcher.initialize debug 15:48:30.175: Got status busy in waitForIdleOnSession debug 15:48:30.177: Got status idle in waitForIdleOnSession info 15:48:30.177: Finished waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> idle info 15:48:30.178: Started session for kernel startUsingRemoteKernelSpec:d8ff405d5482ab07010b2b887927dc51ae08dc8bb964525fd15fe22a44dcf99f..python3./python./.-m#ipykernel_launcher info 15:48:30.178: Finished connecting kernel startUsingRemoteKernelSpec:d8ff405d5482ab07010b2b887927dc51ae08dc8bb964525fd15fe22a44dcf99f..python3./python./.-m#ipykernel_launcher http://localhost:8888/: Creating new notebook debug 15:48:30.180: Started running kernel initialization for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb info 15:48:30.181: Executing silently Code (idle) = __vsc_ipynb_file__ = "/Testing_3/ipwidget_tests/beakerx_widgets.ipynb"\n%config Completer.use_jedi = debug 15:48:30.186: IKernel Status change to busy debug 15:48:30.198: IKernel Status change to idle debug 15:48:30.216: IKernel Status change to busy info 15:48:30.229: Executing silently Code (completed) = __vsc_ipynb_file__ = "/Testing_3/ipwidget_tests/beakerx_widgets.ipynb"\n%config Completer.use_jedi = with 0 output(s) debug 15:48:30.229: IKernel Status change to idle debug 15:48:30.229: Not executing startup session: Object, code: debug 15:48:30.230: Requesting Kernel info debug 15:48:30.230: Got Kernel info debug 15:48:30.230: End running kernel initialization, now waiting for idle info 15:48:30.230: Waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> idle info 15:48:30.230: Finished waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> idle debug 15:48:30.231: End running kernel initialization, session is idle info 15:48:30.232: Updating preferred kernel for remote notebook 2def1a4a-6d52-449d-882f-4fe9b805a46f debug 15:48:30.233: Storing Preferred remote kernel for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb is 2def1a4a-6d52-449d-882f-4fe9b805a46f info 15:48:30.234: Executing silently Code (idle) = __vsc_nbextension_widgets = []\n__vsc_file = ''\n__vsc_nbextension_Folder = ''\nimport glob as _VSCODE_ debug 15:48:30.234: IPyWidgetScriptSource.initialize debug 15:48:30.235: IPyWidgetMessageDispatcher.initialize debug 15:48:30.238: Start Jupyter Session in kernel.ts with disableUI = false info 15:48:30.239: Creating server with url : http://localhost:8888/ info 15:48:30.255: Widget Message: Received IPyWidgets_kernelOptions in ScriptManager info 15:48:30.275: Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions debug 15:48:30.275: IPyWidgetMessageDispatcher.initialize debug 15:48:30.276: IPyWidgetMessageDispatcher.initialize debug 15:48:30.279: KernelFinder discovered 0 local and 4 remote kernels debug 15:48:30.280: Found 4 cached controllers debug 15:48:30.280: Creating 4 controllers info 15:48:30.281: Creating server with url : http://localhost:8888/ debug 15:48:30.291: IKernel Status change to busy info 15:48:30.315: Executing silently Code (completed) = __vsc_nbextension_widgets = []\n__vsc_file = ''\n__vsc_nbextension_Folder = ''\nimport glob as _VSCODE_ with 1 output(s) debug 15:48:30.316: IKernel Status change to idle debug 15:48:30.333: IKernel Status change to busy debug 15:48:30.506: Disposing session manager debug 15:48:30.506: SessionManager - dispose contents manager debug 15:48:30.506: ShutdownSessionAndConnection - dispose session manager debug 15:48:30.506: Finished disposing jupyter session manager debug 15:48:30.576: Disposing session manager debug 15:48:30.576: SessionManager - dispose contents manager debug 15:48:30.576: ShutdownSessionAndConnection - dispose session manager debug 15:48:30.576: Finished disposing jupyter session manager debug 15:48:30.582: KernelFinder discovered 0 local and 24 remote kernels debug 15:48:30.582: Found 4 non-cached controllers debug 15:48:30.582: Creating 24 controllers debug 15:48:30.583: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) debug 15:48:30.583: Creating notebook controller with name Python 3 (ipykernel) (beakerx_widgets.ipynb) info 15:48:31.361: Widget Message: WidgetManager: Loading class LayoutModel:@jupyter-widgets/base:* info 15:48:31.368: Widget Message: WidgetManager: Loading class PlotModel:beakerx:* info 15:48:31.368: Widget Message: Fetch IPyWidget source for beakerx info 15:48:31.369: �[32mFetch Script for {"moduleName":"beakerx","moduleVersion":"*","requestId":"beakerx:*:1656629311367"} info 15:48:31.369: �[32mFetch Script for beakerx debug 15:48:31.409: IKernel Status change to idle info 15:48:31.410: Cell 1 executed with state Success error 15:48:31.413: Error downloading from http://localhost:8888/nbextensions: Not Found error 15:48:31.414: Failed to get widget source due to an error Error: Error downloading from http://localhost:8888/nbextensions: Not Found info 15:48:31.414: �[32mScript for beakerx, is undefined from undefined warn 15:48:31.416: Failed to fetch script sources Error: Error downloading from http://localhost:8888/nbextensions: Not Found info 15:48:31.416: �[32mFetch Script for beakerx error 15:48:31.416: Failed to get widget source due to an error Error: Error downloading from http://localhost:8888/nbextensions: Not Found info 15:48:31.417: �[32mScript for beakerx, is undefined from undefined info 15:48:31.448: Widget Message: Received IPyWidget scripts [{"moduleName":"beakerx","requestId":"beakerx:*:1656629311367"}] info 15:48:31.449: Widget Message: Received IPyWidget scripts [{"moduleName":"beakerx","requestId":"beakerx:*:1656629311367"}] info 15:48:31.458: Executing silently Code (idle) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info info 15:48:31.460: Widget Message: WidgetManager: failed, Loading class PlotModel:beakerx:* error 15:48:31.461: Widget load failure Widgets require us to download supporting files from a 3rd party website. (Error loading beakerx:*). [object Object] debug 15:48:31.474: IKernel Status change to busy debug 15:48:31.477: IKernel Status change to idle debug 15:48:31.536: IKernel Status change to busy info 15:48:31.568: Executing silently Code (completed) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info with 1 output(s) debug 15:48:31.568: IKernel Status change to idle debug 15:48:31.607: IKernel Status change to busy debug 15:48:31.627: IKernel Status change to idle debug 15:48:31.641: IKernel Status change to busy debug 15:48:31.643: IKernel Status change to idle debug 15:48:31.657: IKernel Status change to busy debug 15:48:31.660: IKernel Status change to idle debug 15:48:31.679: IKernel Status change to busy debug 15:48:31.681: IKernel Status change to idle debug 15:48:31.697: IKernel Status change to busy debug 15:48:31.699: IKernel Status change to idle debug 15:48:31.712: IKernel Status change to busy debug 15:48:31.715: IKernel Status change to idle debug 15:48:31.730: IKernel Status change to busy debug 15:48:31.733: IKernel Status change to idle debug 15:48:31.747: IKernel Status change to busy debug 15:48:31.749: IKernel Status change to idle debug 15:48:31.763: IKernel Status change to busy debug 15:48:31.766: IKernel Status change to idle debug 15:48:31.781: IKernel Status change to busy debug 15:48:31.783: IKernel Status change to idle debug 15:48:31.792: IKernel Status change to busy debug 15:48:31.794: IKernel Status change to idle debug 15:48:31.809: IKernel Status change to busy debug 15:48:31.811: IKernel Status change to idle debug 15:48:31.836: IKernel Status change to busy debug 15:48:31.840: IKernel Status change to idle debug 15:48:31.884: IKernel Status change to busy debug 15:48:31.887: IKernel Status change to idle debug 15:48:31.910: IKernel Status change to busy debug 15:48:31.913: IKernel Status change to idle debug 15:48:31.961: IKernel Status change to busy debug 15:48:31.963: IKernel Status change to idle debug 15:48:31.981: IKernel Status change to busy debug 15:48:31.984: IKernel Status change to idle debug 15:48:31.996: IKernel Status change to busy debug 15:48:31.998: IKernel Status change to idle debug 15:48:32.15: IKernel Status change to busy debug 15:48:32.20: IKernel Status change to idle debug 15:48:32.44: IKernel Status change to busy debug 15:48:32.46: IKernel Status change to idle debug 15:48:32.66: IKernel Status change to busy debug 15:48:32.68: IKernel Status change to idle debug 15:48:32.87: IKernel Status change to busy debug 15:48:32.89: IKernel Status change to idle debug 15:48:32.108: IKernel Status change to busy debug 15:48:32.111: IKernel Status change to idle debug 15:48:32.120: IKernel Status change to busy debug 15:48:32.122: IKernel Status change to idle debug 15:48:32.143: IKernel Status change to busy debug 15:48:32.145: IKernel Status change to idle debug 15:48:32.155: IKernel Status change to busy debug 15:48:32.157: IKernel Status change to idle debug 15:48:32.177: IKernel Status change to busy debug 15:48:32.180: IKernel Status change to idle debug 15:48:32.194: IKernel Status change to busy debug 15:48:32.197: IKernel Status change to idle debug 15:48:32.211: IKernel Status change to busy debug 15:48:32.213: IKernel Status change to idle debug 15:48:32.222: IKernel Status change to busy debug 15:48:32.224: IKernel Status change to idle debug 15:48:32.242: IKernel Status change to busy debug 15:48:32.245: IKernel Status change to idle debug 15:48:32.254: IKernel Status change to busy debug 15:48:32.257: IKernel Status change to idle debug 15:48:32.275: IKernel Status change to busy debug 15:48:32.278: IKernel Status change to idle debug 15:48:32.295: IKernel Status change to busy debug 15:48:32.299: IKernel Status change to idle debug 15:48:32.311: IKernel Status change to busy debug 15:48:32.313: IKernel Status change to idle debug 15:48:32.336: IKernel Status change to busy debug 15:48:32.338: IKernel Status change to idle debug 15:48:32.357: IKernel Status change to busy debug 15:48:32.360: IKernel Status change to idle debug 15:48:32.376: IKernel Status change to busy debug 15:48:32.378: IKernel Status change to idle debug 15:48:32.396: IKernel Status change to busy debug 15:48:32.398: IKernel Status change to idle debug 15:48:32.407: IKernel Status change to busy debug 15:48:32.410: IKernel Status change to idle debug 15:48:32.432: IKernel Status change to busy debug 15:48:32.435: IKernel Status change to idle debug 15:48:32.453: IKernel Status change to busy debug 15:48:32.456: IKernel Status change to idle debug 15:48:32.478: IKernel Status change to busy debug 15:48:32.481: IKernel Status change to idle debug 15:48:32.504: IKernel Status change to busy debug 15:48:32.507: IKernel Status change to idle debug 15:48:32.525: IKernel Status change to busy debug 15:48:32.529: IKernel Status change to idle debug 15:48:32.548: IKernel Status change to busy debug 15:48:32.550: IKernel Status change to idle debug 15:48:32.568: IKernel Status change to busy debug 15:48:32.571: IKernel Status change to idle debug 15:48:32.588: IKernel Status change to busy debug 15:48:32.590: IKernel Status change to idle debug 15:48:32.610: IKernel Status change to busy debug 15:48:32.613: IKernel Status change to idle debug 15:48:32.631: IKernel Status change to busy debug 15:48:32.635: IKernel Status change to idle debug 15:48:32.666: IKernel Status change to busy debug 15:48:32.668: IKernel Status change to idle debug 15:48:32.684: IKernel Status change to busy debug 15:48:32.686: IKernel Status change to idle debug 15:48:32.700: IKernel Status change to busy debug 15:48:32.703: IKernel Status change to idle debug 15:48:32.717: IKernel Status change to busy debug 15:48:32.720: IKernel Status change to idle debug 15:48:32.733: IKernel Status change to busy debug 15:48:32.735: IKernel Status change to idle debug 15:48:32.748: IKernel Status change to busy debug 15:48:32.750: IKernel Status change to idle debug 15:48:32.762: IKernel Status change to busy debug 15:48:32.767: IKernel Status change to idle debug 15:48:32.807: IKernel Status change to busy debug 15:48:32.810: IKernel Status change to idle debug 15:48:32.828: IKernel Status change to busy debug 15:48:32.831: IKernel Status change to idle debug 15:48:32.847: IKernel Status change to busy debug 15:48:32.849: IKernel Status change to idle debug 15:48:32.866: IKernel Status change to busy debug 15:48:32.868: IKernel Status change to idle debug 15:48:32.877: IKernel Status change to busy debug 15:48:32.879: IKernel Status change to idle debug 15:48:32.903: IKernel Status change to busy debug 15:48:32.905: IKernel Status change to idle debug 15:48:32.919: IKernel Status change to busy debug 15:48:32.921: IKernel Status change to idle debug 15:48:32.934: IKernel Status change to busy debug 15:48:32.936: IKernel Status change to idle debug 15:48:32.945: IKernel Status change to busy debug 15:48:32.948: IKernel Status change to idle debug 15:48:32.966: IKernel Status change to busy debug 15:48:32.967: IKernel Status change to idle debug 15:48:32.984: IKernel Status change to busy debug 15:48:32.987: IKernel Status change to idle debug 15:48:32.996: IKernel Status change to busy debug 15:48:32.999: IKernel Status change to idle debug 15:48:33.21: IKernel Status change to busy debug 15:48:33.24: IKernel Status change to idle debug 15:48:33.40: IKernel Status change to busy debug 15:48:33.43: IKernel Status change to idle debug 15:48:33.54: IKernel Status change to busy debug 15:48:33.56: IKernel Status change to idle debug 15:48:33.76: IKernel Status change to busy debug 15:48:33.79: IKernel Status change to idle debug 15:48:33.93: IKernel Status change to busy debug 15:48:33.95: IKernel Status change to idle debug 15:48:33.109: IKernel Status change to busy debug 15:48:33.111: IKernel Status change to idle debug 15:48:39.348: restart the kernel, options.disableUI=false info 15:48:39.348: Restart requested file:///Testing_3/ipwidget_tests/beakerx_widgets.ipynb info 15:48:39.348: Restart kernel execution info 15:48:39.349: Cancel pending cells debug 15:48:39.349: IKernel Status change to restarting debug 15:48:39.373: IKernel Status change to busy debug 15:48:39.413: IKernel Status change to idle debug 15:48:39.621: IKernel Status change to unknown info 15:48:39.628: Updating preferred kernel for remote notebook 2def1a4a-6d52-449d-882f-4fe9b805a46f debug 15:48:39.629: Storing Preferred remote kernel for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb is 2def1a4a-6d52-449d-882f-4fe9b805a46f debug 15:48:39.633: Started running kernel initialization for /Testing_3/ipwidget_tests/beakerx_widgets.ipynb info 15:48:39.634: Executing silently Code (unknown) = __vsc_ipynb_file__ = "/Testing_3/ipwidget_tests/beakerx_widgets.ipynb"\n%config Completer.use_jedi = info 15:48:39.635: Widget Message: Received IPyWidgetMessages.IPyWidgets_onRestartKernel info 15:48:39.650: Widget Message: Received IPyWidgets_kernelOptions in ScriptManager info 15:48:39.650: Widget Message: Received IPyWidgetMessages.IPyWidgets_kernelOptions debug 15:48:39.653: IPyWidgetMessageDispatcher.initialize debug 15:48:39.653: IPyWidgetMessageDispatcher.initialize debug 15:48:41.162: IKernel Status change to busy debug 15:48:41.167: IKernel Status change to idle debug 15:48:41.179: IKernel Status change to busy debug 15:48:41.190: IKernel Status change to idle debug 15:48:41.201: IKernel Status change to busy debug 15:48:41.212: IKernel Status change to idle debug 15:48:41.215: IKernel Status change to busy debug 15:48:41.217: IKernel Status change to idle debug 15:48:41.220: IKernel Status change to busy debug 15:48:41.223: IKernel Status change to idle debug 15:48:41.228: IKernel Status change to busy debug 15:48:41.230: IKernel Status change to idle debug 15:48:41.233: IKernel Status change to busy debug 15:48:41.361: IKernel Status change to idle debug 15:48:41.367: IKernel Status change to busy debug 15:48:41.375: IKernel Status change to idle info 15:48:41.378: Executing silently Code (completed) = __vsc_ipynb_file__ = "/Testing_3/ipwidget_tests/beakerx_widgets.ipynb"\n%config Completer.use_jedi = with 0 output(s) debug 15:48:41.379: Not executing startup session: Object, code: debug 15:48:41.379: Requesting Kernel info debug 15:48:41.379: Got Kernel info debug 15:48:41.379: End running kernel initialization, now waiting for idle info 15:48:41.379: Waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> idle info 15:48:41.379: Finished waiting for idle on (kernel): 2def1a4a-6d52-449d-882f-4fe9b805a46f -> idle debug 15:48:41.379: End running kernel initialization, session is idle debug 15:48:41.380: Registering commtarget jupyter.widget info 15:48:41.393: Executing silently Code (idle) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info debug 15:48:41.441: IKernel Status change to busy info 15:48:41.461: Executing silently Code (completed) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info with 1 output(s) debug 15:48:41.461: IKernel Status change to idle info 15:48:43.432: Execute Cell 1 /Testing_3/ipwidget_tests/beakerx_widgets.ipynb debug 15:48:43.432: start the kernel, options.disableUI=false debug 15:48:43.433: Start Jupyter Session in kernel.ts with disableUI = false debug 15:48:43.475: IKernel Status change to busy info 15:48:44.376: Widget Message: WidgetManager: Loading class LayoutModel:@jupyter-widgets/base:* info 15:48:44.384: Widget Message: WidgetManager: Loading class PlotModel:beakerx:* info 15:48:44.389: Widget Message: WidgetManager: failed, Loading class PlotModel:beakerx:* error 15:48:44.389: Widget load failure {} [object Object] debug 15:48:44.405: IKernel Status change to idle info 15:48:44.405: Cell 1 executed with state Success debug 15:48:44.416: IKernel Status change to busy debug 15:48:44.418: IKernel Status change to idle info 15:48:44.425: Executing silently Code (idle) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info debug 15:48:44.475: IKernel Status change to busy info 15:48:44.510: Executing silently Code (completed) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info with 1 output(s) debug 15:48:44.510: IKernel Status change to idle debug 15:48:44.523: IKernel Status change to busy debug 15:48:44.561: IKernel Status change to idle debug 15:48:44.578: IKernel Status change to busy debug 15:48:44.580: IKernel Status change to idle debug 15:48:44.591: IKernel Status change to busy debug 15:48:44.594: IKernel Status change to idle debug 15:48:44.614: IKernel Status change to busy debug 15:48:44.617: IKernel Status change to idle debug 15:48:44.627: IKernel Status change to busy debug 15:48:44.629: IKernel Status change to idle debug 15:48:44.650: IKernel Status change to busy debug 15:48:44.652: IKernel Status change to idle debug 15:48:44.669: IKernel Status change to busy debug 15:48:44.671: IKernel Status change to idle debug 15:48:44.688: IKernel Status change to busy debug 15:48:44.690: IKernel Status change to idle debug 15:48:44.706: IKernel Status change to busy debug 15:48:44.708: IKernel Status change to idle debug 15:48:44.722: IKernel Status change to busy debug 15:48:44.725: IKernel Status change to idle debug 15:48:44.740: IKernel Status change to busy debug 15:48:44.743: IKernel Status change to idle debug 15:48:44.757: IKernel Status change to busy debug 15:48:44.760: IKernel Status change to idle debug 15:48:44.768: IKernel Status change to busy debug 15:48:44.770: IKernel Status change to idle debug 15:48:44.791: IKernel Status change to busy debug 15:48:44.794: IKernel Status change to idle debug 15:48:44.815: IKernel Status change to busy debug 15:48:44.817: IKernel Status change to idle debug 15:48:44.836: IKernel Status change to busy debug 15:48:44.838: IKernel Status change to idle debug 15:48:44.848: IKernel Status change to busy debug 15:48:44.851: IKernel Status change to idle debug 15:48:44.871: IKernel Status change to busy debug 15:48:44.873: IKernel Status change to idle debug 15:48:44.889: IKernel Status change to busy debug 15:48:44.891: IKernel Status change to idle debug 15:48:44.908: IKernel Status change to busy debug 15:48:44.911: IKernel Status change to idle debug 15:48:44.932: IKernel Status change to busy debug 15:48:44.935: IKernel Status change to idle debug 15:48:44.960: IKernel Status change to busy debug 15:48:44.962: IKernel Status change to idle debug 15:48:44.978: IKernel Status change to busy debug 15:48:44.980: IKernel Status change to idle debug 15:48:44.995: IKernel Status change to busy debug 15:48:44.997: IKernel Status change to idle debug 15:48:45.5: IKernel Status change to busy debug 15:48:45.8: IKernel Status change to idle debug 15:48:45.23: IKernel Status change to busy debug 15:48:45.25: IKernel Status change to idle debug 15:48:45.41: IKernel Status change to busy debug 15:48:45.44: IKernel Status change to idle debug 15:48:45.52: IKernel Status change to busy debug 15:48:45.54: IKernel Status change to idle debug 15:48:45.72: IKernel Status change to busy debug 15:48:45.73: IKernel Status change to idle debug 15:48:45.86: IKernel Status change to busy debug 15:48:45.88: IKernel Status change to idle debug 15:48:45.102: IKernel Status change to busy debug 15:48:45.104: IKernel Status change to idle debug 15:48:45.117: IKernel Status change to busy debug 15:48:45.120: IKernel Status change to idle debug 15:48:45.134: IKernel Status change to busy debug 15:48:45.136: IKernel Status change to idle debug 15:48:45.151: IKernel Status change to busy debug 15:48:45.153: IKernel Status change to idle debug 15:48:45.163: IKernel Status change to busy debug 15:48:45.168: IKernel Status change to idle debug 15:48:45.184: IKernel Status change to busy debug 15:48:45.186: IKernel Status change to idle debug 15:48:45.199: IKernel Status change to busy debug 15:48:45.201: IKernel Status change to idle debug 15:48:45.216: IKernel Status change to busy debug 15:48:45.218: IKernel Status change to idle debug 15:48:45.231: IKernel Status change to busy debug 15:48:45.234: IKernel Status change to idle debug 15:48:45.243: IKernel Status change to busy debug 15:48:45.245: IKernel Status change to idle debug 15:48:45.257: IKernel Status change to busy debug 15:48:45.259: IKernel Status change to idle debug 15:48:45.279: IKernel Status change to busy debug 15:48:45.286: IKernel Status change to idle debug 15:48:45.315: IKernel Status change to busy debug 15:48:45.318: IKernel Status change to idle debug 15:48:45.334: IKernel Status change to busy debug 15:48:45.337: IKernel Status change to idle debug 15:48:45.349: IKernel Status change to busy debug 15:48:45.351: IKernel Status change to idle debug 15:48:45.365: IKernel Status change to busy debug 15:48:45.367: IKernel Status change to idle debug 15:48:45.381: IKernel Status change to busy debug 15:48:45.383: IKernel Status change to idle debug 15:48:45.398: IKernel Status change to busy debug 15:48:45.400: IKernel Status change to idle debug 15:48:45.417: IKernel Status change to busy debug 15:48:45.420: IKernel Status change to idle info 15:48:51.856: Execute Cell 1 /Testing_3/ipwidget_tests/beakerx_widgets.ipynb debug 15:48:51.856: start the kernel, options.disableUI=false debug 15:48:51.857: Start Jupyter Session in kernel.ts with disableUI = false debug 15:48:51.896: IKernel Status change to busy info 15:48:51.912: Widget Message: WidgetManager: Loading class LayoutModel:@jupyter-widgets/base:* info 15:48:51.936: Widget Message: WidgetManager: Loading class PlotModel:beakerx:* info 15:48:51.941: Widget Message: WidgetManager: failed, Loading class PlotModel:beakerx:* error 15:48:51.941: Widget load failure {} [object Object] debug 15:48:51.964: IKernel Status change to idle info 15:48:51.964: Cell 1 executed with state Success debug 15:48:51.976: IKernel Status change to busy debug 15:48:51.978: IKernel Status change to idle info 15:48:51.991: Executing silently Code (idle) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info debug 15:48:52.13: IKernel Status change to busy info 15:48:52.67: Executing silently Code (completed) = def _VSCODE_getVariable(what_to_get, is_debugging, *args):\n# Query Jupyter server for the info with 1 output(s) debug 15:48:52.67: IKernel Status change to idle debug 15:48:52.88: IKernel Status change to busy debug 15:48:52.90: IKernel Status change to idle debug 15:48:52.108: IKernel Status change to busy debug 15:48:52.110: IKernel Status change to idle debug 15:48:52.125: IKernel Status change to busy debug 15:48:52.127: IKernel Status change to idle debug 15:48:52.143: IKernel Status change to busy debug 15:48:52.146: IKernel Status change to idle debug 15:48:52.163: IKernel Status change to busy debug 15:48:52.166: IKernel Status change to idle debug 15:48:52.181: IKernel Status change to busy debug 15:48:52.184: IKernel Status change to idle debug 15:48:52.199: IKernel Status change to busy debug 15:48:52.201: IKernel Status change to idle debug 15:48:52.215: IKernel Status change to busy debug 15:48:52.218: IKernel Status change to idle debug 15:48:52.234: IKernel Status change to busy debug 15:48:52.237: IKernel Status change to idle debug 15:48:52.250: IKernel Status change to busy debug 15:48:52.252: IKernel Status change to idle debug 15:48:52.268: IKernel Status change to busy debug 15:48:52.270: IKernel Status change to idle debug 15:48:52.285: IKernel Status change to busy debug 15:48:52.287: IKernel Status change to idle debug 15:48:52.302: IKernel Status change to busy debug 15:48:52.305: IKernel Status change to idle debug 15:48:52.319: IKernel Status change to busy debug 15:48:52.321: IKernel Status change to idle debug 15:48:52.338: IKernel Status change to busy debug 15:48:52.340: IKernel Status change to idle debug 15:48:52.354: IKernel Status change to busy debug 15:48:52.356: IKernel Status change to idle debug 15:48:52.372: IKernel Status change to busy debug 15:48:52.374: IKernel Status change to idle debug 15:48:52.383: IKernel Status change to busy debug 15:48:52.385: IKernel Status change to idle debug 15:48:52.420: IKernel Status change to busy debug 15:48:52.423: IKernel Status change to idle debug 15:48:52.433: IKernel Status change to busy debug 15:48:52.436: IKernel Status change to idle debug 15:48:52.456: IKernel Status change to busy debug 15:48:52.459: IKernel Status change to idle debug 15:48:52.477: IKernel Status change to busy debug 15:48:52.479: IKernel Status change to idle debug 15:48:52.493: IKernel Status change to busy debug 15:48:52.495: IKernel Status change to idle debug 15:48:52.510: IKernel Status change to busy debug 15:48:52.512: IKernel Status change to idle debug 15:48:52.527: IKernel Status change to busy debug 15:48:52.530: IKernel Status change to idle debug 15:48:52.545: IKernel Status change to busy debug 15:48:52.548: IKernel Status change to idle debug 15:48:52.563: IKernel Status change to busy debug 15:48:52.566: IKernel Status change to idle debug 15:48:52.577: IKernel Status change to busy debug 15:48:52.579: IKernel Status change to idle debug 15:48:52.598: IKernel Status change to busy debug 15:48:52.600: IKernel Status change to idle debug 15:48:52.609: IKernel Status change to busy debug 15:48:52.612: IKernel Status change to idle debug 15:48:52.633: IKernel Status change to busy debug 15:48:52.636: IKernel Status change to idle debug 15:48:52.650: IKernel Status change to busy debug 15:48:52.653: IKernel Status change to idle debug 15:48:52.667: IKernel Status change to busy debug 15:48:52.670: IKernel Status change to idle debug 15:48:52.688: IKernel Status change to busy debug 15:48:52.690: IKernel Status change to idle debug 15:48:52.700: IKernel Status change to busy debug 15:48:52.702: IKernel Status change to idle debug 15:48:52.723: IKernel Status change to busy debug 15:48:52.725: IKernel Status change to idle debug 15:48:52.739: IKernel Status change to busy debug 15:48:52.741: IKernel Status change to idle debug 15:48:52.750: IKernel Status change to busy debug 15:48:52.752: IKernel Status change to idle debug 15:48:52.766: IKernel Status change to busy debug 15:48:52.768: IKernel Status change to idle debug 15:48:52.789: IKernel Status change to busy debug 15:48:52.791: IKernel Status change to idle debug 15:48:52.805: IKernel Status change to busy debug 15:48:52.807: IKernel Status change to idle debug 15:48:52.822: IKernel Status change to busy debug 15:48:52.825: IKernel Status change to idle debug 15:48:52.846: IKernel Status change to busy debug 15:48:52.849: IKernel Status change to idle debug 15:48:52.868: IKernel Status change to busy debug 15:48:52.870: IKernel Status change to idle debug 15:48:52.886: IKernel Status change to busy debug 15:48:52.889: IKernel Status change to idle debug 15:48:52.900: IKernel Status change to busy debug 15:48:52.902: IKernel Status change to idle debug 15:48:52.917: IKernel Status change to busy debug 15:48:52.920: IKernel Status change to idle debug 15:48:52.939: IKernel Status change to busy debug 15:48:52.942: IKernel Status change to idle debug 15:48:52.958: IKernel Status change to busy debug 15:48:52.961: IKernel Status change to idle ```

@DonJayamanne
Copy link
Contributor Author

Personal Notes:
Steps to repro:

  • Clear cache in web
  • Run beaker x
  • When prompted to enable CDN and download widgets click ok (we get two messages)
  • Even after clicking OK, the widgets do not render

Todo:

  • Why two prompts
  • Does not work after you click ok, need to reload VS Code
  • Errors in console about temp folder being readonly (why are we creatingn an nbextensions folder, in web we don't need this, we can just use the web scripts url)

@rchiodo
Copy link
Contributor

rchiodo commented Jul 1, 2022

@DonJayamanne did you port this to the release branch?

@rchiodo
Copy link
Contributor

rchiodo commented Jul 1, 2022

This still doesn't work for me.

Followed these steps:

  • Set cdn to empty list
  • Connected to remote
  • Get the dialog saying 'Enable'
  • Restart kernel
  • Nothing is rendered

THis is in the log:

info 13:57:21.48: Widget Message: WidgetManager: failed, Loading class PlotModel:beakerx:*
error 13:57:21.48: Widget load failure {} {
  className: 'PlotModel',
  moduleName: 'beakerx',
  moduleVersion: '*',
  cdnsUsed: false,
  isOnline: true,
  timedout: false,
  error: '{}'
}

@rchiodo rchiodo reopened this Jul 1, 2022
@github-actions github-actions bot added the triage-needed Issue needs to be triaged label Jul 1, 2022
@rchiodo
Copy link
Contributor

rchiodo commented Jul 1, 2022

Note, I wasn't doing this on web. Just remote.

@rchiodo
Copy link
Contributor

rchiodo commented Jul 1, 2022

Same behavior on web though

@amunger amunger added verified Verification succeeded and removed verification-found Issue verification failed labels Jul 5, 2022
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 6, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug ipywidgets Rendering, loading, saving, anything to do with IPyWidgets triage-needed Issue needs to be triaged verified Verification succeeded
Projects
None yet
3 participants