Hi,
I'm very happy to announce the release of Trollius 1.0:
https://pypi.python.org/pypi/trollius
Yury Selivanov accepted my pull request in greenio to support Trollius
and released greenio 0.6:
https://pypi.python.org/pypi/greenio
So you can now use greenio 0.6 with trollius 1.0 in your application
to write asyncio code running in greenlet. I plan to use greenio in
OpenStack for a smooth transition from eventlet to asyncio. See the
spec of the "greenio executor":
https://review.openstack.org/#/c/104792/
Major changes:
* Event loops have a new ``create_task()`` method, which is now the recommanded
way to create a task object. This method can be overriden by third-party
event loops to use their own task class.
* The debug mode has been improved a lot. Set ``TROLLIUSDEBUG`` envrironment
variable to ``1`` and configure logging to log at level ``logging.DEBUG``
(ex: ``logging.basicConfig(level=logging.DEBUG)``). Changes:
- much better representation of Trollius objects (ex: ``repr(task)``):
unified ``<Class arg1 arg2 ...>`` format, use qualified name when available
- show the traceback where objects were created
- show the current filename and line number for coroutine
- show the filename and line number where objects were created
- log most important socket events
- log most important subprocess events
* ``Handle.cancel()`` now clears references to callback and args
* Log an error if a Task is destroyed while it is still pending, but only on
Python 3.4 and newer.
* Fix for asyncio coroutines when passing tuple value in debug mode.
``CoroWrapper.send()`` now checks if it is called from a "yield from"
generator to decide if the parameter should be unpacked or not.
* ``Process.communicate()`` now ignores ``BrokenPipeError`` and
``ConnectionResetError`` exceptions.
* Rewrite signal handling on Python 3.3 and newer to fix a race condition: use
the "self-pipe" to get signal numbers.
Full changes of trollius 1.0:
http://trollius.readthedocs.org/changelog.html#version-1-0
Victor