{"id":20960,"library":"asyncgui","title":"asyncgui","description":"A minimalistic async library focusing on fast responsiveness. Current version 0.10.1, requires Python >=3.10, <4.0. Released regularly with API-breaking changes in minor versions.","status":"active","version":"0.10.1","language":"python","source_language":"en","source_url":"https://github.com/asyncgui/asyncgui","tags":["async","event","task","minimal","reactivity"],"install":[{"cmd":"pip install asyncgui","lang":"bash","label":"default"}],"dependencies":[],"imports":[{"note":"Task is exported from top-level package.","wrong":"from asyncgui.task import Task","symbol":"Task","correct":"from asyncgui import Task"},{"note":"Event is exported from asyncgui directly.","wrong":"from asyncgui.event import Event","symbol":"Event","correct":"from asyncgui import Event"},{"note":"ExclusiveEvent is top-level.","wrong":"from asyncgui.exclusive_event import ExclusiveEvent","symbol":"ExclusiveEvent","correct":"from asyncgui import ExclusiveEvent"},{"note":null,"wrong":null,"symbol":"StatefulEvent","correct":"from asyncgui import StatefulEvent"},{"note":null,"wrong":null,"symbol":"wait_all","correct":"from asyncgui import wait_all"},{"note":null,"wrong":null,"symbol":"wait_any","correct":"from asyncgui import wait_any"},{"note":"run is top-level since 0.10.0.","wrong":"from asyncgui.runner import run","symbol":"run","correct":"from asyncgui import run"}],"quickstart":{"code":"import asyncio\nfrom asyncgui import run, Task, Event, wait_all\n\nasync def worker(event):\n    print(\"Worker started, waiting for event...\")\n    await event.wait()\n    print(\"Worker got event\")\n\nasync def main():\n    event = Event()\n    task = Task(worker(event))\n    task.start()\n    await asyncio.sleep(0.1)\n    print(\"Firing event\")\n    event.fire()\n    await task.join()\n    print(\"Done\")\n\nrun(main())","lang":"python","description":"Minimal example showing task creation, event firing, and running with asyncgui's run()."},"warnings":[{"fix":"Replace `run_as_main` with `run`.","message":"In v0.10.0, `run_as_main` was removed. Use `run()` instead.","severity":"breaking","affected_versions":">=0.10.0"},{"fix":"Migrate to the simplified cancel system; see docs.","message":"In v0.9.0, `open_cancel_scope()` and `disable_cancellation()` were removed. Use new cancellation API or context managers.","severity":"breaking","affected_versions":">=0.9.0"},{"fix":"Replace old `Event` usage with `Box` or `StatefulEvent`. Use `ExclusiveEvent` instead of `AsyncEvent`.","message":"In v0.7.0, the `Event` class was completely reworked. Old `Event` behavior is now `Box` (deprecated). `AsyncEvent` renamed to `ExclusiveEvent`, `AsyncBox` to `ExclusiveBox`.","severity":"breaking","affected_versions":">=0.7.0"},{"fix":"Always call `task.start()` or use `async with Task(coro):`.","message":"`Task` objects must be started with `.start()` or used as async context manager before they execute. Simply creating a Task does not start it.","severity":"gotcha","affected_versions":"all"},{"fix":"Replace `Box` with `StatefulEvent`, `ExclusiveBox` with `ExclusiveEvent`.","message":"`Box` and `ExclusiveBox` are deprecated since v0.7.2. Use `StatefulEvent` and `ExclusiveEvent` instead.","severity":"deprecated","affected_versions":">=0.7.2"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use `asyncgui.run()` instead.","cause":"`run_as_main` was removed in v0.10.0.","error":"AttributeError: module 'asyncgui' has no attribute 'run_as_main'"},{"fix":"Use the new cancellation pattern as shown in docs.","cause":"Cancellation API changed in v0.9.0; `open_cancel_scope` removed.","error":"TypeError: Task.__init__() got an unexpected keyword argument 'cancel_scope'"},{"fix":"If you need stateful event, use `StatefulEvent`. Use `ExclusiveEvent` for one-shot.","cause":"In v0.7.0, `Event` was reworked. Old code using `.wait()` on Event now fails; you may need `StatefulEvent` or `ExclusiveEvent`.","error":"AttributeError: 'Event' object has no attribute 'wait'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}