summaryrefslogtreecommitdiffstats
path: root/Python/import.c
Commit message (Collapse)AuthorAgeFilesLines
* Issue #15781: Fix two small race conditions in import's module locking.Antoine Pitrou2012-08-271-1/+5
|
* Fix a spelling mistake in a comment.Brett Cannon2012-08-051-1/+1
|
* Remove unused variable `trim_get_code`.Antoine Pitrou2012-08-041-4/+0
|
* Close #15486: Simplify the mechanism used to remove importlib frames from ↵Nick Coghlan2012-07-311-23/+5
| | | | tracebacks when they just introduce irrelevant noise
* Close #15425: Eliminate more importlib related traceback noiseNick Coghlan2012-07-291-4/+26
|
* Issues #15169, #14599: Make PyImport_ExecCodeModuleWithPathnames() useBrett Cannon2012-07-131-166/+29
| | | | | | | | | | | | 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.
* Fix compilation under WindowsAntoine Pitrou2012-07-101-1/+2
|
* fix refleakBenjamin Peterson2012-07-101-1/+3
|
* initialize variable for compiler happinessBenjamin Peterson2012-07-091-3/+2
|
* Issue #15167 (as part of #13959): imp.get_magic() is no implemented inBrett Cannon2012-07-091-120/+6
| | | | Lib/imp.py.
* Issue #15242: Have PyImport_GetMagicTag() return a const char *Brett Cannon2012-07-091-14/+4
| | | | | | | defined in sysmodule.c instead of straight out of a Unicode object. Thanks to Amaury Forgeot d'Arc for noticing the bug and Eric Snow for writing the patch.
* Issue #15110: Fix the tracebacks generated by "import xxx" to not show the ↵Antoine Pitrou2012-07-081-0/+66
| | | | importlib stack frames.
* Issue #15166: Re-implement imp.get_tag() using sys.implementation.Brett Cannon2012-07-021-24/+14
| | | | | | | 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.
* get_sourcefile(): use PyUnicode_READ() to avoid the creation of a temporaryVictor Stinner2012-06-161-12/+11
| | | | Py_UCS4 buffer
* Close #14857: fix regression in references to PEP 3135 implicit __class__ ↵Nick Coghlan2012-05-271-1/+2
| | | | closure variable. Reopens issue #12370, but also updates unittest.mock to workaround that issue
* Issue #9260: A finer-grained import lock.Antoine Pitrou2012-05-171-47/+41
| | | | | 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 #14583: Fix importlib bug when a package's __init__.py would first ↵Antoine Pitrou2012-05-071-8/+11
| | | | import one of its modules then raise an error.
* Fix too early decrefs.Antoine Pitrou2012-05-061-2/+2
|
* Fix typo in changeset eb5c5c23ca9b.Nadeem Vawda2012-05-051-1/+1
|
* Simplify code for load_dynamic()Antoine Pitrou2012-05-041-43/+3
|
* 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
|