summaryrefslogtreecommitdiffstats
path: root/Python/import.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Issue #13959: Move module type constants to Lib/imp.py.Brett Cannon2012-05-041-22/+0
|
* Remove dead Windows code which no longer will compile.Brett Cannon2012-05-041-6/+0
|
* Issue #13959: Re-implement imp.get_suffixes() in Lib/imp.py.Brett Cannon2012-05-041-59/+13
| | | | | | 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.
* Issues #13959, 14647: Re-implement imp.reload() in Lib/imp.py.Brett Cannon2012-04-291-97/+12
| | | | Thanks to Eric Snow for the patch.
* Issue #13959: Re-implement imp.NullImporter in Lib/imp.py.Brett Cannon2012-04-291-139/+2
|
* Issue #14605: Use None in sys.path_importer_cache to represent noBrett Cannon2012-04-271-9/+1
| | | | finder instead of using some (now non-existent) implicit finder.
* Check newly created consistency using _PyUnicode_CheckConsistency(str, 1)Victor Stinner2012-04-271-0/+1
| | | | | | * In debug mode, fill the string data with invalid characters * Simplify also reference counting in PyCodec_BackslashReplaceErrors() and PyCodec_XMLCharRefReplaceError()
* Issue #14605: Insert to the front of sys.path_hooks instead of appending.Brett Cannon2012-04-251-2/+2
|
* Issue #13959: Re-implement imp.find_module() in Lib/imp.py.Brett Cannon2012-04-221-751/+0
| | | | Thanks to Eric Snow for taking an initial stab at the implementation.
* Issue #13959: Re-implement imp.source_from_cache() in Lib/imp.py.Brett Cannon2012-04-211-33/+0
|
* Issue #13959: Re-implement imp.cache_from_source() in Lib/imp.py.Brett Cannon2012-04-211-111/+0
|
* rollback 005fd1fe31ab (see #14609 and #14582)Benjamin Peterson2012-04-181-13/+6
| | | | | Being able to overload a sys.module entry during import of a module was broken by this changeset.
* Issue #13959: Re-implement imp.load_compiled() in imp.py.Brett Cannon2012-04-171-76/+0
|
* Issue #14592: A relative import will raise a KeyError if __package__Brett Cannon2012-04-171-1/+2
| | | | | | or __name__ are not set in globals. Thanks to Stefan Behnel for the bug report.
* Fix #14600. Correct reference handling and naming of ImportError convenience ↵Brian Curtin2012-04-171-1/+2
| | | | function
* Issue #13959: Re-implement imp.load_source() in imp.py.Brett Cannon2012-04-171-390/+0
|
* Fix another refleakAntoine Pitrou2012-04-161-3/+7
|
* Fix a refleakAntoine Pitrou2012-04-161-2/+3
|
* Fix reference loss on Py_None when None is encountered in sys.modules.Antoine Pitrou2012-04-161-0/+1
|
* Issue #13959: Re-implement imp.load_package() in imp.py.Brett Cannon2012-04-161-171/+0
| | | | | Thanks to Eric Snow for helping with imp.load_module() (previous commit) which led to the removal of a bunch of C code.
* Issue #13959: Re-implement imp.load_module() in imp.py.Brett Cannon2012-04-161-53/+0
|
* Issue #13959: Simplify imp.reload() by relying on a module'sBrett Cannon2012-04-151-34/+10
| | | | | | | | | | __loader__. Since import now sets __loader__ on all modules it creates and imp.reload() already relied on the attribute for modules that import didn't create, the only potential compatibility issue is if people were deleting the attribute on modules and expecting imp.reload() to continue to work.
* Issue #13959: Rename imp to _imp and add Lib/imp.py and beginBrett Cannon2012-04-151-18/+2
| | | | | | | 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.
* Issue #14582: Import returns the module returned by a loader insteadBrett Cannon2012-04-151-6/+13
| | | | | | | | | | | | 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.
* Set ImportError.name when raising the exception in the case of NoneBrett Cannon2012-04-151-2/+5
| | | | found in sys.modules.
* Handle importing pkg.mod by executingBrett Cannon2012-04-151-4/+17
| | | | | __import__('mod', {'__packaging__': 'pkg', level=1) w/o properly (and thus not segfaulting).
* Fix Windows buildBrian Curtin2012-04-141-3/+4
|
* Undo a C99 idiom.Brett Cannon2012-04-141-2/+2
|
* Issue #2377: Make importlib the implementation of __import__().Brett Cannon2012-04-141-522/+244
| | | | | | | 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__().
* in 72556ff86828, I should have updated the magic as well as the comment (#14230)Benjamin Peterson2012-03-161-1/+1
|
* fix commentBenjamin Peterson2012-03-151-2/+2
|
* perform yield from delegation by repeating YIELD_FROM opcode (closes #14230)Benjamin Peterson2012-03-151-1/+2
| | | | | | | This allows generators that are using yield from to be seen by debuggers. It also kills the f_yieldfrom field on frame objects. Patch mostly from Mark Shannon with a few tweaks by me.
* Issue #14084: Fix a file descriptor leak when importing a module with a bad ↵Antoine Pitrou2012-02-221-4/+3
|\ | | | | | | encoding.
| * Issue #14084: Fix a file descriptor leak when importing a module with a bad ↵Antoine Pitrou2012-02-221-1/+3
| | | | | | | | encoding.
| * In find_module(), do not silence fileno() and dup() errors.Antoine Pitrou2012-02-221-0/+2
| |
* | Remove now useless arbitrary limit of module name lengthVictor Stinner2012-01-251-6/+0
| |
* | Port import fixes from 2.7.Antoine Pitrou2012-01-251-10/+10
|\ \ | |/
| * Port import fixes from 2.7.Antoine Pitrou2012-01-251-10/+10
| |
* | Issue #11235: Fix OverflowError when trying to import a source file whose ↵Antoine Pitrou2012-01-241-7/+4
|\ \ | |/ | | | | modification time doesn't fit in a 32-bit timestamp.
| * Issue #11235: Fix OverflowError when trying to import a source file whose ↵Antoine Pitrou2012-01-241-7/+4
| | | | | | | | modification time doesn't fit in a 32-bit timestamp.
* | Fix the builtin module initialization code to store the init function for ↵Antoine Pitrou2012-01-181-0/+4
|\ \ | |/ | | | | future reinitialization.
| * Fix the builtin module initialization code to store the init function for ↵Antoine Pitrou2012-01-181-0/+4
| | | | | | | | future reinitialization.
* | Issue #13645: pyc files now contain the size of the corresponding sourceAntoine Pitrou2012-01-131-6/+20
| | | | | | | | | | code, to avoid timestamp collisions (especially on filesystems with a low timestamp resolution) when checking for freshness of the bytecode.
* | (Merge 3.2) Handle correctly _Py_fopen() error: don't replace the exceptionVictor Stinner2011-12-181-9/+21
|\ \ | |/
* | import.c now catchs _Py_stat() exceptionsVictor Stinner2011-12-181-7/+31
| | | | | | | | _Py_stat() now returns -2 if an exception was raised.
* | Followup to a541bda2f5e2: Add a short comment.Charles-François Natali2011-12-071-0/+1
| |
* | Issue #11051: Reduce the number of syscalls per import.Charles-François Natali2011-12-071-2/+1
| |
* | PEP 3155 / issue #13448: Qualified name for classes and functions.Antoine Pitrou2011-11-251-1/+2
| |
* | Catch PyUnicode_AS_UNICODE() errorsVictor Stinner2011-11-161-14/+33
| |
* | Use PyUnicode_FromFormat() to create the temporary file name.Antoine Pitrou2011-11-151-27/+14
| | | | | | | | | | Also, as in importlib, append the id of an object to make the file name pseudo-random.