Jupyterlab-dash needs to be included in built on Binder

I am trying to launch a Binder rep and import JupyterDash into it.
The Binder built worked.

My Binder rep

My yml is:

name: plotly_dash
channels:

  • defaults
    dependencies:
  • python
  • ipykernel
  • seaborn
  • pandas
  • matplotlib
  • numpy
  • plotly
  • jupyter-dash
  • dash
  • chart-studio
  • nbformat
  • ipywidgets
  • openpyxl

However, I get the message:
jupyterlab-dash needs to be included in built

On my machine locally this is also the case and not a problem and works.
In Binder it throws an error:

If you are experiencing the build failure after installing an extension (or trying to include previously installed extension after updating JupyterLab) please check the extension repository for new installation instructions as many extensions migrated to the prebuilt extensions system which no longer requires rebuilding JupyterLab (but uses a different installation procedure, typically involving a package manager such as ‘pip’ or ‘conda’).

If you specifically intended to install a source extension, please run ‘jupyter lab build’ on the server for full output.

As I see it JupyterDash is not prebuilt.

On

they say to include:

JupyterDash.infer_jupyter_proxy_config()

This does not work either and to make it work it requires some efforts on the server site, I guess. However I do not even think this would solve the problem.

What can I do to make the built work?

Thank you for any suggestions.

Until this lands (maybe just in time for lab 4.0 to be released!)…

…you’ll need a postBuild script:

#!/usr/bin/env bash
jupyter lab build --minimize=False

Of course, this may fail in other, novel ways, introducing new, fresh horrors from npm/webpack: the --minimize=False is part of try to overcome the plotly tools’ historically being very heavy, which can overload the intentionally-limited commodity hardware on binder.

2 Likes