summaryrefslogtreecommitdiffstats
path: root/Lib/importlib/_bootstrap.py
Commit message (Collapse)AuthorAgeFilesLines
...
* 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.
* Issue #14605: Rename _SourcelessFileLoader to SourcelessFileLoaderMarc-Andre Lemburg2012-04-241-2/+2
|
* Issue #14605: Expose importlib.abc.FileLoader andBrett Cannon2012-04-221-54/+47
| | | | | | | | importlib.machinery.(FileFinder, SourceFileLoader, _SourcelessFileLoader, ExtensionFileLoader). This exposes all of importlib's mechanisms that will become public on the sys module.
* Issue #13959: Continue to try to accomodate altsep in importlib by notBrett Cannon2012-04-221-5/+11
| | | | ignoring altsep if it already exists on a path when doing a join.
* Revert to os.path.join() semantics for path manipulation in importlibBrett Cannon2012-04-221-11/+2
| | | | which is different than what imp.cache_from_source() operates on.
* Continue the good fight to get Windows to like importlib by fixing aBrett Cannon2012-04-221-1/+3
| | | | variable name.
* Have importlib look for pre-existing path separators when joiningBrett Cannon2012-04-221-2/+10
| | | | paths.
* Don't worry about moving imp.get_tag() over to Lib/imp.py.Brett Cannon2012-04-211-1/+3
|
* Issue #13959: Re-implement imp.source_from_cache() in Lib/imp.py.Brett Cannon2012-04-211-1/+5
|
* Issue #13959: Re-implement imp.cache_from_source() in Lib/imp.py.Brett Cannon2012-04-211-5/+27
|
* Make path manipulation more robust for platforms with alternative pathBrett Cannon2012-04-211-16/+27
| | | | separators.
* Issue #13959: Keep imp.get_magic() in C code, but cache in importlibBrett Cannon2012-04-201-4/+8
| | | | | | for performance. While get_magic() could move to Lib/imp.py, having to support PyImport_GetMagicNumber() would lead to equal, if not more, C code than sticking with the status quo.
* Issue #14581: Windows users are allowed to import modules w/o takingBrett Cannon2012-04-201-1/+17
| | | | | the file suffix's case into account, even when doing a case-sensitive import.
* don't bother keeping a set we'll never useBenjamin Peterson2012-04-181-1/+2
|
* rollback 005fd1fe31ab (see #14609 and #14582)Benjamin Peterson2012-04-181-10/+6
| | | | | Being able to overload a sys.module entry during import of a module was broken by this changeset.
* Issue #12599: Be more strict in accepting None vs. a false-like objectBrett Cannon2012-04-181-3/+3
| | | | | | | in importlib. Thanks to PJE for pointing out the issue and Nick Coghlan for filing the bug.
* Issue #13959: Rename imp to _imp and add Lib/imp.py and beginBrett Cannon2012-04-151-30/+40
| | | | | | | rewriting functionality in pure Python. To start, imp.new_module() has been rewritten in pure Python, put into importlib (privately) and then publicly exposed in imp.
* mergeBrett Cannon2012-04-151-2/+2
|\
| * utilize startswith(tuple)Philip Jenvey2012-04-151-2/+2
| |
* | Issue #14582: Import returns the module returned by a loader insteadBrett Cannon2012-04-151-6/+10
|/ | | | | | | | | | | | of sys.modules when possible. This is being done for two reasons. One is to gain a little bit of performance by skipping an unnecessary dict lookup in sys.modules. But the other (and main) reason is to be a little bit more clear in how things should work from the perspective of import's interactions with loaders. Otherwise loaders can easily forget to return the module even though PEP 302 explicitly states they are expected to return the module they loaded.
* Handle importing pkg.mod by executingBrett Cannon2012-04-151-1/+1
| | | | | __import__('mod', {'__packaging__': 'pkg', level=1) w/o properly (and thus not segfaulting).
* Add some comments.Brett Cannon2012-04-141-0/+2
|
* Issue #2377: Make importlib the implementation of __import__().Brett Cannon2012-04-141-6/+29
| | | | | | | importlib._bootstrap is now frozen into Python/importlib.h and stored as _frozen_importlib in sys.modules. Py_Initialize() loads the frozen code along with sys and imp and then uses _frozen_importlib._install() to set builtins.__import__() w/ _frozen_importlib.__import__().
* Have importlib take advantage of ImportError's new 'name' and 'path'Brett Cannon2012-04-131-16/+26
| | | | attributes.
* If a module injects something into sys.modules as a side-effect ofBrett Cannon2012-04-031-0/+3
| | | | | | | | importation, then respect that injection. Discovered thanks to Lib/xml/parsers/expat.py injecting xml.parsers.expat.errors and etree now importing that directly as a module.
* Remove a dead docstring.Brett Cannon2012-03-021-6/+0
|
* Update importlib.invalidate_caches() to be more general.Brett Cannon2012-02-271-14/+5
|
* unused imports, pep8Philip Jenvey2012-02-251-6/+8
|
* Simplify importib._resolve_name().Brett Cannon2012-02-241-11/+5
|
* Turn _return_module() into _handle_fromlist().Brett Cannon2012-02-241-25/+25
|
* Improper type for __package__ should raise TypeError, not ValueError.Brett Cannon2012-02-231-1/+1
|
* Do a type check instead of an interface check.Brett Cannon2012-02-231-2/+2
|
* Refactor importlib to make it easier to re-implement in C.Brett Cannon2012-02-221-45/+31
|
* Issue #14077: importlib: Fix regression introduced by de6703671386.Charles-François Natali2012-02-221-3/+6
|
* Issue #14063: fix test_importlib failure under OS X case-insensitive filesystemsAntoine Pitrou2012-02-201-11/+15
| | | | (regression)
* put docstrings on functionsBenjamin Peterson2012-02-201-2/+2
|
* _relax_case -> _make_relax_caseAntoine Pitrou2012-02-201-3/+4
|
* Issue #14043: Speed up importlib's _FileFinder by at least 8x, and add a new ↵Antoine Pitrou2012-02-201-46/+65
| | | | | | importlib.invalidate_caches() function. importlib is now often faster than imp.find_module() at finding modules.
* Fix a failing importlib test under Windows.Brett Cannon2012-02-201-1/+2
| | | | Closes issue #14054.
* Optimize importlib's case-sensitivity check by wasting as little time as ↵Brett Cannon2012-02-171-13/+23
| | | | possible under case-sensitive OSs.
* Have importlib use os.replace() for atomic renaming.Brett Cannon2012-02-171-17/+6
| | | | Closes issue #13961. Thanks to Charles-François Natali for the patch.
* Tweak the handling of the empty string in sys.path for importlib.Brett Cannon2012-02-161-1/+3
| | | | | | | It seems better to cache the finder for the cwd under its full path insetad of '' in case the cwd changes. Otherwise FileFinder needs to dynamically change itself based on whether it is given '' instead of caching a finder for every change to the cwd.
* importlib.__import__() now raises ValueError when level < 0.Brett Cannon2012-02-161-0/+2
| | | | | This is to bring it more in line with what PEP 328 set out to do with removing ambiguous absolute/relative import semantics.
* Refactor importlib.__import__() and _gcd_import() to facilitate usingBrett Cannon2012-02-161-71/+130
| | | | | an __import__ implementation that takes care of basics in C and punts to importlib for more complicated code.