)]}'
{"cinder/volume/drivers/tengling/rest_client.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"import ast\r"},{"line_number":2,"context_line":"import json\r"},{"line_number":3,"context_line":"import re\r"},{"line_number":4,"context_line":"import six\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_57b0c98b","line":1,"updated":"2019-02-25 04:03:39.000000000","message":"apache license header[1] required in each file\n[1] https://github.com/openstack/cinder/blob/master/cinder/volume/drivers/lvm.py#L1-L11","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":12,"context_line":"\r"},{"line_number":13,"context_line":"from cinder import exception\r"},{"line_number":14,"context_line":"from cinder.i18n import _, _LE, _LI, _LW\r"},{"line_number":15,"context_line":"from cinder import utils\r"},{"line_number":16,"context_line":"from cinder.volume.drivers.tengling import constants\r"},{"line_number":17,"context_line":"\r"},{"line_number":18,"context_line":"LOG \u003d logging.getLogger(__name__)\r"},{"line_number":19,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_f7321d0f","line":16,"range":{"start_line":15,"start_character":0,"end_line":16,"end_character":52},"updated":"2019-02-25 04:03:39.000000000","message":"imports should be in alphabetical order","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            if data:\r"},{"line_number":63,"context_line":"                data \u003d json.dumps(data)\r"},{"line_number":64,"context_line":"            \r"},{"line_number":65,"context_line":"            if url \u003d\u003d None:\r"},{"line_number":66,"context_line":"                url \u003d self.url + \"gate/rpc.php\"\r"},{"line_number":67,"context_line":"\r"},{"line_number":68,"context_line":"            req \u003d urllib.request.Request(url, data, self.headers)\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_f74d3d99","line":65,"range":{"start_line":65,"start_character":15,"end_line":65,"end_character":26},"updated":"2019-02-25 04:03:39.000000000","message":"if url is None\nor\nif not url","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":94,"context_line":"\r"},{"line_number":95,"context_line":"        for item_url in self.san_address:\r"},{"line_number":96,"context_line":"            url \u003d item_url + \"gate/rpc.php\"\r"},{"line_number":97,"context_line":"            data \u003d {\"service\":\"Session\",\r"},{"line_number":98,"context_line":"                \"method\":\"login\",\r"},{"line_number":99,"context_line":"                \"params\":{\"username\":self.san_user,\r"},{"line_number":100,"context_line":"                    \"password\":self.san_password,\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_b76ed5fd","line":97,"range":{"start_line":97,"start_character":29,"end_line":97,"end_character":30},"updated":"2019-02-25 04:03:39.000000000","message":"space required after colon in every {key: value} definition","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"8a3ffa301e4459d7178c399c62da7cf51f6b39cc","unresolved":false,"context_lines":[{"line_number":98,"context_line":"                \"method\":\"login\",\r"},{"line_number":99,"context_line":"                \"params\":{\"username\":self.san_user,\r"},{"line_number":100,"context_line":"                    \"password\":self.san_password,\r"},{"line_number":101,"context_line":"                    \"randcode\":\"D9C0A\"}}\r"},{"line_number":102,"context_line":"            self.init_http_head()\r"},{"line_number":103,"context_line":"            result \u003d self.do_call(url, data, calltimeout\u003dconstants.LOGIN_SOCKET_TIMEOUT)\r"},{"line_number":104,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"dfbec78f_7e51950e","line":101,"range":{"start_line":101,"start_character":20,"end_line":101,"end_character":38},"updated":"2019-05-02 21:29:09.000000000","message":"What is this?\n\nProbably needs a comment explaining what is happening here.","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":100,"context_line":"                    \"password\":self.san_password,\r"},{"line_number":101,"context_line":"                    \"randcode\":\"D9C0A\"}}\r"},{"line_number":102,"context_line":"            self.init_http_head()\r"},{"line_number":103,"context_line":"            result \u003d self.do_call(url, data, calltimeout\u003dconstants.LOGIN_SOCKET_TIMEOUT)\r"},{"line_number":104,"context_line":"\r"},{"line_number":105,"context_line":"            if (result[\u0027error\u0027]):\r"},{"line_number":106,"context_line":"                LOG.error(\"Login error. Reason: %(reason)s.\", {\"reason\": result})\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_9744f175","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":88},"updated":"2019-02-25 04:03:39.000000000","message":"wrap lines in \u003c80 characters","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":146,"context_line":"                      \u0027New URL: %(new_url)s\\n.\u0027,\r"},{"line_number":147,"context_line":"                      {\u0027new_url\u0027: self.url})\r"},{"line_number":148,"context_line":"            result \u003d self.do_call(url, data, method)\r"},{"line_number":149,"context_line":"            \r"},{"line_number":150,"context_line":"        return result\r"},{"line_number":151,"context_line":"\r"},{"line_number":152,"context_line":"    def logout(self):\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_17aa4118","line":149,"range":{"start_line":149,"start_character":0,"end_line":149,"end_character":12},"updated":"2019-02-25 04:03:39.000000000","message":"remove all spaces in blank lines","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"},{"author":{"_account_id":29965,"name":"wuweijie","email":"wuweijie@bjtengling.com","username":"wuweijie"},"change_message_id":"92ce9e24b2378980a099862954f22e8ff3f9895c","unresolved":false,"context_lines":[{"line_number":146,"context_line":"                      \u0027New URL: %(new_url)s\\n.\u0027,\r"},{"line_number":147,"context_line":"                      {\u0027new_url\u0027: self.url})\r"},{"line_number":148,"context_line":"            result \u003d self.do_call(url, data, method)\r"},{"line_number":149,"context_line":"            \r"},{"line_number":150,"context_line":"        return result\r"},{"line_number":151,"context_line":"\r"},{"line_number":152,"context_line":"    def logout(self):\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_cbf5dbcc","line":149,"range":{"start_line":149,"start_character":0,"end_line":149,"end_character":12},"in_reply_to":"9fdfeff1_17aa4118","updated":"2019-05-04 03:01:26.000000000","message":"Done","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"}],"cinder/volume/drivers/tengling/tengling_driver.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"de2d89d21f68207dd017f1ce5bc494ec869d55cf","unresolved":false,"context_lines":[{"line_number":31,"context_line":"CONF \u003d cfg.CONF\r"},{"line_number":32,"context_line":"CONF.register_opts(tengling_opts)\r"},{"line_number":33,"context_line":"\r"},{"line_number":34,"context_line":"\r"},{"line_number":35,"context_line":"class TenglingBaseDriver(driver.VolumeDriver):\r"},{"line_number":36,"context_line":"\r"},{"line_number":37,"context_line":"    def __init__(self, *args, **kwargs):\r"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_f71bfd7c","line":34,"updated":"2019-02-25 04:03:39.000000000","message":"use @interface.volumedriver definition here\nhttps://github.com/openstack/cinder/blob/master/cinder/volume/drivers/lvm.py#L77","commit_id":"f8f144ac960efc059d16393123d6e89e0f5aaf3c"}]}
