I think we've had enough discussion to make a decision. Hopefully
everybody is at least reasonably happy with this:
An "adapt()" method will be added to Interface. It takes the objects to
adapt as *args, and optional but explicit 'default' and 'name' aguments.
A "utility()" method will be added to Interface. It takes optional but
explicit 'default' and 'name' arguments.
On the adapter hook (__call__) we will deprecate the implicit second
argument for defaults, with a deprecation warning. Instead, we will
require people to write out 'default=' explicitly. Otherwise its
behavior remains unchanged. I think we can motivate this change purely
because IFoo(bar, baz) really is quite surprising compared to IFoo(bar,
[steering group members, if you are really unhappy with this, please
speak up now. Silence is assent. :)]
Hopefully we can move forward towards implementation.
Thomas Lotze, are you happy enough with this to still help with the
Thanks everybody for your participation in the discussion!
Zope-Dev maillist - Zope-Dev@zope.org
** No cross posts or HTML encoding! **
(Related lists -