[Zope-dev] New-style ExtensionClass, ZODB 3.3, and Zope 2.8 status
Jim Fulton
jim at zope.com
Mon Nov 24 10:02:43 EST 2003
Dieter Maurer wrote:
> Jim Fulton wrote at 2003-11-22 12:14 -0500:
> > ...
> > Also note that I had to get rid of the validateValue call. It's important
> > that we always pass the name and container to code that needs to get roles.
>
> We need "name" and "container" only for objects that do not have
> their own "__roles__" attribute. This essientially means
> for the newly implemented methods. But, for bound methods, we
> can determine name and container from the objects.
We can determine the container, but we can't reliably the name:
>>> class Foo:
... def eeek(self): pass
... oook = eeek
>>> Foo().oook.__name__
'eeek'
> I would therefore keep "validateValue" and try to determine container and name.
No can do. I'll note that validateValue is hardly every used, at least
in the Zope CVS.
We really *do* need to refactor this stuff. What we're doing now is a stop-gap
measure. Before releasing 2.8, I want to try to design what we want in 2.9
and have 2.8 include warnings and other guidence that will help people get ready
for 2.9.
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the Zope-Dev
mailing list