[Zope-dev] package dependency refactoring progress report

Shane Hathaway shane at hathawaymix.org
Sat May 23 04:06:08 EDT 2009


Shane Hathaway wrote:
> Martijn Faassen wrote:
>> So, the only dependency cycles left in zope.app.publisher are these:
>>
>> zope.app.publisher <--> zope.app.publication <--> zope.app.http
> 
> I fixed those tonight.  On the trunk, there are no longer any 
> dependencies between zope.app.publisher, zope.app.publication, and 
> zope.app.http, except testing dependencies.

I should take a moment to describe the different purposes of these 
packages as I see them now.  Conceptually, they are really quite 
independent.

- zope.app.publisher: A library of ZCML directives for configuring 
views.  Also provides generic view classes.  A better name for this 
package might be "zope.basicviews".  A lot of packages depend on this.

- zope.app.publication: Provides IPublication implementations and a 
mechanism/registry for choosing a different publication class for each 
request.  Most packages should not depend on this.  A better name might 
be "zope.publicationregistry".

- zope.app.http: Provides generic views that translate HTTP verbs like 
PUT, DELETE, and OPTIONS into map operations.  The idea is clever, but 
not everyone needs a REST-style API.  A better name might be 
"zope.httpverbs".

Shane


More information about the Zope-Dev mailing list