[Zope-dev] Circular dependency hell.

Jim Fulton jim at zope.com
Tue Apr 20 16:48:52 EDT 2010


On Tue, Apr 20, 2010 at 4:05 PM, Fred Drake <fdrake at gmail.com> wrote:
...
>> I think the issue is with that it's not standard protocol the way we use it
>> - at least I can't find our use of __bases__ documented in Python's
>> documentation[1] about __bases__ and thus have a hard time saying we're
>> following standard protocols.
>
> Our uses of __bases__ and __parent__ don't match Python,

We disagree wrt __bases__.

> and there's a
> general BDFL proclamation that underware are for Python
> implementations (IIRC).

That proclamation changed over time. It was much weaker in the past.
It was strengthened with

"applications should not expect to define
additional names using this convention. The set of names of this class
defined by Python may be extended in future versions."

in Python 2.3.

In fact, Guido was aware of and didn't object to my use of __*__names.

>  While we can argue that our use is
> reasonable, the fact that there's reasonable dissent suggests
> something different would have been a better choice.

The fact that there is dissent from a choice doesn't mean that it
is wrong.

I'm not saying that my use of __*__s was "right" in
any absolute sense. I get that there are differences of opinion.

To say that zope.testing "promotes" layers the wrong way, simply
because it used the name __bases__, which doesn't even go
against the BDFL's pronouncement on the use of __*__s is
misleading at best.

Jim

-- 
Jim Fulton


More information about the Zope-Dev mailing list