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

Re: MultiArch standoff: apt vs dpkg vs deb-control(5)

(Random comment :-)

On Mon, Sep 07, 2015 at 02:11:52PM +0200, David Kalnischkies wrote:
> In the "The syntax of Breaks, Conflicts and Replaces" paragraph we are
> told that for the first two a comma should be read as "OR". What is with
> Replaces?  In deb-src-control(5) we read a comma as "AND" in
> Build-Conflicts btw.

The "OR" thing is supposed to be a help for those who want to
understand the meaning, but IMHO, it makes things a little bit worse.

The Conflicts field is a just list of packages. If by "OR" we should
understand that

Conflicts: package1, package2

will *not* work if ("package1 is installed" OR "package2 is installed"),
then ok, it should be read as "OR".

But just saying that packages in a list should be ORed is meaningless
unless we add the (currently implicit) "will not work".

In reality, packages are not boolean values, they are not True or
False, and they may not really be ANDed or ORed, so I would prefer
that we stop making such analogies (or find better ones).

Whenever a package Conflicts a list of packages, it conflicts with
each and every of them.

Whenever a package Replaces a list of packages, it replaces files in
each and every of them.

If I read that in the manual, I would understand it. If I read that
packages separated by commas are ORed or ANDed, I would not understand it,
unless there are additional explanations.


Reply to: