)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6956e8d069517e8cac29972ec71544e3c3dcbaba","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"if the status attribute has a None value, such as task_state,"},{"line_number":10,"context_line":"wait_for_status will not work as it only compares the string form,"},{"line_number":11,"context_line":"so convert None value to \u0027none\u0027 in normalize function."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I9010ef6c0eb67c971b71881bd370c77a04346ab6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"29513c60_aefaa23a","line":11,"updated":"2022-10-19 10:38:58.000000000","message":"Are there services that return None? Is this a valid thing to wait for?","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"},{"author":{"_account_id":6671,"name":"Jerry Zhao","email":"xyzjerry@gmail.com","username":"zhaoxinyu"},"change_message_id":"f4faf1dd1d7881fd7238184bdbdd50fd6e880af5","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"if the status attribute has a None value, such as task_state,"},{"line_number":10,"context_line":"wait_for_status will not work as it only compares the string form,"},{"line_number":11,"context_line":"so convert None value to \u0027none\u0027 in normalize function."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I9010ef6c0eb67c971b71881bd370c77a04346ab6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"4848c168_3080103d","line":11,"in_reply_to":"29513c60_aefaa23a","updated":"2022-10-27 02:32:38.000000000","message":"in the commit message there is an example, task_state. there could be a task(volume attach, detach) associated with a resource(vm instance), once task is done, the task_state value will be set to None. we need to wait for the task to finish so another operation can be performed on the resource.","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2a059f7dfb79f5c199a94795f43741d515bf8665","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"if the status attribute has a None value, such as task_state,"},{"line_number":10,"context_line":"wait_for_status will not work as it only compares the string form,"},{"line_number":11,"context_line":"so convert None value to \u0027none\u0027 in normalize function."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I9010ef6c0eb67c971b71881bd370c77a04346ab6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"2dca2be2_e461d388","line":11,"in_reply_to":"4848c168_3080103d","updated":"2022-11-21 16:29:44.000000000","message":"Okay. It\u0027s a bit of an odd way to approach this though. Rather than converting the None to a string, couldn\u0027t we specifically handle the \"None\" case?","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6956e8d069517e8cac29972ec71544e3c3dcbaba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"132e4dcf_39f01887","updated":"2022-10-19 10:38:58.000000000","message":"I don\u0027t think this makes sense. Please correct me if I\u0027m wrong though","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"}],"openstack/resource.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2a059f7dfb79f5c199a94795f43741d515bf8665","unresolved":true,"context_lines":[{"line_number":2065,"context_line":"    \"\"\""},{"line_number":2066,"context_line":""},{"line_number":2067,"context_line":"    current_status \u003d getattr(resource, attribute)"},{"line_number":2068,"context_line":"    if _normalize_status(current_status) \u003d\u003d status.lower():"},{"line_number":2069,"context_line":"        return resource"},{"line_number":2070,"context_line":""},{"line_number":2071,"context_line":"    if failures is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"43bc7381_f325a469","line":2068,"range":{"start_line":2068,"start_character":3,"end_line":2068,"end_character":4},"updated":"2022-11-21 16:29:44.000000000","message":"so\n\n  if current_status is None or _normalize_status(current_status) \u003d\u003d status.lower():\n      return resource","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"},{"author":{"_account_id":6671,"name":"Jerry Zhao","email":"xyzjerry@gmail.com","username":"zhaoxinyu"},"change_message_id":"3e999202716958c821ef9281ef8f879cbc5cad97","unresolved":false,"context_lines":[{"line_number":2065,"context_line":"    \"\"\""},{"line_number":2066,"context_line":""},{"line_number":2067,"context_line":"    current_status \u003d getattr(resource, attribute)"},{"line_number":2068,"context_line":"    if _normalize_status(current_status) \u003d\u003d status.lower():"},{"line_number":2069,"context_line":"        return resource"},{"line_number":2070,"context_line":""},{"line_number":2071,"context_line":"    if failures is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a91ac42_c012d742","line":2068,"range":{"start_line":2068,"start_character":3,"end_line":2068,"end_character":4},"in_reply_to":"43bc7381_f325a469","updated":"2022-11-21 23:55:47.000000000","message":"Done","commit_id":"4038e4ebe4479d25704e621dc4171e2094ad300b"}]}
