On Mon, Nov 30, 2009 at 5:09 PM, Martijn Faassen <faas...@startifact.com> wrote:
> Leonardo Rochael Almeida wrote:
>> * Use a different package name!
> We don't have that option, as we're talking about changing the behavior
> of calling IFoo.
It's very well possible. You create a new distribution called for
example "Interface". Now you can write:
class IFoo(interface.Interface): pass
class IBar(zope.interface.Interface): pass
Depending on what "kind" of interface you have the semantics of
calling these are different. Not that I'm proposing to do this, as it
leads to a pretty horrible mess, but it's possible.
We are just now getting rid of the old Zope2 Interface package and its
usage in Plone land, which has the same kind of incompatibility
problem. I expect that old version of interfaces is still going to be
with us for a number of years. So experience shows that something so
central, even if not used for many important things, has a much much
longer lifetime than you'd expect.
Zope-Dev maillist - Zope-Dev@zope.org
** No cross posts or HTML encoding! **
(Related lists -