David Brochart

Results 1131 comments of David Brochart

Threads might be just fine, but in theory they can still be problematic with some libraries or even some platforms like the browser running Python in WASM where they don't...

We already do [here](https://github.com/jupyter-server/pycrdt-websocket/blob/39ebb2981ef80bbaa867a013675f30091c69535c/pycrdt_websocket/ystore.py#L384-L415). I would need: - a test that shows this code doesn't work. - a fix that passes the fix above.

I tried creating a notebook with jupyter-collaboration v2, then upgrading to v3 and opening the notebook again, without issue. There is some logic to [check the store file](https://github.com/jupyter-server/pycrdt-websocket/blob/39ebb2981ef80bbaa867a013675f30091c69535c/pycrdt_websocket/ystore.py#L182), that should...

Not that I can think of, and without a reproducer it's hard to go further.

I think that the issue with `input` is not only that we don't handle it in the YNotebook, but also that the frontend doesn't treat it as collaborative text. But...

I made some progress towards restoring notebook state, using jupyverse/jpterm: https://github.com/jupyter-server/jupyter_server/assets/4711805/a446b3e6-c65d-40b4-bdf1-4951a4f793c3

And here is a demo showing full notebook state recovery, including widgets: https://github.com/jupyterlab/jupyterlab/assets/4711805/5625ae3b-c8e3-4b6a-8328-7c32cbf396eb

It seems that this was used for [static type checking](https://github.com/jupyter/nbclient/pull/83), meaning that it should never happen at runtime either. Could you share how you use nbclient?

> Suppose you had just one component that launches a background task. What would trigger the teardown of the top level context, and thus the cancellation of the task group?...

In v4, background tasks should explicitly be cancelled by the user in the teardown step, which is called by `.close()`, right? In v5, background tasks will automatically be cancelled with...