[Grok-dev] Re: solving buildout problems - pinning down eggs
janwijbrand at gmail.com
Thu Sep 20 03:35:54 EDT 2007
Martijn Faassen wrote:
> I also know JW had things blow up on him multiple times. Perhaps JW can
> share some of his frustrations.
I could have, but I would've sounded rather, ehm, frustrated rather than
constructive. But since you ask :-)
My experience was this: we (me and my coworkers) were working towards a
developement iteration deadline and every other ./bin/buildout run, we
would end up with a failure of some sort.
Since we were in a hurry, we didn't give ourselves enough time to really
dig into the cause of the failures (most of'em were version conflicts,
or things like pulling in zope packages of some 3.5(!) alpha version, or
lxml 2.0a that broke something somehow on OS X, etc.).
At that point we just started semi-randomly throwing away eggs from the
egg cache, pinning versions in our package's setup.py, etc. etc. I know,
I know, this is not really helpful, but hey, we really wanted not to
think about anything else but things we were building ourselves.
So, the frustration was this: we now have a number of tools that promise
a reliable, reproducible, and predictable way of setting up production
and development environments, but they cannot fulfill this promise. For
There's a couple of thing I need to figure out for my self:
* What is the best way of dealing with a version conflict, if it happens?
* Is an egg cache really that helpful (besides saving bandwidth)? And is
there a difference in this regards between development and production
* If you're developing a series of applications, at what level in the
dependency tree do want to have versions pinned down (in whatever fashion)?
* How do "other people" in the Zope world esp. deal with this.
I hope I sounded not too frustrated... :)
More information about the Grok-dev