Adding Python 3.4 support to Nova (partial)
All Nova dependencies are now Python 3 compatible: see the Dependencies section below. It's time to port Nova to Python 3 which means adding Python 3 support without loosing Python 2 support.
Blueprint information
- Status:
- Complete
- Approver:
- John Garbutt
- Priority:
- Medium
- Drafter:
- Victor Stinner
- Direction:
- Approved
- Assignee:
- Victor Stinner
- Definition:
- Approved
- Series goal:
- Accepted for liberty
- Implementation:
- Implemented
- Milestone target:
- 12.0.0
- Started by
- John Garbutt
- Completed by
- John Garbutt
Related branches
Related bugs
Sprints
Whiteboard
See https:/
Gerrit topic: https:/
Addressed by: https:/
Adding Python 3.4 support to Nova
Addressed by: https:/
Rename iteritems() methods to items() on Python 3
Addressed by: https:/
Replace dict.iteritems() with six.iteritems(dict)
Addressed by: https:/
Replace iter.next() with next(iter)
Addressed by: https:/
Drop L from literal integer numbers for Python 3
Addressed by: https:/
Replace unicode with six.text_type
Addressed by: https:/
Fix raise syntax for Python 3
Addressed by: https:/
Replace dict.itervalues() with six.itervalues(
Addressed by: https:/
Use six.moves.range for Python 3
Addressed by: https:/
Replace suds test dependency with suds-jurko
Addressed by: https:/
Replace MySQL-python test req. with mysqlclient
Addressed by: https:/
Replace MySQL-python with PyMySQL in tests
Addressed by: https:/
Replace dict(obj.
Addressed by: https:/
Don't use dict.iterkeys()
Addressed by: https:/
Add hacking rule to detect Python 3 compat issues
Addressed by: https:/
Disable oslo.vmware test dependency on Python 3
Addressed by: https:/
Fix version unit test on Python 3
Addressed by: https:/
Fix Python 3 issues in nova.db.sqlalchemy
Gerrit topic: https:/
Addressed by: https:/
Enable python34 tests for nova/tests/
Gerrit topic: https:/
Gerrit topic: https:/
Addressed by: https:/
Port crypto to Python 3
Addressed by: https:/
Enable oslo.vmware dependency on Python 3
Addressed by: https:/
Fix Python 3 issues in nova.utils and nova.tests
Addressed by: https:/
Port test_exception to Python 3
As this is not a priority, lets mark this a NeedsCodeReview and partially completed, to align with the Non-Priority Feature Proposal Freeze. --johnthetubaguy 16th July 2015
Addressed by: https:/
Enable python34 tests for nova/tests/
Addressed by: https:/
Get py34 subunit.run test discovery to work
Given all the current patches have merged, and the agreement to timebox this effort, lets call this the end of things for liberty.
--johnthetubaguy 5th August 2015
Addressed by: https:/
Replace function.func_name with function.__name__
Addressed by: https:/
Replace unicode with six.text_type
Addressed by: https:/
py3: test_policy, test_pipelib, test_nova_manage
Addressed by: https:/
Port cinder unit tests to Python 3
Addressed by: https:/
Port test_ipv6 to py3 and simplify to_global()
Addressed by: https:/
Port test_hacking to Python 3
Addressed by: https:/
Port test_metadata to Python 3
Addressed by: https:/
Port pci unit tests to Python 3
Addressed by: https:/
Replace unicode with six.text_type