)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"0defe1fb1e2f1483c10e0ceff32ee4a75c9a1285","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Parent:     da39d9e0 (Merge \"Updated from global requirements\")"},{"line_number":2,"context_line":"Author:     Kahou Lei \u003ckahou82@gmail.com\u003e"},{"line_number":3,"context_line":"AuthorDate: 2015-05-30 00:04:25 -0700"},{"line_number":4,"context_line":"Commit:     Kahou Lei \u003ckahou82@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-05-30 00:08:00 -0700"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7a016987_be6011a6","line":2,"updated":"2015-05-30 07:26:25.000000000","message":"Commit message line max length is 72 characters\n\n\n[1] https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"a438ffa90bbd39dad45097798df9b178ce08d897"},{"author":{"_account_id":17096,"name":"Aditi Rajagopal","email":"arajagopal@us.ibm.com","username":"aditirajagopal"},"change_message_id":"cdc8cb5c1c99342742419e552d2cf0f66fc27697","unresolved":false,"context_lines":[{"line_number":10,"context_line":"returns ValueError exception from the dict to user."},{"line_number":11,"context_line":"In order to provide more meaningful error, Neutron client"},{"line_number":12,"context_line":"should catch the ValueError and return a meaningful"},{"line_number":13,"context_line":"error instead."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Steps to reproduce:"},{"line_number":16,"context_line":"1. neutron port-create --fixed-ip 10.0.0.4 private"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"da20952f_9251ed38","line":13,"updated":"2015-08-28 20:07:46.000000000","message":"Please consider rewording your commit message. Here is a suggestion:\n\n\"Before, if the fixed-ip was invalid, the neutron client would return a ValueError exception from the dict to the user. This patch enables the neutronclient to catch the ValueError and return a more meaningful error message.\"","commit_id":"b8b5bc4de8cd10eaaacf5e30790ae32efcc773b0"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"f4f1a2cb550c701f5a5ff1ccc30aab4d6df2aff9","unresolved":false,"context_lines":[{"line_number":10,"context_line":"returns ValueError exception from the dict to user."},{"line_number":11,"context_line":"In order to provide more meaningful error, Neutron client"},{"line_number":12,"context_line":"should catch the ValueError and return a meaningful"},{"line_number":13,"context_line":"error instead."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Steps to reproduce:"},{"line_number":16,"context_line":"1. neutron port-create --fixed-ip 10.0.0.4 private"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"fa80f949_a83c0b94","line":13,"in_reply_to":"da20952f_9251ed38","updated":"2015-11-04 01:45:10.000000000","message":"+1","commit_id":"b8b5bc4de8cd10eaaacf5e30790ae32efcc773b0"}],"neutronclient/neutron/v2_0/port.py":[{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"0defe1fb1e2f1483c10e0ceff32ee4a75c9a1285","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            except ValueError:"},{"line_number":82,"context_line":"                raise exceptions.NeutronCLIError(message\u003d\\"},{"line_number":83,"context_line":"                      \"Invalid fixed-ip value.\""},{"line_number":84,"context_line":"                      \" Expect --fixed-ip\u003d\u003cip address\u003e\")"},{"line_number":85,"context_line":"            if \u0027subnet_id\u0027 in ip_dict:"},{"line_number":86,"context_line":"                subnet_name_id \u003d ip_dict[\u0027subnet_id\u0027]"},{"line_number":87,"context_line":"                _subnet_id \u003d neutronV20.find_resourceid_by_name_or_id("}],"source_content_type":"text/x-python","patch_set":2,"id":"7a016987_5e591dfc","line":84,"updated":"2015-05-30 07:26:25.000000000","message":"sure? According to bug description, it should be:\n\n  --fixed-ip ip_address\u003d\u003eip_address\u003e\n\nMoreover --fixed-ip supports also subnet_id as key","commit_id":"a438ffa90bbd39dad45097798df9b178ce08d897"},{"author":{"_account_id":14605,"name":"vikram.choudhary","email":"vikschw@gmail.com","username":"vikram.choudhary"},"change_message_id":"eaaca6d56a579c9d2a336c03666344c38b6437d4","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                ip_dict \u003d utils.str2dict(ip_spec)"},{"line_number":81,"context_line":"            except ValueError:"},{"line_number":82,"context_line":"                msg \u003d \"Invalid fixed-ip format.\" \\"},{"line_number":83,"context_line":"                      \"Expect --fixed-ip ip_address\u003d\u003cip\u003e\""},{"line_number":84,"context_line":"                raise exceptions.NeutronCLIError(message\u003dmsg)"},{"line_number":85,"context_line":"            if \u0027subnet_id\u0027 in ip_dict:"},{"line_number":86,"context_line":"                subnet_name_id \u003d ip_dict[\u0027subnet_id\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"5afe65bd_1658a531","line":83,"updated":"2015-06-03 03:02:34.000000000","message":"I feel we can follow one common format for displaying error. IMO, https://review.openstack.org/#/c/187109/ has better format. Can you plz, reword it as \"invalid fixed-ip format, expected format: --fixed-ip ip_address\"","commit_id":"17a36179eec8b939f48e55563a53fc5808eb06cc"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"1c7473fd3bb0c07b1964ad56c29f005083a5d4aa","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        for ip_spec in parsed_args.fixed_ip:"},{"line_number":79,"context_line":"            try:"},{"line_number":80,"context_line":"                ip_dict \u003d utils.str2dict(ip_spec)"},{"line_number":81,"context_line":"            except ValueError:"},{"line_number":82,"context_line":"                msg \u003d \"invalid fixed-ip format, \" \\"},{"line_number":83,"context_line":"                      \"expected format: --fixed-ip ip_address\u003d\u003cip address\u003e\""},{"line_number":84,"context_line":"                raise exceptions.NeutronCLIError(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":7,"id":"1af86dd1_15bfb2d1","line":81,"updated":"2015-06-12 08:16:31.000000000","message":"https://review.openstack.org/#/c/187109 is merged.\nstr2dict now raises ArgumentTypeError, so you need to update the exception type.","commit_id":"b8b5bc4de8cd10eaaacf5e30790ae32efcc773b0"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"1c7473fd3bb0c07b1964ad56c29f005083a5d4aa","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                ip_dict \u003d utils.str2dict(ip_spec)"},{"line_number":81,"context_line":"            except ValueError:"},{"line_number":82,"context_line":"                msg \u003d \"invalid fixed-ip format, \" \\"},{"line_number":83,"context_line":"                      \"expected format: --fixed-ip ip_address\u003d\u003cip address\u003e\""},{"line_number":84,"context_line":"                raise exceptions.NeutronCLIError(message\u003dmsg)"},{"line_number":85,"context_line":"            if \u0027subnet_id\u0027 in ip_dict:"},{"line_number":86,"context_line":"                subnet_name_id \u003d ip_dict[\u0027subnet_id\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1af86dd1_158d7231","line":83,"updated":"2015-06-12 08:16:31.000000000","message":"Precisely speaking, the message is not correct.\nThe full format of --fixed-ip is \"subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e\" even though subnet_id is optional.","commit_id":"b8b5bc4de8cd10eaaacf5e30790ae32efcc773b0"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"6e74f00079607d80db129c0af25277311f180852","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                ip_dict \u003d utils.str2dict(ip_spec)"},{"line_number":81,"context_line":"            except ValueError:"},{"line_number":82,"context_line":"                msg \u003d \"invalid fixed-ip format, \" \\"},{"line_number":83,"context_line":"                      \"expected format: --fixed-ip ip_address\u003d\u003cip address\u003e\""},{"line_number":84,"context_line":"                raise exceptions.NeutronCLIError(message\u003dmsg)"},{"line_number":85,"context_line":"            if \u0027subnet_id\u0027 in ip_dict:"},{"line_number":86,"context_line":"                subnet_name_id \u003d ip_dict[\u0027subnet_id\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa80f949_2d222aba","line":83,"in_reply_to":"1af86dd1_158d7231","updated":"2015-11-05 13:40:37.000000000","message":"I think it would be better to refer to the help text so the argument format doesn\u0027t need to be duplicated and maintained here.","commit_id":"b8b5bc4de8cd10eaaacf5e30790ae32efcc773b0"}]}
