From c730c472d357f1926d2b7f3ca61cdf3e2f6054d1 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Sun, 23 May 2021 17:55:37 +0200 Subject: [PATCH] Improved check_requirements() robustness Add try: except clause on missing requirements install to catch install failures. Prompted by Ultralytics YOLOv5 API failure on Cython. --- utils/general.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/utils/general.py b/utils/general.py index 47eea78eda30..9a882715f0ad 100755 --- a/utils/general.py +++ b/utils/general.py @@ -137,7 +137,10 @@ def check_requirements(requirements='requirements.txt', exclude=()): except Exception as e: # DistributionNotFound or VersionConflict if requirements not met n += 1 print(f"{prefix} {r} not found and is required by YOLOv5, attempting auto-update...") - print(subprocess.check_output(f"pip install '{r}'", shell=True).decode()) + try: + print(subprocess.check_output(f"pip install '{r}'", shell=True).decode()) + except Exception as e: + print(f'{prefix} {e}') if n: # if packages updated source = file.resolve() if 'file' in locals() else requirements