Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

nbdev and 'coroutine' object is not subscriptable

I recently updated the nbdev version of an "old" project of mine (I made a new conda environment), and now automatic tests in github (the "Run tests" part of the build) are failing with a

'coroutine' object is not subscriptable

error per notebook, that seems totally unrelated to my code. There are also a few

RuntimeWarning: Enable tracemalloc to get the object allocation traceback

and

RuntimeWarning: coroutine 'ZMQSocketChannel.get_msg' was never awaited

None of this happens when I run nbdev_test_nbs locally.

Any clue?

like image 713
manu Avatar asked Apr 07 '21 14:04

manu


2 Answers

This is an issue with jupyter-client, see there was a yanked version deployed on the day you reported: https://pypi.org/project/jupyter-client/#history

This thread details the RCA: https://github.com/jupyter/jupyter_client/issues/637

This was solved for me by downgrading to jupyter-client==6.1.12

like image 175
Nick Avatar answered Oct 19 '22 03:10

Nick


I faced the very same issue. It turned out that I had nbconvert version pinned in my setup.py, like 'nbconvert~=5.6.1'.

After removing this restriction tests started to pass again.

P.S. The version of nbconvert is now 6+.

like image 45
Yury Kirienko Avatar answered Oct 19 '22 04:10

Yury Kirienko