higlass / scipy19

Slides and demos from our SciPyConf 2019 talk
https://speakerdeck.com/flekschas/to-a-billion-and-beyond-how-to-visually-explore-compare-and-share-large-quantitative-datasets-with-higlass
MIT License
13 stars 3 forks source link

jupyter labextension install fails #3

Closed rsharris closed 3 years ago

rsharris commented 3 years ago

MacOS 10.14.6

Working with a fresh uninstall/install of anaconda, from Anaconda3-2021.05-MacOSX-x86_64.sh

conda version 4.10.3

cd scipy19 conda env create --file environment.yml gave no noticeable complaints

conda activate higlass-scipy19 jupyter labextension install @jupyter-widgets/jupyterlab-manager failed with ValueError: "@jupyter-widgets/jupyterlab-manager" is not a valid extension: schemaDir is empty: "./schema"

I'm a novice jupyter user, so it's unclear to me where it's looking for that schema subdirectory. There's no such directory in the scipy19 directory.

jupyter labextension install higlass-jupyter@0.2.1 also fails, reporting "RuntimeError: JupyterLab failed to build". Examining the jupyterlab-debug log file I see a bunch of warnings about "unmet peer dependency"s which I suppose could be the result of of that first labextension failure.

In spite of those failures, I am able to start Jupyterlab as described a few lines lower in the readme. But my guess is that things ain't gonna work, so I haven't pursed any of the examples.

flekschas commented 3 years ago

This might be a version mismatch. Could you try fixing higlass-python to 0.2.1 or 0.3.0 in environment.yml as follows?

name: higlass-scipy19
channels:
  - conda-forge
  - bioconda
  - defaults

dependencies:
  - python>=3.7
  - nodejs=10.*
  - pip
  - pip:
    - jupyterlab==1.1.1
    - ipywidgets==7.5.1
    - higlass-python==0.2.1
    - nbserverproxy

Starting with higlass-python version 0.4.0 you should use Jupyterlab v2.

rsharris commented 3 years ago

Thanks much for the quick response.

Trying that, I get the same failure as before when I attempt jupyter labextension install @jupyter-widgets/jupyterlab-manager

Specifically, I did this: edited a copy of the yml file, environment.20210927.yml as shown in your post conda env remove --name higlass-scipy19 conda env create --file environment.20210927.yml conda activate higlass-scipy19 jupyter labextension install @jupyter-widgets/jupyterlab-manager ValueError: "@jupyter-widgets/jupyterlab-manager" is not a valid extension: schemaDir is empty: "./schema"

I then tried changing higlass-python==0.2.1 to higlass-python==0.3.0 and repeated all steps. Same error.

rsharris commented 3 years ago

Using a strategy reminiscent of Phil in the movie Groundhog Day, I eventually came up with this series of commands that 'works', to the extent that it does not complain about any errors:

conda env remove --name higlass-hope
conda create --name higlass-hope python=3.7
conda install --name higlass-hope --channel conda-forge jupyterlab=2.2 notebook nodejs
conda activate higlass-hope
pip install higlass-python
jupyter nbextension enable --py --sys-prefix widgetsnbextension
jupyter nbextension install --py --sys-prefix higlass
jupyter nbextension enable --py --sys-prefix higlass
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter labextension install higlass-jupyter
flekschas commented 3 years ago

I fixed the version number issues but if your environment works I wouldn't change anything. Thanks for noticing the issue!