Argggghhhh! Apparently, the problem was that the __getattr__ method in my adapter didn't raise an AttributeError if it failed. I do know better, but I really didn't expect it to manifest like this.
Thanks for reading, and perhaps I can save someone else the day of debugging. Alec On 8/30/05, Alec Munro <[EMAIL PROTECTED]> wrote: > This seems to be a regression, as I believe this was working with the beta. > I don't have it pinned down entirely, but it seems to be related to an > Annotation adapter I am using. The error occurs in > zope.interface.interface, at the following location: > > > def providedBy(self, ob): > > ..... > > spec = providedBy(ob) > return self in spec._implied > > Printing spec gives: > <implementedBy zope.app.pagetemplate.simpleviewclass.SimpleViewClass > from > /usr/local/Zope-3.1.0c2/lib/python/zope/app/exception/browser/systemerror.pt> > > Also, dir(spec) includes '_implied', so I really don't know what's going on. > > It isn't likely to be important, but I have commented out the import > of the C optimized version of this method, so I could attempt to debug > it. The error changed when I did this (it was AttributeError: > 'NoneType' object has no attribute isOrExtends), but I assume that was > simply because the C code was cloaking the error. > > I've attempted to track this down myself, but I really had no luck. I > think I'll do some trial and error editing of my Annotations adapter, > and see if that effects it. > > Thanks, > > Alec Munro > _______________________________________________ Zope3-dev mailing list Zope3-dev@zope.org Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com