[Zope3-dev] Re: Reducing the Amount of ZCML Directives ready for review

Philipp von Weitershausen philipp at weitershausen.de
Mon Mar 20 11:02:10 EST 2006


Tres Seaver wrote:
>>>>I really appreciate your effort in all other cases, but in this case I
>>>>think its not a simplification.
>>>
>>>
>>>At least in case of class/implements it is. I'm merging two directives,
>>>class/implements and five:implements into one.
>>>
>>>The case of class/factory is arguable, I admit. However, there I'm just
>>>following the rule of a) defining things in Python and registering them in
>>>ZCML and b) use more basic ZCML directives, less special ones.
> 
> 
> That "rule" is somewhat debatable (the debate seems ongoing).

Well, it's a rule (my rule :)), the question is whether it's one that we
officially want to use ;).

Yep, the debate is ongoing. Unfortunately, I don't have time for the
debate. I need to solve problems. Like, for example, explaining someone
in a book that <utility /> registers a utility, except when you're doing
factories, DAV interfaces, vocabularies, etc. etc. Of course, they're
all looked up the same way, namely with getUtility. Well, that's just great.

> I think we could argue the following equally well:  if you find a
> directive unuseful, *just don't use it*.  Register *new* directives
> (perhaps in a new namespace, if you want to reuse the names) which do
> your "simpler / cleaner" thing.

Ok. Let's call that the Tres rule :).

I'd just say: Use Python constructs until your unuseful directives
become useful again. I find <utility /> extremely useful.

> Deprecation is not always a reasonable model, given disagreement about
> the value of the simplification.

Deprecation wasn't objected for the other directives (the top-level
ones), so at least for the majority of the directives in question,
deprecation and eventual removal does seem to be a reasonable model.

Philipp



More information about the Zope3-dev mailing list