From 57b0d3a60593cb32530ee84c6c51189098b8bf74 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Sun, 9 May 2021 15:33:38 +0200 Subject: [PATCH] Add check_python() (#3088) * Add check_python() Checks python version against minimum version of 3.7.0. * remove packaging dependency * refactor import --- utils/general.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/utils/general.py b/utils/general.py index c47432b4529c..a4c745d1dcaf 100755 --- a/utils/general.py +++ b/utils/general.py @@ -16,6 +16,7 @@ import cv2 import numpy as np import pandas as pd +import pkg_resources as pkg import torch import torchvision import yaml @@ -107,10 +108,19 @@ def check_git_status(): print(e) +def check_python(minimum='3.7.0', required=True): + # Check current python version vs. required python version + current = platform.python_version() + result = pkg.parse_version(current) >= pkg.parse_version(minimum) + if required: + assert result, f'Python {minimum} required by YOLOv5, but Python {current} is currently installed' + return result + + def check_requirements(requirements='requirements.txt', exclude=()): # Check installed dependencies meet requirements (pass *.txt file or list of packages) - import pkg_resources as pkg prefix = colorstr('red', 'bold', 'requirements:') + check_python() # check python version if isinstance(requirements, (str, Path)): # requirements.txt file file = Path(requirements) if not file.exists():