[openstack-dev] [all] Status of the OpenStack port to Python 3

Sean Dague sean at dague.net
Fri Jun 24 16:17:55 UTC 2016

On 06/24/2016 11:48 AM, Doug Hellmann wrote:
> Excerpts from Dmitry Tantsur's message of 2016-06-24 10:59:14 +0200:
>> On 06/23/2016 11:21 PM, Clark Boylan wrote:
>>> On Thu, Jun 23, 2016, at 02:15 PM, Doug Hellmann wrote:
>>>> Excerpts from Thomas Goirand's message of 2016-06-23 23:04:28 +0200:
>>>>> On 06/23/2016 06:11 PM, Doug Hellmann wrote:
>>>>>> I'd like for the community to set a goal for Ocata to have Python
>>>>>> 3 functional tests running for all projects.
>>>>>> As Tony points out, it's a bit late to have this as a priority for
>>>>>> Newton, though work can and should continue. But given how close
>>>>>> we are to having the initial phase of the port done (thanks Victor!),
>>>>>> and how far we are from discussions of priorities for Ocata, it
>>>>>> seems very reasonable to set a community-wide goal for our next
>>>>>> release cycle.
>>>>>> Thoughts?
>>>>>> Doug
>>>>> +1
>>>>> Just think about it for a while. If we get Nova to work with Py3, and
>>>>> everything else is working, including all functional tests in Tempest,
>>>>> then after Otaca, we could even start to *REMOVE* Py2 support after
>>>>> Otaca+1. That would be really awesome to stop all the compat layer
>>>>> madness and use the new features available in Py3.
>>>> We'll need to get some input from other distros and from deployers
>>>> before we decide on a timeline for dropping Python 2. For now, let's
>>>> focus on making Python 3 work. Then we can all rejoice while having the
>>>> discussion of how much longer to support Python 2. :-)
>>>>> I really would love to ship a full stack running Py3 for Debian Stretch.
>>>>> However, for this, it'd be super helful to have as much visibility as
>>>>> possible. Are we setting a hard deadline for the Otaca release? Or is
>>>>> this just a goal we only "would like" to reach, but it's not really a
>>>>> big deal if we don't reach it?
>>>> Let's see what PTLs have to say about planning, but I think if not
>>>> Ocata then we'd want to set one for the P release. We're running
>>>> out of supported lifetime for Python 2.7.
>>> Keep in mind that there is interest in running OpenStack on PyPy which
>>> is python 2.7. We don't have to continue supporting CPython 2.7
>>> necessarily but we may want to support python 2.7 by way of PyPy.
>> PyPy folks have been working on python 3 support for some time already: 
>> http://doc.pypy.org/en/latest/release-pypy3.3-v5.2-alpha1.html
>> It's an alpha, but by the time we consider dropping Python 2 it will 
>> probably be released :)
> We're targeting Python >=3.4, right now.  We'll have to decide as
> a community whether PyPy support is a sufficient reason to keep
> support for "older" versions (either 2.x or earlier versions of 3).
> Before we can have that discussion, though, we need to actually run on
> Python 3, so let's focus on that and evaluate the landscape of other
> interpreters when the porting work is done.

+1, please don't get ahead of things until there is real full stack
testing running on python3.

It would also be good if some of our operators were running on python 3
and providing feedback that it works in the real world before we even
talk about dropping. Because our upstream testing (even the full stack
testing) only can catch so much.

So next steps:

1) full stack testing of everything we've got on python3 - (are there
volunteers to get that going?)
2) complete Nova port to enable full stack testing on python3 for iaas base
3) encourage operators to deploy with python3 in production
4) gather real world feedback, develop rest of plan


Sean Dague

More information about the OpenStack-dev mailing list