mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	Issue #14605: Rename _SourcelessFileLoader to SourcelessFileLoader.
This time also recreating the Python/importlib.h file to make make happy. See the ticket for details.
This commit is contained in:
		
							parent
							
								
									ac8805a01a
								
							
						
					
					
						commit
						4fe29c9657
					
				
					 11 changed files with 1445 additions and 1448 deletions
				
			
		|  | @ -606,18 +606,15 @@ find and load modules. | |||
|       Load the specified module if it is the same as :attr:`name`. | ||||
| 
 | ||||
| 
 | ||||
| .. class:: _SourcelessFileLoader(fullname, path) | ||||
| .. class:: SourcelessFileLoader(fullname, path) | ||||
| 
 | ||||
|    A concrete implementation of :class:`importlib.abc.FileLoader` which can | ||||
|    import bytecode files (i.e. no source code files exist). | ||||
| 
 | ||||
|    It is **strongly** suggested you do not rely on this loader (hence the | ||||
|    leading underscore of the class). Direct use of bytecode files (and thus not | ||||
|    source code files) inhibits your modules from being usable by all Python | ||||
|    implementations. It also runs the risk of your bytecode files not being | ||||
|    usable by new versions of Python which change the bytecode format. This | ||||
|    class is only documented as it is directly used by import and thus can | ||||
|    potentially have instances show up as a module's ``__loader__`` attribute. | ||||
|    Please note that direct use of bytecode files (and thus not source code | ||||
|    files) inhibits your modules from being usable by all Python | ||||
|    implementations or new versions of Python which change the bytecode | ||||
|    format. | ||||
| 
 | ||||
|    .. versionadded:: 3.3 | ||||
| 
 | ||||
|  |  | |||
|  | @ -94,7 +94,7 @@ def load_source(name, pathname, file=None): | |||
| 
 | ||||
| 
 | ||||
| class _LoadCompiledCompatibility(_HackedGetData, | ||||
|         _bootstrap._SourcelessFileLoader): | ||||
|         _bootstrap.SourcelessFileLoader): | ||||
| 
 | ||||
|     """Compatibility support for implementing load_compiled().""" | ||||
| 
 | ||||
|  |  | |||
|  | @ -671,7 +671,7 @@ def set_data(self, path, data): | |||
|             pass | ||||
| 
 | ||||
| 
 | ||||
| class _SourcelessFileLoader(FileLoader, _LoaderBasics): | ||||
| class SourcelessFileLoader(FileLoader, _LoaderBasics): | ||||
| 
 | ||||
|     """Loader which handles sourceless file imports.""" | ||||
| 
 | ||||
|  | @ -1198,7 +1198,7 @@ def _setup(sys_module, _imp_module): | |||
| 
 | ||||
|     supported_loaders = [(ExtensionFileLoader, _suffix_list(3), False), | ||||
|                          (SourceFileLoader, _suffix_list(1), True), | ||||
|                          (_SourcelessFileLoader, _suffix_list(2), True)] | ||||
|                          (SourcelessFileLoader, _suffix_list(2), True)] | ||||
|     setattr(self_module, '_DEFAULT_PATH_HOOK', | ||||
|             FileFinder.path_hook(*supported_loaders)) | ||||
| 
 | ||||
|  |  | |||
|  | @ -119,7 +119,7 @@ class FileLoader(_bootstrap.FileLoader, ResourceLoader, ExecutionLoader): | |||
|     ExecutionLoader ABCs.""" | ||||
| 
 | ||||
| _register(FileLoader, machinery.SourceFileLoader, | ||||
|             machinery._SourcelessFileLoader) | ||||
|             machinery.SourcelessFileLoader) | ||||
| 
 | ||||
| 
 | ||||
| class SourceLoader(_bootstrap.SourceLoader, ResourceLoader, ExecutionLoader): | ||||
|  |  | |||
|  | @ -5,5 +5,5 @@ | |||
| from ._bootstrap import PathFinder | ||||
| from ._bootstrap import FileFinder | ||||
| from ._bootstrap import SourceFileLoader | ||||
| from ._bootstrap import _SourcelessFileLoader | ||||
| from ._bootstrap import SourcelessFileLoader | ||||
| from ._bootstrap import ExtensionFileLoader | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ def find(self, path): | |||
|                                         (_bootstrap.SourceFileLoader, | ||||
|                                             _bootstrap._suffix_list(imp.PY_SOURCE), | ||||
|                                             True), | ||||
|                                         (_bootstrap._SourcelessFileLoader, | ||||
|                                         (_bootstrap.SourcelessFileLoader, | ||||
|                                             _bootstrap._suffix_list(imp.PY_COMPILED), | ||||
|                                             True)) | ||||
|         return finder.find_module(self.name) | ||||
|  |  | |||
|  | @ -379,7 +379,7 @@ def test_read_only_bytecode(self): | |||
| 
 | ||||
| class SourcelessLoaderBadBytecodeTest(BadBytecodeTest): | ||||
| 
 | ||||
|     loader = _bootstrap._SourcelessFileLoader | ||||
|     loader = _bootstrap.SourcelessFileLoader | ||||
| 
 | ||||
|     def test_empty_file(self): | ||||
|         def test(name, mapping, bytecode_path): | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ class FinderTests(abc.FinderTests): | |||
|     def import_(self, root, module): | ||||
|         loader_details = [(_bootstrap.SourceFileLoader, | ||||
|                             _bootstrap._suffix_list(imp.PY_SOURCE), True), | ||||
|                           (_bootstrap._SourcelessFileLoader, | ||||
|                           (_bootstrap.SourcelessFileLoader, | ||||
|                             _bootstrap._suffix_list(imp.PY_COMPILED), True)] | ||||
|         finder = _bootstrap.FileFinder(root, *loader_details) | ||||
|         return finder.find_module(module) | ||||
|  |  | |||
|  | @ -62,7 +62,7 @@ class ExecutionLoader(InheritanceTests, unittest.TestCase): | |||
| class FileLoader(InheritanceTests, unittest.TestCase): | ||||
| 
 | ||||
|     superclasses = [abc.ResourceLoader, abc.ExecutionLoader] | ||||
|     subclasses = [machinery.SourceFileLoader, machinery._SourcelessFileLoader] | ||||
|     subclasses = [machinery.SourceFileLoader, machinery.SourcelessFileLoader] | ||||
| 
 | ||||
| 
 | ||||
| class SourceLoader(InheritanceTests, unittest.TestCase): | ||||
|  |  | |||
|  | @ -84,7 +84,7 @@ Library | |||
|   which send EOF without trailing \r\n. | ||||
| 
 | ||||
| - Issue #14605: Add importlib.abc.FileLoader, importlib.machinery.(FileFinder, | ||||
|   SourceFileLoader, _SourcelessFileLoader, ExtensionFileLoader). | ||||
|   SourceFileLoader, SourcelessFileLoader, ExtensionFileLoader). | ||||
| 
 | ||||
| - Issue #13959: imp.cache_from_source()/source_from_cache() now follow | ||||
|   os.path.join()/split() semantics for path manipulation instead of its prior, | ||||
|  |  | |||
							
								
								
									
										2860
									
								
								Python/importlib.h
									
										
									
									
									
								
							
							
						
						
									
										2860
									
								
								Python/importlib.h
									
										
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Marc-Andre Lemburg
						Marc-Andre Lemburg