Hanno Schlichting wrote at 2007-10-22 09:43 +0200:
>Philipp von Weitershausen wrote:
>> I object to this change. HTTPRequest does not really fulfil the
>> IBrowserRequest interface, and ObjectManager isn't a real IContainer
>> either. I understand that somebody made a mistake when they declared
>> them as such in the early days of Five. This is the reason we can't take
>> it back. But, at least as a sign of the fact that they're not (yet) the
>> real deal, this declaration has remained in ZCML.
>Hiding the interface declaration in some exotic place in ZCML isn't very
>helpful IMO. We can add a comment to the implements directive in both
>classes that these are not implementing the full interface, though. Five
>isn't just an add-on anymore but a core part of Zope2, moving things
>into the proper places, should make it easier for those people, who
>haven't followed the whole history of Five.
I often disagree with Philipp but I, too, feel it is wrong
to use "implements(...)" when the class does not implement "...".
All declarations should be trustable -- otherwise, you could forget
about interfaces alltogether...
Zope-Dev maillist - Zope-Dev@zope.org
** No cross posts or HTML encoding! **
(Related lists -