)]}'
{"trove/backup/models.py":[{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"ea564ada8c8c77451d5894b4dd792bfe7e4178de","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                                          deleted\u003dFalse)"},{"line_number":104,"context_line":"            except exception.InvalidModelError as ex:"},{"line_number":105,"context_line":"                LOG.exception(_(\"Unable to create Backup record for \""},{"line_number":106,"context_line":"                                \"instance %s:\"), instance_id)"},{"line_number":107,"context_line":"                raise exception.BackupCreationError(str(ex))"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"            backup_info \u003d {\u0027id\u0027: db_info.id,"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_79c33e39","line":106,"updated":"2014-06-25 13:32:48.000000000","message":"shouldn\u0027t the instance ID come after \u0027:\u0027 in the formatting... e.g.\n\n\"Unable to create Backup record for instance: %s\"\n\nvs what\u0027s in this patch: \n\ninstance %s:","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"7f56a9b0e5bf02811332f80721e19416629abdc5","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                                          deleted\u003dFalse)"},{"line_number":104,"context_line":"            except exception.InvalidModelError as ex:"},{"line_number":105,"context_line":"                LOG.exception(_(\"Unable to create Backup record for \""},{"line_number":106,"context_line":"                                \"instance %s:\"), instance_id)"},{"line_number":107,"context_line":"                raise exception.BackupCreationError(str(ex))"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"            backup_info \u003d {\u0027id\u0027: db_info.id,"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_c58c65da","line":106,"in_reply_to":"1ae5cdf2_79c33e39","updated":"2014-06-25 15:03:16.000000000","message":"good catch","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"ea564ada8c8c77451d5894b4dd792bfe7e4178de","unresolved":false,"context_lines":[{"line_number":282,"context_line":"        if self.location:"},{"line_number":283,"context_line":"            last_slash \u003d self.location.rfind(\"/\")"},{"line_number":284,"context_line":"            if last_slash \u003c 0:"},{"line_number":285,"context_line":"                raise ValueError(_(\"Bad location for backup object - %s\")"},{"line_number":286,"context_line":"                                 % self.location)"},{"line_number":287,"context_line":"            return self.location[last_slash + 1:]"},{"line_number":288,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_39d376d6","line":285,"updated":"2014-06-25 13:32:48.000000000","message":"maybe a nit, but seems we should be consistent in our formatting of program specific values.. e.g. here we use \"\u003cthe message\u003e - \u003cprogram value\u003e\"\n\nabove we used \"\u003cthe message\u003e: \u003cprogram value\u003e\"\n\nbelow we use \"\u003cthe message\u003e \u0027\u003cprogram value\u003e\u0027\"\n\nIMO there should be a standard format to use... e.g.\n* if an inline value use the \u0027\u003cvalue\u003e\u0027 format\n* if a value after message use \u0027: \u003cvalue\u003e\u0027 format","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"7f56a9b0e5bf02811332f80721e19416629abdc5","unresolved":false,"context_lines":[{"line_number":282,"context_line":"        if self.location:"},{"line_number":283,"context_line":"            last_slash \u003d self.location.rfind(\"/\")"},{"line_number":284,"context_line":"            if last_slash \u003c 0:"},{"line_number":285,"context_line":"                raise ValueError(_(\"Bad location for backup object - %s\")"},{"line_number":286,"context_line":"                                 % self.location)"},{"line_number":287,"context_line":"            return self.location[last_slash + 1:]"},{"line_number":288,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_0533ad13","line":285,"in_reply_to":"1ae5cdf2_39d376d6","updated":"2014-06-25 15:03:16.000000000","message":"ok adjusted","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"5823426691b6038820c46aa7279b878630c61872","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        def _delete_resources():"},{"line_number":239,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":240,"context_line":"            if backup.is_running:"},{"line_number":241,"context_line":"                msg \u003d _(\"Backup %s cannot be deleted because it is running.\")"},{"line_number":242,"context_line":"                raise exception.UnprocessableEntity(msg % backup_id)"},{"line_number":243,"context_line":"            cls.verify_swift_auth_token(context)"},{"line_number":244,"context_line":"            api.API(context).delete_backup(backup_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ae5cdf2_1db21de5","line":241,"updated":"2014-06-25 16:49:31.000000000","message":"based on the formatting done below for inline subs, shouldn\u0027t the sub have single quotes around it? e.g.\n\n\"Backup \u0027%s\u0027 cannot...\"","commit_id":"9aafdf946b6e6751e79b12fe86d777e5cd366979"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"b52bb038370179992ab333f492eebfa904dc97b4","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        def _delete_resources():"},{"line_number":239,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":240,"context_line":"            if backup.is_running:"},{"line_number":241,"context_line":"                msg \u003d _(\"Backup %s cannot be deleted because it is running.\")"},{"line_number":242,"context_line":"                raise exception.UnprocessableEntity(msg % backup_id)"},{"line_number":243,"context_line":"            cls.verify_swift_auth_token(context)"},{"line_number":244,"context_line":"            api.API(context).delete_backup(backup_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ae5cdf2_92a617aa","line":241,"in_reply_to":"1ae5cdf2_1db21de5","updated":"2014-06-25 18:29:48.000000000","message":"I\u0027m inclined to ditch the single quotes as I don\u0027t think they add any value. Thoughts?","commit_id":"9aafdf946b6e6751e79b12fe86d777e5cd366979"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"a9d3729900f90aa9b350619edc90a64839136e73","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        def _delete_resources():"},{"line_number":239,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":240,"context_line":"            if backup.is_running:"},{"line_number":241,"context_line":"                msg \u003d _(\"Backup %s cannot be deleted because it is running.\")"},{"line_number":242,"context_line":"                raise exception.UnprocessableEntity(msg % backup_id)"},{"line_number":243,"context_line":"            cls.verify_swift_auth_token(context)"},{"line_number":244,"context_line":"            api.API(context).delete_backup(backup_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ae5cdf2_c6b44538","line":241,"in_reply_to":"1ae5cdf2_92a617aa","updated":"2014-06-26 12:29:23.000000000","message":"I actually prefer single quotes around program values in output messages. To me it better signifies this is a \"runtime\" value and also provides clearer tokens around the actual value coming from the program... But that\u0027s just me.","commit_id":"9aafdf946b6e6751e79b12fe86d777e5cd366979"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"26b15b799841a1d6f8150a0f2f4e6d119be06cd6","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        def _delete_resources():"},{"line_number":239,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":240,"context_line":"            if backup.is_running:"},{"line_number":241,"context_line":"                msg \u003d _(\"Backup %s cannot be deleted because it is running.\")"},{"line_number":242,"context_line":"                raise exception.UnprocessableEntity(msg % backup_id)"},{"line_number":243,"context_line":"            cls.verify_swift_auth_token(context)"},{"line_number":244,"context_line":"            api.API(context).delete_backup(backup_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ae5cdf2_be7ad122","line":241,"in_reply_to":"1ae5cdf2_c6b44538","updated":"2014-06-26 18:15:02.000000000","message":"As agreed on the IRC discussion, I have taken out the single quotes in the next patchset","commit_id":"9aafdf946b6e6751e79b12fe86d777e5cd366979"}],"trove/backup/service.py":[{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"d5c14d0ecadbaebaa8b2166a0b7ec15c638f338d","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def show(self, req, tenant_id, id):"},{"line_number":48,"context_line":"        \"\"\"Return a single backup.\"\"\""},{"line_number":49,"context_line":"        LOG.debug(\"Showing a backup for tenant \u0027%s\u0027 ID: \u0027%s\u0027\""},{"line_number":50,"context_line":"                  % (tenant_id, id))"},{"line_number":51,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":52,"context_line":"        backup \u003d Backup.get_by_id(context, id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_ac546654","line":49,"updated":"2014-06-12 05:35:42.000000000","message":"whats the reason to make this `debug` instead of `info` for the entry into the show call? Is there more data that is already  in the log? Same above for the index call?","commit_id":"a1e115d441704c3c8ca3cc8c2c588cedc13bce63"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"35c6fbcbb0098b2fcaa2c2fbde462308b7835afd","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def show(self, req, tenant_id, id):"},{"line_number":48,"context_line":"        \"\"\"Return a single backup.\"\"\""},{"line_number":49,"context_line":"        LOG.debug(\"Showing a backup for tenant \u0027%s\u0027 ID: \u0027%s\u0027\""},{"line_number":50,"context_line":"                  % (tenant_id, id))"},{"line_number":51,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":52,"context_line":"        backup \u003d Backup.get_by_id(context, id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_c34fae69","line":49,"in_reply_to":"1ae5cdf2_ac546654","updated":"2014-06-12 17:53:58.000000000","message":"My thought process was that messages for create and delete were more material than show so I made them info and made show debug.","commit_id":"a1e115d441704c3c8ca3cc8c2c588cedc13bce63"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"0f8169d7498081ad940ee602934daa970e1eeea5","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def show(self, req, tenant_id, id):"},{"line_number":48,"context_line":"        \"\"\"Return a single backup.\"\"\""},{"line_number":49,"context_line":"        LOG.debug(\"Showing a backup for tenant \u0027%s\u0027 ID: \u0027%s\u0027\""},{"line_number":50,"context_line":"                  % (tenant_id, id))"},{"line_number":51,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":52,"context_line":"        backup \u003d Backup.get_by_id(context, id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_796383dd","line":49,"in_reply_to":"1ae5cdf2_c34fae69","updated":"2014-06-16 17:51:57.000000000","message":"hmm seems reasonable since there will be a ton of get calls over the post/delete/patch calls","commit_id":"a1e115d441704c3c8ca3cc8c2c588cedc13bce63"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"25eec513b7eeccfb8eee08c462186cb1ed062401","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        return wsgi.Result(views.BackupView(backup).data(), 202)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":67,"context_line":"        LOG.info(_(\u0027Delete Backup for tenant: %(tenant_id)s, \u0027"},{"line_number":68,"context_line":"                 \u0027ID: %(backup_id)s\u0027)"},{"line_number":69,"context_line":"                 % {\u0027tenant_id\u0027: tenant_id, \u0027backup_id\u0027: id})"},{"line_number":70,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_5674ba9b","line":67,"updated":"2014-06-09 19:38:45.000000000","message":"Wouldn\u0027t \u0027Deleting Backup ...\u0027 be more consistent with the other messages?","commit_id":"a1e115d441704c3c8ca3cc8c2c588cedc13bce63"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"35c6fbcbb0098b2fcaa2c2fbde462308b7835afd","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        return wsgi.Result(views.BackupView(backup).data(), 202)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":67,"context_line":"        LOG.info(_(\u0027Delete Backup for tenant: %(tenant_id)s, \u0027"},{"line_number":68,"context_line":"                 \u0027ID: %(backup_id)s\u0027)"},{"line_number":69,"context_line":"                 % {\u0027tenant_id\u0027: tenant_id, \u0027backup_id\u0027: id})"},{"line_number":70,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_83492662","line":67,"in_reply_to":"1ae5cdf2_5674ba9b","updated":"2014-06-12 17:53:58.000000000","message":"sure - I will change","commit_id":"a1e115d441704c3c8ca3cc8c2c588cedc13bce63"},{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"35f3d35251ecf5e222737fa3f766161b0905062f","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":68,"context_line":"        LOG.info(_(\u0027Deleting\u0027"},{"line_number":69,"context_line":"                   \u0027\u0027"},{"line_number":70,"context_line":"                   \u0027\u0027"},{"line_number":71,"context_line":"                   \u0027 Backup for tenant: %(tenant_id)s, \u0027"},{"line_number":72,"context_line":"                 \u0027ID: %(backup_id)s\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_61ef49b2","line":69,"updated":"2014-06-24 03:38:42.000000000","message":"what\u0027s up with these empty lines?","commit_id":"e9779e1a5efafceed31e725cbdc6c57fdf6ae938"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"115a61c70fe897dc03372cad74e51f8505c73f77","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":68,"context_line":"        LOG.info(_(\u0027Deleting\u0027"},{"line_number":69,"context_line":"                   \u0027\u0027"},{"line_number":70,"context_line":"                   \u0027\u0027"},{"line_number":71,"context_line":"                   \u0027 Backup for tenant: %(tenant_id)s, \u0027"},{"line_number":72,"context_line":"                 \u0027ID: %(backup_id)s\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_59ccc28a","line":69,"in_reply_to":"1ae5cdf2_61ef49b2","updated":"2014-06-25 13:23:31.000000000","message":"Good catch - thanks - didn\u0027t notice that - should be fixed in next patch","commit_id":"e9779e1a5efafceed31e725cbdc6c57fdf6ae938"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"ea564ada8c8c77451d5894b4dd792bfe7e4178de","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def show(self, req, tenant_id, id):"},{"line_number":49,"context_line":"        \"\"\"Return a single backup.\"\"\""},{"line_number":50,"context_line":"        LOG.debug(\"Showing a backup for tenant \u0027%s\u0027 ID: \u0027%s\u0027\""},{"line_number":51,"context_line":"                  % (tenant_id, id))"},{"line_number":52,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":53,"context_line":"        backup \u003d Backup.get_by_id(context, id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_b98ce6d8","line":50,"updated":"2014-06-25 13:32:48.000000000","message":"I think we should be consistent with case... here we use \u0027backup\u0027 (lower case b), but in many other places we use \u0027Backup\u0027 with CAPS B","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"7f56a9b0e5bf02811332f80721e19416629abdc5","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def show(self, req, tenant_id, id):"},{"line_number":49,"context_line":"        \"\"\"Return a single backup.\"\"\""},{"line_number":50,"context_line":"        LOG.debug(\"Showing a backup for tenant \u0027%s\u0027 ID: \u0027%s\u0027\""},{"line_number":51,"context_line":"                  % (tenant_id, id))"},{"line_number":52,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":53,"context_line":"        backup \u003d Backup.get_by_id(context, id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_e516c157","line":50,"in_reply_to":"1ae5cdf2_b98ce6d8","updated":"2014-06-25 15:03:16.000000000","message":"I think lowercase makes sense.","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"ea564ada8c8c77451d5894b4dd792bfe7e4178de","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        return wsgi.Result(views.BackupView(backup).data(), 202)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":68,"context_line":"        LOG.info(_(\u0027Deleting backup for tenant %(tenant_id)s \u0027"},{"line_number":69,"context_line":"                   \u0027ID: %(backup_id)s\u0027) %"},{"line_number":70,"context_line":"                 {\u0027tenant_id\u0027: tenant_id, \u0027backup_id\u0027: id})"},{"line_number":71,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_79a97e24","line":68,"updated":"2014-06-25 13:32:48.000000000","message":"same comment as above w/r/t case... e.g. backup vs Backup","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":9746,"name":"Doug Shelley","email":"dougshelley66@gmail.com","username":"dougshelley"},"change_message_id":"7f56a9b0e5bf02811332f80721e19416629abdc5","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        return wsgi.Result(views.BackupView(backup).data(), 202)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":68,"context_line":"        LOG.info(_(\u0027Deleting backup for tenant %(tenant_id)s \u0027"},{"line_number":69,"context_line":"                   \u0027ID: %(backup_id)s\u0027) %"},{"line_number":70,"context_line":"                 {\u0027tenant_id\u0027: tenant_id, \u0027backup_id\u0027: id})"},{"line_number":71,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_c9fd5f0a","line":68,"in_reply_to":"1ae5cdf2_79a97e24","updated":"2014-06-25 15:03:16.000000000","message":"went with lowercase throughout when the word is not at the beginning of the sentence.","commit_id":"39b6807a961cf5a049e7f8266423b0fee92eb372"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"5823426691b6038820c46aa7279b878630c61872","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        return wsgi.Result(views.BackupView(backup).data(), 202)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def delete(self, req, tenant_id, id):"},{"line_number":68,"context_line":"        LOG.info(_(\u0027Deleting backup for tenant %(tenant_id)s \u0027"},{"line_number":69,"context_line":"                   \u0027ID: %(backup_id)s\u0027) %"},{"line_number":70,"context_line":"                 {\u0027tenant_id\u0027: tenant_id, \u0027backup_id\u0027: id})"},{"line_number":71,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ae5cdf2_5d1f45b8","line":68,"updated":"2014-06-25 16:49:31.000000000","message":"based on the format used above for inline subs, shouldn\u0027t tenant_id and backup_id be enclosed in single quotes?\ne.g.\n\n\"... tenant \u0027%(tenant_id)s) ID: \u0027%(backup_id)s\u0027\"","commit_id":"9aafdf946b6e6751e79b12fe86d777e5cd366979"}]}
