nteract / scrapbook

A library for recording and reading data in notebooks.
https://nteract-scrapbook.readthedocs.io
BSD 3-Clause "New" or "Revised" License
281 stars 26 forks source link

Highlight demo fails on Binder with KeyError: "kernel_manager_class" #75

Closed nealmcb closed 4 years ago

nealmcb commented 4 years ago

When I run the highlight demo on binder I get this error in the third cell:

In [3]:  pm.execute_notebook('./highlight_dates.ipynb', './outcomes/highlight_dates_run_one.ipynb', new_dates_one);

Executing: 0%
0/13 [00:00<?, ?cell/s]

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
/srv/conda/envs/notebook/lib/python3.7/site-packages/traitlets/traitlets.py in get(self, obj, cls)
    527         try:
--> 528             value = obj._trait_values[self.name]
    529         except KeyError:

KeyError: 'kernel_manager_class'

During handling of the above exception, another exception occurred:

...
ImportError: cannot import name 'AsyncKernelManager' from 'jupyter_client' (/srv/conda/envs/notebook/lib/python3.7/site-packages/jupyter_client/__init__.py)
MSeal commented 4 years ago

Thanks for raising.

That looks like an older version of jupyter_client is being loaded by conda forge when it's resolving dependencies instead of using the pip dependencies listed :/

@choldgraf do you happen to know if something changed or if out binder setup here is incorrect? It's not pulling the 6.x jupyter_client transient dependency.

choldgraf commented 4 years ago

Hmmm - so a couple things:

Could we try adding jupyter_client>6 to the root requirements.txt and see if that fixes it? We probably want to do this anyway if this is now a strict dependency for functionality.

MSeal commented 4 years ago

We could do the >6, but shouldn't the transient dependencies pick up the latest version?

choldgraf commented 4 years ago

hmmm, my guess is that repo2docker pins jupyter_client in the default environment, and then when this package doesn't explicitly say it needs a newer version, it isn't upgraded

MSeal commented 4 years ago

Ok got it, I'll bump that to see if it fixes. Thanks for the insights

willingc commented 4 years ago

Just tested this. It seems resolved so I am closing.