[Grok-dev] solving buildout problems - pinning down eggs
Wichert Akkerman
wichert at wiggy.net
Fri Sep 14 10:26:08 EDT 2007
Previously Martijn Faassen wrote:
> Hey,
>
> Jasper yesterday (see earlier message) ran into yet another case where
> grokproject wouldn't work because of some new egg release. I've run into
> several problems now over the last weeks, too.
>
> Let me be blunt about this: This is a critical problem for Grok. It's
> pretty atrocious: we can't do a Grok release and then have it break on
> us, several times, in the next few weeks! We might lose countless people
> who just wanted to try out Grok just by problems like this.
>
> How do we solve this immediate problem for grok? What has this
> requirement for zope.traversing that trips us up?
>
> We can't keep solving these individual problems over and over again, as
> it's clear it'll never end. So, on to solving the general problem:
>
> We need to have, and use, the facility to "pin down" Grok's dependencies
> to specific version numbers. This means we need to produce a complete
> list of *all* of the egg versions that grok is using. I want to pin it
> down exactly - all dependencies are liabilities and we can't allow a
> single one to break everything.
>
> We then need to have an easy way to make sure that people who use Grok
> x.y actually use those versions, by default.
>
> Ideally we also want the ability for people to use newer versions of
> eggs, if they so choose. This is a bonus feature in my mind. If this
> bonus feature takes time to work out, we need to forget about it for
> now, as this problem is critical.
plone.recipe.plone does exactly that for Plone. Its implementation is
very tied to the way the Plone release-creation-scripts work (horribly)
but it solves this problem very well. You can see how it works on its
cheesehop page.
WIchert.
--
Wichert Akkerman <wichert at wiggy.net> It is simple to make things.
http://www.wiggy.net/ It is hard to make things simple.
More information about the Grok-dev
mailing list