Begin forwarded message:
> From: Jeff Johnson <firstname.lastname@example.org>
> Date: September 25, 2008 12:09:55 AM EDT
> To: email@example.com
> Subject: Adding dependency alternation using glob expressions?
> rpm triggers with glob expressions are starting to congeal nicely.
> The basic trick to handle trigger patterns is/was a 2 level pass on
> an rpmdb index.
> The first pass gathers all the keys in the index that are known,
> the 2nd pass
> across existing primary keys gathers headers through secondary
> I can likely wire up the mechanism with an extra loop inside of
> et al when the time comes ...
> So its time to identify the need and a usage case first:
> Let's say you want
> Requires: A
> Requires: B
> The alternation above can be captured in a glob as
> Requires: @(A|B)
> either literally, or (if necessary) with some straightforward
> Since discussing *.spec syntax is never straightforward, I'd
> suggest permitting
> glob patterns into dependency names literally instead of thrashing
> the aesthetics of grammarless *.spec files.
> Note also that pattern alternation is not quite the same as
> assertion alternation.
> Requires: A > 1. 0 || B > 2.0
> is not (at least easily) expressible with pattern alternation. But
> the lack
> of assertion alternation is unrelated to whether pattern
> alternation is useful.
> An open question is whether
> Requires: @(A|B) > 1.0
> is sufficiently useful to be permitted, or whether the syntax needs
> to be explicitly forbidden.
> 73 de Jeff
Received on Thu Sep 25 06:55:11 2008