Porting Neutron to Python 3
Neutron should be ported to Python 3.4.
Blueprint information
- Status:
- Complete
- Approver:
- Kyle Mestery
- Priority:
- Medium
- Drafter:
- Cyril Roelandt
- Direction:
- Approved
- Assignee:
- Cyril Roelandt
- Definition:
- Approved
- Series goal:
- Accepted for liberty
- Implementation:
- Implemented
- Milestone target:
- 7.0.0
- Started by
- Kyle Mestery
- Completed by
- Kyle Mestery
Related branches
Related bugs
Sprints
Whiteboard
Sept 1(armax): at this pace, it's unlikely this will be complete by the end of the week.
Gerrit topic: https:/
Addressed by: https:/
Add a "Porting to Python 3" spec
Addressed by: https:/
Allow users to run 'tox -epy34'
Addressed by: https:/
Python3: use six.iteritems() instead of dict.iteritems()
Addressed by: https:/
Python 3: Use six.moves.range
Addressed by: https:/
Python 3: do not index a dict_values object
Addressed by: https:/
Python 3: use six.string_types instead of basestring
Gerrit topic: https:/
Addressed by: https:/
Merge branch 'master' into neutron-pecan
Gerrit topic: https:/
Addressed by: https:/
Fix indentation errors in tests
Addressed by: https:/
Get rid of contextlib.nested
Addressed by: https:/
Python3: Enable all working tests in tox.ini
Addressed by: https:/
Python 3: use next() instead of iterator.next()
Addressed by: https:/
Python3: do not use 'unicode'
Addressed by: https:/
Python3: use six.itervalues instead of dict.itervalues
Addressed by: https:/
Python3: do not change the size of a dict while iterating over it
Addressed by: https:/
Python 3: do not use cmp(), nor sorted(..., cmp=...)
Addressed by: https:/
Python3: do not use im_self/im_func
Addressed by: https:/
Python3: use dict.keys() instead of dict.iterkeys()
Addressed by: https:/
Python3: do not use '+' on dict_items objects
Addressed by: https:/
Python3: use itertools.zip instead of itertools.izip
Addressed by: https:/
Python3: do not use __builtin__
Addressed by: https:/
Python3: do not set Request.body to a text string
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-qos
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Python3: do not use urllib.urlencode
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Python 3: do not index dict_keys objects
Addressed by: https:/
Python3: do not add dict_values objects
Addressed by: https:/
Python3: cast the result of zip() to list
Addressed by: https:/
Python 3: do not compare int and NoneType
Addressed by: https:/
Python 3: Fix a TypeError in policy.py
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Python 3: use a key to sort list of dictionaries
Addressed by: https:/
Python 3: do not use types.ClassType
Addressed by: https:/
Bump mock to 1.1.1
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Gerrit topic: https:/
Addressed by: https:/
Disable python3 tests failing due to Routes < 2.0
Addressed by: https:/
Python 3: Wrap map() in a list call
Addressed by: https:/
Python3: Do not compare NoneType and integers
Addressed by: https:/
Python 3: fix test_provider_
Addressed by: https:/
Python 3: fix neutron.
Addressed by: https:/
Python 3: fix neutron.
Addressed by: https:/
Python 3: enable more tests
Addressed by: https:/
Python3: set webob.Response.text instead of webob.Response.body
Addressed by: https:/
Python 3: use a hash to sort dictionaries
Addressed by: https:/
Python3: pass bytes to binascii.crc32
Addressed by: https:/
Python 3: enable test_metering_
Addressed by: https:/
Enable py34 tests for pluggable ipam backend
Addressed by: https:/
Python 3: fix test_dhcp
Addressed by: https:/
Python 3: fix test_attributes
Addressed by: https:/
Python 3: do not index dict_values objects
Addressed by: https:/
Python 3: fix test_context
Addressed by: https:/
Python 3: fix test_n1kv_plugin
Addressed by: https:/
Python 3: compare response.body to bytes in namespace_proxy test
Addressed by: https:/
Python 3: hmac requires bytes key/msg
Addressed by: https:/
bp/
Addressed by: https:/
Python 3: Use '//' instead of '/'
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Python 3: Fix test_security_
Addressed by: https:/
Python 3: encode or decode i/o data of Popen.communicate()
Addressed by: https:/
Replaces print with print() for py 2/3 compatibility
Addressed by: https:/
_get_
Addressed by: https:/
Python 3: fix test_ovs_tunnel
Addressed by: https:/
Python 3: convert dict_keys object to list
Addressed by: https:/
Python 3: encode unicode response bodies
Addressed by: https:/
Python 3: specify a bytes to an argument for a format type 's' of struct.pack()
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Python 3: fix test_utils
Addressed by: https:/
Python 3: use __code__ instead of func_code
Addressed by: https:/
Python 3: do not do "assertFalse(
Addressed by: https:/
Python 3: fix test_ovs_tunnel
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-branch
Addressed by: https:/
Enable most unit tests for py34 job
Addressed by: https:/
Python 3: do not use Exception.message
Addressed by: https:/
Python 3: do not try to sort dicts
Addressed by: https:/
Python 3: Fix neutron.
Addressed by: https:/
Python 3: fix neutron.
Addressed by: https:/
Python3: hashlib.sha1 expects bytes
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-master-
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into merge-pecan-
Gerrit topic: https:/
Addressed by: https:/
Merge remote-tracking branch 'origin/master' into walnut
Addressed by: https:/
Increase test coverage for neutron/
Addressed by: https:/
Increase test coverage for neutron/
Gerrit topic: https:/
Addressed by: https:/
Python 3: add classifiers
Gerrit topic: https:/
Addressed by: https:/
Ensure to decode bytes or fail
Gerrit topic: https:/
Addressed by: https:/
Python 3: fix bug/1491824
Gerrit topic: https:/
Addressed by: https:/
Merge tag '7.0.0'
Addressed by: https:/
Support Unicode request_id on Python 3
Addressed by: https:/
Support Unicode request_id on Python 3
Addressed by: https:/
Drop using urlparse module for python3
Addressed by: https:/
Do not use StringIO and cStringIO in python3
Addressed by: https:/
Python3: Fix using dictionary keys() as list
Addressed by: https:/
Python3: Add python3 support
Addressed by: https:/
Add hacking check rule for not use keys() as list
Addressed by: https:/
Fix Python 3 issues
Addressed by: https:/
py3: Use six.moves for import modules
Addressed by: https:/
py3: Replace dict.iteritems() with dict.items()
Addressed by: https:/
Add a whitelist of tests passing on Python 3
Addressed by: https:/
Port cert_parser to Python 3
Addressed by: https:/
Port test_agent and test_agent_api to Python 3
Addressed by: https:/
py35: Change error message
Addressed by: https:/
Port agent_manager to Python 3
Addressed by: https:/
Port more unit tests to Python 3
Addressed by: https:/
Port more service unit tests to Python 3
Addressed by: https:/
Port even more service tests to Python 3
Addressed by: https:/
Port test_db_
Addressed by: https:/
Finish to port unit tests to Python 3