Resurrecting old Plone 3 buildouts

by Matt Sital-Singh on Nov 22, 2013
Filed Under:

Back in the early days of Plone 3, when buildout was still in it's infancy, nobody remembered to pin their versions. If you return to one of these buildouts, you get scary looking messages like this:

Error: There is a version conflict.
We already have: zope.location 0.0
but 3.9.2 requires 'zope.location>=3.7.0'.

Here's how to try and rescue an old Plone 3 buildout: 

Pin versions to a known good set

If the site is running successfully somewhere, you can grab the working versions from it by following these instructions.

Set up fake-eggs

Make sure your buildout [zope2] section looks something like this:

recipe = plone.recipe.zope2install
url = ${versions:zope2-url}
fake-zope-eggs = true
additional-fake-eggs =


Pin troublesome eggs

There are some key plone eggs that require separate versions for Plone 3 and Plone 4. If you use the Plone 4 versions in your Plone 3 buildout (or just don't pin them correctly), they will try and pull incompatible stuff from Zope2 and Plone4 into your buildout.

Make sure these in particular are pinned:

plone.recipe.zope2instance = 3.6
plone.reload = 1.5

If you are still stuck, try some of these pages:

Filed under: ,
Steve McMahon
Steve McMahon says:
Nov 22, 2013 05:06 PM
I haven't checked earlier versions, but the 3.3.6 Unified Installer is still robust. Just run it, then edit the buildout to do whatever you need.
keul says:
Nov 25, 2013 01:28 PM
Puttin "Plone" in the fake-eggs section is only for Plone<3.2 versions, when it was not eggified.

Also: in some situation you can use ZODB3 real egg (for example, when you want to get the blob support).

Finally: sometimes I get a lot of help including the old 1.0 pinning at

Commenting has now closed on this post.