)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"3533f00652f90c82a84ce25c76c743f2ae079030","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Claudiu Belu \u003ccbelu@cloudbasesolutions.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-12-10 13:52:18 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fixes network py3 unit tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Enables some unit tests for gate-nova-python34."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3a7e1126_4eb6b68b","line":7,"updated":"2015-12-17 13:40:12.000000000","message":"maybe part of since not all are fixed now","commit_id":"6cefb794d46b8a6b115cf80155e8d9b7c34af284"}],"nova/network/manager.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"08f564326e713ece882a92b5f957cc4d07a492ce","unresolved":false,"context_lines":[{"line_number":1283,"context_line":"        def find_next(subnet):"},{"line_number":1284,"context_line":"            next_subnet \u003d subnet.next()"},{"line_number":1285,"context_line":"            while next_subnet in subnets_v4:"},{"line_number":1286,"context_line":"                next_subnet \u003d next_subnet.next()"},{"line_number":1287,"context_line":"            if next_subnet in fixed_net_v4:"},{"line_number":1288,"context_line":"                return next_subnet"},{"line_number":1289,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3a7e1126_3a01a138","line":1286,"updated":"2015-12-21 10:04:24.000000000","message":"Forgive my ignorance, but this seems to be the opposite of what you generally need to do for Python 3 [1]. What am I missing?\n\n[1] http://www.diveinto.org/python3/porting-code-to-python-3-with-2to3.html#next","commit_id":"d7ce04a679b9c19acc879f38966728eebca84b03"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"74cc4a6c4ef704a9b77b2c5d3dcf3c2960aca426","unresolved":false,"context_lines":[{"line_number":1283,"context_line":"        def find_next(subnet):"},{"line_number":1284,"context_line":"            next_subnet \u003d subnet.next()"},{"line_number":1285,"context_line":"            while next_subnet in subnets_v4:"},{"line_number":1286,"context_line":"                next_subnet \u003d next_subnet.next()"},{"line_number":1287,"context_line":"            if next_subnet in fixed_net_v4:"},{"line_number":1288,"context_line":"                return next_subnet"},{"line_number":1289,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9a68dd71_e23dccdd","line":1286,"in_reply_to":"3a7e1126_3a01a138","updated":"2016-01-23 00:56:22.000000000","message":"I looked into this because I was curious and found that \"subnet\" is a netaddr.IPNetwork object [1] with a next() method that returns the next IP subnet. This happened to work in python 2 because the built-in next() global function calls an iterator\u0027s next() method. In python 3, the built-in next() global function calls an iterator\u0027s __next__() method and the IPNetwork object doesn\u0027t have a __next__(). So you get an error \"TypeError: \u0027IPNetwork\u0027 object is not an iterator\"\n\n[1] https://netaddr.readthedocs.org/en/latest/api.html#netaddr.IPNetwork","commit_id":"d7ce04a679b9c19acc879f38966728eebca84b03"}]}
