Jim Fulton wrote:

...

An initial analysis showed that for more than half of the classes in
Zope 2, it was impossible to compute a method-resolution order using
the new algorithm.  After about a day of analysis (and development of
a tool to aid in the analysis) I've been able to adjust the Zope
classes so that they will work with the new algorithm.

I also analyzed the CMF head.  To use the new algorithm with the CMF,
it was necessary to make some changes to the CMF and to Zope.  In one
case, it was necessary to copy some methods around.

I've checked the results of my work into the mro-advanture-branch (waa, I wish I cud spell) branch.

You might find it entertaining to check out Zope on this branch:

cvs co -rmro-advanture-branch Zope

(and build it) (Note, Python2.3 is required.)

Install your favorite products (CMF makes a nice example)
and then use the functions in the included mrohell module to
find out if you have a problem:

  cd Zope
  bin/zopectl debug
  >>> import mrohell
  >>> base = merohell.step1()
  >>> mrohell.step2(base, mroonly=True)

and see if you get any mro problems.  If you do, see if you can
figure out how to fix them.

Jim

--
Jim Fulton           mailto:[EMAIL PROTECTED]       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


_______________________________________________
Zope-Dev maillist - [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )

Reply via email to