)]}'
{"quantum/api/v2/attributes.py":[{"author":{"_account_id":2592,"name":"Mark McClain","email":"mark@mcclain.xyz","username":"markmcclain"},"unresolved":false,"context_lines":[{"line_number":255,"context_line":"        else:"},{"line_number":256,"context_line":"            return"},{"line_number":257,"context_line":"    except Exception:"},{"line_number":258,"context_line":"        pass"},{"line_number":259,"context_line":"    if not msg:"},{"line_number":260,"context_line":"        msg \u003d _(\"\u0027%s\u0027 is not a valid IP subnet\") % data"},{"line_number":261,"context_line":"    LOG.debug(msg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FWtw%3D","line":258,"updated":"2013-07-03 13:29:18.000000000","message":"258-259 are not necessary and should be removed.","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"7c2243c91490213f5277569d584c7934c17496b6","unresolved":false,"context_lines":[{"line_number":256,"context_line":"            return"},{"line_number":257,"context_line":"    except Exception:"},{"line_number":258,"context_line":"        pass"},{"line_number":259,"context_line":"    if not msg:"},{"line_number":260,"context_line":"        msg \u003d _(\"\u0027%s\u0027 is not a valid IP subnet\") % data"},{"line_number":261,"context_line":"    LOG.debug(msg)"},{"line_number":262,"context_line":"    return msg"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FUU8%3D","line":259,"updated":"2013-07-04 05:55:25.000000000","message":"if not msg, which means we have set it at line 252. if msg is none, it means we have other exception which is handled at line 258.","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"37ccaba021f33aaac25040fe7b8ba320f51b7bd6","unresolved":false,"context_lines":[{"line_number":256,"context_line":"            return"},{"line_number":257,"context_line":"    except Exception:"},{"line_number":258,"context_line":"        pass"},{"line_number":259,"context_line":"    if not msg:"},{"line_number":260,"context_line":"        msg \u003d _(\"\u0027%s\u0027 is not a valid IP subnet\") % data"},{"line_number":261,"context_line":"    LOG.debug(msg)"},{"line_number":262,"context_line":"    return msg"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FSU4%3D","line":259,"in_reply_to":"AAAAPn%2F%2FUM4%3D","updated":"2013-07-05 05:51:41.000000000","message":"Done","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"26437054558821213ad57e341c90dc23b05a1d7d","unresolved":false,"context_lines":[{"line_number":256,"context_line":"            return"},{"line_number":257,"context_line":"    except Exception:"},{"line_number":258,"context_line":"        pass"},{"line_number":259,"context_line":"    if not msg:"},{"line_number":260,"context_line":"        msg \u003d _(\"\u0027%s\u0027 is not a valid IP subnet\") % data"},{"line_number":261,"context_line":"    LOG.debug(msg)"},{"line_number":262,"context_line":"    return msg"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FUM4%3D","line":259,"in_reply_to":"AAAAPn%2F%2FUU8%3D","updated":"2013-07-04 09:06:01.000000000","message":"If so, L.260 can be in except clause.\n\nexcept Exception:\n   msg \u003d _(\"\u0027%s\u0027 is not a valid IP subnet\") % data","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"}],"quantum/db/db_base_plugin_v2.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"07f06fd455e22e1c16e0047e446ac5a24997a8f8","unresolved":false,"context_lines":[{"line_number":554,"context_line":"        # network or the broadcast address"},{"line_number":555,"context_line":"        if (ip !\u003d net.network and"},{"line_number":556,"context_line":"                ip !\u003d net.broadcast and"},{"line_number":557,"context_line":"                net.netmask \u0026 ip \u003d\u003d net.network):"},{"line_number":558,"context_line":"            return True"},{"line_number":559,"context_line":"        return False"},{"line_number":560,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2FfJ0%3D","line":557,"updated":"2013-06-30 10:28:12.000000000","message":"i think that this is dealt with in another patch - https://review.openstack.org/#/c/32333/","commit_id":"de10140f2336b396c06b13306bc3032f113a1861"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"7c2243c91490213f5277569d584c7934c17496b6","unresolved":false,"context_lines":[{"line_number":554,"context_line":"        # network or the broadcast address"},{"line_number":555,"context_line":"        if (ip !\u003d net.network and"},{"line_number":556,"context_line":"                ip !\u003d net.broadcast and"},{"line_number":557,"context_line":"                net.netmask \u0026 ip \u003d\u003d net.network):"},{"line_number":558,"context_line":"            return True"},{"line_number":559,"context_line":"        return False"},{"line_number":560,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2FfEA%3D","line":557,"in_reply_to":"AAAAPn%2F%2FfJ0%3D","updated":"2013-06-30 14:43:03.000000000","message":"ok, I will leave this part to that patch.","commit_id":"de10140f2336b396c06b13306bc3032f113a1861"},{"author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"unresolved":false,"context_lines":[{"line_number":554,"context_line":"        # network or the broadcast address"},{"line_number":555,"context_line":"        if (ip !\u003d net.network and"},{"line_number":556,"context_line":"                ip !\u003d net.broadcast and"},{"line_number":557,"context_line":"                net.netmask \u0026 ip \u003d\u003d net.ip):"},{"line_number":558,"context_line":"            return True"},{"line_number":559,"context_line":"        return False"},{"line_number":560,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAPn%2F%2FcUI%3D","side":"PARENT","line":557,"updated":"2013-07-01 20:53:21.000000000","message":"This exact change is handled by the review https://review.openstack.org/#/c/32333/4. I\u0027m unsure if it makes more sense to collapse that review into this one, or remove this part from your review.","commit_id":"81c3a1706ff1e380602cb72b26a9ac726287e122"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"7c2243c91490213f5277569d584c7934c17496b6","unresolved":false,"context_lines":[{"line_number":554,"context_line":"        # network or the broadcast address"},{"line_number":555,"context_line":"        if (ip !\u003d net.network and"},{"line_number":556,"context_line":"                ip !\u003d net.broadcast and"},{"line_number":557,"context_line":"                net.netmask \u0026 ip \u003d\u003d net.ip):"},{"line_number":558,"context_line":"            return True"},{"line_number":559,"context_line":"        return False"},{"line_number":560,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAPn%2F%2Fb%2BQ%3D","side":"PARENT","line":557,"in_reply_to":"AAAAPn%2F%2FcUI%3D","updated":"2013-07-01 23:09:46.000000000","message":"Done","commit_id":"81c3a1706ff1e380602cb72b26a9ac726287e122"}],"quantum/tests/unit/test_attributes.py":[{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"26437054558821213ad57e341c90dc23b05a1d7d","unresolved":false,"context_lines":[{"line_number":266,"context_line":"                           [{\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":267,"context_line":"                             \u0027destination\u0027: \u0027100.0.0.0/8\u0027},"},{"line_number":268,"context_line":"                            {\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":269,"context_line":"                             \u0027destination\u0027: \u0027101.0.0.0/8\u0027}]]"},{"line_number":270,"context_line":"        for host_routes in hostroute_pools:"},{"line_number":271,"context_line":"            msg \u003d attributes._validate_hostroutes(host_routes, None)"},{"line_number":272,"context_line":"            self.assertIsNone(msg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FUME%3D","line":269,"updated":"2013-07-04 09:06:01.000000000","message":"I don\u0027t think we need to change this.","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"26437054558821213ad57e341c90dc23b05a1d7d","unresolved":false,"context_lines":[{"line_number":266,"context_line":"                           [{\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":267,"context_line":"                             \u0027destination\u0027: \u0027100.0.0.0/8\u0027},"},{"line_number":268,"context_line":"                            {\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":269,"context_line":"                             \u0027destination\u0027: \u0027101.0.0.0/8\u0027}]]"},{"line_number":270,"context_line":"        for host_routes in hostroute_pools:"},{"line_number":271,"context_line":"            msg \u003d attributes._validate_hostroutes(host_routes, None)"},{"line_number":272,"context_line":"            self.assertIsNone(msg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FSUs%3D","line":269,"in_reply_to":"AAAAPn%2F%2FUME%3D","updated":"2013-07-05 05:49:36.000000000","message":"My bad. This change is good.\n\n\"100.0.0.1/8\" is not a valid cidr (it ends with .1) and we already have 100.0.0.0/8 at L.267 so it is reasonable to change it to 101.0.0.0/8.","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":2592,"name":"Mark McClain","email":"mark@mcclain.xyz","username":"markmcclain"},"unresolved":false,"context_lines":[{"line_number":402,"context_line":"                  \" \u0027%(cidr)s\u0027 is recommended\") % {\"data\": cidr,"},{"line_number":403,"context_line":"                                                   \"cidr\": \"fe80::/128\"}"},{"line_number":404,"context_line":"        self.assertEqual(msg, error)"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"        # Invalid - Address format error"},{"line_number":407,"context_line":"        cidr \u003d \u0027invalid\u0027"},{"line_number":408,"context_line":"        msg \u003d attributes._validate_subnet(cidr,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FWsk%3D","line":405,"updated":"2013-07-03 13:29:18.000000000","message":"Seems like we need a test along the lines of\n\n192.168.1.1/24  suggests 192.168.1.0/24.","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"7c2243c91490213f5277569d584c7934c17496b6","unresolved":false,"context_lines":[{"line_number":402,"context_line":"                  \" \u0027%(cidr)s\u0027 is recommended\") % {\"data\": cidr,"},{"line_number":403,"context_line":"                                                   \"cidr\": \"fe80::/128\"}"},{"line_number":404,"context_line":"        self.assertEqual(msg, error)"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"        # Invalid - Address format error"},{"line_number":407,"context_line":"        cidr \u003d \u0027invalid\u0027"},{"line_number":408,"context_line":"        msg \u003d attributes._validate_subnet(cidr,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FUVg%3D","line":405,"in_reply_to":"AAAAPn%2F%2FWsk%3D","updated":"2013-07-04 05:55:25.000000000","message":"Done","commit_id":"f759576037f044e0468d75cb6218d66c445ac7f6"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":265,"context_line":"                             \u0027nexthop\u0027: \u002710.0.2.20\u0027}],"},{"line_number":266,"context_line":"                           [{\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":267,"context_line":"                             \u0027destination\u0027: \u0027100.0.0.0/8\u0027},"},{"line_number":268,"context_line":"                            {\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":269,"context_line":"                             \u0027destination\u0027: \u0027101.0.0.0/8\u0027}]]"},{"line_number":270,"context_line":"        for host_routes in hostroute_pools:"},{"line_number":271,"context_line":"            msg \u003d attributes._validate_hostroutes(host_routes, None)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FR3M%3D","line":268,"updated":"2013-07-05 10:24:42.000000000","message":"out of interest why did you change this?","commit_id":"70919cc6f32af3175c2c5a56689eb0137783e067"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"37ccaba021f33aaac25040fe7b8ba320f51b7bd6","unresolved":false,"context_lines":[{"line_number":265,"context_line":"                             \u0027nexthop\u0027: \u002710.0.2.20\u0027}],"},{"line_number":266,"context_line":"                           [{\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":267,"context_line":"                             \u0027destination\u0027: \u0027100.0.0.0/8\u0027},"},{"line_number":268,"context_line":"                            {\u0027nexthop\u0027: \u002710.0.2.20\u0027,"},{"line_number":269,"context_line":"                             \u0027destination\u0027: \u0027101.0.0.0/8\u0027}]]"},{"line_number":270,"context_line":"        for host_routes in hostroute_pools:"},{"line_number":271,"context_line":"            msg \u003d attributes._validate_hostroutes(host_routes, None)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FR0E%3D","line":268,"in_reply_to":"AAAAPn%2F%2FR3M%3D","updated":"2013-07-05 10:45:15.000000000","message":"see amotoki\u0027s comment in last patch.","commit_id":"70919cc6f32af3175c2c5a56689eb0137783e067"}]}
