Also, extras is a miss-feature.
On Sep 15, 2007, at 10:43 AM, Philipp von Weitershausen wrote:
Benji York wrote:
I have a small issue with zope.testbrowser packaging I'd like to
get some input on. If I were to have started the project today,
it would likely have been zc.testbrowser, which would have no Zope
3 dependencies (or functionality) and zc.testbrowser.zope, which
would have, and depended on zc.testbrowser. Well, that didn't
happen, but there are parallels to the current situation that
might be informative.
There is a configuration bug in testbrowser that means that unless
you include the "test" extra, you won't get the Zope 3
dependencies. I suspect most people either include that extra, or
accidentally include the dependencies through other packages. I
have two ideas for fixing this:
1) introduce a "zope" extra that everyone will have to use
(basically just rename "test" to "zope";
2) take a lesson from the fictional zc.testbrowser and introduce
another package (zope.testbrowser.zope) that contains the Zope 3
bits and depends on zope.testbrowser.
I think this would be very hard if not impossible to do from a
packaging perspective (declaring zope.testbrowser a namespace
package *and* have it contain things like README, configure.zcml,
I think I prefer the second, despite it's strange appearance.
Let's look at this from the beginning. zope.testbrowser contains
a) a reusable, completely Zope-independent test browser
b) integration with zope.app.testing.functional, in other words a test
browser for testing web applications based on zope.publisher.
I think in its current use, zope.testbrowser is *mostly* used as
b). When used as a), I don't think anybody is bothered by the fact
that it might or might not have more dependencies (other than the
inconvenience of having to install more stuff than actually
So here's what I suggest: Factor out a) to a new package
'zc.testbrowser' (or whatever) and make 'zope.testbrowser', the
remaining b), depend on zc.testbrowser, zope.app.testing and all
that other stuff properly.
- packaging and nomenclature are straight-forward,
- we don't have to break backwards compatibility anywhere,
- people who have used 'zope.testbrowser' because of a) until now
won't experience any problems, even though we should probably tell
them to switch to zc.testbrowser.
http://worldcookery.com -- Professional Zope documentation and
Zope3-dev mailing list
Jim Fulton mailto:[EMAIL PROTECTED] Python
CTO (540) 361-1714
Zope Corporation http://www.zope.com http://www.zope.org
Zope3-dev mailing list