Buildout -- Software for automating application assembly

Egg extras not installed for recipes

Reported by Thomas Lotze on 2007-02-16
4
Affects Status Importance Assigned to Milestone
Buildout
Undecided
Unassigned

Bug Description

Automatic installation of eggs required by an egg extra doesn't seem to
work for a recipe used with zc.buildout as documented for eggs in general:

Suppose myrecipe has two entry points, the "fancy" one employing
yourrecipe. Now if I declare yourrecipe as an extra requirement only to be
installed if the "fancy" entry point is used to install any buildout part:

myrecipe/setup.py:

...

setup(...
      entry_points={"zc.buildout": [
          "default = myrecipe.foo:Recipe",
          "fancy = myrecipe.bar:Recipe [bar_extra]", ]},
      extras_require={"bar_extra": ["yourrecipe"]}, ...
      )

and use myrecipe I get a pkg_resources.DistributionNotFound error
concerning yourrecipe. It sort of works if I manually copy the yourrecipe
egg to the eggs directory beforehand, though.

Yup, extras are not always conserved by zc.buildout.
I see at least one place which it occurs, In zc.buildout.easy_install._constrain.Installer._constrain().

As i use personnaly minitage.recipe:egg in flavor of zc.recipe.egg, i work arounded that in this recipe.
You can see the result there (_constrain()):
http://git.minitage.org/git/minitage/eggs/minitage.recipe/tree/src/minitage/recipe/egg/__init__.py

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers