)]}'
{"doc/source/cli/data/keystone.csv":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d92c3d1b041bdd66b55c8db41f3ec82e53e89615","unresolved":false,"context_lines":[{"line_number":11,"context_line":"role-create,role create,Create new role.\r"},{"line_number":12,"context_line":"role-delete,role delete,Delete role.\r"},{"line_number":13,"context_line":"role-get,role show,Display role details.\r"},{"line_number":14,"context_line":"role-list,role list,List all roles.\r"},{"line_number":15,"context_line":"service-create,service create,Add service to Service Catalog.\r"},{"line_number":16,"context_line":"service-delete,service delete,Delete service from Service Catalog.\r"},{"line_number":17,"context_line":"service-get,service show,Display service from Service Catalog.\r"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"9fdfeff1_f777199f","side":"PARENT","line":14,"updated":"2019-02-15 16:09:44.000000000","message":"undo this change","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"}],"openstackclient/identity/v2_0/role.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"857481fc91e7bac2b9f51293adc8793e389b2b07","unresolved":false,"context_lines":[{"line_number":179,"context_line":"        if not parsed_args.user and not parsed_args.project:"},{"line_number":180,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027)"},{"line_number":181,"context_line":"            data \u003d identity_client.roles.list()"},{"line_number":182,"context_line":"        elif parsed_args.user and parsed_args.project:"},{"line_number":183,"context_line":"            user \u003d utils.find_resource("},{"line_number":184,"context_line":"                identity_client.users,"},{"line_number":185,"context_line":"                parsed_args.user,"},{"line_number":186,"context_line":"            )"},{"line_number":187,"context_line":"            project \u003d utils.find_resource("},{"line_number":188,"context_line":"                identity_client.projects,"},{"line_number":189,"context_line":"                parsed_args.project,"},{"line_number":190,"context_line":"            )"},{"line_number":191,"context_line":"            _deprecated()"},{"line_number":192,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"        elif parsed_args.user:"},{"line_number":195,"context_line":"            user \u003d utils.find_resource("}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_d20b0b7a","side":"PARENT","line":192,"range":{"start_line":182,"start_character":8,"end_line":192,"end_character":76},"updated":"2019-02-15 11:00:12.000000000","message":"It is not the whole RoleList command that is deprecated, it is only this part. `openstack role list` is used for listing role *names* which is different than role *assignments*.","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"359697379f3bbf38d114cf8e21cad65f56213d0c","unresolved":false,"context_lines":[{"line_number":179,"context_line":"        if not parsed_args.user and not parsed_args.project:"},{"line_number":180,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027)"},{"line_number":181,"context_line":"            data \u003d identity_client.roles.list()"},{"line_number":182,"context_line":"        elif parsed_args.user and parsed_args.project:"},{"line_number":183,"context_line":"            user \u003d utils.find_resource("},{"line_number":184,"context_line":"                identity_client.users,"},{"line_number":185,"context_line":"                parsed_args.user,"},{"line_number":186,"context_line":"            )"},{"line_number":187,"context_line":"            project \u003d utils.find_resource("},{"line_number":188,"context_line":"                identity_client.projects,"},{"line_number":189,"context_line":"                parsed_args.project,"},{"line_number":190,"context_line":"            )"},{"line_number":191,"context_line":"            _deprecated()"},{"line_number":192,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"        elif parsed_args.user:"},{"line_number":195,"context_line":"            user \u003d utils.find_resource("}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_9d2d5eff","side":"PARENT","line":192,"range":{"start_line":182,"start_character":8,"end_line":192,"end_character":76},"in_reply_to":"9fdfeff1_1752dd13","updated":"2019-02-19 07:20:31.000000000","message":"Done","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d92c3d1b041bdd66b55c8db41f3ec82e53e89615","unresolved":false,"context_lines":[{"line_number":179,"context_line":"        if not parsed_args.user and not parsed_args.project:"},{"line_number":180,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027)"},{"line_number":181,"context_line":"            data \u003d identity_client.roles.list()"},{"line_number":182,"context_line":"        elif parsed_args.user and parsed_args.project:"},{"line_number":183,"context_line":"            user \u003d utils.find_resource("},{"line_number":184,"context_line":"                identity_client.users,"},{"line_number":185,"context_line":"                parsed_args.user,"},{"line_number":186,"context_line":"            )"},{"line_number":187,"context_line":"            project \u003d utils.find_resource("},{"line_number":188,"context_line":"                identity_client.projects,"},{"line_number":189,"context_line":"                parsed_args.project,"},{"line_number":190,"context_line":"            )"},{"line_number":191,"context_line":"            _deprecated()"},{"line_number":192,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"        elif parsed_args.user:"},{"line_number":195,"context_line":"            user \u003d utils.find_resource("}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_1752dd13","side":"PARENT","line":192,"range":{"start_line":182,"start_character":8,"end_line":192,"end_character":76},"in_reply_to":"9fdfeff1_d20b0b7a","updated":"2019-02-15 16:09:44.000000000","message":"Right, this if block and the other two below should be removed. Look for calls to the `_deprecated()` function and only remove those if blocks","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9a461525bafb221765ad3220eb82533860ff9e55","unresolved":false,"context_lines":[{"line_number":149,"context_line":"    _description \u003d _(\"List roles\")"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"    def get_parser(self, prog_name):"},{"line_number":152,"context_line":"        parser \u003d super(ListRole, self).get_parser(prog_name)"},{"line_number":153,"context_line":"        parser.add_argument("},{"line_number":154,"context_line":"            \u0027--project\u0027,"},{"line_number":155,"context_line":"            metavar\u003d\u0027\u003cproject\u003e\u0027,"},{"line_number":156,"context_line":"            help\u003d_(\u0027Filter roles by \u003cproject\u003e (name or ID)\u0027),"},{"line_number":157,"context_line":"        )"},{"line_number":158,"context_line":"        parser.add_argument("},{"line_number":159,"context_line":"            \u0027--user\u0027,"},{"line_number":160,"context_line":"            metavar\u003d\u0027\u003cuser\u003e\u0027,"},{"line_number":161,"context_line":"            help\u003d_(\u0027Filter roles by \u003cuser\u003e (name or ID)\u0027),"},{"line_number":162,"context_line":"        )"},{"line_number":163,"context_line":"        return parser"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_c328f698","line":162,"range":{"start_line":152,"start_character":0,"end_line":162,"end_character":9},"updated":"2019-02-18 18:11:59.000000000","message":"Can these be removed now, too? Looking at Henry\u0027s comment, these don\u0027t appear to be needed anymore.","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"359697379f3bbf38d114cf8e21cad65f56213d0c","unresolved":false,"context_lines":[{"line_number":149,"context_line":"    _description \u003d _(\"List roles\")"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"    def get_parser(self, prog_name):"},{"line_number":152,"context_line":"        parser \u003d super(ListRole, self).get_parser(prog_name)"},{"line_number":153,"context_line":"        parser.add_argument("},{"line_number":154,"context_line":"            \u0027--project\u0027,"},{"line_number":155,"context_line":"            metavar\u003d\u0027\u003cproject\u003e\u0027,"},{"line_number":156,"context_line":"            help\u003d_(\u0027Filter roles by \u003cproject\u003e (name or ID)\u0027),"},{"line_number":157,"context_line":"        )"},{"line_number":158,"context_line":"        parser.add_argument("},{"line_number":159,"context_line":"            \u0027--user\u0027,"},{"line_number":160,"context_line":"            metavar\u003d\u0027\u003cuser\u003e\u0027,"},{"line_number":161,"context_line":"            help\u003d_(\u0027Filter roles by \u003cuser\u003e (name or ID)\u0027),"},{"line_number":162,"context_line":"        )"},{"line_number":163,"context_line":"        return parser"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_3d323260","line":162,"range":{"start_line":152,"start_character":0,"end_line":162,"end_character":9},"in_reply_to":"9fdfeff1_c328f698","updated":"2019-02-19 07:20:31.000000000","message":"Done","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9a461525bafb221765ad3220eb82533860ff9e55","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        # No user or project specified, list all roles in the system"},{"line_number":171,"context_line":"        if not parsed_args.user and not parsed_args.project:"},{"line_number":172,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027)"},{"line_number":173,"context_line":"            data \u003d identity_client.roles.list()"},{"line_number":174,"context_line":"        elif parsed_args.user:"},{"line_number":175,"context_line":"            user \u003d utils.find_resource("},{"line_number":176,"context_line":"                identity_client.users,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_2343026f","line":173,"range":{"start_line":173,"start_character":12,"end_line":173,"end_character":47},"updated":"2019-02-18 18:11:59.000000000","message":"If I\u0027m understanding Henry\u0027s comment above correctly, this should be the only place where we attempt to populate `data`.","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"359697379f3bbf38d114cf8e21cad65f56213d0c","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        # No user or project specified, list all roles in the system"},{"line_number":171,"context_line":"        if not parsed_args.user and not parsed_args.project:"},{"line_number":172,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027)"},{"line_number":173,"context_line":"            data \u003d identity_client.roles.list()"},{"line_number":174,"context_line":"        elif parsed_args.user:"},{"line_number":175,"context_line":"            user \u003d utils.find_resource("},{"line_number":176,"context_line":"                identity_client.users,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_fd3b4a36","line":173,"range":{"start_line":173,"start_character":12,"end_line":173,"end_character":47},"in_reply_to":"9fdfeff1_2343026f","updated":"2019-02-19 07:20:31.000000000","message":"Done","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9a461525bafb221765ad3220eb82533860ff9e55","unresolved":false,"context_lines":[{"line_number":181,"context_line":"                    identity_client.projects,"},{"line_number":182,"context_line":"                    auth_ref.project_id"},{"line_number":183,"context_line":"                )"},{"line_number":184,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":185,"context_line":"        elif parsed_args.project:"},{"line_number":186,"context_line":"            project \u003d utils.find_resource("},{"line_number":187,"context_line":"                identity_client.projects,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_c37a36b9","line":184,"range":{"start_line":184,"start_character":12,"end_line":184,"end_character":76},"updated":"2019-02-18 18:11:59.000000000","message":"I think this needs to be removed as well.","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"359697379f3bbf38d114cf8e21cad65f56213d0c","unresolved":false,"context_lines":[{"line_number":181,"context_line":"                    identity_client.projects,"},{"line_number":182,"context_line":"                    auth_ref.project_id"},{"line_number":183,"context_line":"                )"},{"line_number":184,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":185,"context_line":"        elif parsed_args.project:"},{"line_number":186,"context_line":"            project \u003d utils.find_resource("},{"line_number":187,"context_line":"                identity_client.projects,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_1d396e3e","line":184,"range":{"start_line":184,"start_character":12,"end_line":184,"end_character":76},"in_reply_to":"9fdfeff1_c37a36b9","updated":"2019-02-19 07:20:31.000000000","message":"Done","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9a461525bafb221765ad3220eb82533860ff9e55","unresolved":false,"context_lines":[{"line_number":192,"context_line":"                    identity_client.users,"},{"line_number":193,"context_line":"                    auth_ref.user_id"},{"line_number":194,"context_line":"                )"},{"line_number":195,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"        if parsed_args.user or parsed_args.project:"},{"line_number":198,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027, \u0027Project\u0027, \u0027User\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_63490a8d","line":195,"range":{"start_line":195,"start_character":12,"end_line":195,"end_character":76},"updated":"2019-02-18 18:11:59.000000000","message":"Same comment here.","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"359697379f3bbf38d114cf8e21cad65f56213d0c","unresolved":false,"context_lines":[{"line_number":192,"context_line":"                    identity_client.users,"},{"line_number":193,"context_line":"                    auth_ref.user_id"},{"line_number":194,"context_line":"                )"},{"line_number":195,"context_line":"            data \u003d identity_client.roles.roles_for_user(user.id, project.id)"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"        if parsed_args.user or parsed_args.project:"},{"line_number":198,"context_line":"            columns \u003d (\u0027ID\u0027, \u0027Name\u0027, \u0027Project\u0027, \u0027User\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_7d119aaf","line":195,"range":{"start_line":195,"start_character":12,"end_line":195,"end_character":76},"in_reply_to":"9fdfeff1_63490a8d","updated":"2019-02-19 07:20:31.000000000","message":"Done","commit_id":"b8fbc0bcd3bf76f6f6432603da0019a180dd5855"}],"openstackclient/tests/unit/identity/v2_0/test_role.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d92c3d1b041bdd66b55c8db41f3ec82e53e89615","unresolved":false,"context_lines":[{"line_number":268,"context_line":"        self.roles_mock.delete.assert_called_once_with(self.fake_role.id)"},{"line_number":269,"context_line":""},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"class TestRoleList(TestRole):"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"    def setUp(self):"},{"line_number":274,"context_line":"        super(TestRoleList, self).setUp()"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_973d6dbc","side":"PARENT","line":271,"updated":"2019-02-15 16:09:44.000000000","message":"undo this change","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"}],"releasenotes/notes/remove_deprecated_role_list_by_project_and_user-2c98360070dd48b9.yaml":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"1e7b4cc5921afe39c4a1044dcbfd63f536f4ccdd","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removed the deprecated `openstack role list` command filtered with `project` and `user`."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9fdfeff1_b665dc1f","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":92},"updated":"2019-02-19 14:18:25.000000000","message":"Removed the deprecated filter options `project` and `user` in the `openstack role list` command.","commit_id":"8f524d5363fda195488b899b51241b8ac1a1035a"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"e73fe517ca431f33a55346f4b7aabd47953aa202","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removed the deprecated `openstack role list` command filtered with `project` and `user`."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9fdfeff1_edbab2be","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":92},"in_reply_to":"9fdfeff1_b665dc1f","updated":"2019-02-19 15:24:06.000000000","message":"Done","commit_id":"8f524d5363fda195488b899b51241b8ac1a1035a"}],"setup.cfg":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d92c3d1b041bdd66b55c8db41f3ec82e53e89615","unresolved":false,"context_lines":[{"line_number":180,"context_line":"    role_add \u003d openstackclient.identity.v2_0.role:AddRole"},{"line_number":181,"context_line":"    role_create \u003d openstackclient.identity.v2_0.role:CreateRole"},{"line_number":182,"context_line":"    role_delete \u003d openstackclient.identity.v2_0.role:DeleteRole"},{"line_number":183,"context_line":"    role_list \u003d openstackclient.identity.v2_0.role:ListRole"},{"line_number":184,"context_line":"    role_remove \u003d openstackclient.identity.v2_0.role:RemoveRole"},{"line_number":185,"context_line":"    role_show \u003d openstackclient.identity.v2_0.role:ShowRole"},{"line_number":186,"context_line":"    role_assignment_list \u003d openstackclient.identity.v2_0.role_assignment:ListRoleAssignment"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"9fdfeff1_5743853f","side":"PARENT","line":183,"updated":"2019-02-15 16:09:44.000000000","message":"undo this change","commit_id":"0a187905c01f6bc2b9855081ac0042f00715dedf"}]}
