summaryrefslogtreecommitdiffstats
path: root/Modules/_testmultiphase.c
Commit message (Collapse)AuthorAgeFilesLines
* Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE whereverSerhiy Storchaka2017-01-231-2/+1
| | | | possible. Patch is writen with Coccinelle.
* Merge #27782 fix from 3.5Nick Coghlan2016-08-211-1/+32
|\
| * Issue #27782: Fix m_methods handling in multiphase initNick Coghlan2016-08-211-1/+32
| | | | | | | | | | | | | | | | Multi-phase extension module import now correctly allows the ``m_methods`` field to be used to add module level functions to instances of non-module types returned from ``Py_create_mod``. Patch by Xiang Zhang.
* | Issue #25923: Added more const qualifiers to signatures of static and ↵Serhiy Storchaka2015-12-251-1/+1
|/ | | | private functions.
* Close #24748: Restore imp.load_dynamic compatibilityNick Coghlan2015-09-051-0/+10
| | | | | | | | To resolve a compatibility problem found with py2exe and pywin32, imp.load_dynamic() once again ignores previously loaded modules to support Python modules replacing themselves with extension modules. Patch by Petr Viktorin.
* Issue #24373: Eliminate PEP 489 test refleaksNick Coghlan2015-06-041-6/+14
| | | | | | | _testmultiphase and xxlimited now use tp_traverse and tp_finalize to avoid reference leaks encountered when combining tp_dealloc with PyType_FromSpec (see issue #16690 for details)
* fix importing one char extension modules (closes #24328)Benjamin Peterson2015-05-291-0/+8
|
* Issue #24268: Address some PEP 489 refleaksNick Coghlan2015-05-231-0/+1
| | | | | | | | - missing DECREF in PyModule_FromDefAndSpec2 - missing DECREF in PyType_FromSpecAndBases2 - missing DECREF in _testmultiphase module Patch by Petr Viktorin
* PEP 489: Multi-phase extension module initializationNick Coghlan2015-05-231-0/+567
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.