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 lemburg
Recipients alexandre.vassalotti, bronger, dddibagh, georg.brandl, lemburg, loewis, mawbid
Date 2009-01-21.17:57:36
SpamBayes Score 7.328027e-13
Marked as misclassified No
Message-id <4977620D.6080504@egenix.com>
In-reply-to <1232552609.49.0.655275641566.issue2980@psf.upfronthosting.co.za>
Content
On 2009-01-21 16:43, Torsten Bronger wrote:
> Torsten Bronger <bronger@physik.rwth-aachen.de> added the comment:
> 
> I ran into this problem today when writing python data structures into a
> database.  Only ASCII is safe in this situation.  I understood the
> Python docs that protocol 0 was ASCII-only.
> 
> I use pickle+base64 now, however, this makes debugging more difficult.

Databases can handle binary data just fine, so pickle protocol 2
should be better in your situation.

If you require ASCII-only data, you can also use pickle protocol 2,
zlib and base64 to get a compact version of a serialized Python object.

> Anyway, I think that the docs should clearly say that protocol 8 is not
> ASCII-only because this is important in the Python world.  For example,
> I saw this issue because Django makes an implicit unicode() conversion
> with my input which fails with non-ASCII.

That sounds like an issue with Django - it shouldn't try to convert
binary data to Unicode (which is reserved for text data).
History
Date User Action Args
2009-01-21 17:57:38lemburgsetrecipients: + lemburg, loewis, georg.brandl, bronger, alexandre.vassalotti, mawbid, dddibagh
2009-01-21 17:57:37lemburglinkissue2980 messages
2009-01-21 17:57:36lemburgcreate