[buildout] zc.buildout.testing.install(_develop) and test setup slowness

Hi All, Can anyone explain how or why zc.buildout.testing.install and zc.buildout.testing.install_develop don't install the dependencies of the package you specify? I'm writing a recipe that requires the Zope2 package to be present, and it has rather a lot of dependent packages. The pattern with buildout recipe tests seems to be to manually install the package under test with zc.buildout.testing.install_develop and then each required package with zc.buildout.testing.install. For Zope2, this doesn't scale so well ;-) Also, even doing the manual install above is *really* slow, I have a test that now takes 20-30 seconds before it even starts running :-( Any ideas how to make this situation better? cheers, Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk

On Tue, Jun 22, 2010 at 5:24 AM, Chris Withers <chris@simplistix.co.uk> wrote:
Hi All,
Can anyone explain how or why zc.buildout.testing.install and zc.buildout.testing.install_develop don't install the dependencies of the package you specify?
It wasn't needed at the time.
I'm writing a recipe that requires the Zope2 package to be present, and it has rather a lot of dependent packages. The pattern with buildout recipe tests seems to be to manually install the package under test with zc.buildout.testing.install_develop and then each required package with zc.buildout.testing.install.
For Zope2, this doesn't scale so well ;-)
Maybe the recipe shouldn't require all of Zope 2. That seems like a rather heavy dependency for a recipe. Jim -- Jim Fulton

Jim Fulton wrote:
For Zope2, this doesn't scale so well ;-)
Maybe the recipe shouldn't require all of Zope 2. That seems like a rather heavy dependency for a recipe.
The recipe sets up a deployment-based Zope 2 instance, I'm pretty sure it needs all of Zope 2 ;-) ...unless I'm missing something, in which case, please let me know! Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk

Chris Withers wrote:
Jim Fulton wrote:
For Zope2, this doesn't scale so well ;-)
Maybe the recipe shouldn't require all of Zope 2. That seems like a rather heavy dependency for a recipe.
The recipe sets up a deployment-based Zope 2 instance, I'm pretty sure it needs all of Zope 2 ;-)
I think I could have phrased this better... Is there a good example buildout recipe you can point me at, that has good tests, preferably using Manuel rather than the deprecated zope.testing.doctest and also hopefully avoiding the rather strange renormalizer usage I've seen in some buildout tests where a normalizer is basically used to hide packages that are reported as missing in an index? cheers, Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk

On Tue, Jun 22, 2010 at 1:47 PM, Chris Withers <chris@simplistix.co.uk> wrote:
Chris Withers wrote:
Jim Fulton wrote:
For Zope2, this doesn't scale so well ;-)
Maybe the recipe shouldn't require all of Zope 2. That seems like a rather heavy dependency for a recipe.
The recipe sets up a deployment-based Zope 2 instance, I'm pretty sure it needs all of Zope 2 ;-)
I think I could have phrased this better...
Eh. I understood where you were coming from. :) It's hard to comment without studying your recipe, which I don't want to take the time to do. It should be possible to rethink the approach to avoid the dependency. For example, if your recipe is installing the Zope2 software *and* setting up instance config, I think it's doing too much. If you disagree, that's fine, but then you might have to do more work (or maybe not).
Is there a good example buildout recipe you can point me at, that has good tests, preferably using Manuel rather than the deprecated zope.testing.doctest and also hopefully avoiding the rather strange renormalizer usage I've seen in some buildout tests where a normalizer is basically used to hide packages that are reported as missing in an index?
Nope. Most of the existing recipes were written before manuel was adopted. I'd like to figure out where the spurious messages are coming from, but I have lots of other things I'd like to do that are more pressing. One observation is that the testing infrastructure is shaped by a goal of not wanting to make network connections and download packages in a test. This adds lots of complexity. Maybe you want to relax this. <shrug>. Jim -- Jim Fulton
participants (2)
-
Chris Withers
-
Jim Fulton