Awaitables - #161
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
6e4c061 to
06d1539
Compare
- All methods are async - widget restoration on page refresh - Preliminary support for multiple pages - Added python classes - Ipylab - Singular - HasApp - Fixed - Typing instances - Transform - Connection
a34eeb8 to
24497fa
Compare
…adopted aiologic for synchronisation primitives (Event & Lock).
'Fixed' and its type hints have been transferred to async-kernel.common. Future has been renamed to Pending and Caller.get_instance has been renamed to Caller.get.
|
This illustrates how awaitables can be used to add in more functionality. |
|
Yeh, the goal over on #162 was to add some more optional features without breaking the public APIs (even though that took a good deal of mangling). The Until there is a proper upstream |
Your comment "Until there is a proper upstream ipywidgets async" made me realize that the patched libraries aren't required for this PR; so I've removed them. At the moment it still requires the kernel to be async-kernel, which was developed specifically to make ipylab work nicely in notebooks. In this PR:
|
- log.py - incorrectly included hookimpl
- Add subshell support with greater dependence on async kernel.
…LabIcon for the life of the Icon.
…ync_kernel.compat.json.
|
The PR has been upgraded to use the new Jupyter builder. The Jupyterlite docs demo for this PR is also upgraded to 0.8.0. |
71fec2e to
8edd019
Compare
8edd019 to
8b128f2
Compare
226f48c to
d9756db
Compare

This PR is a subset of #160
This PR enables asynchronous code execution as follows:
async def)Pending(just like an asyncio.Future). When the frontend replies, the pending is set done and the result is returned.Demo running all cells at once
Awaiting in each cell ensures the result is available for the next cell. The gif below is 0.5x playback speed.
Menus
This gif demonstrates the usage of menus and restoration when the page is refreshed.
Async execution is enabled in notebooks with async-kernel.
Subshells
Requires async-kernel
Leverages on the concept of kernel subshells to provide isolated
user_nsand commonglobal_user_ns.resolves #11
Replaces #160