[Distutils] Reverse dependencies

Phillip J. Eby pje at telecommunity.com
Sun May 13 20:10:55 CEST 2007


At 06:11 PM 5/13/2007 +0100, Martin Aspeli wrote:
>Phillip J. Eby wrote:
> > At 05:00 PM 5/13/2007 +0100, Martin Aspeli wrote:
> >> But is there any support for such declarative "reverse" dependencies?
> >
> > Sort of, in a very limited way.  You'll get a version compatibility
> > error if you depend on say, Plone<3 and your dependency depends on
> > Plone>=3.1, for example.  But there's no backtracking to resolve
> > this, so the minute it happens your installation is basically dead
> > until you get rid of the problematic package.
>
>Comforting. :-)
>
>Do you think it'd be a useful feature? I realise it may not be
>immediately trivial to add. ;)

No kidding.  I believe it's potentially NP-complete, which is why I 
only implemented a non-backtracking version that always goes for the 
highest installed version of each package.

If somebody else wants to take a look at designing a backtracking 
algorithm, take a look at the WorkingSet.resolve() method in pkg_resources. 



More information about the Distutils-SIG mailing list