)]}'
{"doc/source/command-objects/consistency-group.rst":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":16,"context_line":"        \u003cconsistency-group\u003e"},{"line_number":17,"context_line":"        \u003cvolume\u003e [\u003cvolume\u003e ...]"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":".. _consistency_group_add_volume-consistency-group:"},{"line_number":20,"context_line":".. describe:: \u003cconsistency-group\u003e"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    Consistency group to contain \u003cvolume\u003e (name or ID)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_2148705b","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":51},"updated":"2016-12-08 01:54:03.000000000","message":"I think this line is not necessary you can remove this and then move line 24 to here","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    Consistency group to contain \u003cvolume\u003e (name or ID)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. _consistency_group_add_volume-name:"},{"line_number":25,"context_line":".. describe:: \u003cvolume\u003e"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    Volume(s) to add to \u003cconsistency-group\u003e (name or ID)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_c1aedce6","line":24,"range":{"start_line":24,"start_character":0,"end_line":24,"end_character":38},"updated":"2016-12-08 01:54:03.000000000","message":".. _consistency_group_add_volume:","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    List additional fields in output"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"consistency group remove volume"},{"line_number":109,"context_line":"----------------------------"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Remove volume(s) from consistency group."},{"line_number":112,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_c1c33c89","line":109,"range":{"start_line":109,"start_character":0,"end_line":109,"end_character":28},"updated":"2016-12-08 01:54:03.000000000","message":"nit: the length should match the sentence above, so need some more \"-\"","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":117,"context_line":"        \u003cconsistency-group\u003e"},{"line_number":118,"context_line":"        \u003cvolume\u003e [\u003cvolume\u003e ...]"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":".. _consistency_group_remove_volume-consistency-group:"},{"line_number":121,"context_line":".. describe:: \u003cconsistency-group\u003e"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    Consistency group containing \u003cvolume\u003e (name or ID)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_6186e866","line":120,"range":{"start_line":120,"start_character":0,"end_line":120,"end_character":54},"updated":"2016-12-08 01:54:03.000000000","message":"ditto","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    Consistency group containing \u003cvolume\u003e (name or ID)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. _consistency_group_remove_volume-name:"},{"line_number":126,"context_line":".. describe:: \u003cvolume\u003e"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"    Volume(s) to remove from \u003cconsistency-group\u003e (name or ID)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a71b18c_a1800048","line":125,"range":{"start_line":125,"start_character":0,"end_line":125,"end_character":41},"updated":"2016-12-08 01:54:03.000000000","message":"ditto","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"}],"openstackclient/tests/unit/volume/v2/test_consistency_group.py":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"32e83d6d61bd15d5ace86a955d985cb0e7d36096","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3a71b18c_e01a64c5","updated":"2016-12-12 12:29:07.000000000","message":"It would be nice if you add test for error handling while one of volumes is not found like the test we did in delete command","commit_id":"5e998443839434e2b41d57c314b7cbabe699fce4"}],"openstackclient/volume/v2/consistency_group.py":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        )"},{"line_number":47,"context_line":"        return parser"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def take_action(self, parsed_args):"},{"line_number":50,"context_line":"        volume_client \u003d self.app.client_manager.volume"},{"line_number":51,"context_line":"        kwargs \u003d {}"},{"line_number":52,"context_line":"        add_uuid \u003d \u0027\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_61934850","line":49,"updated":"2016-12-08 01:54:03.000000000","message":"I think we need error handling like \"delete\" command do, you can see delete command for example","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b856cc500b35ece3df7c183c8f0f5e00d0a2f1f5","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        kwargs \u003d {}"},{"line_number":52,"context_line":"        add_uuid \u003d \u0027\u0027"},{"line_number":53,"context_line":"        for volume in parsed_args.volumes:"},{"line_number":54,"context_line":"            volume_id \u003d utils.find_resource("},{"line_number":55,"context_line":"                volume_client.volumes, volume).id"},{"line_number":56,"context_line":"            add_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":57,"context_line":"        add_uuid \u003d add_uuid.rstrip(\u0027,\u0027)"},{"line_number":58,"context_line":"        kwargs[\u0027add_volumes\u0027] \u003d add_uuid"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_3fd7a424","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":49},"updated":"2016-12-08 05:44:44.000000000","message":"we may want to add a try/except block here to log a message if a volume cannot be found, rather than blowing up if a user types in the name or ID incorrectly.","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b856cc500b35ece3df7c183c8f0f5e00d0a2f1f5","unresolved":false,"context_lines":[{"line_number":54,"context_line":"            volume_id \u003d utils.find_resource("},{"line_number":55,"context_line":"                volume_client.volumes, volume).id"},{"line_number":56,"context_line":"            add_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":57,"context_line":"        add_uuid \u003d add_uuid.rstrip(\u0027,\u0027)"},{"line_number":58,"context_line":"        kwargs[\u0027add_volumes\u0027] \u003d add_uuid"},{"line_number":59,"context_line":"        if kwargs:"},{"line_number":60,"context_line":"            consistency_group_id \u003d utils.find_resource("}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_9fe6f814","line":57,"range":{"start_line":57,"start_character":8,"end_line":57,"end_character":39},"updated":"2016-12-08 05:44:44.000000000","message":"what happens if no volume is specified?","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b856cc500b35ece3df7c183c8f0f5e00d0a2f1f5","unresolved":false,"context_lines":[{"line_number":55,"context_line":"                volume_client.volumes, volume).id"},{"line_number":56,"context_line":"            add_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":57,"context_line":"        add_uuid \u003d add_uuid.rstrip(\u0027,\u0027)"},{"line_number":58,"context_line":"        kwargs[\u0027add_volumes\u0027] \u003d add_uuid"},{"line_number":59,"context_line":"        if kwargs:"},{"line_number":60,"context_line":"            consistency_group_id \u003d utils.find_resource("},{"line_number":61,"context_line":"                volume_client.consistencygroups,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_dff070cc","line":58,"range":{"start_line":58,"start_character":8,"end_line":58,"end_character":40},"updated":"2016-12-08 05:44:44.000000000","message":"you probably don\u0027t need to use kwargs, just check it with:\n\n  `if add_uuid:`\n\nand on line 64 pass it in as:\n\n  add_volumes\u003dadd_uuid","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":237,"context_line":"        )"},{"line_number":238,"context_line":"        return parser"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    def take_action(self, parsed_args):"},{"line_number":241,"context_line":"        volume_client \u003d self.app.client_manager.volume"},{"line_number":242,"context_line":"        kwargs \u003d {}"},{"line_number":243,"context_line":"        remove_uuid \u003d \u0027\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a71b18c_a19d605b","line":240,"updated":"2016-12-08 01:54:03.000000000","message":"I think we need error handling like \"delete\" command do, you can see delete command for example","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"3eb669cf31d6b70f58af404e90c2bc8ad6fce316","unresolved":false,"context_lines":[{"line_number":57,"context_line":"                add_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":58,"context_line":"            except Exception as e:"},{"line_number":59,"context_line":"                result +\u003d 1"},{"line_number":60,"context_line":"                LOG.error(_(\"Failed to add volume with \""},{"line_number":61,"context_line":"                            \"name or ID \u0027%(volume)s\u0027:%(e)s\")"},{"line_number":62,"context_line":"                          % {\u0027volume\u0027: volume, \u0027e\u0027: e})"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_f9f7fd89","line":60,"range":{"start_line":60,"start_character":39,"end_line":60,"end_character":42},"updated":"2016-12-08 11:27:42.000000000","message":"I think \"find\" is make sense for me","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"3eb669cf31d6b70f58af404e90c2bc8ad6fce316","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        if result \u003e 0:"},{"line_number":65,"context_line":"            total \u003d len(parsed_args.volumes)"},{"line_number":66,"context_line":"            msg \u003d (_(\"%(result)s of %(total)s volumes failed \""},{"line_number":67,"context_line":"                   \"to add.\") % {\u0027result\u0027: result, \u0027total\u0027: total})"},{"line_number":68,"context_line":"            raise exceptions.CommandError(msg)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        if add_uuid:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_594631c0","line":67,"range":{"start_line":67,"start_character":23,"end_line":67,"end_character":26},"updated":"2016-12-08 11:27:42.000000000","message":"find","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"3eb669cf31d6b70f58af404e90c2bc8ad6fce316","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            total \u003d len(parsed_args.volumes)"},{"line_number":66,"context_line":"            msg \u003d (_(\"%(result)s of %(total)s volumes failed \""},{"line_number":67,"context_line":"                   \"to add.\") % {\u0027result\u0027: result, \u0027total\u0027: total})"},{"line_number":68,"context_line":"            raise exceptions.CommandError(msg)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        if add_uuid:"},{"line_number":71,"context_line":"            add_uuid \u003d add_uuid.rstrip(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_d9a3214e","line":68,"range":{"start_line":68,"start_character":12,"end_line":68,"end_character":46},"updated":"2016-12-08 11:27:42.000000000","message":"You should not raise exceptions here since we should ignore the not found volume and continue to add the found volumes, we can not break at here.\nYou can just use LOG.error to show the error message to users here","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"57bc123d064d4795b122c314da52592175f4f916","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            total \u003d len(parsed_args.volumes)"},{"line_number":66,"context_line":"            msg \u003d (_(\"%(result)s of %(total)s volumes failed \""},{"line_number":67,"context_line":"                   \"to add.\") % {\u0027result\u0027: result, \u0027total\u0027: total})"},{"line_number":68,"context_line":"            raise exceptions.CommandError(msg)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        if add_uuid:"},{"line_number":71,"context_line":"            add_uuid \u003d add_uuid.rstrip(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_47aac771","line":68,"range":{"start_line":68,"start_character":12,"end_line":68,"end_character":46},"in_reply_to":"3a71b18c_d9a3214e","updated":"2016-12-08 13:07:23.000000000","message":"++","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"3eb669cf31d6b70f58af404e90c2bc8ad6fce316","unresolved":false,"context_lines":[{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    def take_action(self, parsed_args):"},{"line_number":253,"context_line":"        volume_client \u003d self.app.client_manager.volume"},{"line_number":254,"context_line":"        result \u003d 0"},{"line_number":255,"context_line":"        remove_uuid \u003d \u0027\u0027"},{"line_number":256,"context_line":"        for volume in parsed_args.volumes:"},{"line_number":257,"context_line":"            try:"},{"line_number":258,"context_line":"                volume_id \u003d utils.find_resource("},{"line_number":259,"context_line":"                    volume_client.volumes, volume).id"},{"line_number":260,"context_line":"                remove_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":261,"context_line":"            except Exception as e:"},{"line_number":262,"context_line":"                result +\u003d 1"},{"line_number":263,"context_line":"                LOG.error(_(\"Failed to remove volume with \""},{"line_number":264,"context_line":"                            \"name or ID \u0027%(volume)s\u0027:%(e)s\")"},{"line_number":265,"context_line":"                          % {\u0027volume\u0027: volume, \u0027e\u0027: e})"},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"        if result \u003e 0:"},{"line_number":268,"context_line":"            total \u003d len(parsed_args.volumes)"},{"line_number":269,"context_line":"            msg \u003d (_(\"%(result)s of %(total)s volumes failed \""},{"line_number":270,"context_line":"                   \"to remove.\") % {\u0027result\u0027: result, \u0027total\u0027: total})"},{"line_number":271,"context_line":"            raise exceptions.CommandError(msg)"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"        if remove_uuid:"},{"line_number":274,"context_line":"            remove_uuid \u003d remove_uuid.rstrip(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_79176d54","line":271,"range":{"start_line":254,"start_character":0,"end_line":271,"end_character":46},"updated":"2016-12-08 11:27:42.000000000","message":"This section is the same as that in add command, you can write this as a new function \"_find_volumes()\" and you can use it in both add and remove commands.","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"57bc123d064d4795b122c314da52592175f4f916","unresolved":false,"context_lines":[{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    def take_action(self, parsed_args):"},{"line_number":253,"context_line":"        volume_client \u003d self.app.client_manager.volume"},{"line_number":254,"context_line":"        result \u003d 0"},{"line_number":255,"context_line":"        remove_uuid \u003d \u0027\u0027"},{"line_number":256,"context_line":"        for volume in parsed_args.volumes:"},{"line_number":257,"context_line":"            try:"},{"line_number":258,"context_line":"                volume_id \u003d utils.find_resource("},{"line_number":259,"context_line":"                    volume_client.volumes, volume).id"},{"line_number":260,"context_line":"                remove_uuid +\u003d volume_id + \u0027,\u0027"},{"line_number":261,"context_line":"            except Exception as e:"},{"line_number":262,"context_line":"                result +\u003d 1"},{"line_number":263,"context_line":"                LOG.error(_(\"Failed to remove volume with \""},{"line_number":264,"context_line":"                            \"name or ID \u0027%(volume)s\u0027:%(e)s\")"},{"line_number":265,"context_line":"                          % {\u0027volume\u0027: volume, \u0027e\u0027: e})"},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"        if result \u003e 0:"},{"line_number":268,"context_line":"            total \u003d len(parsed_args.volumes)"},{"line_number":269,"context_line":"            msg \u003d (_(\"%(result)s of %(total)s volumes failed \""},{"line_number":270,"context_line":"                   \"to remove.\") % {\u0027result\u0027: result, \u0027total\u0027: total})"},{"line_number":271,"context_line":"            raise exceptions.CommandError(msg)"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"        if remove_uuid:"},{"line_number":274,"context_line":"            remove_uuid \u003d remove_uuid.rstrip(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_c79df75a","line":271,"range":{"start_line":254,"start_character":0,"end_line":271,"end_character":46},"in_reply_to":"3a71b18c_79176d54","updated":"2016-12-08 13:07:23.000000000","message":"++","commit_id":"4c286d50813e4381de2062e2079f4ff785bc87a4"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"32e83d6d61bd15d5ace86a955d985cb0e7d36096","unresolved":false,"context_lines":[{"line_number":27,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"def _find_volumes(parsed_args, volume_client):"},{"line_number":31,"context_line":"    result \u003d 0"},{"line_number":32,"context_line":"    uuid \u003d \u0027\u0027"},{"line_number":33,"context_line":"    for volume in parsed_args.volumes:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_230b86d7","line":30,"range":{"start_line":30,"start_character":18,"end_line":30,"end_character":29},"updated":"2016-12-12 12:29:07.000000000","message":"this function just need \"parsed_args.volumes\" and need not all of \"parsed_args\"","commit_id":"5e998443839434e2b41d57c314b7cbabe699fce4"}],"releasenotes/notes/bug-1613964-b3e8d9d828a3822c.yaml":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b856cc500b35ece3df7c183c8f0f5e00d0a2f1f5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add ``consistency group add volume``and ``consistency remove volume`` commands"},{"line_number":4,"context_line":"    in volume v2."},{"line_number":5,"context_line":"    [Bug `1642238 \u003chttps://bugs.launchpad.net/python-openstackclient/+bug/1642238\u003e`_]"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3a71b18c_3f30849e","line":3,"range":{"start_line":3,"start_character":46,"end_line":3,"end_character":57},"updated":"2016-12-08 05:44:44.000000000","message":"consistency group*","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"f1706510d9befd8bb5e5d696992967f973378b9e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add ``consistency group add volume``and ``consistency remove volume`` commands"},{"line_number":4,"context_line":"    in volume v2."},{"line_number":5,"context_line":"    [Bug `1642238 \u003chttps://bugs.launchpad.net/python-openstackclient/+bug/1642238\u003e`_]"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3a71b18c_61ba68c2","line":3,"range":{"start_line":3,"start_character":39,"end_line":3,"end_character":40},"updated":"2016-12-08 01:54:03.000000000","message":"missing one space here","commit_id":"5eaae642280aad00d5c483d2eb0d4d4412ba26b2"}],"setup.cfg":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"32e83d6d61bd15d5ace86a955d985cb0e7d36096","unresolved":false,"context_lines":[{"line_number":520,"context_line":"    consistency_group_delete \u003d openstackclient.volume.v2.consistency_group:DeleteConsistencyGroup"},{"line_number":521,"context_line":"    consistency_group_list \u003d openstackclient.volume.v2.consistency_group:ListConsistencyGroup"},{"line_number":522,"context_line":"    consistency_group_remove_volume \u003d openstackclient.volume.v2.consistency_group:RemoveVolumeFromConsistencyGroup"},{"line_number":523,"context_line":"    consistency_group_set \u003d openstackclient.volume.v2.consistency_group:SetConsistencyGroup    "},{"line_number":524,"context_line":"    consistency_group_show \u003d openstackclient.volume.v2.consistency_group:ShowConsistencyGroup"},{"line_number":525,"context_line":""},{"line_number":526,"context_line":"    consistency_group_snapshot_create \u003d openstackclient.volume.v2.consistency_group_snapshot:CreateConsistencyGroupSnapshot"}],"source_content_type":"text/x-ttcn-cfg","patch_set":3,"id":"3a71b18c_a0e5cc09","line":523,"range":{"start_line":523,"start_character":91,"end_line":523,"end_character":95},"updated":"2016-12-12 12:29:07.000000000","message":"Remove these extra spaces","commit_id":"5e998443839434e2b41d57c314b7cbabe699fce4"}]}
