)]}'
{"keystone/resource/core.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"76858ebb150d14c4d338736b304d39a24c90d7a1","unresolved":false,"context_lines":[{"line_number":1058,"context_line":"            self._assert_valid_group_and_option(group, option)"},{"line_number":1059,"context_line":""},{"line_number":1060,"context_line":"            # If a group has been specified, then the request is to"},{"line_number":1061,"context_line":"            # explicitely only update the options in that group - so the config"},{"line_number":1062,"context_line":"            # must not contain anything else. Further, that group must exist in"},{"line_number":1063,"context_line":"            # the original config. Likewise, if an option has been specified,"},{"line_number":1064,"context_line":"            # then the group in the config must only contain that option and it"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_ad72e046","line":1061,"updated":"2015-03-05 22:51:43.000000000","message":"might as well change \"explicitely\" to \"explicitly\"","commit_id":"6f6d3cecadb7434a7b632ed9654b90382a3011be"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"76858ebb150d14c4d338736b304d39a24c90d7a1","unresolved":false,"context_lines":[{"line_number":1078,"context_line":""},{"line_number":1079,"context_line":"                # So we now know we have the right number of entries in the"},{"line_number":1080,"context_line":"                # config that align with a group/option being specified, but we"},{"line_number":1081,"context_line":"                # must also make sure they match."},{"line_number":1082,"context_line":"                if group not in config:"},{"line_number":1083,"context_line":"                    msg \u003d _(\u0027request to update group %(group)s, but config \u0027"},{"line_number":1084,"context_line":"                            \u0027provided contains group %(group_other)s \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_4dd24401","line":1081,"updated":"2015-03-05 22:51:43.000000000","message":"suggest change \"they\" to \"the options\"","commit_id":"6f6d3cecadb7434a7b632ed9654b90382a3011be"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"76858ebb150d14c4d338736b304d39a24c90d7a1","unresolved":false,"context_lines":[{"line_number":1101,"context_line":"                if not self.get_config_with_sensitive_info(domain_id,"},{"line_number":1102,"context_line":"                                                           group, option):"},{"line_number":1103,"context_line":"                    if option:"},{"line_number":1104,"context_line":"                        msg \u003d _(\u0027option %(option)s in group %(group)s\u0027) % {"},{"line_number":1105,"context_line":"                            \u0027group\u0027: group, \u0027option\u0027: option}"},{"line_number":1106,"context_line":"                        raise exception.DomainConfigNotFound("},{"line_number":1107,"context_line":"                            domain_id\u003ddomain_id, group_or_option\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_6d3b8838","line":1104,"updated":"2015-03-05 22:51:43.000000000","message":"this message is copied in lots of places... seems like DomainConfigNotFound could be smarter about building the string from the options instead.","commit_id":"6f6d3cecadb7434a7b632ed9654b90382a3011be"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"76858ebb150d14c4d338736b304d39a24c90d7a1","unresolved":false,"context_lines":[{"line_number":1104,"context_line":"                        msg \u003d _(\u0027option %(option)s in group %(group)s\u0027) % {"},{"line_number":1105,"context_line":"                            \u0027group\u0027: group, \u0027option\u0027: option}"},{"line_number":1106,"context_line":"                        raise exception.DomainConfigNotFound("},{"line_number":1107,"context_line":"                            domain_id\u003ddomain_id, group_or_option\u003dmsg)"},{"line_number":1108,"context_line":"                    else:"},{"line_number":1109,"context_line":"                        msg \u003d _(\u0027group %(group)s\u0027) % {\u0027group\u0027: group}"},{"line_number":1110,"context_line":"                        raise exception.DomainConfigNotFound("}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_4df9647f","line":1107,"updated":"2015-03-05 22:51:43.000000000","message":"these really should be different exceptions (e.g., DomainConfigGroupNotFound, DomainConfigOptionNotFound)","commit_id":"6f6d3cecadb7434a7b632ed9654b90382a3011be"}]}
