Stephan Richter wrote:
It's not just a matter of use case, it's also a matter of potentially unintended misconfiguration and side effects:IMO multi-typed interfaces would make sense. Would you have any objections if I change the code the following way:
module: zope.app.component.interface.py, line 78
75 if iface_type is not None:
76 if not iface_type.extends(IInterface):
77 raise TypeError(iface_type, "is not an interface type")
78 directlyProvides(interface, iface_type,
I would like to see a use case first. Once we can agree that the use case is really necessary, this change will be fine.
The directly-provide-implementation decision allows multi-typed interfaces on python level. As soon
the interface directive is invoked manipulation on python level will be 'removed' by a single type
information. Such behavior complicates the live of developer knowing the interface package only.
Use case: Typing interfaces within orthogonal application domains: -> CMS-Domain -> IContentType, IEventType, ... -> Business-Domain -> IAnyBusinessDomainType
_______________________________________________ Zope3-dev mailing list Zope3email@example.com Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com