)]}'
{"keystone/assignment/backends/sql.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"95f036be4df77bbb60c6ac6831457f0ee28894da","unresolved":false,"context_lines":[{"line_number":145,"context_line":"            self._get_role(session, role_id)"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"            if domain_id:"},{"line_number":148,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":149,"context_line":"            if project_id:"},{"line_number":150,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_a837c0ae","line":148,"updated":"2014-06-28 11:51:18.000000000","message":"I assume you could call assert_domain_exists() here?","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e02f1c110f0d4913a0dae852e1287e1e36e5723f","unresolved":false,"context_lines":[{"line_number":145,"context_line":"            self._get_role(session, role_id)"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"            if domain_id:"},{"line_number":148,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":149,"context_line":"            if project_id:"},{"line_number":150,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dab895d6_9cf869c6","line":148,"in_reply_to":"1ae5cdf2_a837c0ae","updated":"2014-06-28 18:44:14.000000000","message":"same as below","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"95f036be4df77bbb60c6ac6831457f0ee28894da","unresolved":false,"context_lines":[{"line_number":171,"context_line":"                    inherited_to_projects\u003dFalse):"},{"line_number":172,"context_line":"        with sql.transaction() as session:"},{"line_number":173,"context_line":"            if domain_id:"},{"line_number":174,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":175,"context_line":"            if project_id:"},{"line_number":176,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_88b5a41a","line":174,"updated":"2014-06-28 11:51:18.000000000","message":"I assume you could call assert_domain_exists() here?","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e02f1c110f0d4913a0dae852e1287e1e36e5723f","unresolved":false,"context_lines":[{"line_number":171,"context_line":"                    inherited_to_projects\u003dFalse):"},{"line_number":172,"context_line":"        with sql.transaction() as session:"},{"line_number":173,"context_line":"            if domain_id:"},{"line_number":174,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":175,"context_line":"            if project_id:"},{"line_number":176,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dab895d6_3c0afdd2","line":174,"in_reply_to":"1ae5cdf2_88b5a41a","updated":"2014-06-28 18:44:14.000000000","message":"Yep. Missed this one.","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"95f036be4df77bbb60c6ac6831457f0ee28894da","unresolved":false,"context_lines":[{"line_number":196,"context_line":"                  inherited_to_projects\u003dFalse):"},{"line_number":197,"context_line":"        with sql.transaction() as session:"},{"line_number":198,"context_line":"            role_ref \u003d self._get_role(session, role_id)"},{"line_number":199,"context_line":"            if domain_id:"},{"line_number":200,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":201,"context_line":"            if project_id:"},{"line_number":202,"context_line":"                self.assert_project_exists(project_id, session)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_68ba180c","line":199,"updated":"2014-06-28 11:51:18.000000000","message":"I assume you could call assert_domain_exists() here?","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e02f1c110f0d4913a0dae852e1287e1e36e5723f","unresolved":false,"context_lines":[{"line_number":196,"context_line":"                  inherited_to_projects\u003dFalse):"},{"line_number":197,"context_line":"        with sql.transaction() as session:"},{"line_number":198,"context_line":"            role_ref \u003d self._get_role(session, role_id)"},{"line_number":199,"context_line":"            if domain_id:"},{"line_number":200,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":201,"context_line":"            if project_id:"},{"line_number":202,"context_line":"                self.assert_project_exists(project_id, session)"}],"source_content_type":"text/x-python","patch_set":1,"id":"dab895d6_5c0fb1e1","line":199,"in_reply_to":"1ae5cdf2_68ba180c","updated":"2014-06-28 18:44:14.000000000","message":"Same as above","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"95f036be4df77bbb60c6ac6831457f0ee28894da","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        with sql.transaction() as session:"},{"line_number":218,"context_line":"            self._get_role(session, role_id)"},{"line_number":219,"context_line":"            if domain_id:"},{"line_number":220,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":221,"context_line":"            if project_id:"},{"line_number":222,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":223,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_48bf1cfc","line":220,"updated":"2014-06-28 11:51:18.000000000","message":"I assume you could call assert_domain_exists() here?","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e02f1c110f0d4913a0dae852e1287e1e36e5723f","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        with sql.transaction() as session:"},{"line_number":218,"context_line":"            self._get_role(session, role_id)"},{"line_number":219,"context_line":"            if domain_id:"},{"line_number":220,"context_line":"                self._get_domain(session, domain_id)"},{"line_number":221,"context_line":"            if project_id:"},{"line_number":222,"context_line":"                self.assert_project_exists(project_id, session)"},{"line_number":223,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dab895d6_7c1475f5","line":220,"in_reply_to":"1ae5cdf2_48bf1cfc","updated":"2014-06-28 18:44:14.000000000","message":"ditto","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"}],"keystone/assignment/core.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"95f036be4df77bbb60c6ac6831457f0ee28894da","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    def assert_domain_exists(self, domain_id):"},{"line_number":305,"context_line":"        self.driver.assert_domain_exists(domain_id)"},{"line_number":306,"context_line":"        # NOTE(morganfainberg): return a value that can be cached. The"},{"line_number":307,"context_line":"        # assert_domain_exists method will raise an exception if the project"},{"line_number":308,"context_line":"        # does not exist."},{"line_number":309,"context_line":"        return True"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_28c49090","line":307,"updated":"2014-06-28 11:51:18.000000000","message":"project -\u003e domain","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e02f1c110f0d4913a0dae852e1287e1e36e5723f","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    def assert_domain_exists(self, domain_id):"},{"line_number":305,"context_line":"        self.driver.assert_domain_exists(domain_id)"},{"line_number":306,"context_line":"        # NOTE(morganfainberg): return a value that can be cached. The"},{"line_number":307,"context_line":"        # assert_domain_exists method will raise an exception if the project"},{"line_number":308,"context_line":"        # does not exist."},{"line_number":309,"context_line":"        return True"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"dab895d6_bcf52dcd","line":307,"in_reply_to":"1ae5cdf2_28c49090","updated":"2014-06-28 18:44:14.000000000","message":"yep, thanks!","commit_id":"8c9e86121be5a6298aeeb25f165d7e3fcbcca0af"}]}
