This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author rhettinger
Recipients Leo.Na, alexandre.vassalotti, belopolsky, docs@python, neologix, pitrou, rhettinger, serhiy.storchaka
Date 2017-02-21.04:07:46
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1487650066.92.0.378928809158.issue10701@psf.upfronthosting.co.za>
In-reply-to
Content
I agree with Antoine that, "As the name suggests, __getstate__ should probably not mutate anything."

Unless a problematic non-mutating example can be found, I suggest this be closed.  For the most part, our rule has been that pure python code doesn't have to (and possibly cannot) defend itself against mid-stream mutation, while C code only has to defend itself to the point of avoiding a segfault.  

IMO, "RuntimeError: dictionary changed size during iteration" is an informative error message in this case.
History
Date User Action Args
2017-02-21 04:07:47rhettingersetrecipients: + rhettinger, belopolsky, pitrou, alexandre.vassalotti, neologix, docs@python, Leo.Na, serhiy.storchaka
2017-02-21 04:07:46rhettingersetmessageid: <1487650066.92.0.378928809158.issue10701@psf.upfronthosting.co.za>
2017-02-21 04:07:46rhettingerlinkissue10701 messages
2017-02-21 04:07:46rhettingercreate