)]}'
{"keystonemiddleware/auth_token/__init__.py":[{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"5bb95f0cd0bb4497821876806ff394d591eedf07","unresolved":false,"context_lines":[{"line_number":485,"context_line":"    return opts"},{"line_number":486,"context_line":""},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"class InvalidToken(Exception):"},{"line_number":489,"context_line":"    pass"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_5e632ab1","side":"PARENT","line":488,"updated":"2015-02-20 06:49:17.000000000","message":"these are public interfaces so I don\u0027t think you can just move them without breaking backward compatibility. May need to do some dance like this\n\nInvalidToken \u003d exc.InvalidToken\n...","commit_id":"df7a548a2289aa7e520f330a27911612ac020cc6"}],"keystonemiddleware/auth_token/_exceptions.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"5ca9db06d19e2e89eda90fc21c9902c8fbf49cce","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"class AuthTokenMiddlewareException(Exception):"},{"line_number":15,"context_line":"    pass"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_bfeceb90","line":14,"updated":"2015-02-23 02:30:37.000000000","message":"this isn\u0027t used anywhere and not part of the commit message, i don\u0027t mind keeping it in if you are planning on using it, just let me know in a reply","commit_id":"8a2656a984a3451ea69bb65bc56c615809cd3538"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"6fcb6de3d00de821d7e54ce0242c8bab6e3e69fe","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"class AuthTokenMiddlewareException(Exception):"},{"line_number":15,"context_line":"    pass"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_caeb9fae","line":14,"in_reply_to":"ba7be1f8_4ac08f2a","updated":"2015-02-23 03:17:41.000000000","message":"Apparently i thought of this already as the rest of the exceptions no longer subclass this - and i forgot to delete the base exc.","commit_id":"8a2656a984a3451ea69bb65bc56c615809cd3538"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"33033dfb2356074f4ce7092234ec7b0ed621e0e2","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"class AuthTokenMiddlewareException(Exception):"},{"line_number":15,"context_line":"    pass"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_4ac08f2a","line":14,"in_reply_to":"ba7be1f8_bfeceb90","updated":"2015-02-23 03:15:18.000000000","message":"It\u0027s not, it\u0027s kind of just best practice to have exceptions that are originating from a module like this to all inherit from a base exception. \n\nI shouldn\u0027t have mixed this change in with everything being moved around.","commit_id":"8a2656a984a3451ea69bb65bc56c615809cd3538"}]}
