summaryrefslogtreecommitdiffstats
path: root/Python/import.c
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup import.cVictor Stinner2016-05-201-39/+28
| | | | | | | | | * Replace PyUnicode_RPartition() with PyUnicode_FindChar() and PyUnicode_Substring() to avoid the creation of a temporary tuple. * Use PyUnicode_FromFormat() to build a string and avoid the single_dot ('.') singleton Thanks Serhiy Storchaka for your review.
* fs_unicode_converter is no longer used.Serhiy Storchaka2016-04-141-8/+0
|
* Issue #22570: Renamed Py_SETREF to Py_XSETREF.Serhiy Storchaka2016-04-061-2/+2
|\
* \ Issue #25698: Prevent possible replacing imported module with the empty oneSerhiy Storchaka2016-02-101-2/+6
|\ \ | |/ | | | | if the stack is too deep.
| * Issue #25698: Prevent possible replacing imported module with the empty oneSerhiy Storchaka2016-02-101-2/+6
| | | | | | | | if the stack is too deep.
* | Issue #18018: Raise an ImportError if a relative import is attemptedBrett Cannon2016-01-231-3/+8
| | | | | | | | | | | | | | | | with no known parent package. Previously SystemError was raised if the parent package didn't exist (e.g., __package__ was set to ''). Thanks to Florent Xicluna and Yongzhi Pan for reporting the issue.
* | Issue #25791: Warn when __package__ != __spec__.parent.Brett Cannon2016-01-221-39/+58
| | | | | | | | | | | | | | | | | | In a previous change, __spec__.parent was prioritized over __package__. That is a backwards-compatibility break, but we do eventually want __spec__ to be the ground truth for module details. So this change reverts the change in semantics and instead raises an ImportWarning when __package__ != __spec__.parent to give people time to adjust to using spec objects.
* | Issue #25791: Raise an ImportWarning when __spec__ or __package__ areBrett Cannon2016-01-151-21/+43
| | | | | | | | | | | | | | | | not defined for a relative import. This is the start of work to try and clean up import semantics to rely more on a module's spec than on the myriad attributes that get set on a module. Thanks to Rose Ames for the patch.
* | Issue #20440: Cleaning up the code by using Py_SETREF.Serhiy Storchaka2016-01-051-7/+3
| |
* | Issue #25923: Added the const qualifier to static constant arrays.Serhiy Storchaka2015-12-251-3/+3
|/
* Rebuilt Clinic generated code.Larry Hastings2015-08-251-1/+1
|
* Issue #24769: Interpreter now starts properly when dynamic loadingLarry Hastings2015-08-251-23/+46
| | | | is disabled. Patch by Petr Viktorin.
* 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
| |