bug-diffutils
[Top][All Lists]
Advanced

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

[bug-diffutils] bug#18076: closed (Re: bug#18076: Lines are not ignored


From: Jean-Francois Thuong
Subject: [bug-diffutils] bug#18076: closed (Re: bug#18076: Lines are not ignored by option -I if they are followed by a line with a difference)
Date: Wed, 23 Jul 2014 15:52:44 +0800

Hello Eric,

Thank you for the tweak using sed; I suppose a similar "grep" would work as well?

May i enter a request for enhancement with a suggestion to add this new function enabling the filter of ignored lines from hunks containing differences?



> *The information transmitted is intended only for the person or entity to
Sorry, but such disclaimers are unenforceable on publicly-archived
mailing lists.  You may want to consider sending from a personal account
in the future, rather than slamming the list with your employer's
legalese spam.

My bad. I unfortunately had to send the request from the company email because this bug report was part of our process of the qualification of GNU Diff 2.8.7.

Jean-Francois Thuong

 


On Wed, Jul 23, 2014 at 1:00 AM, GNU bug Tracking System <address@hidden> wrote:
Your bug report

#18076: Lines are not ignored by option -I if they are followed by a line with a difference

which was filed against the diffutils package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to address@hidden.

--
18076: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18076
GNU Bug Tracking System
Contact address@hidden with problems


---------- Forwarded message ----------
From: Eric Blake <address@hidden>
To: Jean-Francois Thuong <address@hidden>, address@hidden
Cc: 
Date: Tue, 22 Jul 2014 10:58:58 -0600
Subject: Re: [bug-diffutils] bug#18076: Lines are not ignored by option -I if they are followed by a line with a difference
tag 18076 notabug
thanks

On 07/22/2014 12:59 AM, Jean-Francois Thuong wrote:

> To reproduce:
> 1. Create 2 files (e.g. File1.txt and File2.txt) having 2 consecutive
> different lines (e.g. lines 2 and 3)
> 2. Run diff with option -I including a pattern matching line 2
> 3. Observe that diff returns differences for both lines 2 and 3

Thanks for the report.  However, this is not a bug, but documented
behavior.  -I only suppresses entire hunks where EVERY difference in the
hunk matches the regex.

The mode of operation you are requesting, where diff ignores lines that
match the regex prior to doing the comparison (although line numbers are
then a bit off), can be accomplished via this trick in bash:

patt='^IGNORE:'
diff <(sed "/$patt/d" File1.txt) <(sed "/$patt/d" File2.txt)

Maybe it's worth a new option to diff to allow this mode of operation by
default (and so that line numbers are still accurate); but -I cannot be
changed semantics to match that new option.

I'm closing this report as we are matching our documentation, although
we can reopen it if someone is interested in writing a patch for such a
new option.

> *The information transmitted is intended only for the person or entity to

Sorry, but such disclaimers are unenforceable on publicly-archived
mailing lists.  You may want to consider sending from a personal account
in the future, rather than slamming the list with your employer's
legalese spam.

--
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org



---------- Forwarded message ----------
From: Jean-Francois Thuong <address@hidden>
To: address@hidden
Cc: 
Date: Tue, 22 Jul 2014 14:59:43 +0800
Subject: Lines are not ignored by option -I if they are followed by a line with a difference
Package: diffutils
Version: 3.3

When 2 (or more) consecutive lines are different between the two compared files, they are ignored by option -I if all of them are ignored; if the last line is not ignored, all the lines are returned by diff tool (instead of only the last line).

Although the documentation clearly indicates this as nominal, it looks strange while looking at the results to have lines that we supposed to have been ignored.


------------------
To reproduce:
1. Create 2 files (e.g. File1.txt and File2.txt) having 2 consecutive different lines (e.g. lines 2 and 3)
2. Run diff with option -I including a pattern matching line 2
3. Observe that diff returns differences for both lines 2 and 3


Note: the files attached could be used as an example with the command line
diff -I "^IGNORE:.*quot; File1.txt File2.txt
The difference is as follows:
2,3c2,3
< IGNORE: Line to be ignored with value = 1
< Different line (version A)
---
> IGNORE: Line to be ignored with value = 2
> Different line (version B)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]