[PEAK] Current cvs peak errors

Phillip J. Eby pje at telecommunity.com
Tue Nov 30 14:19:46 EST 2004

At 01:37 PM 11/30/04 -0500, R. David Murray wrote:
>I did a cvs up today and reinstalled peak.  My program stopped
>working (*wry grin*).  I ran peak test and got some errors, but
>none of them seem to have anything to do with the problem that shows
>up in my program.  It is quite possible I'm doing something wrong
>that is triggering this, but was masked by something in the previous
>version of the peak code.  But since some of the peak tests fail,

FYI: as far as I can recall, I have never intentionally checked in code 
that would break the unit tests, and try to always keep the trunk 
stable.  If you find failures in peak tests, please report them to me ASAP.

(The only known issues with 'peak test' at present are that certain 
versions of the XML-Sig XML support may produce spurious errors in tests 
that deal with XML.)

>I'm wondering if I should treat current CVS as unstable and go back
>to the version I was using before?  I'd like to try the option
>framework, though, that's why I updated.
>I'll include the traceback I'm getting from my program; you (PJE)
>will probably know instantly what's going on here.

Unfortunately, no.  I *do* remember having seen this error before, but I 
could've sworn I already fixed it.  Hm.

I think I remember that the problem was an unconstrained __getattr__ 
method, that was getting called for things it shouldn't have.  But that was 
in the LDAP module...  Aha!  The same problem is in the SQL module; I've 
fixed it now in CVS.

One of the issues with implementing '__getattr__' routines is that they 
deal poorly with introspection.  Previously, 'binding.getParentComponent()' 
didn't attempt to adapt its target unless the object was lacking a 
'getParentComponent()' method.  Now, it always adapts its target, so the 
adaptation code was looking for a __conform__ attribute.  However, the 
cursor couldn't instantiate its DBAPI cursor without first using 
getParentComponent(), so this leads to a loop.

Anyway, it should be fixed in CVS now; please let me know what errors 
you're getting in the test suite.

More information about the PEAK mailing list