gh-98040: Remove just the imp module (#98573)

This commit is contained in:
Barry Warsaw 2023-04-28 16:17:58 -07:00 committed by GitHub
parent 79b9db9295
commit e1f14643dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
24 changed files with 40 additions and 1537 deletions

View file

@ -7,24 +7,18 @@ import os
import sys
try:
from importlib.machinery import SourceFileLoader
except ImportError:
import imp
# 2023-04-27(warsaw): Pre-Python 3.12, this would catch ImportErrors and try to
# import imp, and then use imp.load_module(). The imp module was removed in
# Python 3.12 (and long deprecated before that), and it's unclear under what
# conditions this import will now fail, so the fallback was simply removed.
from importlib.machinery import SourceFileLoader
def find_module(modname):
"""Finds and returns a module in the local dist/checkout.
"""
modpath = os.path.join(
os.path.dirname(os.path.dirname(__file__)), "Lib")
return imp.load_module(modname, *imp.find_module(modname, [modpath]))
else:
def find_module(modname):
"""Finds and returns a module in the local dist/checkout.
"""
modpath = os.path.join(
os.path.dirname(os.path.dirname(__file__)), "Lib", modname + ".py")
return SourceFileLoader(modname, modpath).load_module()
def find_module(modname):
"""Finds and returns a module in the local dist/checkout.
"""
modpath = os.path.join(
os.path.dirname(os.path.dirname(__file__)), "Lib", modname + ".py")
return SourceFileLoader(modname, modpath).load_module()
def write_contents(f):