Metadata-Version: 2.1
Name: gasyncio
Version: 0.0.1
Summary: A minimalistic asyncio event loop based on the GLib main event loop
Home-page: https://github.com/begnac/gasyncio
Author: Itaï BEN YAACOV
Author-email: candeb@free.fr
License: LGPLv2.1+
Description: # gasyncio - A minimalistic asyncio event loop based on the GLib main event loop
        
        So far only a proof-of-concept.
        
        Defines `GAsyncIOEventLoopPolicy` and `GAsyncIOEventLoop`.
        
        Use `loop.run_application(app, argv)` to run `Gio.Application`.
        While the application is running, the `asyncio` event loop will function normally,
        run by the `GLib` main event loop.
        
        Use `loop.run_without_glib_until_complete(future)` for cleanup.
        
        The following should be semantically equivalent:
        
        ```
        policy = asyncio.set_event_loop_policy(gasyncio.GAsyncIOEventLoopPolicy())
        loop = asyncio.get_event_loop()
        loop.start_slave_loop()
        App().run(sys.argv)
        loop.stop_slave_loop()
        loop.close()
        asyncio.set_event_loop_policy(policy)
        del loop, policy
        ```
        
        ```
        loop = gasyncio.GAsyncIOEventLoop()
        loop.start_slave_loop()
        App().run(sys.argv)
        loop.stop_slave_loop()
        loop.close()
        del loop
        ```
        
        ```
        gasyncio.GAsyncIOEventLoop().run(App(), sys.argv)
        ```
        
Keywords: asyncio,GLib
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Description-Content-Type: text/markdown
