Retry downloads for lower level connection issues. If the download fails due to a lower level socket issue the retry logic should still be used. ConnectionResetError was observed in CI but adding ConnectionError to the except tuple. ConnectionError is higher in the exception hierarchy. https: //github.com/python/cpython/blob/main/Lib/test/exception_hierarchy.txt Change-Id: I90aa899dffd9aca716953f12e9a0cd7057d262e6
diff --git a/download_iree_compiler.py b/download_iree_compiler.py index 7ecae06..43a6baf 100755 --- a/download_iree_compiler.py +++ b/download_iree_compiler.py
@@ -37,7 +37,7 @@ try: wget.download(download_url, out=out_file) break - except urllib.error.HTTPError as e: + except (urllib.error.HTTPError, ConnectionError) as e: if i == num_retries: raise print(f"{e}\nDownload failed. Retrying...")