On 1/28/2014 10:02 PM, Kristján Valur Jónsson wrote:

marshall is not guaranteed to be backward compatible between Python
versions, so it's generally not a good idea to use it for serialization.

How often I hear this argument :)
For many people, serialized data is not persisted.  But used e.g. for sending 
information over the wire, or between processes.
Marshal is very good for that.  Additionally, it doesn't have any side effects since it 
just stores primitive types and is thus "safe".
EVE Online uses its own extended version of the marshal system, and has for 
years, because it is fast and it can be
tuned to an application domain by adding custom opcodes.

I think the proper message is this:

"Marshal is designed for caching compiled message objects and has the function needed for that goal. When the need changes, marshal changes (with a change in magic number). Other uses should take into account the limitations of function and stability."

It appears you did just that by making a custom version with the function and stability you need.

--
Terry Jan Reedy


_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to