Skip to content

[CHORE]: Fix jupyter deps issue - #5694

Open
emilykl wants to merge 4 commits into
mainfrom
fix-jupyter-deps-issue
Open

[CHORE]: Fix jupyter deps issue#5694
emilykl wants to merge 4 commits into
mainfrom
fix-jupyter-deps-issue

Conversation

@emilykl

@emilykl emilykl commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Issue

There's a CI failure on main caused by the Jupyter Python dependencies used to build the Jupyterlab extension.

The ultimate failure seems to be caused by a recent change in jupyterlab-builder which doesn't properly account for the || specifier in package.json deps.

However, the reason we're hitting that pathway in the first place is due to this:

@jupyterlab/core-meta was not found in node_modules. This extension declares
a devDependency on @jupyterlab/builder@4.3.6 || ^3.6.8, which is a legacy package
so core-meta 4.3.6 || ^3.6.8 will be used instead of the latest release. 
To avoid this, add @jupyter/builder as a devDependency instead of @jupyterlab/builder.

Description of change

To resolve the above, this PR replaces "@jupyterlab/builder": "^4.3.6 || ^3.6.8", with "@jupyter/builder": "^1.2.2", and also bumps the version of jupyterlab in uv.lock up to 4.6.2.

JavaScript artifacts are also rebuilt following the change.

Testing strategy

  • Check out this PR
  • Create a new venv
  • Run:
uv sync --extra dev_build
cd js
npm ci && npm run build

Make sure the extension builds without error.

Then, verify that the built extension works in Jupyter:

  • Run uv pip install -e .
  • Run jupyter notebook
  • In the Jupyter web interface, create a new notebook and paste the following code:
## FIRST CELL: TESTING FIG.SHOW()
import plotly
import plotly.graph_objects as go

fig = go.Figure(data=go.Scatter(x=[1, 2, 3, 4], y=[1, 3, 2, 4]))
fig.show()  # Figure should render in notebook

## SECOND CELL: TESTING FIGUREWIDGET
import plotly
import plotly.graph_objects as go

print(plotly.__version__)  # Make sure version is correct
fig = go.Figure(data=go.Scatter(x=[1, 2, 3, 4], y=[1, 3, 2, 4]))
figure_widget = go.FigureWidget(fig)
figure_widget  # Figure should render in notebook

Make sure both figures render in the notebook.

Guidelines

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant