[Zope-dev] [Checkins] SVN: zope.publisher/trunk/ Added some BBB code to setDefaultSkin

Hanno Schlichting hannosch at hannosch.eu
Mon Apr 27 03:15:47 EDT 2009


Hi.

Roger Ineichen wrote:
>> Log message for revision 99518:
>>   Added some BBB code to setDefaultSkin to allow 
>> IBrowserRequest's to continue to work without configuring any 
>> special adapter for IDefaultSkin. Lot's of code inside Zope2 
>> relying on using the request object without tons of CA setup
> 
> I don't comment this.
> 
> but,
> You broke my hole refactoring. My refactoring was making it
> possible to use IDefaultBrowserLayer less IBrowserRequest.
> 
> Your changes apply now to every IBrowserRequest an 
> IDefaultBrowserLayer where explicit was no default
> layer configured for. This is bad because and makes
> the previous refactoring obsolate.
> 
> Can you revert this changes?

Then there's some tests and description missing proving that intent. All
I could read in the changelog and the skinnable tests was pointing in
the other direction: Making it possible to use the Skinnable concept
without relying on IBrowserRequest. The whole JSONRequest (which is not
a BrowserRequest) tests inside skinnable.txt continue to work.

All I did here was to move two constructs from ZCML into direct code.
The lines I added do exactly the same as the default adapter registered as:

<adapter
    name="default"
    factory=".skinnable.getDefaultSkin"
    for="zope.publisher.interfaces.browser.IBrowserRequest"
    provides="zope.publisher.interfaces.IDefaultSkin"
    />

Unless I got something wrong, no behavior was changed if you load
zope.publisher's configure.zcml. For Zope2 it is now just possible to
continue to ignore that configure.zcml as it had done before.

Hanno



More information about the Zope-Dev mailing list