bpo-35923: Update the BuiltinImporter to use loader._ORIGIN instead of a hard-coded value (GH-15651)

This commit is contained in:
Dong-hee Na 2019-09-12 01:00:02 +09:00 committed by Brett Cannon
parent 1fae844451
commit 145cf1f50c
3 changed files with 763 additions and 758 deletions

View File

@ -713,6 +713,8 @@ class BuiltinImporter:
"""
_ORIGIN = "built-in"
@staticmethod
def module_repr(module):
"""Return repr for the module.
@ -720,14 +722,14 @@ class BuiltinImporter:
The method is deprecated. The import machinery does the job itself.
"""
return '<module {!r} (built-in)>'.format(module.__name__)
return f'<module {module.__name__!r} ({BuiltinImporter._ORIGIN})>'
@classmethod
def find_spec(cls, fullname, path=None, target=None):
if path is not None:
return None
if _imp.is_builtin(fullname):
return spec_from_loader(fullname, cls, origin='built-in')
return spec_from_loader(fullname, cls, origin=cls._ORIGIN)
else:
return None

View File

@ -0,0 +1,2 @@
Update :class:`importlib.machinery.BuiltinImporter` to use ``loader._ORIGIN``
instead of a hardcoded value. Patch by Dong-hee Na.

1513
Python/importlib.h generated

File diff suppressed because it is too large Load Diff