[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Getting rid of circular dependencies



Ola Lundqvist <opal@debian.org> writes:

> Hello
>
> On Sun, Jul 03, 2005 at 04:39:04PM +0100, Colin Watson wrote:
>> On Sun, Jul 03, 2005 at 04:57:58PM +0200, Ola Lundqvist wrote:
>> > On Fri, Jun 24, 2005 at 05:21:51PM +0200, Bill Allombert wrote:
>> > >  `Depends'
>> > >       This declares an absolute dependency.  A package will not be
>> > >       configured unless all of the packages listed in its `Depends'
>> > >       field have been correctly configured.
>> > 
>> > This phrasing is obviously wrong as you can install packages with
>> > circular dependencies. This phrasing say exactly what Pre-Depends is.
>> > 
>> > Depends should be described as follows:
>> > 
>> >   `Depends'
>> >        This declares an absolute dependency.  A package will not be
>> >        configured unless all of the packages listed in its `Depends'
>> >        field have been correctly unpacked.
>> 
>> This is incorrect. Depends is as described in policy, with the addition
>> that dpkg will arbitrarily break loops.
>> 
>> For the meaning of Pre-Depends, see policy.
>
> I stand corrected.
>
> Interesting. Maybe the arbitrary loop thing can be documented too in
> the policy, or otherwise it should be not allowed. Interesting that
> I have missed this delicate problem.
>
> Actually I think that it should be two types of dependencies. One
> for normal dependencies, that is just need the other software unpacked
> to work, and one for must not be configured until other ones is
> configured. This can probably help a lot.
>
> Regards,
>
> // Ola

More usefull is probably a new type 'needs <foo> to run but can be
configured without'. The effect would be just like Depends except that
cycles can be safely broken at that point.

MfG
        Goswin



Reply to: