)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"9e7ae7ff1bb22a215a64450e358a64d779ae3906","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Glance returned 200 status code when we add/remove/replace element"},{"line_number":10,"context_line":"to nonexistent property."},{"line_number":11,"context_line":"Now glance return 400 status code with description error."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ifa9f92de0999052c4db4bcd44fba894f503c7378"},{"line_number":14,"context_line":"Depends-On: I49a385f124236b22360ee07f5adcba27b3c92603"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"ba8a016a_985b59f6","line":11,"updated":"2015-11-23 17:33:12.000000000","message":"Would it be helpful to note that this is properties on artifacts rather than properties on images?","commit_id":"1be53b46e7d036d0401037eacee42f0e800f23d1"}],"glance/api/v3/artifacts.py":[{"author":{"_account_id":15168,"name":"Kirill Zaitsev","email":"k.zaitsev@me.com","username":"kzaitsev"},"change_message_id":"0d55649aa38e6941c96c712a600a5bf14057c894","unresolved":false,"context_lines":[{"line_number":75,"context_line":"            update_op(change[\u0027path\u0027], change.get(\u0027value\u0027))"},{"line_number":76,"context_line":"            return artifact"},{"line_number":77,"context_line":"        else:"},{"line_number":78,"context_line":"            raise webob.exc.HTTPBadRequest(\u0027Property %s is nonexistent\u0027 % prop)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    @staticmethod"},{"line_number":81,"context_line":"    def _get_artifact_with_dependencies(repo, art_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa1b9901_82c32257","line":78,"updated":"2015-08-24 11:59:35.000000000","message":"Shouldn\u0027t this string be marked for translation? Looks like a user-visible string to me. Also most other exceptions sseem to LOG an error here.","commit_id":"97ec8e893ee5a587c2f524f93c3d9cb39cc6a195"},{"author":{"_account_id":15168,"name":"Kirill Zaitsev","email":"k.zaitsev@me.com","username":"kzaitsev"},"change_message_id":"dcd7e2e4074e3ce274801a36b5bde53a601e2fb8","unresolved":false,"context_lines":[{"line_number":75,"context_line":"            update_op(change[\u0027path\u0027], change.get(\u0027value\u0027))"},{"line_number":76,"context_line":"            return artifact"},{"line_number":77,"context_line":"        else:"},{"line_number":78,"context_line":"            raise webob.exc.HTTPBadRequest(\u0027Property %s is nonexistent\u0027 % prop)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    @staticmethod"},{"line_number":81,"context_line":"    def _get_artifact_with_dependencies(repo, art_id,"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa1b9901_5fd39c5f","line":78,"updated":"2015-08-24 15:01:36.000000000","message":"I still believe, this string should be marked for translation, like the rest of them throughout the file.\n\nI\u0027ve noticed, that some of them are not, but I believe that to be a bug, rather then intended behaviour.\n\nAlso still think that a LOG.error line is required here, before throwing an exception.","commit_id":"8f2e3db1e936ce3907853030736c724b47cddcc6"},{"author":{"_account_id":15168,"name":"Kirill Zaitsev","email":"k.zaitsev@me.com","username":"kzaitsev"},"change_message_id":"3bffa4e447c360aaefb1cc9f64c6817208c3871a","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            return artifact"},{"line_number":77,"context_line":"        else:"},{"line_number":78,"context_line":"            msg \u003d (_(\u0027Property %s is nonexistent\u0027) % prop)"},{"line_number":79,"context_line":"            LOG.exception(msg)"},{"line_number":80,"context_line":"            raise webob.exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa1b9901_6c70f1a4","line":79,"updated":"2015-08-25 19:52:30.000000000","message":"since threre was no exception LOG.exception is not appropriate here, pls use LOG.error","commit_id":"c76cd897eea74dabb37a958c7618fdf93331646e"}],"glance/tests/functional/artifacts/test_artifacts.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"6b66d5ae98edb034c2e55c627d965014b3b00840","unresolved":false,"context_lines":[{"line_number":562,"context_line":""},{"line_number":563,"context_line":""},{"line_number":564,"context_line":" \u003c/body\u003e"},{"line_number":565,"context_line":"\u003c/html\u003e\u0027\u0027\u0027"},{"line_number":566,"context_line":""},{"line_number":567,"context_line":"        self.assertEqual(actual, result)"},{"line_number":568,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba8a016a_3a195e23","line":565,"updated":"2015-11-20 13:15:07.000000000","message":"this 400 template is repeated 3 times, can it be defined as a constant or checked inside private method?","commit_id":"1be53b46e7d036d0401037eacee42f0e800f23d1"},{"author":{"_account_id":2537,"name":"Nikhil Komawar","email":"nik.komawar@gmail.com","username":"nikhil-komawar"},"change_message_id":"7858e62c3ec2e9bf38e65421e7b3ce832718da1a","unresolved":false,"context_lines":[{"line_number":562,"context_line":""},{"line_number":563,"context_line":""},{"line_number":564,"context_line":" \u003c/body\u003e"},{"line_number":565,"context_line":"\u003c/html\u003e\u0027\u0027\u0027"},{"line_number":566,"context_line":""},{"line_number":567,"context_line":"        self.assertEqual(actual, result)"},{"line_number":568,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a740942_983c0195","line":565,"in_reply_to":"ba8a016a_3a195e23","updated":"2015-12-04 01:54:02.000000000","message":"sounds like a good opportunity for some refactor opportunity :)","commit_id":"1be53b46e7d036d0401037eacee42f0e800f23d1"}]}
