Tres Seaver wrote: [snip] > If __call__ is an API, why is it not documented where the rest of the > API for Interface is specified?
I think you shouldn't focus on documentation to the exclusion of the practical situation, which is that people have been calling interfaces for many years now to accomplish adaptation, apparently having found about it from a multitude of sources. It has gained C optimizations. The practicality of this is that this is a well-known and well-used API. What we should fix is its documentation in interfaces.py. A little bit of googling even found a definition in Twisted that says: # FIXME: deprecate attribute somehow? CannotAdapt = TypeError though I cannot find many examples of using TypeError or CannotAdapt to handle adaptation. I cannot tell why it is not in interfaces.py. Perhaps a plain and simple oversight? Perhaps it was initially felt to be experimental, but became accepted (gaining C optimizations, and a mention in README.txt), and it was forgotten to add it to the interfaces documentation? Maybe Jim knows. :) Regards, Martijn _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org https://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - https://mail.zope.org/mailman/listinfo/zope-announce https://mail.zope.org/mailman/listinfo/zope )