)]}'
{"keystone/common/json_home.py":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"43dfdbfe59a054638d21e4d4195de1894bf928ec","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    STABLE \u003d \u0027stable\u0027"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_12197222","line":68,"updated":"2015-03-17 18:54:22.000000000","message":"I don\u0027t think you should mix a resource operation in this Status class. The is_supported was good as it was before. You might use (is_supported and not is_stable) in wsgi.py.","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"49b4f1a35b84d31dca176838dc9561c764ed4950","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    STABLE \u003d \u0027stable\u0027"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_18a99124","line":68,"updated":"2015-03-17 19:36:40.000000000","message":"this could also be a regular method on the status instance.","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"2a3447509d23cf080f52c894cc80d229d02d8ac3","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    STABLE \u003d \u0027stable\u0027"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_f8cafd44","line":68,"in_reply_to":"9a80dd14_12197222","updated":"2015-03-17 19:28:49.000000000","message":"so it\u0027s a reasonable point to make...although we already monkey with resource data in the translator_urls() method below...","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"4b6d019d86fedc608966eec16cd27829ada91170","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    STABLE \u003d \u0027stable\u0027"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_a2068b83","line":68,"in_reply_to":"9a80dd14_18a99124","updated":"2015-03-18 00:10:21.000000000","message":"doesn\u0027t that make it hard to call without first checking for an invalid status?","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e5ec88de8210ed764dd6bff021c84963e4e21399","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"},{"line_number":72,"context_line":"        if status is cls.STABLE:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_9160f7a5","line":69,"updated":"2015-03-17 22:29:07.000000000","message":"unnecessary parens","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"4b6d019d86fedc608966eec16cd27829ada91170","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def update_resource_data(cls, resource_data, status):"},{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"},{"line_number":72,"context_line":"        if status is cls.STABLE:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_02cd9786","line":69,"in_reply_to":"9a80dd14_9160f7a5","updated":"2015-03-18 00:10:21.000000000","message":"Done","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"49b4f1a35b84d31dca176838dc9561c764ed4950","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"},{"line_number":72,"context_line":"        if status is cls.STABLE:"},{"line_number":73,"context_line":"            # We currently do not add a status if the resource is stable, the"},{"line_number":74,"context_line":"            # absence of the status property can be taken as meaning that the"},{"line_number":75,"context_line":"            # resource is stable."}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_b8b88576","line":72,"updated":"2015-03-17 19:36:40.000000000","message":"suggest do this first since this should be the typical case.","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"4b6d019d86fedc608966eec16cd27829ada91170","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        if (status is cls.DEPRECATED or status is cls.EXPERIMENTAL):"},{"line_number":70,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":71,"context_line":"            return"},{"line_number":72,"context_line":"        if status is cls.STABLE:"},{"line_number":73,"context_line":"            # We currently do not add a status if the resource is stable, the"},{"line_number":74,"context_line":"            # absence of the status property can be taken as meaning that the"},{"line_number":75,"context_line":"            # resource is stable."}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_22c8db74","line":72,"in_reply_to":"9a80dd14_b8b88576","updated":"2015-03-18 00:10:21.000000000","message":"Done","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"49b4f1a35b84d31dca176838dc9561c764ed4950","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            return"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        raise exception.Error(message\u003d_("},{"line_number":79,"context_line":"            \u0027Unexpected status requested for JSON Home response, %s\u0027) % status)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"def translate_urls(json_home, new_prefix):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_b86fa5fb","line":79,"updated":"2015-03-17 19:36:40.000000000","message":"suggest fix this message... \"Unexpected status value %s\".","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"4b6d019d86fedc608966eec16cd27829ada91170","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            return"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        raise exception.Error(message\u003d_("},{"line_number":79,"context_line":"            \u0027Unexpected status requested for JSON Home response, %s\u0027) % status)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"def translate_urls(json_home, new_prefix):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_82d26732","line":79,"in_reply_to":"9a80dd14_b86fa5fb","updated":"2015-03-18 00:10:21.000000000","message":"That seems rather a vague error message...I don\u0027t think I\u0027d know to what item status was unexpected...","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"9c2f3136ebc44c7c392d769db757586756142619","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            # absence of the status property can be taken as meaning that the"},{"line_number":72,"context_line":"            # resource is stable."},{"line_number":73,"context_line":"            return"},{"line_number":74,"context_line":"        if status is cls.DEPRECATED or status is cls.EXPERIMENTAL:"},{"line_number":75,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":76,"context_line":"            return"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_f05be41f","line":74,"updated":"2015-03-18 04:18:26.000000000","message":"why not use \"status in [cls.DEPRECATED, cls.EXPERIMENTAL]\"?","commit_id":"e074b0d60b0cdaddfe43423d5422fdc5cba3b285"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c19d7ba401c991e88e5269eded4461f1db595697","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            # absence of the status property can be taken as meaning that the"},{"line_number":72,"context_line":"            # resource is stable."},{"line_number":73,"context_line":"            return"},{"line_number":74,"context_line":"        if status is cls.DEPRECATED or status is cls.EXPERIMENTAL:"},{"line_number":75,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":76,"context_line":"            return"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9a80dd14_cdcc868d","line":74,"in_reply_to":"9a80dd14_f05be41f","updated":"2015-03-18 07:36:56.000000000","message":"so we *could* use either, but we\u0027d like to show that we expect callers to really define the status they want via the class, i.e.: Status.STABLE, rather than just hard wiring \u0027stable\u0027.  Using the \"is\" test really does ensure it is the same \"object\u0027 being passed, not just equivalence (which is what would be tested using \"in\") -  although, currently with just a simply string it would work both ways.","commit_id":"e074b0d60b0cdaddfe43423d5422fdc5cba3b285"}],"keystone/common/wsgi.py":[{"author":{"_account_id":9142,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@lsd.ufcg.edu.br","username":"samuel-z","inactive":true},"change_message_id":"8a8230cb00b1323362666d7439436e7decb60dd3","unresolved":false,"context_lines":[{"line_number":657,"context_line":"                      get_action\u003dNone, head_action\u003dNone, get_head_action\u003dNone,"},{"line_number":658,"context_line":"                      put_action\u003dNone, post_action\u003dNone, patch_action\u003dNone,"},{"line_number":659,"context_line":"                      delete_action\u003dNone, get_post_action\u003dNone,"},{"line_number":660,"context_line":"                      path_vars\u003dNone, status\u003djson_home.Status.STABLE):"},{"line_number":661,"context_line":"        if get_head_action:"},{"line_number":662,"context_line":"            getattr(controller, get_head_action)  # ensure the attribute exists"},{"line_number":663,"context_line":"            mapper.connect(path, controller\u003dcontroller, action\u003dget_head_action,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_36ccbd61","line":660,"updated":"2015-03-17 13:56:15.000000000","message":"I do not see a benefit on making this default, if we do not add this to the hints as default.\n\nDo we plan to always add it to the hints? If we do not have this on our plans, so this default do not make sense, since it is useless.","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"8075fb25539aa493d6984468177c74b97b52ebc1","unresolved":false,"context_lines":[{"line_number":657,"context_line":"                      get_action\u003dNone, head_action\u003dNone, get_head_action\u003dNone,"},{"line_number":658,"context_line":"                      put_action\u003dNone, post_action\u003dNone, patch_action\u003dNone,"},{"line_number":659,"context_line":"                      delete_action\u003dNone, get_post_action\u003dNone,"},{"line_number":660,"context_line":"                      path_vars\u003dNone, status\u003djson_home.Status.STABLE):"},{"line_number":661,"context_line":"        if get_head_action:"},{"line_number":662,"context_line":"            getattr(controller, get_head_action)  # ensure the attribute exists"},{"line_number":663,"context_line":"            mapper.connect(path, controller\u003dcontroller, action\u003dget_head_action,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_717c7fb6","line":660,"in_reply_to":"9a80dd14_36ccbd61","updated":"2015-03-17 14:16:04.000000000","message":"So I\u0027ll let other chime in here (e.g. bknudson), who felt that this would be more self documenting....","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":9142,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@lsd.ufcg.edu.br","username":"samuel-z","inactive":true},"change_message_id":"8a8230cb00b1323362666d7439436e7decb60dd3","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        else:"},{"line_number":700,"context_line":"            resource_data[\u0027href\u0027] \u003d path"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {}"},{"line_number":705,"context_line":"            resource_data[\u0027hints\u0027][\u0027status\u0027] \u003d status"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_56f05191","line":702,"updated":"2015-03-17 13:56:15.000000000","message":"What if I explicitly marked a resource as Stable ?","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"8075fb25539aa493d6984468177c74b97b52ebc1","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        else:"},{"line_number":700,"context_line":"            resource_data[\u0027href\u0027] \u003d path"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {}"},{"line_number":705,"context_line":"            resource_data[\u0027hints\u0027][\u0027status\u0027] \u003d status"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_f13eafd9","line":702,"in_reply_to":"9a80dd14_56f05191","updated":"2015-03-17 14:16:04.000000000","message":"I plan to put in a separate patch that removes the second part of this patch and causes all APIs to be marked as stable....and then we can argue whether we want that or not :-)","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":9142,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@lsd.ufcg.edu.br","username":"samuel-z","inactive":true},"change_message_id":"8a8230cb00b1323362666d7439436e7decb60dd3","unresolved":false,"context_lines":[{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {}"},{"line_number":705,"context_line":"            resource_data[\u0027hints\u0027][\u0027status\u0027] \u003d status"},{"line_number":706,"context_line":""},{"line_number":707,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":708,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_361bdd1d","line":705,"updated":"2015-03-17 13:56:15.000000000","message":"(nit) These two lines could simply be\n\n    resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"8075fb25539aa493d6984468177c74b97b52ebc1","unresolved":false,"context_lines":[{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {}"},{"line_number":705,"context_line":"            resource_data[\u0027hints\u0027][\u0027status\u0027] \u003d status"},{"line_number":706,"context_line":""},{"line_number":707,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":708,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_31abe71f","line":705,"in_reply_to":"9a80dd14_361bdd1d","updated":"2015-03-17 14:16:04.000000000","message":"Done","commit_id":"061a6987a4cddc5d9d63189f6e1ce8029721e6a3"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"02446b07f3c7d40f109563aee7c42efce3003d91","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        else:"},{"line_number":700,"context_line":"            resource_data[\u0027href\u0027] \u003d path"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":705,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_954f1ebe","line":702,"updated":"2015-03-17 14:29:40.000000000","message":"no need to check if status since passing None here is invalid.\n\nAlso, use \"is not\" rather than !\u003d since the Status values are singletons.","commit_id":"9df26ac8625c7a6d49a56941e76ca0f6740804da"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"02446b07f3c7d40f109563aee7c42efce3003d91","unresolved":false,"context_lines":[{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":707,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_55a3e64e","line":704,"updated":"2015-03-17 14:29:40.000000000","message":"actually, all this logic could be in json_home.Status:\n\n json_home.Status.update_resource_data(resource_data)\n\nthen don\u0027t need another branch in this method.","commit_id":"9df26ac8625c7a6d49a56941e76ca0f6740804da"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c3581d1402cf3cb2af3afd5cba52b566acb63e91","unresolved":false,"context_lines":[{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        if status and status !\u003d json_home.Status.STABLE:"},{"line_number":703,"context_line":"            json_home.Status.check_supported(status)"},{"line_number":704,"context_line":"            resource_data[\u0027hints\u0027] \u003d {\u0027status\u0027: status}"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":707,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_aac2f931","line":704,"in_reply_to":"9a80dd14_55a3e64e","updated":"2015-03-17 16:05:19.000000000","message":"Done","commit_id":"9df26ac8625c7a6d49a56941e76ca0f6740804da"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"43dfdbfe59a054638d21e4d4195de1894bf928ec","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        else:"},{"line_number":700,"context_line":"            resource_data[\u0027href\u0027] \u003d path"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        json_home.Status.update_resource_data(resource_data, status)"},{"line_number":703,"context_line":""},{"line_number":704,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":705,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_f2c3fe36","line":702,"updated":"2015-03-17 18:54:22.000000000","message":"I agree we should avoid the previous branch here, but it could be a private method of this very class instead of putting it in json_home.Status.","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"49b4f1a35b84d31dca176838dc9561c764ed4950","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        else:"},{"line_number":700,"context_line":"            resource_data[\u0027href\u0027] \u003d path"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"        json_home.Status.update_resource_data(resource_data, status)"},{"line_number":703,"context_line":""},{"line_number":704,"context_line":"        self.v3_resources.append((rel, resource_data))"},{"line_number":705,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_784c4d9e","line":702,"updated":"2015-03-17 19:36:40.000000000","message":"if update_resource_data were a method then could use status.update_resource_data(resource_data)","commit_id":"2ecb68b94c9d9d5016ff0c6e94ab496af1903987"}],"keystone/tests/unit/test_wsgi.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"02446b07f3c7d40f109563aee7c42efce3003d91","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        self.assertRaises(exception.Error,"},{"line_number":63,"context_line":"                          self.router._add_resource,"},{"line_number":64,"context_line":"                          fake_mapper, fake_controller, fake_path, fake_rel,"},{"line_number":65,"context_line":"                          status\u003duuid.uuid4().hex)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"class BaseWSGITest(tests.TestCase):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_55484687","line":65,"updated":"2015-03-17 14:29:40.000000000","message":"seems like overkill, but it\u0027s python so no static type checking :(.","commit_id":"9df26ac8625c7a6d49a56941e76ca0f6740804da"}]}
