There is a cool module in sage called sage.misc.explain_pickle, which
is useful for helping to understand and debug how non-trivial objects
in Sage are pickled and unpickled.

However, it's a big, fairly complicated module which carries quite a
bit of technical debt with it, and relatively little of it is specific
to Sage (the few bits that are could be added on as a wrapper).  It
could in theory be useful outside of Sage as well.  Furthermore, it's
not actually *used* by anything in Sage; it's a debugging tool.  And
probably one that's not used as much anymore since (I believe) a lot
of the deepest pickle-related issues in Sage have been worked out?  I
could be wrong about that though--maybe it's used more than I know.

I ask about it because in the Python 3 of Sage it's even of less
value.  Although it could be made to work on Python 3, it only
supports the "version 2" pickle protocol from Python 2.  Since Python
3.4 we're now up to protocol version 4, and there's a protocol version
5 in the works [1].

For this reason I think it should be deprecated from Sage (or at least
importing it from sage.misc).  If someone wants to update it to
support new pickle protocol versions (I don't), it would be worth
putting in a new repository where people can still contribute to it.
If not, I think it should just be sunsetted and sent off with the
praise it deserves.

E


[1] https://www.python.org/dev/peps/pep-0574/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to