)]}'
{"keystone/resource/core.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"5b0117c2089b48c83e3f2b171fa866227dfe6933","unresolved":false,"context_lines":[{"line_number":366,"context_line":"        # the specified project"},{"line_number":367,"context_line":"        assignment.COMPUTED_ASSIGNMENTS_REGION.invalidate()"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":370,"context_line":"        \"\"\"Deletes one project or a subtree"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_799b10ca","line":370,"range":{"start_line":369,"start_character":12,"end_line":370,"end_character":43},"updated":"2016-02-15 23:46:45.000000000","message":"should this end with a period?","commit_id":"18701a2a849903e475d006e0dc68ac5b68b0a6b6"},{"author":{"_account_id":10046,"name":"Henrique Truta","email":"henrique@lsd.ufcg.edu.br","username":"henriquetruta"},"change_message_id":"8ec672af1c575ecd36915a4aacc40e6272b8fa7f","unresolved":false,"context_lines":[{"line_number":366,"context_line":"        # the specified project"},{"line_number":367,"context_line":"        assignment.COMPUTED_ASSIGNMENTS_REGION.invalidate()"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":370,"context_line":"        \"\"\"Deletes one project or a subtree"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_b9cab89f","line":370,"range":{"start_line":369,"start_character":12,"end_line":370,"end_character":43},"in_reply_to":"dae33548_799b10ca","updated":"2016-02-15 23:52:24.000000000","message":"probably... will fix","commit_id":"18701a2a849903e475d006e0dc68ac5b68b0a6b6"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"19e6af5aa017a5cc489115da55cafc3f373a6a69","unresolved":false,"context_lines":[{"line_number":369,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":370,"context_line":"        \"\"\"Deletes one project or a subtree."},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_9f5eb310","line":373,"range":{"start_line":372,"start_character":24,"end_line":373,"end_character":46},"updated":"2016-02-16 02:21:12.000000000","message":"minor rephrasing suggestion:\n\n\"If true, the specified project and all it\u0027s sub-projects are deleted. Otherwise, only the specified project is deleted.\"","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"be314bb3d9fc93e85ec186587b23a0962087589b","unresolved":false,"context_lines":[{"line_number":369,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":370,"context_line":"        \"\"\"Deletes one project or a subtree."},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."}],"source_content_type":"text/x-python","patch_set":2,"id":"bae84128_a63dd52c","line":373,"range":{"start_line":372,"start_character":24,"end_line":373,"end_character":46},"in_reply_to":"dae33548_9f5eb310","updated":"2016-02-24 10:09:16.000000000","message":"++ it\u0027s more clear.","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"44226a80190f5624adaa9bba67a5631182ce3826","unresolved":false,"context_lines":[{"line_number":369,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":370,"context_line":"        \"\"\"Deletes one project or a subtree."},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_ab48dab3","line":373,"range":{"start_line":372,"start_character":24,"end_line":373,"end_character":46},"in_reply_to":"dae33548_9f5eb310","updated":"2016-06-09 00:48:21.000000000","message":"Agreed, looks clearer","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":19985,"name":"Ryosuke Mizuno","email":"r-mizuno@rs.jp.nec.com","username":"r-mizuno"},"change_message_id":"c8a1ea4baa01fa97f322448332d253085c0ffe91","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."},{"line_number":377,"context_line":"        project \u003d self.driver.get_project(project_id)"},{"line_number":378,"context_line":"        if project[\u0027is_domain\u0027] and project[\u0027enabled\u0027]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_3cb175e2","line":375,"range":{"start_line":375,"start_character":0,"end_line":375,"end_character":11},"updated":"2016-02-16 02:12:27.000000000","message":"should here insert the description of exception processing?","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":16523,"name":"ZhangLei","display_name":"ZhangLei","email":"zhang.lei@99cloud.net","username":"zhang.lei"},"change_message_id":"d0184121a2a6d256fb2bc3e3c9fcb94226e7b861","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."},{"line_number":377,"context_line":"        project \u003d self.driver.get_project(project_id)"},{"line_number":378,"context_line":"        if project[\u0027is_domain\u0027] and project[\u0027enabled\u0027]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"7af24918_72ce272f","line":375,"range":{"start_line":375,"start_character":0,"end_line":375,"end_character":11},"in_reply_to":"bae84128_86dc1147","updated":"2016-03-03 09:34:54.000000000","message":"++, Add\n:raises keystone.exception.validationError: \n:raises keystone.exception.Forbidden:","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"be314bb3d9fc93e85ec186587b23a0962087589b","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        :param cascade: If True is provided, a subtree is deleted. Otherwise,"},{"line_number":373,"context_line":"            only the given project is deleted."},{"line_number":374,"context_line":"        :type cascade: boolean"},{"line_number":375,"context_line":"        \"\"\""},{"line_number":376,"context_line":"        # Use the driver directly to prevent using old cached value."},{"line_number":377,"context_line":"        project \u003d self.driver.get_project(project_id)"},{"line_number":378,"context_line":"        if project[\u0027is_domain\u0027] and project[\u0027enabled\u0027]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bae84128_86dc1147","line":375,"range":{"start_line":375,"start_character":0,"end_line":375,"end_character":11},"in_reply_to":"dae33548_3cb175e2","updated":"2016-02-24 10:09:16.000000000","message":"++ nice to see the the desc of exceptions here.","commit_id":"a412639043cd6211796027683bd4bca45ec9b558"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"85ff75a7754df18729e59b60b897e3290600d204","unresolved":false,"context_lines":[{"line_number":478,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":479,"context_line":"        \"\"\"Delete one project or a subtree."},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        :param cascade: If true, the specified project and all it\u0027s"},{"line_number":482,"context_line":"                        sub-projects are deleted. Otherwise, only the specified"},{"line_number":483,"context_line":"                        project is deleted."},{"line_number":484,"context_line":"        :type cascade: boolean"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_fda6210d","line":481,"range":{"start_line":481,"start_character":63,"end_line":481,"end_character":67},"updated":"2016-06-09 06:35:09.000000000","message":"its not it\u0027s","commit_id":"fe37b33d7d1f22d49a00fb6a7a67b77ce6b49cd1"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"efa5ba1e7f4ffd0042864fc383cbe98c89fee3d0","unresolved":false,"context_lines":[{"line_number":478,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":479,"context_line":"        \"\"\"Delete one project or a subtree."},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        :param cascade: If true, the specified project and all it\u0027s"},{"line_number":482,"context_line":"                        sub-projects are deleted. Otherwise, only the specified"},{"line_number":483,"context_line":"                        project is deleted."},{"line_number":484,"context_line":"        :type cascade: boolean"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_1924da0a","line":481,"range":{"start_line":481,"start_character":63,"end_line":481,"end_character":67},"in_reply_to":"7aa08908_63c28b54","updated":"2016-06-09 09:23:32.000000000","message":"Done","commit_id":"fe37b33d7d1f22d49a00fb6a7a67b77ce6b49cd1"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"871c6f6ccad3bc372e8e4f89c393a7c512bd48a0","unresolved":false,"context_lines":[{"line_number":478,"context_line":"    def delete_project(self, project_id, initiator\u003dNone, cascade\u003dFalse):"},{"line_number":479,"context_line":"        \"\"\"Delete one project or a subtree."},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        :param cascade: If true, the specified project and all it\u0027s"},{"line_number":482,"context_line":"                        sub-projects are deleted. Otherwise, only the specified"},{"line_number":483,"context_line":"                        project is deleted."},{"line_number":484,"context_line":"        :type cascade: boolean"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_63c28b54","line":481,"range":{"start_line":481,"start_character":63,"end_line":481,"end_character":67},"in_reply_to":"7aa08908_fda6210d","updated":"2016-06-09 08:45:36.000000000","message":"++","commit_id":"fe37b33d7d1f22d49a00fb6a7a67b77ce6b49cd1"}]}
