)]}'
{"keystone/assignment/routers.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"51b5ffaf63715a7e071a19d6ab931e06f950ad9f","unresolved":false,"context_lines":[{"line_number":90,"context_line":"            rel\u003d\u0027http://docs.openstack.org/identity/rel/v3/project_user_role\u0027,"},{"line_number":91,"context_line":"            path_vars\u003d{"},{"line_number":92,"context_line":"                \u0027project_id\u0027:"},{"line_number":93,"context_line":"                \u0027http://docs.openstack.org/identity/v3/param/project_id\u0027,"},{"line_number":94,"context_line":"                \u0027role_id\u0027:"},{"line_number":95,"context_line":"                \u0027http://docs.openstack.org/identity/v3/param/role_id\u0027,"},{"line_number":96,"context_line":"                \u0027user_id\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_ed5af11d","line":93,"updated":"2014-08-09 06:25:00.000000000","message":"these links 404","commit_id":"8da1db2a1ace4cee111db1435e91bd7ef7cd3c5d"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6c5cb6439766aaf04688e9bac8896d0bb06baa95","unresolved":false,"context_lines":[{"line_number":109,"context_line":"            mapper, role_controller,"},{"line_number":110,"context_line":"            path\u003d\u0027/projects/{project_id}/users/{user_id}/roles\u0027,"},{"line_number":111,"context_line":"            get_action\u003d\u0027list_grants\u0027,"},{"line_number":112,"context_line":"            rel\u003djson_home.build_v3_resource_relation(\u0027project_user_roles\u0027),"},{"line_number":113,"context_line":"            path_vars\u003d{"},{"line_number":114,"context_line":"                \u0027project_id\u0027: json_home.Parameters.PROJECT_ID,"},{"line_number":115,"context_line":"                \u0027user_id\u0027: json_home.Parameters.USER_ID,"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_ec68a189","line":112,"updated":"2014-08-26 04:34:33.000000000","message":"note that in the API spec, this is project_user_role (no \u0027s\u0027), I suspect the API spec is wrong, as this would conflict with getting a single role.\n\nTossed up: https://review.openstack.org/#/c/116784/","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"}],"keystone/auth/routers.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6c5cb6439766aaf04688e9bac8896d0bb06baa95","unresolved":false,"context_lines":[{"line_number":40,"context_line":"            path\u003d\u0027/auth/tokens/OS-PKI/revoked\u0027,"},{"line_number":41,"context_line":"            get_action\u003d\u0027revocation_list\u0027,"},{"line_number":42,"context_line":"            rel\u003djson_home.build_v3_extension_resource_relation("},{"line_number":43,"context_line":"                \u0027OS-PKI\u0027, \u00271.0\u0027, \u0027revocations\u0027))"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        self._add_resource("},{"line_number":46,"context_line":"            mapper, auth_controller,"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_6c9e5158","line":43,"updated":"2014-08-26 04:34:33.000000000","message":"Is this missing from the spec?\n\napparently its been undocumented for months:\nhttps://bugs.launchpad.net/openstack-api-site/+bug/1304606","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6c5cb6439766aaf04688e9bac8896d0bb06baa95","unresolved":false,"context_lines":[{"line_number":46,"context_line":"            mapper, auth_controller,"},{"line_number":47,"context_line":"            path\u003d\u0027/auth/catalog\u0027,"},{"line_number":48,"context_line":"            get_action\u003d\u0027get_auth_catalog\u0027,"},{"line_number":49,"context_line":"            rel\u003djson_home.build_v3_resource_relation(\u0027auth_catalog\u0027))"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        self._add_resource("},{"line_number":52,"context_line":"            mapper, auth_controller,"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_6cb011f5","line":49,"updated":"2014-08-26 04:34:33.000000000","message":"I assume it\u0027s up to Jamie to add these to https://review.openstack.org/#/c/115423 ? or anyone can in a followup patch.\n\nseems reasonable","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"}],"keystone/identity/routers.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d635a53108a4a5f300bf1e73741363c4420f1c01","unresolved":false,"context_lines":[{"line_number":50,"context_line":"            mapper, user_controller,"},{"line_number":51,"context_line":"            path\u003d\u0027/groups/{group_id}/users\u0027,"},{"line_number":52,"context_line":"            get_action\u003d\u0027list_users_in_group\u0027,"},{"line_number":53,"context_line":"            rel\u003djson_home.build_v3_resource_relation(\u0027group_users\u0027),"},{"line_number":54,"context_line":"            path_vars\u003d{"},{"line_number":55,"context_line":"                \u0027group_id\u0027: json_home.Parameters.GROUP_ID,"},{"line_number":56,"context_line":"            })"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_0ada864b","line":53,"updated":"2014-08-22 06:03:45.000000000","message":"Where do the passed in values come from?\nI know they are going to docs.o.org, but if I type this into the URL from jsonhome, i\u0027m 404\u0027ing.\n\nI was expecting a link to: http://docs.openstack.org/api/openstack-identity-service/3/content/list-users-who-are-members-of-a-group-get-groupsgroup_idusers.html or something similar.\n\nDo you have a full list of these values?","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"b877b939dfafd61d8b31717e8a837023251987c6","unresolved":false,"context_lines":[{"line_number":50,"context_line":"            mapper, user_controller,"},{"line_number":51,"context_line":"            path\u003d\u0027/groups/{group_id}/users\u0027,"},{"line_number":52,"context_line":"            get_action\u003d\u0027list_users_in_group\u0027,"},{"line_number":53,"context_line":"            rel\u003djson_home.build_v3_resource_relation(\u0027group_users\u0027),"},{"line_number":54,"context_line":"            path_vars\u003d{"},{"line_number":55,"context_line":"                \u0027group_id\u0027: json_home.Parameters.GROUP_ID,"},{"line_number":56,"context_line":"            })"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_9f2ec48a","line":53,"in_reply_to":"1abeadc6_0ada864b","updated":"2014-08-22 14:40:46.000000000","message":"Steve - The relationship strings are specified in the identity-api v3 spec: https://review.openstack.org/#/c/109881/","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"851a8c1ffc4e95288746c7a716e49091e864248e","unresolved":false,"context_lines":[{"line_number":50,"context_line":"            mapper, user_controller,"},{"line_number":51,"context_line":"            path\u003d\u0027/groups/{group_id}/users\u0027,"},{"line_number":52,"context_line":"            get_action\u003d\u0027list_users_in_group\u0027,"},{"line_number":53,"context_line":"            rel\u003djson_home.build_v3_resource_relation(\u0027group_users\u0027),"},{"line_number":54,"context_line":"            path_vars\u003d{"},{"line_number":55,"context_line":"                \u0027group_id\u0027: json_home.Parameters.GROUP_ID,"},{"line_number":56,"context_line":"            })"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_945750ca","line":53,"in_reply_to":"1abeadc6_9f2ec48a","updated":"2014-08-25 13:39:19.000000000","message":"approved!","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"}],"keystone/tests/test_versions.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"851a8c1ffc4e95288746c7a716e49091e864248e","unresolved":false,"context_lines":[{"line_number":119,"context_line":"    json_home.build_v3_resource_relation(\u0027auth_projects\u0027): {"},{"line_number":120,"context_line":"        \u0027href\u0027: \u0027/auth/projects\u0027},"},{"line_number":121,"context_line":"    json_home.build_v3_resource_relation(\u0027auth_domains\u0027): {"},{"line_number":122,"context_line":"        \u0027href\u0027: \u0027/auth/domains\u0027},"},{"line_number":123,"context_line":"    json_home.build_v3_resource_relation(\u0027domain_group_role\u0027): {"},{"line_number":124,"context_line":"        \u0027href-template\u0027:"},{"line_number":125,"context_line":"        \u0027/domains/{domain_id}/groups/{group_id}/roles/{role_id}\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"1abeadc6_940e70e4","line":122,"updated":"2014-08-25 13:39:19.000000000","message":"that was fast","commit_id":"867f3ec7edb6b68ba7f2fbac2942879edfe8928d"}]}
