On Thu, 2003-12-11 at 15:15, Sidnei da Silva wrote:
Do'h, that's a bit difficult since Jim removed them for good :(
Hmmm... I suppose you could write the script in Zope 2.7 and tell people they have to use that version of Zope to convert the database before upgrading.
Now, back to the automagically-converting idea, would it be possible to provide an alias for the old BTree package that would feed the old pickle into a new BTrees constructor on unpickling *wink*?
I just remembered why the problem is harder. Any object that references as BTree has the name of the BTree class embedded in its pickle. The conversion script needs to frob each of those database records to refer to the new class. I'm not sure how to do that. Unpickle and repickle each one? A "simple" binary rewrite of the pickle to past in the new name. Just not sure. Jeremy