"zope.interface.providedBy" does not respect "super"

Bug #448712 reported by Dieter Maurer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Zope 3
Won't Fix
Undecided
Unassigned
zope.interface
Won't Fix
Wishlist
Unassigned

Bug Description

In some places, the implementation of a subclass adapter may take advantage of that defined for a base class. In such cases, "super" comes to mind. Unfortunately, "providedBy" (implicitely during in adapter lookup) does not respect "super" as shown by the folloging transscript:

>>> from zope.interface import Interface, implements
>>> class I1(Interface): pass
...
>>> class B(object): implements(Interface)
...
>>> class C(B): implements(I1)
...
>>> c=C()
>>> from zope.interface import providedBy
>>> list(providedBy(c))
[<InterfaceClass __main__.I1>, <InterfaceClass zope.interface.Interface>]
>>> list(providedBy(super(C,c)))
[<InterfaceClass __main__.I1>, <InterfaceClass zope.interface.Interface>]

Tags: 3.5.2
Tres Seaver (tseaver)
Changed in zope3:
status: New → Won't Fix
Changed in zope.interface:
importance: Undecided → Wishlist
status: New → Triaged
Revision history for this message
Tres Seaver (tseaver) wrote :
Changed in zope.interface:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.