Applies To
- Notebooks (
.ipynb)
- Data Wrangler in VS Code Remote - WSL
What happened?
In VS Code Remote - WSL, opening a notebook with a valid Python environment starts the kernel successfully, but Data Wrangler intermittently hangs. Plain notebook execution and plain pandas dataframe rendering work. The failure correlates with a Jupyter widget/CDN load error trying to access https://unpkg.com/ from a vscode-webview:// origin, which is blocked by CORS. Similar reports already exist showing the same unpkg.com → CORS → ipywidgetsKernel.js failure chain. ([GitHub][1])
Repro steps
-
Connect to a WSL workspace in desktop VS Code.
-
Open an .ipynb notebook.
-
Start a kernel from a local venv in WSL.
-
Run:
import pandas as pd
df = pd.DataFrame({"a":[1,2], "b":[3,4]})
df
-
Open the dataframe in Data Wrangler.
-
Sometimes Data Wrangler hangs or appears stuck loading.
Observed behavior
-
Kernel starts successfully.
-
Notebook cells execute normally.
-
Plain dataframe rendering in the notebook works.
-
When the failure occurs, Jupyter logs show:
[error] Widget Error: Failed to access CDN https://unpkg.com/ after 0 attempt(s), TypeError: Failed to fetch
-
DevTools shows:
Access to fetch at 'https://unpkg.com/' from origin 'vscode-webview://...' has been blocked by CORS policy
This looks like a frontend/widget/webview asset-loading failure rather than a kernel startup failure. That interpretation matches existing VS Code and Jupyter issue reports with the same error sequence. ([GitHub][1])
Expected behavior
- Data Wrangler should open without depending on a blocked CDN fetch from a VS Code webview, or should fail gracefully without hanging the UI. Existing reports suggest the current behavior is not isolated to one machine. ([GitHub][1])
Jupyter output
Visual Studio Code (1.111.0, wsl, desktop)
Jupyter Extension Version: 2025.9.1.
Python Extension Version: 2026.4.0.
Python Environment Extension Version: 1.22.0.
Pylance Extension Version: 2026.1.1.
Platform: linux (x64).
...
[info] Kernel successfully started
[error] Widget Error: Failed to access CDN https://unpkg.com/ after 0 attempt(s), TypeError: Failed to fetch
DevTools
Access to fetch at 'https://unpkg.com/' from origin 'vscode-webview://...' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Notes
- Disabling Data Wrangler clears the issue and notebook execution remains normal.
- Re-enabling Data Wrangler sometimes makes it work again temporarily, suggesting stale extension/webview state may be involved.
- I also saw miscellaneous console warnings such as Copilot 403s, iframe sandbox warnings,
local-network-access warnings, and Quirks Mode warnings, but those appear less directly tied to the repro than the unpkg.com widget fetch failure. The strongest matching signal is still the unpkg.com CORS error followed by the Jupyter widget load failure. ([GitHub][2])
Applies To
.ipynb)What happened?
In VS Code Remote - WSL, opening a notebook with a valid Python environment starts the kernel successfully, but Data Wrangler intermittently hangs. Plain notebook execution and plain pandas dataframe rendering work. The failure correlates with a Jupyter widget/CDN load error trying to access
https://unpkg.com/from avscode-webview://origin, which is blocked by CORS. Similar reports already exist showing the sameunpkg.com→ CORS →ipywidgetsKernel.jsfailure chain. ([GitHub][1])Repro steps
Connect to a WSL workspace in desktop VS Code.
Open an
.ipynbnotebook.Start a kernel from a local venv in WSL.
Run:
Open the dataframe in Data Wrangler.
Sometimes Data Wrangler hangs or appears stuck loading.
Observed behavior
Kernel starts successfully.
Notebook cells execute normally.
Plain dataframe rendering in the notebook works.
When the failure occurs, Jupyter logs show:
DevTools shows:
This looks like a frontend/widget/webview asset-loading failure rather than a kernel startup failure. That interpretation matches existing VS Code and Jupyter issue reports with the same error sequence. ([GitHub][1])
Expected behavior
Jupyter output
DevTools
Notes
local-network-accesswarnings, and Quirks Mode warnings, but those appear less directly tied to the repro than theunpkg.comwidget fetch failure. The strongest matching signal is still theunpkg.comCORS error followed by the Jupyter widget load failure. ([GitHub][2])