)]}'
{"ironicclient/common/base.py":[{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"9c430e8a5f67b88277828623a677013177038ee3","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        :raises exc.ValidationError: For invalid resource_id arg value."},{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \u0027The argument resource_id cannot be None or empty string\u0027)"},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"da4df55a_ea89d9cb","line":78,"updated":"2016-12-22 19:21:25.000000000","message":"Maybe\n\n if resource_id in (\"\", None):","commit_id":"36a752ad2503455fa93ef9b85d376bd188dcecf5"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"40996ec702e2a7a7e9c63b5eb5689adf689304b9","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        :raises exc.ValidationError: For invalid resource_id arg value."},{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \u0027The argument resource_id cannot be None or empty string\u0027)"},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"da4df55a_2a820195","line":78,"in_reply_to":"da4df55a_ea89d9cb","updated":"2016-12-22 19:24:24.000000000","message":"Meh, any falsy value is going to be invalid here, though what you have matches the error message better.","commit_id":"36a752ad2503455fa93ef9b85d376bd188dcecf5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"28f86eddd60b16ae16dec6a0364b61b9a686962e","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        :raises exc.ValidationError: For invalid resource_id arg value."},{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The argument resource_id is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"}],"source_content_type":"text/x-python","patch_set":4,"id":"da4df55a_897cd273","line":78,"updated":"2016-12-23 01:08:22.000000000","message":"My suggestion is to do a similar check [1] that the CLI does (although in this case it can also be None), so we can at least be consistent.\n\nbonus points (if it makes sense, I haven\u0027t looked into it) -- remove the check at the CLI level and just check it here.\n\n[1] https://github.com/openstack/python-ironicclient/blob/b34c56535b34cbd769ac92132d23bd0102a3096b/ironicclient/common/utils.py#L278","commit_id":"e65a9e4bb00a4ec53bf65c92bb4b02593e24d911"},{"author":{"_account_id":18062,"name":"Maxime Belanger","email":"mbelanger@internap.com","username":"mbelanger"},"change_message_id":"5b76d5d9063cfa74464dc8975bd2951c14a96ea0","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        :raises exc.ValidationError: For invalid resource_id arg value."},{"line_number":76,"context_line":"        \"\"\""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The argument resource_id is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"}],"source_content_type":"text/x-python","patch_set":4,"id":"da4df55a_a3199b7b","line":78,"in_reply_to":"da4df55a_897cd273","updated":"2016-12-23 14:14:02.000000000","message":"I think the arg.strip() at the command line makes a lot of sense. But in the API if \"  \" is the node_id then it will pass it to the ironic api and return a 404 and that IMO is correct.\n\nMy goal was to be able to validate that resource_id was not returning False when going truth validation (if not) because of this line used in list and get method:\nhttps://github.com/openstack/python-ironicclient/blob/b34c56535b34cbd769ac92132d23bd0102a3096b/ironicclient/common/base.py#L55","commit_id":"e65a9e4bb00a4ec53bf65c92bb4b02593e24d911"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"28f86eddd60b16ae16dec6a0364b61b9a686962e","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The argument resource_id is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        if fields is not None:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da4df55a_090462be","line":80,"updated":"2016-12-23 01:08:22.000000000","message":"the problem with \u0027resource_id\u0027, is that the python API call doesn\u0027t have \u0027resource_id\u0027. Eg, in your case, it was node.get(node_id). Maybe \u0027The identifier argument is invalid.\u0027 ?","commit_id":"e65a9e4bb00a4ec53bf65c92bb4b02593e24d911"},{"author":{"_account_id":18062,"name":"Maxime Belanger","email":"mbelanger@internap.com","username":"mbelanger"},"change_message_id":"15f409f42efa1a97bbf5fcc9920a3a99af1a80fb","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The argument resource_id is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        if fields is not None:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da4df55a_23f76bf6","line":80,"in_reply_to":"da4df55a_090462be","updated":"2016-12-23 14:15:30.000000000","message":"Done","commit_id":"e65a9e4bb00a4ec53bf65c92bb4b02593e24d911"},{"author":{"_account_id":18062,"name":"Maxime Belanger","email":"mbelanger@internap.com","username":"mbelanger"},"change_message_id":"5b76d5d9063cfa74464dc8975bd2951c14a96ea0","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The argument resource_id is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        if fields is not None:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da4df55a_4369cfbd","line":80,"in_reply_to":"da4df55a_090462be","updated":"2016-12-23 14:14:02.000000000","message":"I agree with a more generic message.","commit_id":"e65a9e4bb00a4ec53bf65c92bb4b02593e24d911"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fb202e186adee45cc2b898526fdd8f658cad558f","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The indentifier argument is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        if fields is not None:"}],"source_content_type":"text/x-python","patch_set":6,"id":"da4df55a_e778f4f4","line":80,"updated":"2016-12-25 19:44:56.000000000","message":"s/indentifier/identifier/ :)","commit_id":"7c6db24a02b4e158f2de89372c6dd99f317a54f0"},{"author":{"_account_id":18062,"name":"Maxime Belanger","email":"mbelanger@internap.com","username":"mbelanger"},"change_message_id":"bf3701a747a1115aadeb8bf248f1f7265b157f33","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if not resource_id:"},{"line_number":79,"context_line":"            raise exc.ValidationError("},{"line_number":80,"context_line":"                \"The indentifier argument is invalid. \""},{"line_number":81,"context_line":"                \"Value provided: {!r}\".format(resource_id))"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        if fields is not None:"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba5201f7_ba93ceff","line":80,"in_reply_to":"da4df55a_e778f4f4","updated":"2017-01-09 13:07:54.000000000","message":"Done","commit_id":"7c6db24a02b4e158f2de89372c6dd99f317a54f0"}]}
