[Zope-dev] Versions: should they die?

Oliver Bleutgen myzope@gmx.net
Wed, 04 Jun 2003 18:24:33 +0200


sean.upton@uniontrib.com wrote:
> If I remember correctly, though, there was still a lot in question about
> legitimate use cases.  The web-services cluster-safety use-case I sketched
> out here (http://mail.zope.org/pipermail/zope3-dev/2002-October/003112.html)
> is still (perhaps) a valid case, but ONLY in a very-carefully constructed
> application (and even that case leaves me wanting a better app-level way to
> do it).
> 
> I think I agree with the feeling that versions should stay in ZODB, but be
> depreciated/marked as "official evil" in ZMI.

As you and Guido are talking about the ZMI (which means, AFAIK, the 
managament interface), let me just say that as far as I understand it, 
deprecating/marking-as-evil and even removing OFSP/Version.py is not 
what I would like to see happen (not only).

The problem lies in ZODB.ZApplication.ZApplicationWrapper

  def __bobo_traverse__(self, REQUEST=None, name=None):
         db, aname, version_support = self._stuff
         if version_support is not None and REQUEST is not None:
             version=REQUEST.get(version_support,'')
         else: version=''
         conn=db.open(version)
   ...

As I understand it, even if the Version product is removed, just putting 
at variable named 'Zope-Version' into the REQUEST will cause reads and 
writes to happen in a version.
Am I missing something here?

cheers,
oliver