Philipp von Weitershausen wrote:
Hanno Schlichting wrote:
Log message for revision 80945:
  Moved two implements declarations from Five into the proper classes.

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.

A sensible step forward would be to make HTTPRequest a full IBrowserRequest (we're getting there). As for ObjectManager, I think IContainer implies a couple of semantics (such as unicode names, the sending of events, etc.) that we should look closer at before deciding.


I've found the fact that ObjectManager implements IContainer to be a problem in my application where I have a mixin implementing then ObjectManager expectations by adapting to IContainer (this allows most of my code to be zope 3 like with the zope 2 compatibility contained). I've had to subclass IContainer and adapt to my subclass instead.

The only place I've run into problems using unicode names is in the ZCatalog (or maybe CatalogTool) where there is a test that a name isinstance str.

Laurence

_______________________________________________
Zope-Dev maillist  -  Zope-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )

Reply via email to