)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d2f850142e1daa599970f3f8ef7db3b1b4db65b5","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Stephen Finucane \u003csfinucan@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-12-06 19:21:03 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"nova-net: Make the security group API as module"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We\u0027re wrestling with multiple imports for this thing and have introduced"},{"line_number":10,"context_line":"a cache to avoid having to load the thing repeatedly. However, Python"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3fa7e38b_240da33f","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":40},"updated":"2019-12-09 15:39:34.000000000","message":"a","commit_id":"033506cb24567f56a5c8408f7f9df34ccd0adb99"}],"nova/network/security_group/security_group_base.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"777077523d58ede2612e3a4b69d35fd7e23d7ac3","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    def validate_property(self, value, property, allowed):"},{"line_number":155,"context_line":"        pass"},{"line_number":156,"context_line":""},{"line_number":157,"context_line":"    def ensure_default(self, context):"},{"line_number":158,"context_line":"        pass"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"    def trigger_rules_refresh(self, context, id):"},{"line_number":161,"context_line":"        \"\"\"Called when a rule is added to or removed from a security_group.\"\"\""},{"line_number":162,"context_line":"        pass"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    def trigger_members_refresh(self, context, group_ids):"},{"line_number":165,"context_line":"        \"\"\"Called when a security group gains a new or loses a member."},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"        Sends an update request to each compute node for each instance for"},{"line_number":168,"context_line":"        which this is relevant."},{"line_number":169,"context_line":"        \"\"\""},{"line_number":170,"context_line":"        pass"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"    def populate_security_groups(self, security_groups):"},{"line_number":173,"context_line":"        \"\"\"Build and return a SecurityGroupList."}],"source_content_type":"text/x-python","patch_set":18,"id":"3fa7e38b_0a8bf416","side":"PARENT","line":170,"range":{"start_line":157,"start_character":0,"end_line":170,"end_character":12},"updated":"2020-01-21 18:30:33.000000000","message":"confirmed that their usage already deleted so not moved.","commit_id":"fadeedcdeaa949ae85938e78e2f34e75b9383721"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"777077523d58ede2612e3a4b69d35fd7e23d7ac3","unresolved":false,"context_lines":[{"line_number":228,"context_line":"        \"\"\""},{"line_number":229,"context_line":"        raise NotImplementedError()"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @staticmethod"},{"line_number":232,"context_line":"    def raise_invalid_property(msg):"},{"line_number":233,"context_line":"        raise exception.Invalid(msg)"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"    @staticmethod"},{"line_number":236,"context_line":"    def raise_group_already_exists(msg):"},{"line_number":237,"context_line":"        raise exception.Invalid(msg)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"    @staticmethod"},{"line_number":240,"context_line":"    def raise_invalid_group(msg):"},{"line_number":241,"context_line":"        raise exception.Invalid(msg)"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"    @staticmethod"},{"line_number":244,"context_line":"    def raise_invalid_cidr(cidr, decoding_exception\u003dNone):"},{"line_number":245,"context_line":"        raise exception.InvalidCidr(cidr\u003dcidr)"},{"line_number":246,"context_line":""},{"line_number":247,"context_line":"    @staticmethod"},{"line_number":248,"context_line":"    def raise_over_quota(msg):"},{"line_number":249,"context_line":"        raise exception.SecurityGroupLimitExceeded(msg)"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"    @staticmethod"},{"line_number":252,"context_line":"    def raise_not_found(msg):"},{"line_number":253,"context_line":"        raise exception.SecurityGroupNotFound(msg)"}],"source_content_type":"text/x-python","patch_set":18,"id":"3fa7e38b_8a9e0453","side":"PARENT","line":253,"range":{"start_line":231,"start_character":0,"end_line":253,"end_character":50},"updated":"2020-01-21 18:30:33.000000000","message":"ditto","commit_id":"fadeedcdeaa949ae85938e78e2f34e75b9383721"}],"nova/network/security_group_api.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a4a9b3fd52071af3330b6f2889dea2c0787adc0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"3fa7e38b_3168bc86","updated":"2020-01-20 14:37:31.000000000","message":"I side by side compared this with the base and the neutron driver the merge looks correct to me.","commit_id":"4e72eb7d8414be165c50b85fccbb771b52769994"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a4a9b3fd52071af3330b6f2889dea2c0787adc0","unresolved":false,"context_lines":[{"line_number":46,"context_line":"MAX_SEARCH_IDS \u003d 150"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"def validate_id(id):"},{"line_number":50,"context_line":"    if not uuidutils.is_uuid_like(id):"},{"line_number":51,"context_line":"        msg \u003d _(\"Security group id should be uuid\")"},{"line_number":52,"context_line":"        raise exception.Invalid(msg)"}],"source_content_type":"text/x-python","patch_set":18,"id":"3fa7e38b_b11cac66","line":49,"range":{"start_line":49,"start_character":4,"end_line":49,"end_character":15},"updated":"2020-01-20 14:37:31.000000000","message":"note to reviewers: this is coming from the middle of the neutron driver","commit_id":"4e72eb7d8414be165c50b85fccbb771b52769994"}]}
