Re: Backward compatibility (was Re: Announcing Newt DB, the amphibious database)
Jim Fulton <[email protected]>
| Newsgroups | gmane.comp.web.zope.zodb |
|---|---|
| Message-ID | <CAPDm-FhM_tWywr70cz8Lp2AoUrH-RmXW=qRaFPUHCNGzuMyoBg@mail.gmail.com> |
On Thu, Feb 23, 2017 at 1:54 PM, Hanno Schlichting <[email protected]> wrote: > On Thu, Feb 23, 2017, at 19:37, David Glick (Glick Software) wrote: > > I think so. I'll hedge my bets and say it would let us run the tests and > see if there's anything else that needs attention. > > > IIRC there was also a change in the undo protocol. > We talked about it. The protocol changed many years ago and I offered to try to come up with something new that didn't require pickling instances but, no one took me up in it and ... > At some point I dropped the ZopeUndo dependency in Zope 4.0 master ( > https://github.com/zopefoundation/Zope/commit/ > 41c8944dfab6ea4111d61a5aefc534b7c118ef87). ZopeUndo had a ZopeUndo.Prefix > class in it. This was what enabled you to filter the undo log information > based on physical paths. > Yup, but I never took support of that from ZEO. :) It is a goal to stop pickling instances and to generally only use lower-level types in the ZEO protocol. - The (incomplete and somewhat stalled) byteserver doesn't use pickle and wouldn't work with undo prefix objects - A goal (/pipe dream?) of supporting other languages would make use of pickle awkward. Ironically though, the Rust serialization library I'm using has a Python pickle plugin. :) Pickle is actually a pretty nice serialization format in a lot of ways. > I think Jim noted at the time that there would be a way to retain that > functionality, but at least I didn't have a use-case for it for Zope 4.0. > If we wanted to, we could devise a language for undo filtering that was expressed with low-level data types, like dicts and strings, similar to what's often used with catalogs. We don't need to support arbitrary Python code. Undo, however, if a feature that seems really cool but usually winds up being disappointing, because by the time you want to undo something it's too late to undo the thing you care about without undoing a lot that came after, so <shrug> Jim -- Jim Fulton http://jimfulton.info -- You received this message because you are subscribed to the Google Groups "zodb" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.