From ccd3e8f367df22d60eb5be300a0c8a830b8db59a Mon Sep 17 00:00:00 2001 From: Arthur Deierlein Date: Fri, 22 Nov 2024 18:43:27 +0100 Subject: [PATCH] move python version check into its own module --- volatility3/framework/__init__.py | 31 ++++++------------- volatility3/framework/check_python_version.py | 14 +++++++++ 2 files changed, 23 insertions(+), 22 deletions(-) create mode 100644 volatility3/framework/check_python_version.py diff --git a/volatility3/framework/__init__.py b/volatility3/framework/__init__.py index df8d2d2b8..bf71c3c99 100644 --- a/volatility3/framework/__init__.py +++ b/volatility3/framework/__init__.py @@ -5,29 +5,16 @@ # Check the python version to ensure it's suitable import glob import sys +import volatility3.framework.check_python_version # noqa: F401 +import zipfile +import importlib +import inspect +import logging +import os +import traceback +from typing import Any, Dict, Generator, List, Tuple, Type, TypeVar -required_python_version = (3, 8, 0) -if ( - sys.version_info.major != required_python_version[0] - or sys.version_info.minor < required_python_version[1] - or ( - sys.version_info.minor == required_python_version[1] - and sys.version_info.micro < required_python_version[2] - ) -): - raise RuntimeError( - f"Volatility framework requires python version {'.'.join(map(str, required_python_version))} or greater" - ) -else: - import zipfile - import importlib - import inspect - import logging - import os - import traceback - from typing import Any, Dict, Generator, List, Tuple, Type, TypeVar - - from volatility3.framework import constants, interfaces +from volatility3.framework import constants, interfaces # ## diff --git a/volatility3/framework/check_python_version.py b/volatility3/framework/check_python_version.py new file mode 100644 index 000000000..f2d284f2a --- /dev/null +++ b/volatility3/framework/check_python_version.py @@ -0,0 +1,14 @@ +import sys + +required_python_version = (3, 8, 0) +if ( + sys.version_info.major != required_python_version[0] + or sys.version_info.minor < required_python_version[1] + or ( + sys.version_info.minor == required_python_version[1] + and sys.version_info.micro < required_python_version[2] + ) +): + raise RuntimeError( + f"Volatility framework requires python version {required_python_version[0]}.{required_python_version[1]}.{required_python_version[2]} or greater" + )