[Grok-dev] grok mini-sprint conclusions
faassen at startifact.com
Thu Jan 21 15:32:01 EST 2010
Since this was a mini-sprint, it's definitely over too soon.
Free Grok from most of zope.app.*. We believe what's keeping most of it
alive is zope.app.zcmlfiles and zope.app.testing, so those two need to
go. Remain will zope.app.wsgi, zope.app.publication and
zope.app.appsetup, and perhaps a few others we haven't found out about yet.
The goal is therefore to free these three from dependencies on
app.zcmlfiles and app.testing.
Here's what we've done and what remains to be done:
Since we wanted to navigate around the complex dependency-pulling mess
of zope.app.testing, we've worked on testing infrastructure.
We've added some infrastructure to zope.component in testlayer that
helps set up test layers in a way that can be built on somewhat. The
idea is to just load the ZCML you need from the test layer, without it
initializing all kinds of stuff in all kinds of other ways.
In zope.app.wsgi, we have built (but not yet checked in, I believe)
functionality on top of this basic testlayer which reproduces the
behavior of zope.testbrowser's Browser, but using WSGI, using
wsgi_intercept. It still remains to be freed of zope.app.zcmlfiles and
zope.app.testing at this point.
We've freed zope.app.appsetup from zope.app.testing and zope.app.zcmlfiles.
We still need to free zope.app.publication from app.testing and
app.zcmlfiles as well. We have however done some of the required work
there, getting rid of the dependency on zope.app.testing.ztapi.
We have demonstrated a grokcore.view that runs tests against the
experimental WSGI-based testbrowser. We've also demonstrated
grokcore.view that doesn't use zope.app.zcmlfiles but loads a ton of
dependencies itself instead. We need to put it both together (and
actually move the browser-based tests to an integration package, like
Hopefully we can continue with these tasks for the next few weeks and
make good progress.
More information about the Grok-dev