@@ -410,22 +410,6 @@ def _find_module_shim(self, fullname):
410410 return loader
411411
412412
413- # Typically used by loader classes as a method replacement.
414- def _load_module_shim (self , fullname ):
415- """Load the specified module into sys.modules and return it.
416-
417- This method is deprecated. Use loader.exec_module instead.
418-
419- """
420- spec = spec_from_loader (fullname , self )
421- if fullname in sys .modules :
422- module = sys .modules [fullname ]
423- _bootstrap ._exec (spec , module )
424- return sys .modules [fullname ]
425- else :
426- return _bootstrap ._load (spec )
427-
428-
429413def _validate_bytecode_header (data , source_stats = None , name = None , path = None ):
430414 """Validate the header of the passed-in bytecode against source_stats (if
431415 given) and returning the bytecode that can be compiled by compile().
@@ -517,28 +501,6 @@ def decode_source(source_bytes):
517501
518502# Module specifications #######################################################
519503
520- def spec_from_loader (name , loader , * , origin = None , is_package = None ):
521- """Return a module spec based on various loader methods."""
522- if hasattr (loader , 'get_filename' ):
523- if is_package is None :
524- return spec_from_file_location (name , loader = loader )
525- search = [] if is_package else None
526- return spec_from_file_location (name , loader = loader ,
527- submodule_search_locations = search )
528-
529- if is_package is None :
530- if hasattr (loader , 'is_package' ):
531- try :
532- is_package = loader .is_package (name )
533- except ImportError :
534- is_package = None # aka, undefined
535- else :
536- # the default
537- is_package = False
538-
539- return _bootstrap .ModuleSpec (name , loader , origin = origin , is_package = is_package )
540-
541-
542504_POPULATE = object ()
543505
544506
@@ -653,8 +615,9 @@ def find_spec(cls, fullname, path=None, target=None):
653615 return None
654616 for loader , suffixes in _get_supported_file_loaders ():
655617 if filepath .endswith (tuple (suffixes )):
656- spec = spec_from_loader (fullname , loader (fullname , filepath ),
657- origin = filepath )
618+ spec = _bootstrap .spec_from_loader (fullname ,
619+ loader (fullname , filepath ),
620+ origin = filepath )
658621 return spec
659622
660623 @classmethod
@@ -695,7 +658,8 @@ def exec_module(self, module):
695658 'returns None' .format (module .__name__ ))
696659 _bootstrap ._call_with_frames_removed (exec , code , module .__dict__ )
697660
698- load_module = _load_module_shim
661+ def load_module (self , fullname ):
662+ return _bootstrap ._load_module_shim (self , fullname )
699663
700664
701665class SourceLoader (_LoaderBasics ):
@@ -1061,7 +1025,7 @@ def load_module(self, fullname):
10611025 """
10621026 # The import system never calls this method.
10631027 _verbose_message ('namespace module loaded with path {!r}' , self ._path )
1064- return _load_module_shim (self , fullname )
1028+ return _bootstrap . _load_module_shim (self , fullname )
10651029
10661030
10671031# Finders #####################################################################
@@ -1127,7 +1091,7 @@ def _legacy_get_spec(cls, fullname, finder):
11271091 loader = finder .find_module (fullname )
11281092 portions = []
11291093 if loader is not None :
1130- return spec_from_loader (fullname , loader )
1094+ return _bootstrap . spec_from_loader (fullname , loader )
11311095 spec = _bootstrap .ModuleSpec (fullname , None )
11321096 spec .submodule_search_locations = portions
11331097 return spec
0 commit comments