[Python-Dev] instancemethod_getattro seems to be partially wrong

Guido van Rossum guido at python.org
Mon Dec 15 23:25:52 EST 2003


> >>So I'm just saying that pickle.py in wrong in just one place:
> >>
> >>                 reduce = getattr(obj, "__reduce__", None)
> >>                 if reduce:
> >>                     rv = reduce()
> >>
> >>should be:
> >>
> >>                 reduce = getattr(type(obj), "__reduce__", None)
> >>                 if reduce:
> >>                     rv = reduce(obj)
> >>"""
> > 
> > 
> > Right.  (That's what I was trying to say, too. :-)
> > 
> >>An almost trivial change, although I also had to change copy.py,
> >>and overall I was unhappy since this extends my patch set to more
> >>than replacing python2x.dll, but I hope this will become an
> >>official patch and back-patch.
> > 
> > Give it to me baby. (On SF. :-)
> 
> So here the bad news:
> After changing the C code to use the new style, and also changing
> all occourances in Python code, I used this on Zope, and
> ExtensionClass did not play well, it cannot stand this protocol
> unchanged. Zope won't start.
> 
> Therefore, I reverted my changes and now I'm waiting for the
> day where ExtensionClass is no loger used.
> (or should I patch *that* complicated stuff as well?)

No, just wait until it dies.  I think Jim wants it to die to; the
latest Zope version requires Python 2.3.2 but it will take time to
retire it, and old Zope versions are persistent.

--Guido van Rossum (home page: http://www.python.org/~guido/)



More information about the Python-Dev mailing list