David Brochart
David Brochart
The question here is: if we are importing `watchfiles` (in the Python meaning), does it mean we are also importing its API as a specification that other contents managers should...
In JupyterLab I want to [check if the contents manager supports watching file changes](https://github.com/jupyterlab/jupyterlab/blob/76f8c151a5c50162a9743439424dceae7441fd21/jupyterlab/handlers/yjs_echo_ws.py#L99). For that I need to know if the underlying file system is the local file system:...
In this last commit I added the `watchfiles` attribute in the contents manager class. In `ContentsManager` it is implemented as an instance of an empty class, and in `FileContentsManager` and...
Yes that's what I meant with "loose specification". On the other hand, even if we implement the methods in ContentsManager and under the hood delegate to watchfiles, we still have...
@kevin-bates @martinRenou @trungleduc I added a `BaseWatchfiles` class, that is currently populated with the following attributes (links to the corresponding watchfiles API): - [watch](https://watchfiles.helpmanual.io/api/watch/#watchfiles.watch) - [awatch](https://watchfiles.helpmanual.io/api/watch/#watchfiles.awatch) - [Change](https://watchfiles.helpmanual.io/api/watch/#watchfiles.Change) I believe...
> Isn't this just exposing the `watchfiles` API? I think we need to ask what we need as a notification item and expose _that_. This is requiring that all implementations...
I get your point, on the other hand it would be nice to offer various level of functionalities depending on the file system. On a local file system, I would...
> What even does `no-deps` mean? You mean `--no-deps` has no effect on Python 3.11?
I might be out of scope, but at the last Jupyter Server meeting @afshin suggested using something like [WebDAV](https://en.wikipedia.org/wiki/WebDAV) instead of having our own custom implementation of a contents API....
Thanks @blink1073, @saulshanabrook and @echarles for the feedback. I think GraphQL is not only helpful for handling notifications pushed from the server (and removing the polling from the client), but...