[Python-Dev] Pickle format machine independence

Guido van Rossum guido at python.org
Mon Apr 14 19:59:51 CEST 2008

On Mon, Apr 14, 2008 at 6:56 AM, Hrvoje Nikšić <hrvoje.niksic at avl.com> wrote:
> Are pickle files intended to be readable across different machine
>  architectures?  The documentation states unequivocally that they are
>  compatible across Python versions, but compatibility across machine
>  architectures (wrt to differences in size and layout of primitive C
>  types) is not explicitly addressed.

They're supposed to be compatible across all architectures.

>  One example where I stumbled upon the incompatibility is the pickling of
>  arrays.  While pickle is normally very careful to write out numbers in a
>  platform-independent way, arrays are written out in "tostring" format.
>  This is filed under http://bugs.python.org/issue2389.
>  I can work around this issue in my application, but if this is
>  considered a bug, I'd prefer to fix it in Python instead.

It may not be easy to fix this in a backwards-compatible way, but I
agree that there's something fishy there. If you can think of a fix,
please do submit a patch!

--Guido van Rossum (home page: http://www.python.org/~guido/)

More information about the Python-Dev mailing list