From 8e5de00398114692b5bf193061ef0c342e3e4c0b Mon Sep 17 00:00:00 2001 From: cockroacher <163405488+cockroacher@users.noreply.github.com> Date: Wed, 29 Jan 2025 06:47:19 +0100 Subject: [PATCH 1/3] Updated dependency check to allow python versions 3.10-3.13 --- helpers/dependency_helper.py | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/helpers/dependency_helper.py b/helpers/dependency_helper.py index 99754bd4..84352fe6 100644 --- a/helpers/dependency_helper.py +++ b/helpers/dependency_helper.py @@ -30,19 +30,16 @@ def test_cmd(command): process.kill() return result, 'Not found.' + def check_python(): result, error = test_cmd('python -V') - # if python_error is not None or python_error != b'': - # print('\t- Python:', 'ERROR:', python_error) - # return if result is None: print('\t- Python:', 'ERROR: Unknown return') return version = None regex = r"Python (?P[0-9\.]+)" - matches = re.finditer( - regex, result, re.MULTILINE) + matches = re.finditer(regex, result, re.MULTILINE) for _, match in enumerate(matches, start=1): version = match.group('version') @@ -50,14 +47,14 @@ def check_python(): print('\t- Python:', 'ERROR: Unable to get version') return - version = packaging.version.Version(version) - repo_version = packaging.version.Version("3.13") - if version.major is not repo_version.major: - print('\t- Python:', 'WARNING: wrong major version') - return + version = version.Version(version) + + # Define acceptable versions + acceptable_versions = [version.Version('3.10'), version.Version('3.11'), + version.Version('3.12'), version.Version('3.13')] - if version.minor is not repo_version.minor: - print('\t- Python:', 'WARNING: wrong minor version') + if version not in acceptable_versions: + print('\t- Python:', 'WARNING: version not in supported range (3.10-3.13)') return print('\t- Python:', 'OK') From 35ce6b31789906335db5ce1a022b707441b71504 Mon Sep 17 00:00:00 2001 From: cockroacher <163405488+cockroacher@users.noreply.github.com> Date: Wed, 29 Jan 2025 07:15:03 +0100 Subject: [PATCH 2/3] Update dependency_helper.py --- helpers/dependency_helper.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/helpers/dependency_helper.py b/helpers/dependency_helper.py index 84352fe6..747617d6 100644 --- a/helpers/dependency_helper.py +++ b/helpers/dependency_helper.py @@ -47,11 +47,11 @@ def check_python(): print('\t- Python:', 'ERROR: Unable to get version') return - version = version.Version(version) + version = packaging.version.Version(version) # Define acceptable versions - acceptable_versions = [version.Version('3.10'), version.Version('3.11'), - version.Version('3.12'), version.Version('3.13')] + acceptable_versions = [packaging.version.Version('3.10'), packaging.version.Version('3.11'), + packaging.version.Version('3.12'), packaging.version.Version('3.13')] if version not in acceptable_versions: print('\t- Python:', 'WARNING: version not in supported range (3.10-3.13)') From 4a6f9a2cee43b02dc1bf3def32651cf876822edb Mon Sep 17 00:00:00 2001 From: cockroacher <163405488+cockroacher@users.noreply.github.com> Date: Wed, 29 Jan 2025 07:48:36 +0100 Subject: [PATCH 3/3] Update dependency_helper.py --- helpers/dependency_helper.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/helpers/dependency_helper.py b/helpers/dependency_helper.py index 747617d6..6a929d39 100644 --- a/helpers/dependency_helper.py +++ b/helpers/dependency_helper.py @@ -38,20 +38,18 @@ def check_python(): return version = None - regex = r"Python (?P[0-9\.]+)" + regex = r"Python (?P[0-9]+)\.(?P[0-9]+)" matches = re.finditer(regex, result, re.MULTILINE) for _, match in enumerate(matches, start=1): - version = match.group('version') + version = packaging.version.Version(f"{match.group('major')}.{match.group('minor')}") if version is None: print('\t- Python:', 'ERROR: Unable to get version') return - version = packaging.version.Version(version) - - # Define acceptable versions - acceptable_versions = [packaging.version.Version('3.10'), packaging.version.Version('3.11'), - packaging.version.Version('3.12'), packaging.version.Version('3.13')] + # Define acceptable versions, only considering major and minor + acceptable_versions = {packaging.version.Version('3.10'), packaging.version.Version('3.11'), + packaging.version.Version('3.12'), packaging.version.Version('3.13')} if version not in acceptable_versions: print('\t- Python:', 'WARNING: version not in supported range (3.10-3.13)')