[Zope-dev] Re: Problems with Transparent Folder and Zope 2.3.3

Shane Hathaway shane@digicool.com
Thu, 21 Jun 2001 19:50:10 -0400 (EDT)


On Fri, 22 Jun 2001, Joachim Werner wrote:

> Transparent Folders are used very often at iuveno. And we would like to do
> so in the future because they really provide an easy way to structure
> objects in folders. But with Zope 2.3.3 we get errors like that when we
> start an instance that uses Transparent Folders:

I've been getting several messages about this and today finally had time
to investigate.  It turns out that Globals.py is a little fragile--the new
InitializeClass alias gets initialized at the bottom of the file.  The
import of ImageFile causes a whole series of things to be imported before
InitializeClass is set up.

Transparent folders always changed the order of import somewhat, and the
recent addition of InitializeClass() to AccessControl/Role.py is what
finally pushed Zope "over the edge", so to speak.

The "right" solution is to patch Globals.py the same way I patched it
today (on the CVS trunk).  I moved the "InitializeClass =
default__class_init__" statement to the line after the
default__class_init__ import.  This will be in effect in the beta release
of Zope 2.4.0, but since I don't think we'll see a Zope 2.3.4, I didn't
bother updating the Zope 2.3 branch.

Tomorrow I hope to release a version of TransparentFolders that works
around the problem, so you can wait for that instead if you like.

I'm glad to know the product is being used.  I don't think it will be in
the core distribution since it causes a performance hit.

Shane