)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"59b0978c947cf4b4414c962c349a53f69e2cf1a8","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Allow session to return an error response object"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Typically we want to have exceptions thrown when dealing with requests"},{"line_number":10,"context_line":"that return a http error. However when looking at integrating the"},{"line_number":11,"context_line":"session object with other clients it becomes apparent that the exception"},{"line_number":12,"context_line":"handling is sufficiently different that it is best for now to let the"},{"line_number":13,"context_line":"existing error handling work."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAAW3%2F%2Fthc%3D","line":10,"updated":"2014-04-10 23:50:04.000000000","message":"\"an HTTP error\"?\n\n\"However,\"?","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"72496e82a898edad78f283db4a66f44c36916fbd","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Allow session to return an error response object"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Typically we want to have exceptions thrown when dealing with requests"},{"line_number":10,"context_line":"that return a http error. However when looking at integrating the"},{"line_number":11,"context_line":"session object with other clients it becomes apparent that the exception"},{"line_number":12,"context_line":"handling is sufficiently different that it is best for now to let the"},{"line_number":13,"context_line":"existing error handling work."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAAW3%2F%2FlAg%3D","line":10,"in_reply_to":"AAAAW3%2F%2Fthc%3D","updated":"2014-04-12 03:03:02.000000000","message":"Done","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"59b0978c947cf4b4414c962c349a53f69e2cf1a8","unresolved":false,"context_lines":[{"line_number":12,"context_line":"handling is sufficiently different that it is best for now to let the"},{"line_number":13,"context_line":"existing error handling work."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return a http"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAAW3%2F%2FthE%3D","line":15,"updated":"2014-04-10 23:50:04.000000000","message":"\"an HTTP error\"?","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"72496e82a898edad78f283db4a66f44c36916fbd","unresolved":false,"context_lines":[{"line_number":12,"context_line":"handling is sufficiently different that it is best for now to let the"},{"line_number":13,"context_line":"existing error handling work."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return a http"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAAW3%2F%2FlAc%3D","line":15,"in_reply_to":"AAAAW3%2F%2FthE%3D","updated":"2014-04-12 03:03:02.000000000","message":"Done","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"fe670179e3d4e852cf1e6d38f5dd0145ae77344e","unresolved":false,"context_lines":[{"line_number":13,"context_line":"existing error handling work."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return an HTTP"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAW3%2F%2FhjI%3D","line":16,"updated":"2014-04-13 23:37:01.000000000","message":"FWIW (this is a nit) \"if explicitly requested\" is not clear what you mean. I would rephrase this sentence:\n\nSomething like: The session.request call now will return an HTTP error response when requested.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":13,"context_line":"existing error handling work."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return an HTTP"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAW3%2F%2FhiI%3D","line":16,"in_reply_to":"AAAAW3%2F%2FhjI%3D","updated":"2014-04-13 23:47:24.000000000","message":"Done","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"319b2d61fccc01eacd213ae388da6b1d33f67fcb","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return an HTTP"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAW3%2F%2FiBc%3D","line":17,"updated":"2014-04-13 16:44:10.000000000","message":"there should be a blueprint for this.\n\nAlso, add a DocImpact.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return an HTTP"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAW3%2F%2FhiM%3D","line":17,"in_reply_to":"AAAAW3%2F%2FhjU%3D","updated":"2014-04-13 23:47:24.000000000","message":"Done","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"fe670179e3d4e852cf1e6d38f5dd0145ae77344e","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"To do this we should allow the session.request call to return an HTTP"},{"line_number":16,"context_line":"error response if explicitly requested."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I63ea034e7c6eaaf42d4329526a902677a8dd709d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAW3%2F%2FhjU%3D","line":17,"in_reply_to":"AAAAW3%2F%2FiBc%3D","updated":"2014-04-13 23:37:01.000000000","message":"++","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"74c9ca77c0181a5a84a2ae22ed3184d7d6c3d8c7","unresolved":false,"context_lines":[{"line_number":13,"context_line":"existing error handling work."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Add an option to return the failed request rather than raise an"},{"line_number":16,"context_line":"exception so existing clients can do there own error handling."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Blueprint: session-propagation"},{"line_number":19,"context_line":"DocImpact: New session parameter."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAW3%2F%2FYVU%3D","line":16,"updated":"2014-04-15 01:22:13.000000000","message":"change \"there\" to \"their\"","commit_id":"4f1d25e4896a94f1a9760b309de7e86093da472a"}],"keystoneclient/session.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"59b0978c947cf4b4414c962c349a53f69e2cf1a8","unresolved":false,"context_lines":[{"line_number":149,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":150,"context_line":"                                     provided then URL is expected to be a"},{"line_number":151,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":152,"context_line":"        :param bool raise_exc: If true then raise an appropriate exception for"},{"line_number":153,"context_line":"                               failed HTTP requests. If false then return the"},{"line_number":154,"context_line":"                               request object. (optional, default True)"},{"line_number":155,"context_line":"        :param kwargs: any other parameter that can be passed to"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAW3%2F%2FthA%3D","line":152,"updated":"2014-04-10 23:50:04.000000000","message":"Should probably use True and False.","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"72496e82a898edad78f283db4a66f44c36916fbd","unresolved":false,"context_lines":[{"line_number":149,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":150,"context_line":"                                     provided then URL is expected to be a"},{"line_number":151,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":152,"context_line":"        :param bool raise_exc: If true then raise an appropriate exception for"},{"line_number":153,"context_line":"                               failed HTTP requests. If false then return the"},{"line_number":154,"context_line":"                               request object. (optional, default True)"},{"line_number":155,"context_line":"        :param kwargs: any other parameter that can be passed to"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAW3%2F%2FlAk%3D","line":152,"in_reply_to":"AAAAW3%2F%2FthA%3D","updated":"2014-04-12 03:03:02.000000000","message":"Done","commit_id":"f528c491605f39449dfdd526360f2fc13f584810"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"319b2d61fccc01eacd213ae388da6b1d33f67fcb","unresolved":false,"context_lines":[{"line_number":150,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":151,"context_line":"                                     provided then URL is expected to be a"},{"line_number":152,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":153,"context_line":"        :param bool raise_exc: If True then raise an appropriate exception for"},{"line_number":154,"context_line":"                               failed HTTP requests. If False then return the"},{"line_number":155,"context_line":"                               request object. (optional, default True)"},{"line_number":156,"context_line":"        :param auth: The auth plugin to use when authenticating this request."}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FiBg%3D","line":153,"updated":"2014-04-13 16:44:10.000000000","message":"these should be in the order that they\u0027re in the signature so each one is easy to find.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":150,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":151,"context_line":"                                     provided then URL is expected to be a"},{"line_number":152,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":153,"context_line":"        :param bool raise_exc: If True then raise an appropriate exception for"},{"line_number":154,"context_line":"                               failed HTTP requests. If False then return the"},{"line_number":155,"context_line":"                               request object. (optional, default True)"},{"line_number":156,"context_line":"        :param auth: The auth plugin to use when authenticating this request."}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2Fhj8%3D","line":153,"in_reply_to":"AAAAW3%2F%2FiBg%3D","updated":"2014-04-13 23:47:24.000000000","message":"Done","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"}],"keystoneclient/tests/test_session.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"319b2d61fccc01eacd213ae388da6b1d33f67fcb","unresolved":false,"context_lines":[{"line_number":394,"context_line":"                                           \u0027interface\u0027: \u0027public\u0027})"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    @httpretty.activate"},{"line_number":397,"context_line":"    def test_raises_exc_when_asked(self):"},{"line_number":398,"context_line":"        service_type \u003d \u0027compute\u0027"},{"line_number":399,"context_line":"        interface \u003d \u0027public\u0027"},{"line_number":400,"context_line":"        path \u003d \u0027/instances\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FiBU%3D","line":397,"updated":"2014-04-13 16:44:10.000000000","message":"this also tests that there\u0027s no exception when not asked -- change to \"only_when_asked\"\n\nThere should be a comment here saying what\u0027s expected... the name is that it raises an exception when asked, but it doesn\u0027t say what the expected behavior is when when not asked.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":394,"context_line":"                                           \u0027interface\u0027: \u0027public\u0027})"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    @httpretty.activate"},{"line_number":397,"context_line":"    def test_raises_exc_when_asked(self):"},{"line_number":398,"context_line":"        service_type \u003d \u0027compute\u0027"},{"line_number":399,"context_line":"        interface \u003d \u0027public\u0027"},{"line_number":400,"context_line":"        path \u003d \u0027/instances\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FhkM%3D","line":397,"in_reply_to":"AAAAW3%2F%2FiBU%3D","updated":"2014-04-13 23:47:24.000000000","message":"Done","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"319b2d61fccc01eacd213ae388da6b1d33f67fcb","unresolved":false,"context_lines":[{"line_number":408,"context_line":"        sess \u003d client_session.Session(auth\u003dAuthPlugin())"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":"        self.assertRaises(exceptions.Unauthorized, sess.get, path,"},{"line_number":411,"context_line":"                          endpoint_filter\u003d{\u0027service_type\u0027: service_type,"},{"line_number":412,"context_line":"                                           \u0027interface\u0027: interface})"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        resp \u003d sess.get(path, raise_exc\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FiAg%3D","line":411,"updated":"2014-04-13 16:44:10.000000000","message":"is an endpoint filter required to raise an exception?","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":408,"context_line":"        sess \u003d client_session.Session(auth\u003dAuthPlugin())"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":"        self.assertRaises(exceptions.Unauthorized, sess.get, path,"},{"line_number":411,"context_line":"                          endpoint_filter\u003d{\u0027service_type\u0027: service_type,"},{"line_number":412,"context_line":"                                           \u0027interface\u0027: interface})"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        resp \u003d sess.get(path, raise_exc\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FhkE%3D","line":411,"in_reply_to":"AAAAW3%2F%2FiAg%3D","updated":"2014-04-13 23:47:24.000000000","message":"no, it was just in that section of code. I\u0027ll clean that up.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"319b2d61fccc01eacd213ae388da6b1d33f67fcb","unresolved":false,"context_lines":[{"line_number":415,"context_line":"                        endpoint_filter\u003d{\u0027service_type\u0027: service_type,"},{"line_number":416,"context_line":"                                         \u0027interface\u0027: interface})"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"        self.assertEqual(resp.status_code, status)"},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    @httpretty.activate"},{"line_number":421,"context_line":"    def test_passed_auth_plugin(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FiA8%3D","line":418,"updated":"2014-04-13 16:44:10.000000000","message":"arguments to assertEqual are expected and then given.","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0e47676ac3e762f57bad72b0f20c1323c725cacf","unresolved":false,"context_lines":[{"line_number":415,"context_line":"                        endpoint_filter\u003d{\u0027service_type\u0027: service_type,"},{"line_number":416,"context_line":"                                         \u0027interface\u0027: interface})"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"        self.assertEqual(resp.status_code, status)"},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    @httpretty.activate"},{"line_number":421,"context_line":"    def test_passed_auth_plugin(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAW3%2F%2FhkA%3D","line":418,"in_reply_to":"AAAAW3%2F%2FiA8%3D","updated":"2014-04-13 23:47:24.000000000","message":"Done","commit_id":"eff0063d377bddd02c87e5acd20db60eeaa060b8"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"74c9ca77c0181a5a84a2ae22ed3184d7d6c3d8c7","unresolved":false,"context_lines":[{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    @httpretty.activate"},{"line_number":397,"context_line":"    def test_raises_exc_only_when_asked(self):"},{"line_number":398,"context_line":"        # A request that returns a HTTP error should by default raise an"},{"line_number":399,"context_line":"        # exception by default, if you specify raise_exc\u003dFalse then it will not"},{"line_number":400,"context_line":""},{"line_number":401,"context_line":"        self.stub_url(httpretty.GET, status\u003d401)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAW3%2F%2FYVg%3D","line":398,"updated":"2014-04-15 01:22:13.000000000","message":"remove \"by default\"","commit_id":"4f1d25e4896a94f1a9760b309de7e86093da472a"}]}
