)]}'
{"cinderclient/shell_utils.py":[{"author":{"_account_id":23602,"name":"Michael Dovgal","email":"dovgalmichael@gmail.com","username":"mdovgal"},"change_message_id":"046d3f81cef6871dea04bb17d81c1e6b278ef5b9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_bec70211","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":41},"updated":"2016-11-24 16:14:30.000000000","message":"-1 You should remove this comment unless you actually work for the foundation.\nOr at least change the year.","commit_id":"dceb2f257507af7bdc702c1c0d8109622de7f12f"}],"cinderclient/v2/cgsnapshots.py":[{"author":{"_account_id":23602,"name":"Michael Dovgal","email":"dovgalmichael@gmail.com","username":"mdovgal"},"change_message_id":"046d3f81cef6871dea04bb17d81c1e6b278ef5b9","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":"        query_string \u003d utils.build_query_param(search_opts)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        detail \u003d \"\""},{"line_number":80,"context_line":"        if detailed:"},{"line_number":81,"context_line":"            detail \u003d \"/detail\""},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        return self._list(\"/cgsnapshots%s%s\" % (detail, query_string),"},{"line_number":84,"context_line":"                          \"cgsnapshots\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_9930a0ea","line":81,"range":{"start_line":79,"start_character":0,"end_line":81,"end_character":30},"updated":"2016-11-24 16:14:30.000000000","message":"nit: I think, there are two similar code parts here and here (maybe in other files either): https://review.openstack.org/#/c/400963/4/cinderclient/v2/availability_zones.py , line 37\n\nMaybe we should use only one way to make the same things?\nBut i understand, that such a thing is rather for a future code refactor","commit_id":"dceb2f257507af7bdc702c1c0d8109622de7f12f"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"cfe9d69716cd73591312a5add79cebec09d10813","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":"        query_string \u003d utils.build_query_param(search_opts)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        detail \u003d \"\""},{"line_number":80,"context_line":"        if detailed:"},{"line_number":81,"context_line":"            detail \u003d \"/detail\""},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        return self._list(\"/cgsnapshots%s%s\" % (detail, query_string),"},{"line_number":84,"context_line":"                          \"cgsnapshots\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_04316e05","line":81,"range":{"start_line":79,"start_character":0,"end_line":81,"end_character":30},"in_reply_to":"5a74a57a_9930a0ea","updated":"2016-11-25 10:34:34.000000000","message":"Thanks for the comment. I\u0027ll fix it in an other patch","commit_id":"dceb2f257507af7bdc702c1c0d8109622de7f12f"}],"cinderclient/v2/services.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"a7443e4778a26b69e84e35185e0794d2caea9d13","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        body \u003d {\"host\": host, \"backend_id\": backend_id}"},{"line_number":81,"context_line":"        return self._update(\"/os-services/failover_host\", body)"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    @api_versions.wraps(\"3.0\")"},{"line_number":84,"context_line":"    def server_api_version(self, url_append\u003d\"\"):"},{"line_number":85,"context_line":"        \"\"\"Returns the API Version supported by the server."},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_08865713","line":83,"updated":"2016-12-07 13:52:30.000000000","message":"I think new methods should go in /v3/services.py","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f8ace897003599bdd82d2dd4e360b16badf7e35f","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        body \u003d {\"host\": host, \"backend_id\": backend_id}"},{"line_number":81,"context_line":"        return self._update(\"/os-services/failover_host\", body)"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    @api_versions.wraps(\"3.0\")"},{"line_number":84,"context_line":"    def server_api_version(self, url_append\u003d\"\"):"},{"line_number":85,"context_line":"        \"\"\"Returns the API Version supported by the server."},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_fbdba04d","line":83,"in_reply_to":"3a71b18c_08865713","updated":"2016-12-07 14:42:45.000000000","message":"Done","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"}],"cinderclient/v2/shell.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"cf1306caa37d20d3de70339e0ac498281a071a44","unresolved":false,"context_lines":[{"line_number":928,"context_line":"def do_type_key(cs, args):"},{"line_number":929,"context_line":"    \"\"\"Sets or unsets extra_spec for a volume type.\"\"\""},{"line_number":930,"context_line":"    vtype \u003d shell_utils.find_volume_type(cs, args.vtype)"},{"line_number":931,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":932,"context_line":""},{"line_number":933,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":934,"context_line":"        vtype.set_keys(keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_cff78089","line":931,"updated":"2016-12-14 22:50:43.000000000","message":"This code isn\u0027t right, because translate_volume_keys doesn\u0027t return the collection, it modifies it in place.\n\nThis error is repeated a few times in here, please read the pylint job failure.  E1111 errors.","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"2a552b52df923cdd67d41808cd6632d142803138","unresolved":false,"context_lines":[{"line_number":928,"context_line":"def do_type_key(cs, args):"},{"line_number":929,"context_line":"    \"\"\"Sets or unsets extra_spec for a volume type.\"\"\""},{"line_number":930,"context_line":"    vtype \u003d shell_utils.find_volume_type(cs, args.vtype)"},{"line_number":931,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":932,"context_line":""},{"line_number":933,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":934,"context_line":"        vtype.set_keys(keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_5f53fae1","line":931,"in_reply_to":"1a6eadb0_cff78089","updated":"2016-12-15 14:37:37.000000000","message":"Done","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"97083548cfb9202de057acf3f6f5392b97faabc9","unresolved":false,"context_lines":[{"line_number":1859,"context_line":"    \"\"\"Creates a qos specs.\"\"\""},{"line_number":1860,"context_line":"    keypair \u003d None"},{"line_number":1861,"context_line":"    if args.metadata is not None:"},{"line_number":1862,"context_line":"        keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":1863,"context_line":"    qos_specs \u003d cs.qos_specs.create(args.name, keypair)"},{"line_number":1864,"context_line":"    shell_utils.print_qos_specs(qos_specs)"},{"line_number":1865,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_cf8860c8","line":1862,"updated":"2016-12-14 22:53:44.000000000","message":"E1111","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"2a552b52df923cdd67d41808cd6632d142803138","unresolved":false,"context_lines":[{"line_number":1859,"context_line":"    \"\"\"Creates a qos specs.\"\"\""},{"line_number":1860,"context_line":"    keypair \u003d None"},{"line_number":1861,"context_line":"    if args.metadata is not None:"},{"line_number":1862,"context_line":"        keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":1863,"context_line":"    qos_specs \u003d cs.qos_specs.create(args.name, keypair)"},{"line_number":1864,"context_line":"    shell_utils.print_qos_specs(qos_specs)"},{"line_number":1865,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_7fec36f3","line":1862,"in_reply_to":"1a6eadb0_cf8860c8","updated":"2016-12-15 14:37:37.000000000","message":"Done","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"97083548cfb9202de057acf3f6f5392b97faabc9","unresolved":false,"context_lines":[{"line_number":1942,"context_line":"@utils.service_type(\u0027volumev2\u0027)"},{"line_number":1943,"context_line":"def do_qos_key(cs, args):"},{"line_number":1944,"context_line":"    \"\"\"Sets or unsets specifications for a qos spec.\"\"\""},{"line_number":1945,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":1946,"context_line":""},{"line_number":1947,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":1948,"context_line":"        cs.qos_specs.set_keys(args.qos_specs, keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_2fbe3465","line":1945,"updated":"2016-12-14 22:53:44.000000000","message":"E1111","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"2a552b52df923cdd67d41808cd6632d142803138","unresolved":false,"context_lines":[{"line_number":1942,"context_line":"@utils.service_type(\u0027volumev2\u0027)"},{"line_number":1943,"context_line":"def do_qos_key(cs, args):"},{"line_number":1944,"context_line":"    \"\"\"Sets or unsets specifications for a qos spec.\"\"\""},{"line_number":1945,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":1946,"context_line":""},{"line_number":1947,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":1948,"context_line":"        cs.qos_specs.set_keys(args.qos_specs, keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_3f7b9e29","line":1945,"in_reply_to":"1a6eadb0_2fbe3465","updated":"2016-12-15 14:37:37.000000000","message":"Done","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"}],"cinderclient/v2/volume_backups.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"a7443e4778a26b69e84e35185e0794d2caea9d13","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        resp, body \u003d self.api.client.post(\"/backups/import_record\", body\u003dbody)"},{"line_number":134,"context_line":"        return common_base.DictWithMeta(body[\u0027backup\u0027], resp)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    @api_versions.wraps(\"3.9\")"},{"line_number":137,"context_line":"    def update(self, backup, **kwargs):"},{"line_number":138,"context_line":"        \"\"\"Update the name or description for a backup."},{"line_number":139,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_e8e67baf","line":136,"updated":"2016-12-07 13:52:30.000000000","message":"This should go in v3/volume_backups.py","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f8ace897003599bdd82d2dd4e360b16badf7e35f","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        resp, body \u003d self.api.client.post(\"/backups/import_record\", body\u003dbody)"},{"line_number":134,"context_line":"        return common_base.DictWithMeta(body[\u0027backup\u0027], resp)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    @api_versions.wraps(\"3.9\")"},{"line_number":137,"context_line":"    def update(self, backup, **kwargs):"},{"line_number":138,"context_line":"        \"\"\"Update the name or description for a backup."},{"line_number":139,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_69050d13","line":136,"in_reply_to":"3a71b18c_e8e67baf","updated":"2016-12-07 14:42:45.000000000","message":"Done","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"}],"cinderclient/v2/volumes.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"a7443e4778a26b69e84e35185e0794d2caea9d13","unresolved":false,"context_lines":[{"line_number":423,"context_line":"        return self._create(\"/volumes/%s/metadata\" % base.getid(volume),"},{"line_number":424,"context_line":"                            body, \"metadata\")"},{"line_number":425,"context_line":""},{"line_number":426,"context_line":"    # @api_versions.wraps(\"2.0\")"},{"line_number":427,"context_line":"    def delete_metadata(self, volume, keys):"},{"line_number":428,"context_line":"        \"\"\"Delete specified keys from volumes metadata."},{"line_number":429,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_0871f7e0","line":426,"updated":"2016-12-07 13:52:30.000000000","message":"This is commented out. it can be deleted.","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f8ace897003599bdd82d2dd4e360b16badf7e35f","unresolved":false,"context_lines":[{"line_number":423,"context_line":"        return self._create(\"/volumes/%s/metadata\" % base.getid(volume),"},{"line_number":424,"context_line":"                            body, \"metadata\")"},{"line_number":425,"context_line":""},{"line_number":426,"context_line":"    # @api_versions.wraps(\"2.0\")"},{"line_number":427,"context_line":"    def delete_metadata(self, volume, keys):"},{"line_number":428,"context_line":"        \"\"\"Delete specified keys from volumes metadata."},{"line_number":429,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_29af952c","line":426,"in_reply_to":"3a71b18c_0871f7e0","updated":"2016-12-07 14:42:45.000000000","message":"Done","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"}],"cinderclient/v3/shell.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"a7443e4778a26b69e84e35185e0794d2caea9d13","unresolved":false,"context_lines":[{"line_number":885,"context_line":"           default\u003dFalse,"},{"line_number":886,"context_line":"           help\u003d\u0027Enables or disables display of \u0027"},{"line_number":887,"context_line":"                \u0027Replication info for c-vol services. Default\u003dFalse.\u0027)"},{"line_number":888,"context_line":"@utils.service_type(\u0027volumev2\u0027)"},{"line_number":889,"context_line":"def do_service_list(cs, args):"},{"line_number":890,"context_line":"    \"\"\"Lists all services. Filter by host and service binary.\"\"\""},{"line_number":891,"context_line":"    replication \u003d strutils.bool_from_string(args.withreplication,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_0339d841","line":888,"updated":"2016-12-07 13:52:30.000000000","message":"this should be volumev3","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f8ace897003599bdd82d2dd4e360b16badf7e35f","unresolved":false,"context_lines":[{"line_number":885,"context_line":"           default\u003dFalse,"},{"line_number":886,"context_line":"           help\u003d\u0027Enables or disables display of \u0027"},{"line_number":887,"context_line":"                \u0027Replication info for c-vol services. Default\u003dFalse.\u0027)"},{"line_number":888,"context_line":"@utils.service_type(\u0027volumev2\u0027)"},{"line_number":889,"context_line":"def do_service_list(cs, args):"},{"line_number":890,"context_line":"    \"\"\"Lists all services. Filter by host and service binary.\"\"\""},{"line_number":891,"context_line":"    replication \u003d strutils.bool_from_string(args.withreplication,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a71b18c_c998e11e","line":888,"in_reply_to":"3a71b18c_0339d841","updated":"2016-12-07 14:42:45.000000000","message":"Done","commit_id":"623beba0ad428e05d0f953f6c05dce23d4d05b75"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"97083548cfb9202de057acf3f6f5392b97faabc9","unresolved":false,"context_lines":[{"line_number":346,"context_line":"def do_group_type_key(cs, args):"},{"line_number":347,"context_line":"    \"\"\"Sets or unsets group_spec for a group type.\"\"\""},{"line_number":348,"context_line":"    gtype \u003d shell_utils.find_group_type(cs, args.gtype)"},{"line_number":349,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":352,"context_line":"        gtype.set_keys(keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_efe35ca2","line":349,"updated":"2016-12-14 22:53:44.000000000","message":"E1111","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"2a552b52df923cdd67d41808cd6632d142803138","unresolved":false,"context_lines":[{"line_number":346,"context_line":"def do_group_type_key(cs, args):"},{"line_number":347,"context_line":"    \"\"\"Sets or unsets group_spec for a group type.\"\"\""},{"line_number":348,"context_line":"    gtype \u003d shell_utils.find_group_type(cs, args.gtype)"},{"line_number":349,"context_line":"    keypair \u003d shell_utils.translate_volume_keys(args)"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    if args.action \u003d\u003d \u0027set\u0027:"},{"line_number":352,"context_line":"        gtype.set_keys(keypair)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a6eadb0_5f9dba64","line":349,"in_reply_to":"1a6eadb0_efe35ca2","updated":"2016-12-15 14:37:37.000000000","message":"Done","commit_id":"edb65f498c1572c39bb19ccc230c061c71779974"}]}
