[Rpm-ecosystem] Rich deps syntax finalization

Florian Festi ffesti at redhat.com
Tue Aug 25 16:01:14 UTC 2015

On 08/25/2015 05:54 PM, Pavel Odvody wrote:
>> Technically a NOT operator should not be needed. So we are basically
>> looking for real life examples where it would be really handy or even a
>> pain if it was missing. What would you do with a NOT operator?
> Requires: (PkgA AND (PkgB IF NOT PkgC)

> But I'm really not sure whether it isn't just easier (correct) to handle
> this through conflicts / virtual provide.

Well, as Requires are (logically) all connected with an AND this is
equivalent to:

Requires: PkgA
Requires: (PkgB IF NOT PkgC)

And as IF is equivalent to OR NOT this is equivalent to

Requires: PkgA
Requires: (PkgB OR PkgC)

That's why I am interested in *real world* examples where we can at
least argue that writing it in a given way is more clear and the one
without using NOT.

>> [2] We are talking about Boolean operators here - not if statements.
>> Those variants are identical to the forward and backward implication
>> which are identical to (NOT . OR .) and (. OR NOT .)



Red Hat GmbH, http://www.de.redhat.com/ Registered seat: Grasbrunn,
Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: Charles Cachera, Michael Cunningham, Michael
O'Neill, Charles Peters

More information about the Rpm-ecosystem mailing list