Skip to content

Data Wrangler | Jupyter widget load fails in VS Code Remote WSL due to unpkg.com CORS fetch #644

@donezilla

Description

@donezilla

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

  1. Connect to a WSL workspace in desktop VS Code.

  2. Open an .ipynb notebook.

  3. Start a kernel from a local venv in WSL.

  4. Run:

    import pandas as pd
    df = pd.DataFrame({"a":[1,2], "b":[3,4]})
    df
  5. Open the dataframe in Data Wrangler.

  6. 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])

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions