Skip to content

Remove jupyterlab dependency from jupyter-builder #50

@Darshan808

Description

@Darshan808

Problem

Currently, jupyter-builder depends on jupyterlab to get core metadata:

from pathlib import Path
def default_core_path() -> str:
import jupyterlab
return str(Path(jupyterlab.__file__).parent / "staging")

I discovered this in run-time CI failure on running jlpm run build
https://github.com/Darshan808/extension-template/actions/runs/21736558199/job/62702708930?pr=1

This has been discussed on following places
#12 (comment)
#29 (comment)

Proposed Solution from suggestions above

  • Create a new lightweight npm package @jupyterlab/core-meta containing only metadata (package.json, version info, and things we need)
  • Publish @jupyterlab/core-meta for all JupyterLab releases (retroactively and for future releases)
  • Update jupyter-builder to read metadata from node_modules/@jupyterlab/core-meta/ instead of importing jupyterlab

Benefits

  • Extensions can build without installing full JupyterLab package
  • Eliminates circular dependency

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions