[issue40421] [C API] Add public getter functions for the internal PyFrameObject structure

STINNER Victor report at bugs.python.org
Wed Apr 6 09:18:28 EDT 2022


STINNER Victor <vstinner at python.org> added the comment:

IMO the initial goal is now reached. I close the issue. Thanks to everyone who helped implementing these changes!

The PyFrameObject structure is now opaque in Python 3.11. New getter functions of the Python 3.11 C API:

* PyFrame_GetBuiltins()
* PyFrame_GetGenerator()
* PyFrame_GetGlobals()
* PyFrame_GetLocals()

Finally, the PyFrameObject structure now has its own page in the C API documentation:
https://docs.python.org/dev/c-api/frame.html

As explained in previous comments, the work is not done: Cython, greenlet, gevent and coverage still need more getter and/or setter functions. Adding more functions is being discussed in this external issue:
https://github.com/faster-cpython/ideas/issues/309

I propose to open new specific issues to add new functions. For example, open an issue to add a getter for the f_lasti member.

----------
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue40421>
_______________________________________


More information about the Python-bugs-list mailing list