[pacman-dev] [PATCH] makepkg: avoid using comm for diff'ing package lists

Allan McRae allan at archlinux.org
Tue Nov 22 05:23:41 EST 2011


On 22/11/11 16:47, Dan McGee wrote:
> On Tue, Nov 22, 2011 at 12:33 AM, Allan McRae<allan at archlinux.org>  wrote:
>> On 22/11/11 15:02, Dave Reisner wrote:
>>>
>>> Whereas comm will check inputs to see if they're sorted (and warn when
>>> they aren't), grep doesn't even care about ordering. In this particular
>>> instance -- neither do we. We're only interested that the two lists are
>>> equivalent.
>>>
>>> Fixes FS#26580.
>>>
>>> Signed-off-by: Dave Reisner<dreisner at archlinux.org>
>>> ---
>>
>> I had not seen this when I sent my patch.   Would comm not be more efficient
>> than grep for doing this?
> I don't think your patch actually fixes the underlying problem, which
> is that the sorts need to come back too and be consistent with
> whatever we tell comm it should expect. No matter what, makepkg
> shouldn't really assume anything regarding the ordering of pacman
> output- The LC_COLLATE=C should be added to both the comm calls and
> re-add a `| LC_COLLATE=C sort` call to -Qq output.
>
> grep avoids this completely; ordering doesn't matter at all. Perhaps
> it is a bit less efficient, but this is 1) an operation that runs
> once, and 2) the grep call is sticking to POSIX-conforming flags.
>

OK, I'm convinced.

Ack-by-Allan



More information about the pacman-dev mailing list