jupyterlab / jupyterlab-data-explorer

First class datasets in JupyterLab
BSD 3-Clause "New" or "Revised" License
178 stars 38 forks source link

Error: No provider for: @jupyterlab/dataregistry:Registry. #136

Closed abaror closed 1 year ago

abaror commented 4 years ago

Description

I followed the developer installation guide .. All the build went smooth.

jupyterlab-data-explorer) TestRole2:/dev/jupyter/jupyterlab-data-explorer (master) $ jupyter labextension list
JupyterLab v1.2.6
Known labextensions:
   app dir: /home/ec2-user/.conda/envs/jupyterlab-data-explorer/share/jupyter/lab
        @jupyterlab/dataregistry-csvviewer-extension v1.0.0  enabled  OK*
        @jupyterlab/dataregistry-extension v3.0.0  enabled  OK*
        @jupyterlab/dataregistry-registry-extension v1.0.0  enabled  OK*

   local extensions:
        @jupyterlab/dataregistry-csvviewer-extension: /dev/jupyter/jupyterlab-data-explorer/packages/dataregistry-csvviewer-extension
        @jupyterlab/dataregistry-extension: /dev/jupyter/jupyterlab-data-explorer/packages/dataregistry-extension
        @jupyterlab/dataregistry-registry-extension: /dev/jupyter/jupyterlab-data-explorer/packages/dataregistry-registry-extension
   linked packages:
        @jupyterlab/dataregistry: /dev/jupyter/jupyterlab-data-explorer/packages/dataregistry

When I open Jupyter Lab, I see this in the javascript console:

index.js:267 Plugin '@jupyterlab/dataregistry-extension:notebooks' failed to activate.
(anonymous) @ index.js:267
Promise.catch (async)
(anonymous) @ index.js:266
push.2R+v.Application.start @ index.js:265
main @ index.out.js:1553
load (async)
ANye @ index.out.js:1599
__webpack_require__ @ bootstrap:84
0 @ bootstrap:221
__webpack_require__ @ bootstrap:84
checkDeferredModules @ bootstrap:45
webpackJsonpCallback @ bootstrap:32
(anonymous) @ vendors~main.3d7a9d11dd8ef56264fd.js:1
index.js:268 Error: No provider for: @jupyterlab/dataregistry:Registry.
    at JupyterLab.push.2R+v.Application.resolveRequiredService (index.js:182)
    at index.js:140
    at Array.map (<anonymous>)
    at JupyterLab.push.2R+v.Application.activatePlugin (index.js:140)
    at index.js:266
    at Array.map (<anonymous>)
    at JupyterLab.push.2R+v.Application.start (index.js:265)
    at main (index.out.js:1553)

The versions I am using :

(jupyterlab-data-explorer) TestRole2:/dev/jupyter/jupyterlab-data-explorer (master) $ jupyter --version
jupyter core     : 4.6.3
jupyter-notebook : 6.0.3
qtconsole        : not installed
ipython          : 7.13.0
ipykernel        : 5.2.0
jupyter client   : 6.1.0
jupyter lab      : 1.2.6
nbconvert        : 5.6.1
ipywidgets       : not installed
nbformat         : 5.0.4
traitlets        : 4.3.3

Can you please let me know what to look for next? Is this version compatible with the above versions?

saulshanabrook commented 4 years ago

Hm, yes that should work.

I imagine there might be an issue where yarn tried to pull in two versions of the dataregistry plugin... I have run into this before.

You could try to debug this by go into the app dir and poking around in the node_modules. Let me know if need pointers on how to do that.

Basically I believe what is happening here is that this token is maybe being provided, but it's using two versions of the package, so that when the other extension tries to import the token and require it, it gets a different version of the same token.

I have dealt with this before by unlinking all packages and then trying to relink them all together instead of separately

abaror commented 4 years ago

Yes, I would love to get your help, or perhaps a script that works. I tried Jupyter lab clean and follow the steps again. I also tried on clean ec2 image machine and getting the same result. I was able to install the production package.

I am not a UI developer, more of a backend software engineer and I am interested in developing extension that will enable the AWS Glue catalog and datasets on S3. I am assuming that I can install this extension and then develop something like jupyterlab_hdf for AWS Glue.

Thank you!

saulshanabrook commented 4 years ago

I just merged in a fix that should help here! Could you try to pull again and run jlpm run clean && jlpm run build && jupyter lab build && jupyter lab?