-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NotebookClient.wait_for_reply
hangs with jupyter_client 8 or later
#272
Comments
Ok, I think I see the issue. What's happening is that jupyter_client 8's I think it would be ideal for notebook client to either itself await for it (but that would mean converting all of nbclient to support asyncio as well), or to validate that the parameter passed has the right type (I suspect what's going on is that something is automatically serializing the future to a str, and ending up waiting for the wrong uuid). |
Our CI also started failing, and we narrowed it down to jupyter_client 8 (we run some of our examples with papermill, which uses jupyter_client, just like nbclient). we didn't try downgrading to jupyter_client 7 since we already built an in-house notebook executor, and migrating to it fixed the issues. |
Ah, what is happening here is that by default @davidbrochart what do you think? |
Actually the error is in |
(I apologize in advance if this is a jupyter_client bug instead!)
Over at https://github.com/quarto-dev/quarto-cli, we are seeing a consistent hang when
NotebookClient.wait_for_reply
is called: quarto-dev/quarto-cli#4122Here are steps for a minimal reproduction. I've tested this on macOS with Python 3.10.9, but we're seeing this issue on github actions in Ubuntu runners as well.
At this point, the process will hang. If, instead, one sets up the venv with this alternative
requirements-no-jupyterclient8.txt
file which pinsjupyter_client
to before version 8, thenrepro.py
doesn't hang:The text was updated successfully, but these errors were encountered: