)]}'
{"keystone/token/controllers.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"764ac85ae834a15d85f7671fd79fc31812fad019","unresolved":false,"context_lines":[{"line_number":392,"context_line":"                role_list \u003d self.identity_api.get_roles_for_user_and_project("},{"line_number":393,"context_line":"                    user_id, tenant_id)"},{"line_number":394,"context_line":"            except exception.ProjectNotFound as e:"},{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F8Sc%3D","line":395,"updated":"2013-07-08 19:54:27.000000000","message":"did you mean to raise this or suppress the project not found?","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"cdd11091841c15b07a21d85817e07371d327fcaa","unresolved":false,"context_lines":[{"line_number":392,"context_line":"                role_list \u003d self.identity_api.get_roles_for_user_and_project("},{"line_number":393,"context_line":"                    user_id, tenant_id)"},{"line_number":394,"context_line":"            except exception.ProjectNotFound as e:"},{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F7%2BI%3D","line":395,"in_reply_to":"AAAAP3%2F%2F8Sc%3D","updated":"2013-07-08 21:34:54.000000000","message":"thanks..yes - wanted to just suppress...better to let it fall through to the next block which will raise unathorized anyway","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"764ac85ae834a15d85f7671fd79fc31812fad019","unresolved":false,"context_lines":[{"line_number":394,"context_line":"            except exception.ProjectNotFound as e:"},{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("},{"line_number":399,"context_line":"                    user_id, tenant_id)"},{"line_number":400,"context_line":"                LOG.warning(msg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F8SI%3D","line":397,"updated":"2013-07-08 19:54:27.000000000","message":"python!\n\n  if not role_list:","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"cdd11091841c15b07a21d85817e07371d327fcaa","unresolved":false,"context_lines":[{"line_number":394,"context_line":"            except exception.ProjectNotFound as e:"},{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("},{"line_number":399,"context_line":"                    user_id, tenant_id)"},{"line_number":400,"context_line":"                LOG.warning(msg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F7%2BE%3D","line":397,"in_reply_to":"AAAAP3%2F%2F8SI%3D","updated":"2013-07-08 21:34:54.000000000","message":"Done","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"764ac85ae834a15d85f7671fd79fc31812fad019","unresolved":false,"context_lines":[{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("},{"line_number":399,"context_line":"                    user_id, tenant_id)"},{"line_number":400,"context_line":"                LOG.warning(msg)"},{"line_number":401,"context_line":"                raise exception.Unauthorized(msg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F8SA%3D","line":398,"updated":"2013-07-08 19:54:27.000000000","message":"project and i18n","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"cdd11091841c15b07a21d85817e07371d327fcaa","unresolved":false,"context_lines":[{"line_number":395,"context_line":"                exception.Unauthorized(e)"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"            if len(role_list) \u003d\u003d 0:"},{"line_number":398,"context_line":"                msg \u003d \u0027User %s is unauthorized for tenant %s\u0027 % ("},{"line_number":399,"context_line":"                    user_id, tenant_id)"},{"line_number":400,"context_line":"                LOG.warning(msg)"},{"line_number":401,"context_line":"                raise exception.Unauthorized(msg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F7%2BA%3D","line":398,"in_reply_to":"AAAAP3%2F%2F8SA%3D","updated":"2013-07-08 21:34:54.000000000","message":"Done","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"}],"tests/default_fixtures.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"764ac85ae834a15d85f7671fd79fc31812fad019","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        \u0027user_id\u0027: \u0027sna\u0027,"},{"line_number":101,"context_line":"        \u0027tenant_id\u0027: \u0027mtu\u0027,"},{"line_number":102,"context_line":"    }"},{"line_number":103,"context_line":"]"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"ROLES \u003d ["},{"line_number":106,"context_line":"    {"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F8R8%3D","side":"PARENT","line":103,"updated":"2013-07-08 19:54:27.000000000","message":"yay","commit_id":"22e3fb773176dd9a8bbf41b5268564bc0e4ed6f1"}],"tests/test_backend.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"ea463c432ec6a522740e6042789bcfa4a21c4701","unresolved":false,"context_lines":[{"line_number":1042,"context_line":"        self.identity_api.create_group(group1[\u0027id\u0027], group1)"},{"line_number":1043,"context_line":"        group2 \u003d {\u0027id\u0027: uuid.uuid4().hex, \u0027name\u0027: uuid.uuid4().hex,"},{"line_number":1044,"context_line":"                  \u0027domain_id\u0027: domain1[\u0027id\u0027], \u0027enabled\u0027: True}"},{"line_number":1045,"context_line":"        self.identity_api.create_group(group2[\u0027id\u0027], group2)"},{"line_number":1046,"context_line":"        project1 \u003d {\u0027id\u0027: uuid.uuid4().hex, \u0027name\u0027: uuid.uuid4().hex,"},{"line_number":1047,"context_line":"                    \u0027domain_id\u0027: domain1[\u0027id\u0027]}"},{"line_number":1048,"context_line":"        self.identity_api.create_project(project1[\u0027id\u0027], project1)"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAP3%2F%2F%2F6k%3D","line":1045,"updated":"2013-07-06 17:09:00.000000000","message":"hmm, looks like a merge issue, these were deleted...","commit_id":"fb26eba58963cefc6a7292e6ca76013fa3cd1aaa"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"ea463c432ec6a522740e6042789bcfa4a21c4701","unresolved":false,"context_lines":[{"line_number":1050,"context_line":"        self.identity_api.add_user_to_group(user1[\u0027id\u0027],"},{"line_number":1051,"context_line":"                                            group1[\u0027id\u0027])"},{"line_number":1052,"context_line":"        self.identity_api.add_user_to_group(user1[\u0027id\u0027],"},{"line_number":1053,"context_line":"                                            group2[\u0027id\u0027])"},{"line_number":1054,"context_line":""},{"line_number":1055,"context_line":"        roles_ref \u003d self.identity_api.list_grants("},{"line_number":1056,"context_line":"            user_id\u003duser1[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAP3%2F%2F%2F6g%3D","line":1053,"updated":"2013-07-06 17:09:00.000000000","message":"as above","commit_id":"fb26eba58963cefc6a7292e6ca76013fa3cd1aaa"}],"tests/test_backend_sql.py":[{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"5ad020b9c018adbf35c5a65a20a9a8191c0fbac1","unresolved":false,"context_lines":[{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    def test_metadata_removed_on_delete_project(self):"},{"line_number":160,"context_line":"        # A test to check that the internal representation"},{"line_number":161,"context_line":"        # or roles is correctly updated when a prpject is deleted"},{"line_number":162,"context_line":"        user \u003d {\u0027id\u0027: uuid.uuid4().hex,"},{"line_number":163,"context_line":"                \u0027name\u0027: uuid.uuid4().hex,"},{"line_number":164,"context_line":"                \u0027domain_id\u0027: DEFAULT_DOMAIN_ID,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAP3%2F%2F4sE%3D","line":161,"updated":"2013-07-09 19:47:54.000000000","message":"typo: prpject should be project","commit_id":"557dfc8696c376f315acc12f94e3edd5a190bafb"}],"tests/test_migrate_nova_auth.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"764ac85ae834a15d85f7671fd79fc31812fad019","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack LLC"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F8Rw%3D","line":1,"updated":"2013-07-08 19:54:27.000000000","message":"this whole module can be deleted, as it\u0027s directly supporting diablo -\u003e essex","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"cdd11091841c15b07a21d85817e07371d327fcaa","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack LLC"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAP3%2F%2F79Y%3D","line":1,"in_reply_to":"AAAAP3%2F%2F8Rw%3D","updated":"2013-07-08 21:34:54.000000000","message":"Done","commit_id":"b7aca360d428a3a7d0584644c55e4f9948cb6a72"}]}
