[Zope3-dev] Interface.Implements module still broken for 2.2 metaclasses

Jim Fulton jim@zope.com
Mon, 08 Jul 2002 12:01:24 -0400


Steve Alexander wrote:
> Phillip J. Eby wrote:
> 
>> I still feel like we're not really communicating here.  As far as I 
>> can see, this is a clear and present bug, with an equally clear and 
>> present fix.  I've presented the basis of both a test case and a 
>> patch.  What am I missing?
> 
> 
> I agree with everything you've said. My only concern is that fixing the 
> Interfaces package make Zope 3 unusable with Python 2.2.
> 
> If that is indeed the case, I am not in favour of applying such a fix 
> until Python 2.3 is released in some form.
> 
> If it is not the case, and my concern is unfounded, then I am completely 
> in favour of the fix, and its immediate application.
> 
> I'll try out Zope 3 with Python 2.2 plus your fix today, and see what 
> happens. I don't think it will work, but perhaps I'll be surprised :-)

We need some unit tests that demonstrate both kinds of breakage.

A work-around for now is to implement an isinstance in Python for use here.
This would penalize all objects though, which wouldn't ne nice. :(

Phillip, what about making your meta-classes have their own __implements__
attribute. That would be much cleaner, IMO.

Jim

-- 
Jim Fulton           mailto:jim@zope.com       Python Powered!
CTO                  (888) 344-4332            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org