Hi,

It's moving fast. I'm currently working on porting remaining libraries to 
prepare my spec for nova.

> oslo.db -- looks like it is almost there 

I don't know the status of oslo.db support of Python 3. I guess that it already 
works on Python 3, it's just a matter of running tests with MySQL (MySQL-Python 
blocks again here).

> oslo.messaging -- same 

Two changes of my Python 3 changes were already merged last week. Three 
remaining Python 3 changes are almost there, they are mostly blocked by the 
freeze on requirements, but changes are already approved. The blocker is the 
bump of eventlet to 0.17.3:
https://review.openstack.org/#/c/172132/

> paste -- almost there 

I fixed that last night (!) with the release of Paste 2.0. It's the first Paste 
release since 2010. Paste 2.0 has an experimental support of Python 3. It 
should be enough for nova, according to my quick tests in my local nova 
repository where I fixed most obvious Python 3 issues. Ian Bicking allowed me 
to publish new versions of Paste.

> sqlalchemy-migrate -- almost there 

It already supports Python 3, so it doesn't block.

> suds -- with the suds fork shouldn't be too hard 

You should just switch to the fork. I contacted the author of suds-jurko: he 
plans to rename its component from "suds-jurko" to "suds". So his fork would be 
simple drop-in which would not require any change in OpenStack except of 
requirements.

> websockify -- unknown

It announces Python 3.3 and 3.4 support and has a py34 env in tox.ini. I didn't 
check yet if it supports Python 3, but since the project is active (last commit 
12 hours ago), it's shouldn't be hard to fix them quickly.

> libvirt-python -- unknown 

Oh, I missed this dependency. It's my next target :-)

> mysql-python -- alternitive looks viable. 

Yes, it's possible to replace it with PyMySQL. Does anyone know the status of 
this switch?

> Based on there being two unknowns, and a lot of dependencies that are just 
> almost there, and a few we may want to migrate off of, I was assuming 
> addressing those issues would make it hard for us to make nova python3 
> compatible for Liberty.

My plan for Liberty is not to support fully Python 3 in nova, but only start 
the port (well, continue to be exact). The idea is to fix syntax errors and 
obvious issues like dict.iteritems() => six.iteritems(dict), then more complex 
changes. Maybe it's possible to finish the port in a cycle, but it really 
depends on the time taken to merge patches.

I started to port nova in my local repository. Some unit tests already pass.

nova already uses six in many places, so it's not like we really start from 
scratch, the port is already an ingoing process.

Victor

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to