)]}'
{"trove_tempest_plugin/services/database/json/base_client.py":[{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"963488135b6f49574a5ce8c59efaeb109b6ef6d6","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    def show_resource(self, uri, expected_status_code\u003d200, **fields):"},{"line_number":25,"context_line":"        if fields:"},{"line_number":26,"context_line":"            uri +\u003d \u0027?\u0027 + urllib.urlencode(fields, doseq\u003d1)"},{"line_number":27,"context_line":"        resp, body \u003d self.get(uri)"},{"line_number":28,"context_line":"        self.expected_success(expected_status_code, resp.status)"},{"line_number":29,"context_line":"        body \u003d json.loads(body)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f7c97a3_50415aa6","line":26,"range":{"start_line":26,"start_character":50,"end_line":26,"end_character":57},"updated":"2018-07-31 09:57:50.000000000","message":"This and the other urlencode are both called with \"doseq\u003d1\", this change seems reasonable, but still changes the original behavior, so this deserves a comment at least.","commit_id":"d1013edcad76e2d8a69877653d4a00e46331c742"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"38b26ccc32951caceda229cff54d0142d0d52546","unresolved":false,"context_lines":[{"line_number":31,"context_line":"            # the sequence under the same key."},{"line_number":32,"context_line":"            #"},{"line_number":33,"context_line":"            # e.g. {\u0027foo\u0027: \u0027bar\u0027, \u0027baz\u0027: [\u0027test1\u0027, \u0027test2\u0027]}"},{"line_number":34,"context_line":"            #      \u003d\u003e foo\u003dbar\u0026baz\u003dtest1\u0026baz\u003dtest2"},{"line_number":35,"context_line":"            uri +\u003d \u0027?\u0027 + urllib.urlencode(fields, doseq\u003dTrue)"},{"line_number":36,"context_line":"        resp, body \u003d self.get(uri)"},{"line_number":37,"context_line":"        self.expected_success(expected_status_code, resp.status)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f7c97a3_f60adecd","line":34,"updated":"2018-07-31 11:22:51.000000000","message":"If you find the comment to be too long I can reduce it to something shorter, e.g. \n\n Handle sequence values by setting doseq option to True.\n\nI also updated the commit message with note about doseq option.","commit_id":"0dea14df865249d96b79f139392e119f3dd9a61d"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"2b2e9718932df5e338165b1c6e1f7afa3d7ed6a4","unresolved":false,"context_lines":[{"line_number":31,"context_line":"            # the sequence under the same key."},{"line_number":32,"context_line":"            #"},{"line_number":33,"context_line":"            # e.g. {\u0027foo\u0027: \u0027bar\u0027, \u0027baz\u0027: [\u0027test1\u0027, \u0027test2\u0027]}"},{"line_number":34,"context_line":"            #      \u003d\u003e foo\u003dbar\u0026baz\u003dtest1\u0026baz\u003dtest2"},{"line_number":35,"context_line":"            uri +\u003d \u0027?\u0027 + urllib.urlencode(fields, doseq\u003dTrue)"},{"line_number":36,"context_line":"        resp, body \u003d self.get(uri)"},{"line_number":37,"context_line":"        self.expected_success(expected_status_code, resp.status)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5f7c97a3_41842a5d","line":34,"in_reply_to":"5f7c97a3_f60adecd","updated":"2018-07-31 12:06:30.000000000","message":"Thanks, detailed comments are always better.","commit_id":"0dea14df865249d96b79f139392e119f3dd9a61d"}],"trove_tempest_plugin/services/database/json/flavors_client.py":[{"author":{"_account_id":28646,"name":"Dariusz Krol","email":"d.krol@samsung.com","username":"dkrol"},"change_message_id":"b3721e875b6390862a24add55e25187c4381f45e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class DatabaseFlavorsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def list_db_flavors(self, **params):"},{"line_number":22,"context_line":"        uri \u003d \u0027/flavors\u0027"},{"line_number":23,"context_line":"        return self.list_resources(uri, *params)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def show_db_flavor(self, db_flavor_id):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_2010e8f3","line":22,"range":{"start_line":22,"start_character":8,"end_line":22,"end_character":24},"updated":"2018-07-20 07:36:39.000000000","message":"Could we extract it at the class level to avoid duplication ?\nThis comment refers to *Client classes, which inherit from BaseClient.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"24cc1f2ac0cdb0b947f2a564789392712c12f22b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class DatabaseFlavorsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def list_db_flavors(self, **params):"},{"line_number":22,"context_line":"        uri \u003d \u0027/flavors\u0027"},{"line_number":23,"context_line":"        return self.list_resources(uri, *params)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def show_db_flavor(self, db_flavor_id):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_89312d0d","line":22,"range":{"start_line":22,"start_character":8,"end_line":22,"end_character":24},"in_reply_to":"5f7c97a3_2010e8f3","updated":"2018-07-30 02:02:22.000000000","message":"Agree. Would you update this?","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"adea94058c05acb86215f4b57b1066ed32a2029f","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class DatabaseFlavorsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def list_db_flavors(self, **params):"},{"line_number":22,"context_line":"        uri \u003d \u0027/flavors\u0027"},{"line_number":23,"context_line":"        return self.list_resources(uri, *params)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def show_db_flavor(self, db_flavor_id):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_fcd2d4ce","line":22,"range":{"start_line":22,"start_character":8,"end_line":22,"end_character":24},"in_reply_to":"5f7c97a3_89312d0d","updated":"2018-07-30 15:43:06.000000000","message":"Good idea. Done.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"}],"trove_tempest_plugin/services/database/json/limits_client.py":[{"author":{"_account_id":28646,"name":"Dariusz Krol","email":"d.krol@samsung.com","username":"dkrol"},"change_message_id":"b3721e875b6390862a24add55e25187c4381f45e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class DatabaseLimitsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def list_db_limits(self, **params):"},{"line_number":22,"context_line":"        \"\"\"List all limits.\"\"\""},{"line_number":23,"context_line":"        uri \u003d \u0027/limits\u0027"},{"line_number":24,"context_line":"        return self.list_resources(uri, *params)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_00c36c59","line":22,"range":{"start_line":22,"start_character":7,"end_line":22,"end_character":30},"updated":"2018-07-20 07:36:39.000000000","message":"Do we really need this comment ? We don\u0027t have it in FlavorClient. IMHO it looks unnecessary.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"24cc1f2ac0cdb0b947f2a564789392712c12f22b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"class DatabaseLimitsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def list_db_limits(self, **params):"},{"line_number":22,"context_line":"        \"\"\"List all limits.\"\"\""},{"line_number":23,"context_line":"        uri \u003d \u0027/limits\u0027"},{"line_number":24,"context_line":"        return self.list_resources(uri, *params)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_6915b14b","line":22,"range":{"start_line":22,"start_character":7,"end_line":22,"end_character":30},"in_reply_to":"5f7c97a3_00c36c59","updated":"2018-07-30 02:02:22.000000000","message":"This didn\u0027t change the origin line, so it should be fine. And it\u0027s better not to introduce non-relevant changes, even it\u0027s comment, if we want\u0027t change it, it\u0027s also better do it on purpose and write commit messages for it.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"}],"trove_tempest_plugin/services/database/json/versions_client.py":[{"author":{"_account_id":28646,"name":"Dariusz Krol","email":"d.krol@samsung.com","username":"dkrol"},"change_message_id":"bd9e5840f8dc24f478c953fb68e215d56cf782e6","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from trove_tempest_plugin.services.database.json import base_client"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class DatabaseVersionsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def __init__(self, auth_provider, service, region, **kwargs):"},{"line_number":22,"context_line":"        super(DatabaseVersionsClient, self).__init__("}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_4b950587","line":19,"range":{"start_line":19,"start_character":6,"end_line":19,"end_character":14},"updated":"2018-07-20 08:13:00.000000000","message":"This is a mistake as this client is related to Trove API version and not Database versions.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"963488135b6f49574a5ce8c59efaeb109b6ef6d6","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from trove_tempest_plugin.services.database.json import base_client"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class DatabaseVersionsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def __init__(self, auth_provider, service, region, **kwargs):"},{"line_number":22,"context_line":"        super(DatabaseVersionsClient, self).__init__("}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_90693227","line":19,"range":{"start_line":19,"start_character":6,"end_line":19,"end_character":14},"in_reply_to":"5f7c97a3_3ce60cb1","updated":"2018-07-31 09:57:50.000000000","message":"That\u0027s great, thanks.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":13157,"name":"Zhao Chao","email":"zhaochao1984@gmail.com","username":"zhaochao"},"change_message_id":"24cc1f2ac0cdb0b947f2a564789392712c12f22b","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from trove_tempest_plugin.services.database.json import base_client"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class DatabaseVersionsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def __init__(self, auth_provider, service, region, **kwargs):"},{"line_number":22,"context_line":"        super(DatabaseVersionsClient, self).__init__("}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_8ce93b1a","line":19,"range":{"start_line":19,"start_character":6,"end_line":19,"end_character":14},"in_reply_to":"5f7c97a3_4b950587","updated":"2018-07-30 02:02:22.000000000","message":"Yes, this could also be changed.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"adea94058c05acb86215f4b57b1066ed32a2029f","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from trove_tempest_plugin.services.database.json import base_client"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class DatabaseVersionsClient(base_client.BaseClient):"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    def __init__(self, auth_provider, service, region, **kwargs):"},{"line_number":22,"context_line":"        super(DatabaseVersionsClient, self).__init__("}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_3ce60cb1","line":19,"range":{"start_line":19,"start_character":6,"end_line":19,"end_character":14},"in_reply_to":"5f7c97a3_8ce93b1a","updated":"2018-07-30 15:43:06.000000000","message":"Done. Also, removed prefixes from other clients to align with the naming standards from the rest of the community.","commit_id":"df294819df3aab7804e743538c955989a4a052e2"}]}
