Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32.4k
gh-74929: PEP 667 C API documentation#119379
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
ncoghlan commentedMay 22, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Searching for the C APIs updated by the PEP identified some outdated mentions in comments, hence the changes to a few Python and C files. |
@@ -1888,8 +1888,7 @@ frame_get_var(_PyInterpreterFrame *frame, PyCodeObject *co, int i, | |||
} | |||
// (likely) Otherwise it is an arg (kind & CO_FAST_LOCAL), | |||
// with the initial value set when the frame was created... | |||
// (unlikely) ...or it was set to some initial value by | |||
// an earlier call to PyFrame_LocalsToFast(). | |||
// (unlikely) ...or it was set via the f_locals proxy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I'm pretty sure this "set externally" loophole still exists, it's just accessed slightly differently now.
Uh oh!
There was an error while loading.Please reload this page.
ncoghlan commentedMay 27, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
I've kept the reference out to the PEP for details of the C API changes, so I'll submit a PR there that skips listing PR posted:python/peps#3793 |
Uh oh!
There was an error while loading.Please reload this page.
I'll leave this another couple of days to give@markshannon and@gaogaotiantian a further chance to comment, but I'll make sure this and the related PR to the PEP are merged before beta2 next week. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Small nitpicks for consistency.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Thanks@ncoghlan for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13. |
* Add docs for new APIs* Add soft-deprecation notices* Add What's New porting entries* Update comments referencing `PyFrame_LocalsToFast()` to mention the proxy instead* Other related cleanups found when looking for refs to the deprecated APIs(cherry picked from commit3859e09)Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
GH-119892 is a backport of this pull request to the3.13 branch. |
* Add docs for new APIs* Add soft-deprecation notices* Add What's New porting entries* Update comments referencing `PyFrame_LocalsToFast()` to mention the proxy instead* Other related cleanups found when looking for refs to the deprecated APIs
* Add docs for new APIs* Add soft-deprecation notices* Add What's New porting entries* Update comments referencing `PyFrame_LocalsToFast()` to mention the proxy instead* Other related cleanups found when looking for refs to the deprecated APIs
* Add docs for new APIs* Add soft-deprecation notices* Add What's New porting entries* Update comments referencing `PyFrame_LocalsToFast()` to mention the proxy instead* Other related cleanups found when looking for refs to the deprecated APIs
Uh oh!
There was an error while loading.Please reload this page.
📚 Documentation preview 📚:https://cpython-previews--119379.org.readthedocs.build/