[issue2307] Decide what to do with bytes/str when transferring pickles between 2.6 and 3.0

Guido van Rossum report at bugs.python.org
Mon Mar 17 18:15:15 CET 2008


Guido van Rossum <guido at python.org> added the comment:

We have a proposed solution for 2.x -> 3.x.  In 3.x, an (8-bit) str
instance received from 2.x will be decoded into a (Unicode) str
instance.  The encoding defaults to ASCII; you can specify a different
encoding and also an error value on the load() or loads() call.

This of course doesn't solve all problems; str instances representing
binary data will be unpickled as strings.  The app will have to deal
with this.

By default 3.x will *write* pickles using a new version number which is
incompatible with 2.x.  I'm not sure yet if we should allow writing
pickles in 3.x that can be read in 2.x; we need use cases for that.

----------
resolution:  -> accepted

__________________________________
Tracker <report at bugs.python.org>
<http://bugs.python.org/issue2307>
__________________________________


More information about the Python-bugs-list mailing list