Skip to content

Commit

Permalink
Fix removal of imp module in Python 3.12
Browse files Browse the repository at this point in the history
  • Loading branch information
evgenyz committed Nov 7, 2023
1 parent dc2ecea commit a409b90
Showing 1 changed file with 17 additions and 25 deletions.
42 changes: 17 additions & 25 deletions swig/openscap_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,31 +31,23 @@

logger = logging.getLogger("openscap")

from sys import version_info
if version_info >= (2, 6, 0):
def _import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module(
'_openscap_py', [dirname(__file__)])
except ImportError:
import _openscap_py as OSCAP
return OSCAP
if fp is not None:
try:
_mod = imp.load_module(
'_openscap_py', fp, pathname, description)
finally:
fp.close()
return _mod
OSCAP = _import_helper()
del _import_helper
else:
import _openscap_py as OSCAP

del version_info

def _import_helper():
from os.path import dirname
import importlib.machinery
import importlib.util
spec = importlib.machinery.PathFinder.find_spec('_openscap_py', [dirname(__file__)])
if not spec:
spec = importlib.machinery.PathFinder.find_spec('_openscap_py')
if not spec:
return None
mod = importlib.util.module_from_spec(spec)
spec.loader.exec_module(mod)
return mod


OSCAP = _import_helper()
del _import_helper

import os

Expand Down

0 comments on commit a409b90

Please sign in to comment.