summaryrefslogtreecommitdiffstats
path: root/Lib/importlib/_bootstrap.py
Commit message (Collapse)AuthorAgeFilesLines
...
* don't depend on __debug__ because it's baked in at freeze time (issue #16046)Benjamin Peterson2012-09-251-8/+9
|
* Issue #15781: Fix two small race conditions in import's module locking.Antoine Pitrou2012-08-271-2/+8
|
* Issue #15316: Let exceptions raised during imports triggered by theBrett Cannon2012-08-241-4/+14
| | | | | | | | | | | | | | | fromlist of __import__ propagate. The problem previously was that if something listed in fromlist didn't exist then that's okay. The fix for that was too broad in terms of catching ImportError. The trick with the solution to this issue is that the proper refactoring of import thanks to importlib doesn't allow for a way to distinguish (portably) between an ImportError because finders couldn't find a loader, or a loader raised the exception. In Python 3.4 the hope is to introduce a new exception (e.g. ModuleNotFound) to make it clean to differentiate why ImportError was raised.
* Issue #2051: Tweak last commit for this issue to pass in mode insteadBrett Cannon2012-08-241-9/+7
| | | | | of source path to set_data() and make the new argument private until possible API changes can be discussed more thoroughly in Python 3.4.
* Close #2501: Permission bits are once again correctly copied from the source ↵Nick Coghlan2012-08-241-5/+26
| | | | file to the cached bytecode file. Test by Eric Snow.
* Close #14846: Handle a sys.path entry going awayNick Coghlan2012-08-201-1/+5
|
* Issue #15715: Ignore failed imports triggered by the use of fromlist.Brett Cannon2012-08-171-2/+7
| | | | | | | | | | | When the fromlist argument is specified for __import__() and the attribute doesn't already exist, an import is attempted. If that fails (e.g. module doesn't exist), the ImportError will now be silenced (for backwards-compatibility). This *does not* affect ``from ... import ...`` statements. Thanks to Eric Snow for the patch and Simon Feltman for reporting the regression.
* Don't overwrite a __path__ value from extension modules if alreadyBrett Cannon2012-08-111-1/+1
| | | | set.
* fix docstring wordingPhilip Jenvey2012-08-101-3/+3
|
* Issue #15502: Refactor some code.Brett Cannon2012-08-101-11/+16
|
* update docstring per the extension package fix, refactorPhilip Jenvey2012-08-101-6/+3
|
* Issue #15576: Allow extension modules to be a package's __init__Brett Cannon2012-08-101-15/+23
| | | | | module again. Also took the opportunity to stop accidentally exporting _imp.extension_suffixes() as public.
* Issue #15502: Finish bringing importlib.abc in line with the currentBrett Cannon2012-08-101-2/+10
| | | | | | | | | state of the import system. Also make importlib.invalidate_caches() work with sys.meta_path instead of sys.path_importer_cache to completely separate the path-based import system from the overall import system. Patch by Eric Snow.
* Issue #15471: Don't use mutable object as default values for theBrett Cannon2012-08-061-2/+3
| | | | parameters of importlib.__import__().
* Issue #15502: Bring the importlib.PathFinder docs and docstring more in line ↵Nick Coghlan2012-08-021-4/+4
| | | | with the new import system documentation, and fix various parts of the new docs that weren't quite right given PEP 420 or were otherwise a bit misleading. Also note the key terminology problem still being discussed in the issue
* Close #15519: Properly expose WindowsRegistryFinder in importlib and bring ↵Nick Coghlan2012-08-021-4/+4
| | | | the name into line with normal import terminology. Original patch by Eric Snow
* Close #15486: Simplify the mechanism used to remove importlib frames from ↵Nick Coghlan2012-07-311-42/+23
| | | | tracebacks when they just introduce irrelevant noise
* Close #15425: Eliminate more importlib related traceback noiseNick Coghlan2012-07-291-2/+9
|
* Issue #14578: Support modules registered in the Windows registry again.Martin v. Löwis2012-07-281-5/+73
| | | | Patch by Amaury Forgeot d'Arc.
* Issue #15343: A lot more than just unicode decoding can go wrong when ↵Nick Coghlan2012-07-151-4/+13
| | | | retrieving a source file
* Issues #15169, #14599: Make PyImport_ExecCodeModuleWithPathnames() useBrett Cannon2012-07-131-0/+44
| | | | | | | | | | | | Lib/imp.py for imp.source_from_cache() instead of its own C version. Also change PyImport_ExecCodeModuleObject() to not infer the source path from the bytecode path like PyImport_ExecCodeModuleWithPathnames() does. This makes the function less magical. This also has the side-effect of removing all uses of MAXPATHLEN in Python/import.c which can cause failures on really long filenames.
* Issue #15111: When a module was imported using a 'from import'Brett Cannon2012-07-101-6/+4
| | | | | | | statement (e.g. ``from distutils import msvc9compiler``) that triggers an ImportError of its own (e.g. the non-existence of winreg), let that exception propagate instead of raising a generic ImportError for the module being requested (e.g. msvc9compiler).
* Issue #15167 (as part of #13959): imp.get_magic() is no implemented inBrett Cannon2012-07-091-5/+92
| | | | Lib/imp.py.
* Issue #15056: imp.cache_from_source() and source_from_cache() raiseBrett Cannon2012-07-091-6/+15
| | | | | | NotimplementedError when sys.implementation.cache_tag is None. Thanks to Pranav Ravichandran for taking an initial stab at the patch.
* Issue #15110: Copy same docstring as other '_exec_module' methods.Amaury Forgeot d'Arc2012-07-081-0/+3
|
* Issue #15110: Also hide importlib frames when importing a builtin module fails.Amaury Forgeot d'Arc2012-07-081-1/+5
|
* Issue #15110: Fix the tracebacks generated by "import xxx" to not show the ↵Antoine Pitrou2012-07-081-3/+22
| | | | importlib stack frames.
* Minor refactoring in importlib._bootstrap, and fix the '_wrap' docstring.Florent Xicluna2012-07-071-14/+15
|
* Issue #15166: Re-implement imp.get_tag() using sys.implementation.Brett Cannon2012-07-021-1/+1
| | | | | | | Also eliminates some C code in Python/import.c as well. Patch by Eric Snow with verification by comparing against another patch from Jeff Knupp.
* Fixes issue 15039: namespace packages are no longer imported in preference ↵Eric V. Smith2012-06-241-2/+6
| | | | to modules of the same name.
* A better repr() for FileFinderAntoine Pitrou2012-06-231-0/+2
|
* Issue #14938: importlib.abc.SourceLoader.is_package() now takes theBrett Cannon2012-06-161-1/+3
| | | | | | | | | module name into consideration when determining whether a module is a package or not. This prevents importing a module's __init__ module directly and having it considered a package, which can lead to duplicate sub-modules. Thanks to Ronan Lamy for reporting the bug.
* Tweak importlib._bootstrap to avoid zero-argument super so I can work on ↵Nick Coghlan2012-05-271-1/+3
| | | | issue #14857 without breaking imports
* Remove some redundant decorators.Brett Cannon2012-05-261-2/+0
|
* issue 14660: Implement PEP 420, namespace packages.Eric V. Smith2012-05-251-15/+139
|
* Issue #9260: A finer-grained import lock.Antoine Pitrou2012-05-171-13/+178
| | | | | Most of the import sequence now uses per-module locks rather than the global import lock, eliminating well-known issues with threads and imports.
* Issue #13959: HaveBrett Cannon2012-05-111-5/+9
| | | | | | | | | | importlib.abc.FileLoader.load_module()/get_filename() and importlib.machinery.ExtensionFileLoader.load_module() have their single argument be optional as the loader's constructor has all the ncessary information. This allows for the deprecation of imp.load_source()/load_compile()/load_package().
* Issue #13959: Deprecate imp.get_suffixes() for new attributes onBrett Cannon2012-05-111-9/+15
| | | | | | | | | | | importlib.machinery that provide the suffix details for import. The attributes were not put on imp so as to compartmentalize everything importlib needs for setting up imports in importlib.machinery. This also led to an indirect deprecation of inspect.getmoduleinfo() as it directly returned imp.get_suffix's returned tuple which no longer makes sense.
* Issue #14583: Fix importlib bug when a package's __init__.py would first ↵Antoine Pitrou2012-05-071-1/+1
| | | | import one of its modules then raise an error.
* Clean up a docstring.Brett Cannon2012-05-041-6/+1
|
* Jython-friendly tweak.Brett Cannon2012-05-041-1/+1
|
* Issue #13959: Re-implement imp.get_suffixes() in Lib/imp.py.Brett Cannon2012-05-041-41/+4
| | | | | | This introduces a new function, imp.extension_suffixes(), which is currently undocumented. That is forthcoming once issue #14657 is resolved and how to expose file suffixes is decided.
* Properly mark names in importlib._bootstrap as private.Brett Cannon2012-05-041-31/+31
|
* Issue #14646: __import__() now sets __loader__ if need be.Brett Cannon2012-04-271-3/+25
| | | | | | importlib.util.module_for_loader also will set __loader__ along with __package__. This is in conjunction to a forthcoming update to PEP 302 which will make these two attributes required for loaders to set.
* Issue #14605: Use None in sys.path_importer_cache to represent noBrett Cannon2012-04-271-21/+5
| | | | finder instead of using some (now non-existent) implicit finder.
* Issue #14605: Stop having implicit entries for sys.meta_path.Brett Cannon2012-04-271-4/+4
| | | | ImportWarning is raised if sys.meta_path is found to be empty.
* Issue #14605: Make explicit the entries on sys.path_hooks that used toBrett Cannon2012-04-261-45/+19
| | | | | | | | | | | | be implicit. Added a warning for when sys.path_hooks is found to be empty. Also changed the meaning of None in sys.path_importer_cache to represent trying sys.path_hooks again (an interpretation of previous semantics). Also added a warning for when None was found. The long-term goal is for None in sys.path_importer_cache to represent the same as imp.NullImporter: no finder found for that sys.path entry.
* Issue #14605 and #14642:Marc-Andre Lemburg2012-04-251-0/+7
| | | | | | Issue a warning in case Python\importlib.h needs to be rebuilt, but there's no Python interpreter around to freeze the bootstrap script.
* Issue #14605: Rename _SourcelessFileLoader to SourcelessFileLoader.Marc-Andre Lemburg2012-04-251-2/+2
| | | | | This time also recreating the Python/importlib.h file to make make happy. See the ticket for details.
* Issue #14605: Revert renaming of _SourcelessFileLoader, since it causedMarc-Andre Lemburg2012-04-251-2/+2
| | | | the buildbots to fail.