)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"8e59f7cee977bf0885670d52aa6d9bcc7cd7afb3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kanika Singh \u003ckanika.singh@nectechnologies.in\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-03 13:56:44 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Role Assignment was reporting incorrect Inheritance when --names was used. Reason: Dictionary was missing the inheritance key value pair. Hence added elif condition to check for inherited property and add it in the dictionary. Closes bug: #1625230"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ic0d32f3e47ee82015d86cec8b7502a440b66c021"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3a98d1f4_d329b6e7","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":226},"updated":"2016-10-03 08:39:08.000000000","message":"please break this into several lines","commit_id":"b3bf882221e293cfa9eda05db199ebed6d534de7"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"8e59f7cee977bf0885670d52aa6d9bcc7cd7afb3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kanika Singh \u003ckanika.singh@nectechnologies.in\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-03 13:56:44 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Role Assignment was reporting incorrect Inheritance when --names was used. Reason: Dictionary was missing the inheritance key value pair. Hence added elif condition to check for inherited property and add it in the dictionary. Closes bug: #1625230"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ic0d32f3e47ee82015d86cec8b7502a440b66c021"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3a98d1f4_737f02e0","line":7,"range":{"start_line":7,"start_character":227,"end_line":7,"end_character":247},"updated":"2016-10-03 08:39:08.000000000","message":"this should be on a separate line","commit_id":"b3bf882221e293cfa9eda05db199ebed6d534de7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7fcb2bf1aa4704db7e0f4081eb3d0122bbadfb66","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kanika Singh \u003ckanika.singh@nectechnologies.in\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-04 09:10:57 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Role Assignment was reporting incorrect Inheritance when --names"},{"line_number":8,"context_line":"was used. Reason: Dictionary was missing the inheritance key value"},{"line_number":9,"context_line":"pair. Hence added elif condition to check for inherited property"},{"line_number":10,"context_line":"and add it in the dictionary."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3a98d1f4_3dfc3db7","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":64},"updated":"2016-10-04 03:57:30.000000000","message":"the commit messages go:\n\n  \u003cquick one line description\u003e\n  \u003cnew line\u003e\n  \u003csummary\u003e\n  \u003cnew line\u003e\n  \u003cbug reference\u003e\n\nsee more detail here: https://wiki.openstack.org/wiki/GitCommitMessages#Example_2_4","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"3af7b9158d36d2323f5890091480f8975bfc92c6","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kanika Singh \u003ckanika.singh@nectechnologies.in\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-04 09:10:57 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Role Assignment was reporting incorrect Inheritance when --names"},{"line_number":8,"context_line":"was used. Reason: Dictionary was missing the inheritance key value"},{"line_number":9,"context_line":"pair. Hence added elif condition to check for inherited property"},{"line_number":10,"context_line":"and add it in the dictionary."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9a629dbe_c788aac9","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":64},"in_reply_to":"3a98d1f4_3dfc3db7","updated":"2016-11-14 15:49:26.000000000","message":"++","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"3af7b9158d36d2323f5890091480f8975bfc92c6","unresolved":false,"context_lines":[{"line_number":8,"context_line":"was used. Reason: Dictionary was missing the inheritance key value"},{"line_number":9,"context_line":"pair. Hence added elif condition to check for inherited property"},{"line_number":10,"context_line":"and add it in the dictionary."},{"line_number":11,"context_line":"Closes bug: #1625230"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ic0d32f3e47ee82015d86cec8b7502a440b66c021"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9a629dbe_47bbba75","line":13,"range":{"start_line":11,"start_character":0,"end_line":13,"end_character":52},"updated":"2016-11-14 15:49:26.000000000","message":"nit: remove extra space","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"0ebc2994b2329eef6151d0b62d17a03f981b44c5","unresolved":false,"context_lines":[{"line_number":12,"context_line":"This change fixes that behavior and enables the test that was"},{"line_number":13,"context_line":"submitted in the parent patch."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes bug: #1625230"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: Ic0d32f3e47ee82015d86cec8b7502a440b66c021"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3a71b18c_1c578eca","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":10},"updated":"2016-12-07 03:36:19.000000000","message":"Closes-Bug","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"8cf351023778b1cb726b36a3d9c76892c4b08f90","unresolved":false,"context_lines":[{"line_number":12,"context_line":"This change fixes that behavior and enables the test that was"},{"line_number":13,"context_line":"submitted in the parent patch."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes bug: #1625230"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: Ic0d32f3e47ee82015d86cec8b7502a440b66c021"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3a71b18c_b7630241","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":10},"in_reply_to":"3a71b18c_1c578eca","updated":"2016-12-07 12:26:19.000000000","message":"Done","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"}],"keystone/assignment/core.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7fcb2bf1aa4704db7e0f4081eb3d0122bbadfb66","unresolved":false,"context_lines":[{"line_number":1030,"context_line":"                    new_assign[\u0027role_id\u0027] \u003d _role[\u0027id\u0027]"},{"line_number":1031,"context_line":"                    new_assign[\u0027role_name\u0027] \u003d _role[\u0027name\u0027]"},{"line_number":1032,"context_line":"                elif id_type \u003d\u003d \u0027inherited_to_projects\u0027:"},{"line_number":1033,"context_line":"                    new_assign[\u0027inherited_to_projects\u0027] \u003d id_"},{"line_number":1034,"context_line":"            role_assign_list.append(new_assign)"},{"line_number":1035,"context_line":"        return role_assign_list"},{"line_number":1036,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a98d1f4_3d751d63","line":1033,"range":{"start_line":1033,"start_character":58,"end_line":1033,"end_character":61},"updated":"2016-10-04 03:57:30.000000000","message":"inherited_to_projects is a true/false value, which i don\u0027t think is in the _id variable","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"093d1f711edc823579aa7d8d8b068a2fe9a1d692","unresolved":false,"context_lines":[{"line_number":1030,"context_line":"                    new_assign[\u0027role_id\u0027] \u003d _role[\u0027id\u0027]"},{"line_number":1031,"context_line":"                    new_assign[\u0027role_name\u0027] \u003d _role[\u0027name\u0027]"},{"line_number":1032,"context_line":"                elif id_type \u003d\u003d \u0027inherited_to_projects\u0027:"},{"line_number":1033,"context_line":"                    new_assign[\u0027inherited_to_projects\u0027] \u003d id_"},{"line_number":1034,"context_line":"            role_assign_list.append(new_assign)"},{"line_number":1035,"context_line":"        return role_assign_list"},{"line_number":1036,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_012f4688","line":1033,"range":{"start_line":1033,"start_character":58,"end_line":1033,"end_character":61},"in_reply_to":"3a71b18c_a55b3af5","updated":"2016-12-06 14:19:02.000000000","message":"I think what Kanika is doing is right. It\u0027s probably confusing because the id_type and id_ pair is a bad naming for the key,value pairs from the role assignment entity.\n\nid_type is a key in the role assignment dict, while id_ is its correspondent value.\n\nIt is just copying the key,value in the case where the key is \u0027inherited_to_projects\u0027, which makes sense to me.","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"950183f30877cc70a8047557571084628d3a4a9d","unresolved":false,"context_lines":[{"line_number":1030,"context_line":"                    new_assign[\u0027role_id\u0027] \u003d _role[\u0027id\u0027]"},{"line_number":1031,"context_line":"                    new_assign[\u0027role_name\u0027] \u003d _role[\u0027name\u0027]"},{"line_number":1032,"context_line":"                elif id_type \u003d\u003d \u0027inherited_to_projects\u0027:"},{"line_number":1033,"context_line":"                    new_assign[\u0027inherited_to_projects\u0027] \u003d id_"},{"line_number":1034,"context_line":"            role_assign_list.append(new_assign)"},{"line_number":1035,"context_line":"        return role_assign_list"},{"line_number":1036,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_a55b3af5","line":1033,"range":{"start_line":1033,"start_character":58,"end_line":1033,"end_character":61},"in_reply_to":"3a98d1f4_200b3425","updated":"2016-12-05 12:28:10.000000000","message":"the \"project\" value is really the string \"project\", not its ID :)","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":21376,"name":"Kanika Singh","email":"kanika.singh@nectechnologies.in","username":"kanika"},"change_message_id":"8e5be29a02499c6edaec44abe2fb7ff87965a768","unresolved":false,"context_lines":[{"line_number":1030,"context_line":"                    new_assign[\u0027role_id\u0027] \u003d _role[\u0027id\u0027]"},{"line_number":1031,"context_line":"                    new_assign[\u0027role_name\u0027] \u003d _role[\u0027name\u0027]"},{"line_number":1032,"context_line":"                elif id_type \u003d\u003d \u0027inherited_to_projects\u0027:"},{"line_number":1033,"context_line":"                    new_assign[\u0027inherited_to_projects\u0027] \u003d id_"},{"line_number":1034,"context_line":"            role_assign_list.append(new_assign)"},{"line_number":1035,"context_line":"        return role_assign_list"},{"line_number":1036,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a98d1f4_200b3425","line":1033,"range":{"start_line":1033,"start_character":58,"end_line":1033,"end_character":61},"in_reply_to":"3a98d1f4_3d751d63","updated":"2016-10-04 04:43:17.000000000","message":"Thanks for your comment. \nPlease find my understanding below and correct me if I am wrong:\n\ninherited_to_projects have \"projects\" as its value which is in the id_ variable. \n\nThe display result shows formatted inherited value as True/False based on this value of inherited_to_projects\n\nPlease check the value of the variable \"formatted_refs\" in keystone/assignment/controller.py-\u003e def _list_role_assignments","commit_id":"58567605533a6bebda694860cf33c3a1c5c780cf"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"8e02186ed520dac91f69eaf6b28677ea1e4a1064","unresolved":false,"context_lines":[{"line_number":948,"context_line":""},{"line_number":949,"context_line":"        for role_asgmt in role_assignments:"},{"line_number":950,"context_line":"            new_assign \u003d {}"},{"line_number":951,"context_line":"            for id_type, id_ in role_asgmt.items():"},{"line_number":952,"context_line":"                if id_type \u003d\u003d \u0027domain_id\u0027:"},{"line_number":953,"context_line":"                    _domain \u003d self.resource_api.get_domain(id_)"},{"line_number":954,"context_line":"                    new_assign[\u0027domain_id\u0027] \u003d _domain[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a71b18c_32a1eef8","line":951,"range":{"start_line":951,"start_character":16,"end_line":951,"end_character":28},"updated":"2016-12-06 15:17:28.000000000","message":"I can fix this in a followup because it\u0027s a bad naming for when it represents the inherited_to_projects key and its value.","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"0ebc2994b2329eef6151d0b62d17a03f981b44c5","unresolved":false,"context_lines":[{"line_number":948,"context_line":""},{"line_number":949,"context_line":"        for role_asgmt in role_assignments:"},{"line_number":950,"context_line":"            new_assign \u003d {}"},{"line_number":951,"context_line":"            for id_type, id_ in role_asgmt.items():"},{"line_number":952,"context_line":"                if id_type \u003d\u003d \u0027domain_id\u0027:"},{"line_number":953,"context_line":"                    _domain \u003d self.resource_api.get_domain(id_)"},{"line_number":954,"context_line":"                    new_assign[\u0027domain_id\u0027] \u003d _domain[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a71b18c_bc4f7a32","line":951,"range":{"start_line":951,"start_character":16,"end_line":951,"end_character":28},"in_reply_to":"3a71b18c_32a1eef8","updated":"2016-12-07 03:36:19.000000000","message":"yeah, these are pretty awful","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"}],"keystone/tests/unit/test_v3_assignment.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"fc93c6d313886eae0ddd1beef0ddede426c5c04e","unresolved":false,"context_lines":[{"line_number":1733,"context_line":""},{"line_number":1734,"context_line":"        collection_url \u003d (\u0027/role_assignments?include_names\u0026\u0027"},{"line_number":1735,"context_line":"                          \u0027user.id\u003d\u0027 + user[\u0027id\u0027])"},{"line_number":1736,"context_line":"        result \u003d self.get(collection_url)"},{"line_number":1737,"context_line":"        self.assertValidRoleAssignmentListResponse("},{"line_number":1738,"context_line":"            result, expected_length\u003d1, resource_url\u003dcollection_url)"},{"line_number":1739,"context_line":"        self.assertRoleAssignmentInListResponse(result, assignment_names)"},{"line_number":1740,"context_line":""},{"line_number":1741,"context_line":"    def test_list_role_assignments_for_disabled_inheritance_extension(self):"},{"line_number":1742,"context_line":"        \"\"\"Call ``GET /role_assignments with inherited domain grants``."}],"source_content_type":"text/x-python","patch_set":5,"id":"3a71b18c_bc485ab4","line":1739,"range":{"start_line":1736,"start_character":8,"end_line":1739,"end_character":73},"updated":"2016-12-07 03:50:37.000000000","message":"see my remark on the dependent patch, i\u0027d like to see an assertion change here","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"8cf351023778b1cb726b36a3d9c76892c4b08f90","unresolved":false,"context_lines":[{"line_number":1733,"context_line":""},{"line_number":1734,"context_line":"        collection_url \u003d (\u0027/role_assignments?include_names\u0026\u0027"},{"line_number":1735,"context_line":"                          \u0027user.id\u003d\u0027 + user[\u0027id\u0027])"},{"line_number":1736,"context_line":"        result \u003d self.get(collection_url)"},{"line_number":1737,"context_line":"        self.assertValidRoleAssignmentListResponse("},{"line_number":1738,"context_line":"            result, expected_length\u003d1, resource_url\u003dcollection_url)"},{"line_number":1739,"context_line":"        self.assertRoleAssignmentInListResponse(result, assignment_names)"},{"line_number":1740,"context_line":""},{"line_number":1741,"context_line":"    def test_list_role_assignments_for_disabled_inheritance_extension(self):"},{"line_number":1742,"context_line":"        \"\"\"Call ``GET /role_assignments with inherited domain grants``."}],"source_content_type":"text/x-python","patch_set":5,"id":"3a71b18c_3750d25e","line":1739,"range":{"start_line":1736,"start_character":8,"end_line":1739,"end_character":73},"in_reply_to":"3a71b18c_bc485ab4","updated":"2016-12-07 12:26:19.000000000","message":"Done","commit_id":"72fa3d48d0e4c982cd02841f2cf78ba6d59fce3c"}]}
