From: Nikita Sobolev Date: Wed, 7 Sep 2022 11:13:07 +0000 (+0300) Subject: gh-96641: Do not expose `KeyWrapper` in `_functoolsmodule.c` (gh-96642) X-Git-Tag: v3.12.0a1~461 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2fd7246e97c8cc09b4e3f22933693f9d68f08163;p=thirdparty%2FPython%2Fcpython.git gh-96641: Do not expose `KeyWrapper` in `_functoolsmodule.c` (gh-96642) --- diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-07-13-38-37.gh-issue-96641.wky0Fc.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-07-13-38-37.gh-issue-96641.wky0Fc.rst new file mode 100644 index 000000000000..51faca8716fb --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2022-09-07-13-38-37.gh-issue-96641.wky0Fc.rst @@ -0,0 +1 @@ +Do not expose ``KeyWrapper`` in :mod:`_functools`. diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c index c6d6ca934e9c..3abb7fd710ae 100644 --- a/Modules/_functoolsmodule.c +++ b/Modules/_functoolsmodule.c @@ -1471,9 +1471,8 @@ _functools_exec(PyObject *module) if (state->keyobject_type == NULL) { return -1; } - if (PyModule_AddType(module, state->keyobject_type) < 0) { - return -1; - } + // keyobject_type is used only internally. + // So we don't expose it in module namespace. state->lru_list_elem_type = (PyTypeObject *)PyType_FromModuleAndSpec( module, &lru_list_elem_type_spec, NULL);