[Distutils] Buildout: Recipes with extras

Jim Fulton jim at zope.com
Thu Feb 15 21:56:31 CET 2007


On Feb 15, 2007, at 3:40 PM, Phillip J. Eby wrote:

> At 09:19 PM 2/15/2007 +0100, Thomas Lotze wrote:
>> 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.
>>
>> Is this a real bug, or are recipes supposed to be so simple as to  
>> not need
>> extras?
>
> Distributions required by entry points aren't automatically  
> installed; the
> code loading the entry point has to pass an 'installer' function to  
> the
> loading API in order to support installation-on-demand.  Presumably
> zc.buildout doesn't do this.

Thomas, I suggest you report this as a buildout bug at:

   https://bugs.launchpad.net/zc.buildout/+bugs

Jim

--
Jim Fulton			mailto:jim at zope.com		Python Powered!
CTO 				(540) 361-1714			http://www.python.org
Zope Corporation	http://www.zope.com		http://www.zope.org





More information about the Distutils-SIG mailing list