Re: [bsdgrep] grep -ql does not supress output

From: Doug Barton <dougb_at_FreeBSD.org>
Date: Fri, 23 Jul 2010 21:50:45 -0700 (PDT)
On Sat, 24 Jul 2010, Gabor Kovesdan wrote:

> Em 2010.07.24. 6:19, Doug Barton escreveu:
>> There are several places in portmaster where I use '[e]grep -ql <foo>' to 
>> signal existence of something without having to deal with the output of 
>> grep. In oldgrep this worked as advertised. In bsdgrep it doesn't.
>> 
>> Furthermore, looking at the code it doesn't seem like it's a trivial fix 
>> since you seem to be conflating the idea of -q with "don't output the 
>> matching lines" instead of "don't output anything" which is what the old 
>> one did:
>>
>>                 case 'l':
>>                         Lflag = false;
>>                         lflag = qflag = true;
>>                         break;
>> 
>> Also, looking at the code it's not clear to me that the -q option has its 
>> previous behavior of halting processing for that file on the first match, 
>> but I've only given it a quick look.
>> 
>> So, request number 1, fix it so that bsdgrep -ql doesn't output anything, 
>> and make sure that -q actually halts processing on the first match.
>
> Of course both this and the color issue will be fixed.

Thanks. I took another look at it, and I think the attached patch does 
the trick, although you'll probably want to regression test it. I'm 
running some limited tests now as well. I still haven't verified that -q 
halts processing on the first match however.

>> Request number 2, think about whether or not introducing this as the 
>> default was the right course of action. I held my tongue on this when you 
>> committed it, but in the past when such things have been added they start 
>> life as an option, allowing those who choose to do so to regression test 
>> them. Once they've had a shakeout period THEN the switch is flipped to make 
>> them the default. I'm not at the point yet where I'm ready to ask for you 
>> to change this, but between the color thing and this issue, that ball has 
>> started to roll, in my mind at least. We'll see what happens with more 
>> testing.
>
> This change was thoroughly tested on pointyhat and by several interested 
> people even by you. Actually, the compatibility for non-standard GNU regexes 
> were added when you requested it after trying out with portmaster.

Yes, IIRC that was when I last tested it for you about 2 years ago. And 
I appreciate you adding that support.

> Why didn't you tell me earlier about this bug then, as well?

My fuzzy recollection is that the various micro-optimizations such as 
this one have been added to portmaster in the intervening 2 years, but I 
could be wrong. If the bug and my code were both there 2 years ago, 
please accept my apologies for not reporting it sooner.

Meanwhile, pointyhat runs are great for trying to assess bare technical 
compatibility with known combinations of options; however as I've 
learned in trying to regression-test portmaster, real human users are 
roughly infinitely more creative than that. :)


hth,

Doug

-- 

 	Improve the effectiveness of your Internet presence with
 	a domain name makeover!    http://SupersetSolutions.com/

 	Computers are useless. They can only give you answers.
 			-- Pablo Picasso
Received on Sat Jul 24 2010 - 02:50:49 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:05 UTC