[openstack-dev] [oslo] eventlet 0.17.3 is now fully Python 3 compatible

Joe Gordon joe.gordon0 at gmail.com
Thu Apr 9 19:50:20 UTC 2015

On Thu, Apr 9, 2015 at 9:25 AM, Victor Stinner <vstinner at redhat.com> wrote:

> Hi,
> During the last OpenStack Summit at Paris, we discussed how we can port
> OpenStack to Python 3, because eventlet was not compatible with Python 3.
> There are multiple approaches: port eventlet to Python 3, replace eventlet
> with asyncio, replace eventlet with threads, etc. We decided to not take a
> decision and instead investigate all options.
> I fixed 4 issues with monkey-patching in Python 3 (importlib, os.open(),
> threading.RLock, threading.Thread). Good news: the just released eventlet
> 0.17.3 includes these fixes and it is now fully compatible with Python 3!
> For example, the Oslo Messaging test suite now pass with this eventlet
> version! Currently, eventlet is disabled in Oslo Messaging on Python 3
> (eventlet tests are skipped).
> I just sent a patch for requirements and Oslo Messaging to bump to
> eventlet 0.17.3, but it will have to wait until everyone has master as
> Liberty.
>    https://review.openstack.org/#/c/172132/
>    https://review.openstack.org/#/c/172135/
> It becomes possible to port more projects depending on eventlet to Python
> 3!


> Liberty cycle will be a good opportunity to port more OpenStack components
> to Python 3. Most OpenStack clients and Common Libraries are *already*
> Python 3 compatible, see the wiki page:
>    https://wiki.openstack.org/wiki/Python3

https://wiki.openstack.org/wiki/Python3#Dependencies appears to be fairly
out of date. For example hacking works under python34 as does oslo
messaging as per this email etc.

Also what is the status of all the dependencies in
https://github.com/openstack/nova/blob/master/requirements.txt and more

It would be nice to get a better sense of what the remaining libraries to
port over are before the summit so we can start planning how to do the
python34 migration.

> --
> To replace eventlet, I wrote a spec to replace it with asyncio:
>    https://review.openstack.org/#/c/153298/
> Joshua Harlow wrote a spec to replace eventlet with threads:
>    https://review.openstack.org/#/c/156711/
> But then he wrote a single spec "Replace eventlet + monkey-patching with
> ??" which covers threads and asyncio:
>    https://review.openstack.org/#/c/164035/
> Victor
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150409/c33c5858/attachment.html>

More information about the OpenStack-dev mailing list