summaryrefslogtreecommitdiffstats
path: root/Python/import.c
Commit message (Collapse)AuthorAgeFilesLines
* Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(),Serhiy Storchaka2015-05-301-1/+5
|\ | | | | | | | | PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains() to check for and handle errors correctly.
| * Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(),Serhiy Storchaka2015-05-301-1/+5
| | | | | | | | | | PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains() to check for and handle errors correctly.
* | PEP 489: Multi-phase extension module initializationNick Coghlan2015-05-231-66/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Known limitations of the current implementation: - documentation changes are incomplete - there's a reference leak I haven't tracked down yet The leak is most visible by running: ./python -m test -R3:3 test_importlib However, you can also see it by running: ./python -X showrefcount Importing the array or _testmultiphase modules, and then deleting them from both sys.modules and the local namespace shows significant increases in the total number of active references each cycle. By contrast, with _testcapi (which continues to use single-phase initialisation) the global refcounts stabilise after a couple of cycles.
* | Issue #23911: Move path-based bootstrap code to a separate frozen module.Eric Snow2015-05-031-9/+27
| |
* | Issue #23998: PyImport_ReInitLock() now checks for lock allocation errorChristian Heimes2015-04-191-1/+5
|\ \ | |/
| * Issue #23998: PyImport_ReInitLock() now checks for lock allocation errorChristian Heimes2015-04-191-1/+5
| |\
| | * Issue #23998: PyImport_ReInitLock() now checks for lock allocation errorChristian Heimes2015-04-191-1/+5
| | |
* | | Issue #23944: Argument Clinic now wraps long impl prototypes at column 78.Larry Hastings2015-04-141-4/+6
| | |
* | | Issue #23501: Argumen Clinic now generates code into separate files by default.Serhiy Storchaka2015-04-031-2/+1
| | |
* | | Issue #23694: Enhance _Py_fopen(), it now raises an exception on errorVictor Stinner2015-03-181-2/+0
| | | | | | | | | | | | | | | * If fopen() fails, OSError is raised with the original filename object. * The GIL is now released while calling fopen()
* | | Removed redundant casts to `char *`.Serhiy Storchaka2014-09-281-1/+1
| | | | | | | | | | | | Corresponding functions now accept `const char *` (issue #1772673).
* | | (Merge 3.4) Issue #21925: PyImport_Cleanup(): Remove unused parameter inVictor Stinner2014-07-071-1/+1
|\ \ \ | |/ / | | | | | | PySys_FormatStderr() call
| * | Issue #21925: PyImport_Cleanup(): Remove unused parameter inVictor Stinner2014-07-071-1/+1
| | | | | | | | | | | | PySys_FormatStderr() call
* | | Move import.c to use Clinic file output.Brett Cannon2014-05-301-330/+17
|/ /
* | Issue #21226: fix a ref leak.Eric Snow2014-05-291-0/+1
| |
* | Issue #21226: Set all attrs in PyImport_ExecCodeModuleObject.Eric Snow2014-05-121-20/+12
| |
* | Issue #20942: PyImport_ImportFrozenModuleObject() no longer setsBrett Cannon2014-04-041-32/+54
| | | | | | | | | | | | | | | | __file__. This causes _frozen_importlib to no longer have __file__ set as well as any frozen module imported using imp.init_frozen() (which is deprecated).
* | Temporary silence test broken by issue19255.Serhiy Storchaka2014-02-101-2/+0
| | | | | | | | Remove unused variables.
* | Issue #19255: The builtins module is restored to initial value beforeSerhiy Storchaka2014-02-101-34/+53
| | | | | | | | cleaning other modules. The sys and builtins modules are cleaned last.
* | Issue #20437: Fixed 22 potential bugs when deleting objects references.Serhiy Storchaka2014-02-091-4/+2
|\ \ | |/
| * Issue #20437: Fixed 21 potential bugs when deleting objects references.Serhiy Storchaka2014-02-091-4/+2
| |
* | Issue #20530: Argument Clinic's signature format has been revised again.Larry Hastings2014-02-091-24/+48
| | | | | | | | | | | | | | The new syntax is highly human readable while still preventing false positives. The syntax also extends Python syntax to denote "self" and positional-only parameters, allowing inspect.Signature objects to be totally accurate for all supported builtins in Python 3.4.
* | #Issue 20456: Several improvements and bugfixes for Argument Clinic,Larry Hastings2014-02-011-2/+10
| | | | | | | | | | including correctly generating code for Clinic blocks inside C preprocessor conditional blocks.
* | Issue #20326: Argument Clinic now uses a simple, unique signature toLarry Hastings2014-01-281-26/+26
| | | | | | | | | | | | | | | | | | | | annotate text signatures in docstrings, resulting in fewer false positives. "self" parameters are also explicitly marked, allowing inspect.Signature() to authoritatively detect (and skip) said parameters. Issue #20326: Argument Clinic now generates separate checksums for the input and output sections of the block, allowing external tools to verify that the input has not changed (and thus the output is not out-of-date).
* | Issue #20189: Four additional builtin types (PyTypeObject,Larry Hastings2014-01-241-24/+24
| | | | | | | | | | | | PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type) have been modified to provide introspection information for builtins. Also: many additional Lib, test suite, and Argument Clinic fixes.
* | Issue #20287: Argument Clinic's output is now configurable, allowingLarry Hastings2014-01-181-24/+8
| | | | | | | | delaying its output or even redirecting it to a separate file.
* | Remove an unneeded cast.Brett Cannon2014-01-101-1/+1
| |
* | Issue #20152: import.c now uses Argument Clinic.Brett Cannon2014-01-101-87/+463
| |
* | Implement PEP 451 (ModuleSpec).Eric Snow2013-11-221-5/+11
| |
* | Issue #19437: Fix init_builtin(), handle _PyImport_FindExtensionObject()Victor Stinner2013-11-141-1/+5
| | | | | | | | failure
* | Issue #19437: Fix PyImport_ImportModuleLevelObject(), handleVictor Stinner2013-11-131-0/+4
| | | | | | | | PyUnicode_Substring() failure (ex: MemoryError)
* | Issue #19512, #19515: remove shared identifiers, move identifiers where theyVictor Stinner2013-11-071-1/+1
| | | | | | | | | | | | | | are used. Move also _Py_IDENTIFIER() defintions to the top in modified files to remove identifiers duplicated in the same file.
* | Issue #19512: Use the new _PyId_builtins identifierVictor Stinner2013-11-061-1/+1
| |
* | Issue #1772673: The type of `char*` arguments now changed to `const char*`.Serhiy Storchaka2013-10-191-8/+9
| |
* | Issue #18571: Implementation of the PEP 446: file descriptors and file handlesVictor Stinner2013-08-271-1/+1
| | | | | | | | | | are now created non-inheritable; add functions os.get/set_inheritable(), os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
* | remove unused declarationVictor Stinner2013-08-221-3/+0
| |
* | Issue #10241: Clear extension module dict copies at interpreter shutdown.Antoine Pitrou2013-08-101-0/+2
| | | | | | | | | | | | Patch by Neil Schemenauer, minimally modified. (re-apply after fix for tkinter-related crash)
* | Improve verbose reporting of shutdown phase by using the "public" module nameAntoine Pitrou2013-08-061-6/+7
| |
* | Backout 62658d9d8926 (issue #10241): it causes a crash at shutdown when ↵Antoine Pitrou2013-08-021-2/+0
| | | | | | | | deallocating a Tkapp object.
* | Issue #10241: Clear extension module dict copies at interpreter shutdown.Antoine Pitrou2013-08-011-0/+2
| | | | | | | | Patch by Neil Schemenauer, minimally modified.
* | Issue #18214: Improve finalization of Python modules to avoid setting their ↵Antoine Pitrou2013-07-311-91/+68
| | | | | | | | globals to None, in most cases.
* | Add missing check of PyDict_SetItem()'s return value in ↵Christian Heimes2013-07-201-1/+4
|\ \ | |/ | | | | | | | | _PyImport_FindExtensionObject() CID 486649
| * Add missing check of PyDict_SetItem()'s return value in ↵Christian Heimes2013-07-201-1/+4
| | | | | | | | | | | | _PyImport_FindExtensionObject() CID 486649
* | Issue #18408: handle PySys_GetObject() failure, raise a RuntimeErrorVictor Stinner2013-07-161-6/+8
| |
* | Issue #15767: Revert 3a50025f1900 for ModuleNotFoundErrorBrett Cannon2013-07-041-2/+1
| |
* | import.c does neither need mode_t nor _mkdir() anymoreChristian Heimes2013-06-231-8/+0
| |
* | Issue #15767: Touch up ModuleNotFoundError usage by import.Brett Cannon2013-06-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Forgot to raise ModuleNotFoundError when None is found in sys.modules. This led to introducing the C function PyErr_SetImportErrorSubclass() to make setting ModuleNotFoundError easier. Also updated the reference docs to mention ModuleNotFoundError appropriately. Updated the docs for ModuleNotFoundError to mention the None in sys.modules case. Lastly, it was noticed that PyErr_SetImportError() was not setting an exception when returning None in one case. That issue is now fixed.
* | Issue #18065: For frozen packages set __path__ to [].Brett Cannon2013-06-011-4/+2
| | | | | | | | | | | | | | Previously __path__ was set to [__name__], but that could lead to bad results if someone managed to circumvent the frozen importer and somehow ended up with a finder that thought __name__ was a legit directory/location.
* | Issue #17937: Try harder to collect cyclic garbage at shutdown.Antoine Pitrou2013-05-181-0/+1
| |
* | Issue #1545463: At shutdown, defer finalization of codec modules so that ↵Antoine Pitrou2013-05-081-20/+35
| | | | | | | | | | | | stderr remains usable. (should fix Windows buildbot failures on test_gc)