)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"072a3a900532f31ef06f1a44fa999603f3ceffd4","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The _munch_response + _get_and_munchify is clearly a terrible pattern."},{"line_number":14,"context_line":"We\u0027ll likely want to shift to using the actual SDK object layer, but"},{"line_number":15,"context_line":"let\u0027s taking it a bit at a time."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This replaces all usage of _compute_client with _conn.compute. Amazingly"},{"line_number":18,"context_line":"only one test broke, and that only broke because the test was broken and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"df87a7cf_74dadf17","line":15,"updated":"2017-12-04 22:31:43.000000000","message":"lets take a bit at a time","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"}],"openstack/_adapter.py":[{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"072a3a900532f31ef06f1a44fa999603f3ceffd4","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    exceptions.raise_from_response(response, error_message\u003derror_message)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    if not response.content:"},{"line_number":89,"context_line":"        # This doens\u0027t have any content"},{"line_number":90,"context_line":"        return response"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    # Some REST calls do not return json content. Don\u0027t decode it."}],"source_content_type":"text/x-python","patch_set":10,"id":"df87a7cf_ed137e65","line":89,"updated":"2017-12-04 22:31:43.000000000","message":"doesn\u0027t","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"380d1fb83b427c1e0b5546f5133d1643d652bfe7","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    exceptions.raise_from_response(response, error_message\u003derror_message)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    if not response.content:"},{"line_number":89,"context_line":"        # This doens\u0027t have any content"},{"line_number":90,"context_line":"        return response"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    # Some REST calls do not return json content. Don\u0027t decode it."}],"source_content_type":"text/x-python","patch_set":10,"id":"9f91af0f_ee0958dd","line":89,"in_reply_to":"df87a7cf_ed137e65","updated":"2017-12-31 18:13:00.000000000","message":"Done","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"f6c600d5f8f1b4d0f1b77cb53a3c4af8cbb5af62","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    try:"},{"line_number":97,"context_line":"        result_json \u003d response.json()"},{"line_number":98,"context_line":"    except Exception:"},{"line_number":99,"context_line":"        return response"},{"line_number":100,"context_line":"    return result_json"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"df87a7cf_a143e3ae","line":98,"updated":"2017-12-07 20:59:18.000000000","message":"I don\u0027t like such catching and silently ignoring all Exceptions. Maybe You could specify here what type of exceptions are \"expected\" that can happen here and catch only them?","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"380d1fb83b427c1e0b5546f5133d1643d652bfe7","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    try:"},{"line_number":97,"context_line":"        result_json \u003d response.json()"},{"line_number":98,"context_line":"    except Exception:"},{"line_number":99,"context_line":"        return response"},{"line_number":100,"context_line":"    return result_json"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"9f91af0f_ce0494c9","line":98,"in_reply_to":"df87a7cf_a143e3ae","updated":"2017-12-31 18:13:00.000000000","message":"Good point.","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"}],"openstack/exceptions.py":[{"author":{"_account_id":14119,"name":"Sam Yaple","email":"sam+git@yaple.net","username":"SamYaple"},"change_message_id":"e86d449ccd86eab2e3169947f0b981c84197bf77","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            self.source \u003d \"Client\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def __unicode__(self):"},{"line_number":89,"context_line":"        if not self.url and not self.url:"},{"line_number":90,"context_line":"            return super(HttpException, self).__str__()"},{"line_number":91,"context_line":"        if self.url:"},{"line_number":92,"context_line":"            remote_error \u003d \"{source} Error for url: {url}\".format("}],"source_content_type":"text/x-python","patch_set":10,"id":"df87a7cf_454cc89d","side":"PARENT","line":89,"updated":"2017-12-04 18:12:41.000000000","message":"heh","commit_id":"f31047c845f2b6739f5d8bece811e9866f135546"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"f6c600d5f8f1b4d0f1b77cb53a3c4af8cbb5af62","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            self.source \u003d \"Client\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def __unicode__(self):"},{"line_number":89,"context_line":"        if not self.url or self.message !\u003d \u0027Error\u0027:"},{"line_number":90,"context_line":"            return super(HttpException, self).__str__()"},{"line_number":91,"context_line":"        if self.url:"},{"line_number":92,"context_line":"            remote_error \u003d \"{source} Error for url: {url}\".format("}],"source_content_type":"text/x-python","patch_set":10,"id":"df87a7cf_411697aa","line":89,"updated":"2017-12-07 20:59:18.000000000","message":"where this \"self.message\" is used in this function and why it should be \"Error\"?","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"666c08eb0c4ed51cae78d62607e5a71fc5dafdb5","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            self.source \u003d \"Client\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def __unicode__(self):"},{"line_number":89,"context_line":"        if not self.url or self.message !\u003d \u0027Error\u0027:"},{"line_number":90,"context_line":"            return super(HttpException, self).__str__()"},{"line_number":91,"context_line":"        if self.url:"},{"line_number":92,"context_line":"            remote_error \u003d \"{source} Error for url: {url}\".format("}],"source_content_type":"text/x-python","patch_set":10,"id":"9f91af0f_f0912054","line":89,"in_reply_to":"9f91af0f_0e027cb5","updated":"2018-01-02 21:53:50.000000000","message":"ok, that make sense. Thanks for explanation","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"380d1fb83b427c1e0b5546f5133d1643d652bfe7","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            self.source \u003d \"Client\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def __unicode__(self):"},{"line_number":89,"context_line":"        if not self.url or self.message !\u003d \u0027Error\u0027:"},{"line_number":90,"context_line":"            return super(HttpException, self).__str__()"},{"line_number":91,"context_line":"        if self.url:"},{"line_number":92,"context_line":"            remote_error \u003d \"{source} Error for url: {url}\".format("}],"source_content_type":"text/x-python","patch_set":10,"id":"9f91af0f_0e027cb5","line":89,"in_reply_to":"df87a7cf_411697aa","updated":"2017-12-31 18:13:00.000000000","message":"Error is the default value for self.message set in the constructor. It\u0027s used in super(HttpException) __str__ as the default way exceptions are stringified ... I\u0027ll add a comment.","commit_id":"d154f0f0c829e525fa72de78781be26e44a99a32"}]}
