Make frame.f_locals.copy()
return a snapshot dict of f_locals
#118921
Labels
type-feature
A feature request or enhancement
Feature or enhancement
Proposal:
Per PEP 667,
frame.f_locals
is now a write-through proxy (FrameLocalsProxy
) for underlying fast local variables. In the beginning we did not implement thecopy()
method because we thinkdict(frame.f_locals)
is a more explicit way to achieve the snapshot. However, there are existing code that's usingframe.f_locals.copy()
to take a snapshot. Moreover,types.MappingProxyType({}).copy()
returns the copy of the underlying mapping so it's not unprecedented for aproxy.copy()
to return a dict.Thus, we should implement
copy()
method forFrameLocalsProxy
and make it return a dict of snapshot of the current local variables.Has this already been discussed elsewhere?
I have already discussed this feature proposal on Discourse
Links to previous discussion of this feature:
https://discuss.python.org/t/pep-667-consistent-views-of-namespaces/46631/26
Linked PRs
copy()
method forFrameLocalsProxy
#118923copy()
method forFrameLocalsProxy
(GH-118923) #118933The text was updated successfully, but these errors were encountered: