)]}'
{"openstackclient/network/v2/port.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"809b1aaaf85d2dbeceb7f37191980edc0ad01a3f","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    return tuple(sorted(columns))"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"class BindingProfileAction(argparse.Action):"},{"line_number":68,"context_line":"    \"\"\"A custom action to parse binding profile"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    Ensures that ``dest`` is a dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_56746afc","line":67,"range":{"start_line":67,"start_character":6,"end_line":67,"end_character":26},"updated":"2016-06-19 04:37:11.000000000","message":"would it make sense to put this into parseractions.py? could other commands use it?","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"abc0466542794db23d19a577272f657093f2ac28","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    return tuple(sorted(columns))"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"class BindingProfileAction(argparse.Action):"},{"line_number":68,"context_line":"    \"\"\"A custom action to parse binding profile"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    Ensures that ``dest`` is a dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_cbe40d0f","line":67,"range":{"start_line":67,"start_character":6,"end_line":67,"end_character":26},"in_reply_to":"5a9d85d2_56746afc","updated":"2016-06-20 15:03:47.000000000","message":"I thought about that at first, but then saw this was unique to port binding profile when checking the current neutron client.  So at this point, I\u0027m not aware of other usages.  Regardless, I could still push this into parseractions.py if you\u0027d like.","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"921ec372ac5d730504e80dd782d8ca49b52a6539","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    return tuple(sorted(columns))"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"class BindingProfileAction(argparse.Action):"},{"line_number":68,"context_line":"    \"\"\"A custom action to parse binding profile"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    Ensures that ``dest`` is a dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_349d2466","line":67,"in_reply_to":"5a9d85d2_7f2b0d83","updated":"2016-06-20 20:22:54.000000000","message":"Yes, beyond the name and message this is generic and could be applied elsewhere.  http://docs.openstack.org/developer/networking-ovn/containers.html highlights one use case for JSON input and is what caused me to add this support.  I am attempting to switch networking-ovn over to OSC.","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"775591f036c8e4ef0152e9faafba5ab447bf7538","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    return tuple(sorted(columns))"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"class BindingProfileAction(argparse.Action):"},{"line_number":68,"context_line":"    \"\"\"A custom action to parse binding profile"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    Ensures that ``dest`` is a dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_7f2b0d83","line":67,"in_reply_to":"5a9d85d2_cbe40d0f","updated":"2016-06-20 17:55:35.000000000","message":"(ignoring neutronclient) I don\u0027t see anything here except the error message that is specific to this option.  You attempt to parse JSON, if that fails, attempt to split on \u0027\u003d\u0027, if that fails, punt.\n\nWhat I a_am_ curious to see is how useful putting JSON on the command line turns out to be.","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"775591f036c8e4ef0152e9faafba5ab447bf7538","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            else:"},{"line_number":87,"context_line":"                msg \u003d _(\"Expected \u0027\u003ckey\u003e\u003d\u003cvalue\u003e\u0027 or JSON for binding \""},{"line_number":88,"context_line":"                        \"profile, but got \u0027%(values)s\u0027 with JSON error: \""},{"line_number":89,"context_line":"                        \"%(error)s\") % {\"values\": str(values), \"error\": e}"},{"line_number":90,"context_line":"                raise argparse.ArgumentTypeError(msg)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_bf0c5643","line":89,"updated":"2016-06-20 17:55:35.000000000","message":"I\u0027m not sure spitting back the entire passed value is a good idea if it might be a JSON blob (with errors).  After transforming it will it be an accurate enough representation to be useful in debugging?","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"921ec372ac5d730504e80dd782d8ca49b52a6539","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            else:"},{"line_number":87,"context_line":"                msg \u003d _(\"Expected \u0027\u003ckey\u003e\u003d\u003cvalue\u003e\u0027 or JSON for binding \""},{"line_number":88,"context_line":"                        \"profile, but got \u0027%(values)s\u0027 with JSON error: \""},{"line_number":89,"context_line":"                        \"%(error)s\") % {\"values\": str(values), \"error\": e}"},{"line_number":90,"context_line":"                raise argparse.ArgumentTypeError(msg)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a9d85d2_74bb2cc5","line":89,"in_reply_to":"5a9d85d2_bf0c5643","updated":"2016-06-20 20:22:54.000000000","message":"I agree, I will remove it.","commit_id":"f716863fc2fac319e3327dcd58a79863fbfeb8b7"}]}
