[Zope-dev] Re: [Checkins] SVN: zope.file/trunk/ Make a good package out of this package.

Christian Theune ct at gocept.com
Fri Nov 2 10:38:15 EDT 2007


Hi,

Am Freitag, den 02.11.2007, 10:23 -0400 schrieb Stephan Richter:
> On Friday 02 November 2007, Benji York wrote:
> > Stephan Richter wrote:
> > > On Friday 02 November 2007, Benji York wrote:
> > >> Why the test extra?
> > >
> > > to get it working. :-) There were several packages required by
> > > ftesting.zcml.
> >
> > We generally put those in install_requires and eschew extras.
> 
> zope.file was the *only* package of the 150+ I worked on that did not have 
> extras. If this changes, I want a canconical community decision with someone 
> writing a script fixing it everywhere for the next releases.

Hmm. I've been doing that dance using extras too.

I see that there is a special 'tests_require' in setuptools anyway.  We
could give up on extras using tests_require if the testrunner recipe (or
buildout) knew how to handle those.

I (and other gocept guys) unscrewed the dependencies for almost all
zope.* packages (at least those that come from the old big tree) using
this approach. We really wanted to get the normal dependencies right
there, and moving the test dependencies out of the way was a large part
of that.

I'm happy using extras to do that. I'm not 100% sure on the complete
reasoning against extras but my understanding is that this specific use
case works. Can someone explain whether this use case has a problem too?
 
> I know why extras are bad, Jim explained it to me. I would still argue that we 
> need them (for tests only, of course!!!!). For example, the zope.file tests 
> require zope.app.zcmlfiles, which effectively pulls in 70 packages, including 
> the entire ZMI, Rotterdam, and old form framework. But what if I do not want 
> to install ZMI, Rotterdam and the old form stuff and just use the API of 
> zope.file?
> 
> I think that extras for tests are a necessary evil until we have unscrewed the 
> dependencies of the functional test setups.

Depends on what 'unscrew' means. Functional test setups might want to
demonstrate more in-depth, "real-life" scenarios where they have to
introduce more dependencies than the actual package itself needs, so two
sets of dependencies are needed anyway, or not?

Christian

-- 
gocept gmbh & co. kg - forsterstrasse 29 - 06112 halle (saale) - germany
www.gocept.com - ct at gocept.com - phone +49 345 122 9889 7 -
fax +49 345 122 9889 1 - zope and plone consulting and development
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Dies ist ein digital signierter Nachrichtenteil
Url : http://mail.zope.org/pipermail/zope-dev/attachments/20071102/93f179f7/attachment.bin


More information about the Zope-Dev mailing list