From dfa0bb74248857f742d7e1a633279021714a913f Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Tue, 14 Nov 2023 21:28:10 +0200 Subject: [PATCH] Add python3.12 compatability * imp and find_loader got removed in py3.12 Signed-off-by: Alfred Wingate --- src/euscan/ebuild.py | 4 ++-- src/euscan/handlers/__init__.py | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/euscan/ebuild.py b/src/euscan/ebuild.py index 4a51dcd..8f840cb 100644 --- a/src/euscan/ebuild.py +++ b/src/euscan/ebuild.py @@ -1,6 +1,6 @@ import os import sys -import imp +import importlib import portage from portage.const import VDB_PATH @@ -56,7 +56,7 @@ def package_from_ebuild(ebuild): encoding=_encodings['content'], errors='strict') portage.close_portdbapi_caches() - imp.reload(portage) + importlib.reload(portage) del portage.portdb.porttrees[1:] if ebuild_portdir != portage.portdb.porttree_root: portage.portdb.porttrees.append(ebuild_portdir) diff --git a/src/euscan/handlers/__init__.py b/src/euscan/handlers/__init__.py index 0393bce..9b53c65 100644 --- a/src/euscan/handlers/__init__.py +++ b/src/euscan/handlers/__init__.py @@ -10,7 +10,8 @@ handlers = {'package': [], 'url': [], 'all': {}} # autoimport all modules in this directory and append them to handlers list for loader, module_name, is_pkg in pkgutil.walk_packages(__path__): - module = loader.find_module(module_name).load_module(module_name) + + module = loader.find_spec(module_name).loader.load_module(module_name) if not hasattr(module, 'HANDLER_NAME'): continue if hasattr(module, 'scan_url'):