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 dholth
Recipients dholth, ezio.melotti, vstinner
Date 2016-05-27.02:35:12
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1464316515.99.0.657478307138.issue27134@psf.upfronthosting.co.za>
In-reply-to
Content
When I discovered str(b'bytes') in my Python 3 program was causing errors to be serialized to disk, I was unhappy. It turns out there is a command line option to turn it off, but the vulnerable serialization code is not going to be able to set that argument; or the one-argument-per-shebang limit we have in Linux was already used for something else.

Instead, provide a threadlocal variable that causes str(bytes) to raise. A context manager makes it simple to use for just a portion of your code:

with string.StrBytesRaises():
   no_str_bytes_here()

If not set or False then Python behaves as before.
History
Date User Action Args
2016-05-27 02:35:16dholthsetrecipients: + dholth, vstinner, ezio.melotti
2016-05-27 02:35:15dholthsetmessageid: <1464316515.99.0.657478307138.issue27134@psf.upfronthosting.co.za>
2016-05-27 02:35:15dholthlinkissue27134 messages
2016-05-27 02:35:14dholthcreate