)]}'
{"neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py":[{"author":{"_account_id":15922,"name":"Kawaguchi Kentaro","email":"ken-kawaguchi@vt.jp.nec.com","username":"kawaguchi"},"change_message_id":"29d72e04bb8590d82e4e90bcbb06902f39076fbf","unresolved":false,"context_lines":[{"line_number":1258,"context_line":"                if need_binding:"},{"line_number":1259,"context_line":"                    details[\u0027vif_port\u0027] \u003d port"},{"line_number":1260,"context_line":"                    need_binding_devices.append(details)"},{"line_number":1261,"context_line":"                port_security \u003d details[\u0027port_security_enabled\u0027]"},{"line_number":1262,"context_line":"                has_sgs \u003d \u0027security_groups\u0027 in details"},{"line_number":1263,"context_line":"                if not port_security or not has_sgs:"},{"line_number":1264,"context_line":"                    security_disabled_devices.append(device)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_343702e5","line":1261,"updated":"2015-08-10 00:53:38.000000000","message":"the key of \u0027port_security_enabled\u0027 might not exist.","commit_id":"16cf34c31cc7f2a112ffb3f41a38114ea7509ac8"}],"neutron/plugins/ml2/rpc.py":[{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"23cbf70e45395b802a706cd08875c07d5e1d86e1","unresolved":false,"context_lines":[{"line_number":122,"context_line":"                 \u0027port_security_enabled\u0027: port.get(psec.PORTSECURITY, True),"},{"line_number":123,"context_line":"                 \u0027profile\u0027: port[portbindings.PROFILE]}"},{"line_number":124,"context_line":"        if \u0027security_groups\u0027 in port:"},{"line_number":125,"context_line":"            entry.update({\u0027security_groups\u0027: port[\u0027security_groups\u0027]})"},{"line_number":126,"context_line":"        LOG.debug(\"Returning: %s\", entry)"},{"line_number":127,"context_line":"        return entry"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_52be3d65","line":125,"updated":"2015-08-14 23:33:30.000000000","message":"Please use dict.update when needed, the following is more readable and avoid to build a dict:\n\n  entry[\u0027security_groups\u0027] \u003d port[\u0027security_groups\u0027]","commit_id":"9a8eb454faefa1f08bfa31e60d607193a0971ee5"},{"author":{"_account_id":14605,"name":"vikram.choudhary","email":"vikschw@gmail.com","username":"vikram.choudhary"},"change_message_id":"1b4fcbbcba43abb529835f8ccd83e418b3c63095","unresolved":false,"context_lines":[{"line_number":122,"context_line":"                 \u0027port_security_enabled\u0027: port.get(psec.PORTSECURITY, True),"},{"line_number":123,"context_line":"                 \u0027profile\u0027: port[portbindings.PROFILE]}"},{"line_number":124,"context_line":"        if \u0027security_groups\u0027 in port:"},{"line_number":125,"context_line":"            entry.update({\u0027security_groups\u0027: port[\u0027security_groups\u0027]})"},{"line_number":126,"context_line":"        LOG.debug(\"Returning: %s\", entry)"},{"line_number":127,"context_line":"        return entry"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_7798f46a","line":125,"in_reply_to":"1a4dcd0f_52be3d65","updated":"2015-08-16 17:34:56.000000000","message":"+1. \n\nI feel \"entry[\u0027security_groups\u0027] \u003d port[\u0027security_groups\u0027]\" has less performance penality.","commit_id":"9a8eb454faefa1f08bfa31e60d607193a0971ee5"},{"author":{"_account_id":11825,"name":"Sudhakar Babu Gariganti","email":"sudhakar.gariganti@gmail.com","username":"sudhakar-gariganti"},"change_message_id":"1515338b2793c6b89d2d38bdd3e6069ab77fd3d2","unresolved":false,"context_lines":[{"line_number":122,"context_line":"                 \u0027port_security_enabled\u0027: port.get(psec.PORTSECURITY, True),"},{"line_number":123,"context_line":"                 \u0027profile\u0027: port[portbindings.PROFILE]}"},{"line_number":124,"context_line":"        if \u0027security_groups\u0027 in port:"},{"line_number":125,"context_line":"            entry.update({\u0027security_groups\u0027: port[\u0027security_groups\u0027]})"},{"line_number":126,"context_line":"        LOG.debug(\"Returning: %s\", entry)"},{"line_number":127,"context_line":"        return entry"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_0c2f1fa2","line":125,"in_reply_to":"1a4dcd0f_7798f46a","updated":"2015-08-17 04:50:59.000000000","message":"Done","commit_id":"9a8eb454faefa1f08bfa31e60d607193a0971ee5"}],"neutron/tests/unit/plugins/ml2/drivers/openvswitch/agent/test_ovs_neutron_agent.py":[{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"23cbf70e45395b802a706cd08875c07d5e1d86e1","unresolved":false,"context_lines":[{"line_number":551,"context_line":"        self._test_process_network_ports({})"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"    def test_process_network_ports_with_insecure_ports(self):"},{"line_number":554,"context_line":"        port_info \u003d {\u0027current\u0027: set([\u0027tap0\u0027, \u0027tap1\u0027]),"},{"line_number":555,"context_line":"                     \u0027updated\u0027: set([\u0027tap1\u0027]),"},{"line_number":556,"context_line":"                     \u0027removed\u0027: set([]),"},{"line_number":557,"context_line":"                     \u0027added\u0027: set([\u0027eth1\u0027])}"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_92a4c54b","line":554,"updated":"2015-08-14 23:33:30.000000000","message":"you can use {\u0027tap0\u0027, \u0027tap1\u0027} instead of set([...]) for the sake of readability.","commit_id":"9a8eb454faefa1f08bfa31e60d607193a0971ee5"},{"author":{"_account_id":11825,"name":"Sudhakar Babu Gariganti","email":"sudhakar.gariganti@gmail.com","username":"sudhakar-gariganti"},"change_message_id":"1515338b2793c6b89d2d38bdd3e6069ab77fd3d2","unresolved":false,"context_lines":[{"line_number":551,"context_line":"        self._test_process_network_ports({})"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"    def test_process_network_ports_with_insecure_ports(self):"},{"line_number":554,"context_line":"        port_info \u003d {\u0027current\u0027: set([\u0027tap0\u0027, \u0027tap1\u0027]),"},{"line_number":555,"context_line":"                     \u0027updated\u0027: set([\u0027tap1\u0027]),"},{"line_number":556,"context_line":"                     \u0027removed\u0027: set([]),"},{"line_number":557,"context_line":"                     \u0027added\u0027: set([\u0027eth1\u0027])}"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_2c2a1b91","line":554,"in_reply_to":"1a4dcd0f_92a4c54b","updated":"2015-08-17 04:50:59.000000000","message":"I had followed the declaration at L545.\n\nI am OK to change this but would like to modify it at both places if I am doing here. Should I go ahead??","commit_id":"9a8eb454faefa1f08bfa31e60d607193a0971ee5"}]}
