]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-40428: Remove PyTuple_ClearFreeList() function (GH-19769)
authorVictor Stinner <vstinner@python.org>
Wed, 29 Apr 2020 00:29:20 +0000 (02:29 +0200)
committerGitHub <noreply@github.com>
Wed, 29 Apr 2020 00:29:20 +0000 (02:29 +0200)
commitae00a5a88534fd45939f86c12e038da9fa6f9ed6
tree43b1f4ea83241fd72d32a0ade5a17366e67d42e4
parentcc0dc7e484c9626857e9a8b4c40eee37473702ed
bpo-40428: Remove PyTuple_ClearFreeList() function (GH-19769)

Remove the following function from the C API:

* PyAsyncGen_ClearFreeLists()
* PyContext_ClearFreeList()
* PyDict_ClearFreeList()
* PyFloat_ClearFreeList()
* PyFrame_ClearFreeList()
* PyList_ClearFreeList()
* PySet_ClearFreeList()
* PyTuple_ClearFreeList()

Make these functions private, move them to the internal C API and
change their return type to void.

Call explicitly PyGC_Collect() to free all free lists.

Note: PySet_ClearFreeList() did nothing.
21 files changed:
Doc/whatsnew/3.9.rst
Include/context.h
Include/cpython/dictobject.h
Include/cpython/frameobject.h
Include/cpython/listobject.h
Include/floatobject.h
Include/genobject.h
Include/internal/pycore_gc.h
Include/setobject.h
Include/tupleobject.h
Misc/NEWS.d/next/C API/2020-04-28-23-17-27.bpo-40428.rmtpru.rst [new file with mode: 0644]
Modules/gcmodule.c
Objects/dictobject.c
Objects/floatobject.c
Objects/frameobject.c
Objects/genobject.c
Objects/listobject.c
Objects/setobject.c
Objects/tupleobject.c
PC/python3.def
Python/context.c