)]}'
{"watcher/db/sqlalchemy/api.py":[{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"4cf81d9ded4eec48564565099f3d82a16a1f1555","unresolved":false,"context_lines":[{"line_number":308,"context_line":"        if not values.get(\u0027uuid\u0027):"},{"line_number":309,"context_line":"            values[\u0027uuid\u0027] \u003d utils.generate_uuid()"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"        query \u003d model_query(models.AuditTemplate)"},{"line_number":312,"context_line":"        query \u003d query.filter_by(name\u003dvalues.get(\u0027name\u0027),"},{"line_number":313,"context_line":"                                deleted_at\u003dNone)"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"        if len(query.all()) \u003e 0:"},{"line_number":316,"context_line":"            raise exception.AuditTemplateAlreadyExists(uuid\u003dvalues[\u0027uuid\u0027])"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"        audit_template \u003d models.AuditTemplate()"},{"line_number":319,"context_line":"        audit_template.update(values)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a061dce_8b48662f","line":316,"range":{"start_line":311,"start_character":0,"end_line":316,"end_character":75},"updated":"2016-04-04 15:42:20.000000000","message":"Isn\u0027t the aim of this bug to completely remove any exception whenever we have duplicate names?\nI mean you removed the unique constraint in the model but do you add back this exception here: is it that you want to narrow down the constraint to only apply to non-soft-deleted audit templates?","commit_id":"a164efb2145ea8c6af3dd95b9921eec21ecdb21e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"af1826a79d8e7574f1ca3858ff76254d4133ea0e","unresolved":false,"context_lines":[{"line_number":308,"context_line":"        if not values.get(\u0027uuid\u0027):"},{"line_number":309,"context_line":"            values[\u0027uuid\u0027] \u003d utils.generate_uuid()"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"        query \u003d model_query(models.AuditTemplate)"},{"line_number":312,"context_line":"        query \u003d query.filter_by(name\u003dvalues.get(\u0027name\u0027),"},{"line_number":313,"context_line":"                                deleted_at\u003dNone)"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"        if len(query.all()) \u003e 0:"},{"line_number":316,"context_line":"            raise exception.AuditTemplateAlreadyExists(uuid\u003dvalues[\u0027uuid\u0027])"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"        audit_template \u003d models.AuditTemplate()"},{"line_number":319,"context_line":"        audit_template.update(values)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a061dce_54948f41","line":316,"range":{"start_line":311,"start_character":0,"end_line":316,"end_character":75},"in_reply_to":"9a061dce_8b48662f","updated":"2016-04-07 07:16:24.000000000","message":"After discussing with you, we agreed that we need to have a check to prevent from having 2 audit templates with the same name if they are both not soft deleted.","commit_id":"a164efb2145ea8c6af3dd95b9921eec21ecdb21e"},{"author":{"_account_id":11235,"name":"Edwin Zhai","email":"edwin.zhai@intel.com","username":"gzhai"},"change_message_id":"12d1be547b9e71e7a086a527ef953f46104f8787","unresolved":false,"context_lines":[{"line_number":361,"context_line":"        try:"},{"line_number":362,"context_line":"            audit_template \u003d query.one()"},{"line_number":363,"context_line":"            if not context.show_deleted:"},{"line_number":364,"context_line":"                if audit_template.deleted_at is not None:"},{"line_number":365,"context_line":"                    raise exception.AuditTemplateNotFound("},{"line_number":366,"context_line":"                        audit_template\u003daudit_template_name)"},{"line_number":367,"context_line":"            return audit_template"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a061dce_95790ecb","line":364,"updated":"2016-04-07 00:47:29.000000000","message":"Can we remove this check, since adding deleted_at\u003dNone as filter?","commit_id":"a164efb2145ea8c6af3dd95b9921eec21ecdb21e"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"a2931c922773fe36ea598ee89b9fc4080732d8e1","unresolved":false,"context_lines":[{"line_number":361,"context_line":"        try:"},{"line_number":362,"context_line":"            audit_template \u003d query.one()"},{"line_number":363,"context_line":"            if not context.show_deleted:"},{"line_number":364,"context_line":"                if audit_template.deleted_at is not None:"},{"line_number":365,"context_line":"                    raise exception.AuditTemplateNotFound("},{"line_number":366,"context_line":"                        audit_template\u003daudit_template_name)"},{"line_number":367,"context_line":"            return audit_template"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a061dce_882a888e","line":364,"in_reply_to":"9a061dce_95790ecb","updated":"2016-04-07 08:55:52.000000000","message":"I think we can remove it.","commit_id":"a164efb2145ea8c6af3dd95b9921eec21ecdb21e"}]}
