You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
PEP 3121, 384 Refactoring applied to array module #59880
PEP-489: Multi-phase extension module initialization
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.
Activity
RobinSchreiber commentedon Aug 15, 2012
Changes proposed in PEP-3121 and PEP-384 have now been applied to the array module!
vstinner commentedon Jun 22, 2020
The PEP-384 part is fixed by:
commit d5cacbb
Author: Nick Coghlan <ncoghlan@gmail.com>
Date: Sat May 23 22:24:10 2015 +1000
vstinner commentedon Nov 19, 2020
See bpo-41111 "Convert a few stdlib extensions to the limited C API".