)]}'
{"glance/common/exception.py":[{"author":{"_account_id":14676,"name":"Kairat Kushaev","email":"kkushaev@mirantis.com","username":"kairat_kushaev"},"change_message_id":"358e7cfadec114bcc9f6fc511ed5c554da47ad81","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class ForbiddenPublicImage(Forbidden):"},{"line_number":120,"context_line":"    message \u003d _(\"You are not authorized to complete %(action)s action.\")"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"class ProtectedImageDelete(Forbidden):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_c87859fb","line":120,"updated":"2016-07-25 09:37:42.000000000","message":"Could you please explain where do we need it?\nFrom what I see we passed action here:\nhttps://github.com/openstack/glance/blob/master/glance/api/policy.py#L66\nbut I cannot see ForbiddenPublicImage here.","commit_id":"d47bd5e49383f77e4da5501c2ceb343500360e15"},{"author":{"_account_id":8205,"name":"Mh Raies","email":"raiesmh08@gmail.com","username":"raiesmh08"},"change_message_id":"e49a0a63dd7d6c8e9016c0d6a2f799b28cab6e8e","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class ForbiddenPublicImage(Forbidden):"},{"line_number":120,"context_line":"    message \u003d _(\"You are not authorized to complete %(action)s action.\")"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"class ProtectedImageDelete(Forbidden):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_79778102","line":120,"in_reply_to":"dada55a8_0e20b9af","updated":"2016-07-25 10:51:33.000000000","message":"Submitted new patch.","commit_id":"d47bd5e49383f77e4da5501c2ceb343500360e15"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"1b77437d56ed49c15ded38fd0278d94375351a36","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class ForbiddenPublicImage(Forbidden):"},{"line_number":120,"context_line":"    message \u003d _(\"You are not authorized to complete %(action)s action.\")"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"class ProtectedImageDelete(Forbidden):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_0e20b9af","line":120,"in_reply_to":"dada55a8_734e82c2","updated":"2016-07-25 10:34:34.000000000","message":"I do agree with Kairat here. We should not change this unless there is reason for it and if it\u0027s not used anywhere, I think there definitely is no reason to do so.","commit_id":"d47bd5e49383f77e4da5501c2ceb343500360e15"},{"author":{"_account_id":8205,"name":"Mh Raies","email":"raiesmh08@gmail.com","username":"raiesmh08"},"change_message_id":"78581c5324f069df5a95c8d04574ef6a0d066df6","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class ForbiddenPublicImage(Forbidden):"},{"line_number":120,"context_line":"    message \u003d _(\"You are not authorized to complete %(action)s action.\")"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"class ProtectedImageDelete(Forbidden):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_734e82c2","line":120,"in_reply_to":"dada55a8_c87859fb","updated":"2016-07-25 10:00:55.000000000","message":"Yes you are right. For the time, it does not have any relevance but if later this exception is being used as a part of Policy then this will helpful. Again, having this does not indicate a problem as it is not being used anywhere. btw if you suggest to remove this, I will remove it. please suggest.","commit_id":"d47bd5e49383f77e4da5501c2ceb343500360e15"},{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"0ce56e8d3167a1caafe2d648f74c034cfb6c1ef0","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class Forbidden(GlanceException):"},{"line_number":116,"context_line":"    message \u003d _(\"You are not authorized to complete %(action)s action.\")"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class ForbiddenPublicImage(Forbidden):"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_0b5d4679","line":116,"updated":"2016-07-25 12:12:58.000000000","message":"You can find that Glance rewrite this error message in each place where this error raises. So we never mind what the message here is IMO.\nFor the long-term consideration, it\u0027s usefull here anyhow.","commit_id":"5fc05375b8e65c264e3e82f03cff1f5e523719cf"}]}
