AW: [Zope-dev] Heads up: Dependencies!

Roger Ineichen dev at projekt01.ch
Sat Apr 12 11:08:04 EDT 2008


Hi again

> Betreff: [Zope-dev] Heads up: Dependencies!
> 
> Hi all
> 
> I try to do a cleaup all zope packages and found some wired 
> dependencies and bad setup. One of this bad things is the following:
> 
> The zope.dublincore package defines in setup.py
> 
> install_requires = ['setuptools',
>                     'zope.annotation',
>                     'zope.component',
>                     'zope.interface',
>                     # testing dependencies
>                     'zope.testing',
>                     'zope.security',
>                     'zope.app.testing',
>                     ],
> 
> I guess this is one of the packages which makes it impossible 
> to get rid of testing stuff on production servers! right or not?
> 
> This happens in 3.4.0, 3.4.0a1 was Ok.
> 
> Can anybody agree that the testing dependencies should go to 
> extra_requires ['test'] ?

I discussed this with Benji on IRC and very bad consenus happend.
Benji told me that this topic was discussed and this changes 
explicit happens.

I totaly disagree with the concept behind this.
The general sentence "Test what you fly and flay what ou test"
is still valid and makes sense to me. But this is not what this 
changes reflect. This changes will bring in dependencies to 
zope.app.testing for all our production projects. This is just 
not true. All of our apps are just working without the testing
dependency. Testing code is not a dependency for production servers.

This install_requires will bring in zope.app.testing dependencies
for all of our production servers which is just wrong.

Test what you fly and fly what you test is a good thing. But it
get totaly miss understud in this usecase.

It doesn't mean that we can depend our tests on zope.app.rotterdam
for zope.dublincore just because we have a rotterdam package.
And even worse depend on that in install_requires.

If a testing setup needs additional components which the package 
doesn't need, we have two choices.

1. write tests wihtout thrid party code (code which is not a dependency 
   of the package at all)

2. write tests and depend on third party code but move the dependency
   to extra_requires. This allows to install the app without the 
   additional test dependency

What do you think?

Regards
Roger Ineichen

> Regards
> Roger Ineichen
> _____________________________
> END OF MESSAGE
> 
> _______________________________________________
> Zope-Dev maillist  -  Zope-Dev at zope.org
> http://mail.zope.org/mailman/listinfo/zope-dev
> **  No cross posts or HTML encoding!  ** (Related lists -  
> http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope )
> 



More information about the Zope-Dev mailing list