All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC] EventListener design for Python Async QMP library
@ 2021-06-11 23:16 John Snow
  0 siblings, 0 replies; only message in thread
From: John Snow @ 2021-06-11 23:16 UTC (permalink / raw)
  To: QEMU Developers
  Cc: Kevin Wolf, Vladimir Sementsov-Ogievskiy, Eduardo Habkost,
	Kashyap Chamarthy, Markus Armbruster, Max Reitz, Niteesh G. S.,
	Stefan Hajnoczi, Cleber Rosa, Eric Blake

Hi all: I am continuing work on my asyncio-based QMP library for Python, 
which adds support for OOB executions, multiple simultaneous pending 
executions, and truly asynchronous event handling.

The library is what will fundamentally power the new qmp-shell that 
Niteesh is working on for his GSoC project this summer.

I would like to solicit feedback on one component of the design in 
particular: An interface I call the EventListener, which is an API 
designed to allow multiple concurrent coroutines to safely wait for and 
consume QMP events.

I have a document explaining their use on my GitLab fork. At the bottom 
of the document is a list of my own complaints about my design. If you'd 
like to take a peek at what I am cooking up and would like to offer 
feedback, now would be a pretty good time to do it before we get too far 
into development for the new qmp-shell.

The document is here: https://gitlab.com/jsnow/qemu/-/snippets/2133449

Any feedback, thoughts, etc are appreciated.

Thanks,
--js


Oh, and: The full library (Warning, with outdated docs, no tests, and 
quite a few TODO/FIXMEs scattered about) is here:

https://gitlab.com/jsnow/qemu/-/tree/python-async-qmp-aqmp/python/qemu/aqmp

But it's not in a state to ask for critique on the entire architecture 
just yet, there are still a few more suggestions from Stefan to 
implement from the last time I did so.



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-06-11 23:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-11 23:16 [RFC] EventListener design for Python Async QMP library John Snow

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.