[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines
From: |
Tino Calancha |
Subject: |
bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines |
Date: |
Wed, 11 Jan 2017 00:07:28 +0900 (JST) |
User-agent: |
Alpine 2.20 (DEB 67 2015-01-07) |
On Tue, 10 Jan 2017, npostavs@users.sourceforge.net wrote:
Tino Calancha <tino.calancha@gmail.com> writes:
After deletion of a large file from CVS, a diff shows
a very large hunk with just deleted lines. Then, for unified diffs, a call
to `diff-refine-hunk' on that hunk takes a huge time.
Instead, it's better to first check if the hunk adds new lines: only when
this is true, then proceed with the hunk refinement.
What about a diff that adds a very large file? Perhaps we should only
refine if there added lines *and* deleted lines?
On Tue, 10 Jan 2017, npostavs@users.sourceforge.net wrote:
What about a diff that adds a very large file? Perhaps we should only
refine if there added lines *and* deleted lines?
That's logical; at the end neither a hunk just deleting nor one
just adding lines need to be refined. We might do that if you like. It
would be more symmetrical.
From a performance point of view, current code in the case where
the hunk just adds lines is not as patological as the opposite one.
For instance:
emacs -Q
M-! git diff ef8c9f8^ ef8c9f8 RET
C-x o C-x C-q
M-x diff-mode RET
R ; Reverse the direction of the diffs.
C-c C-b ; Refine hunk.
;; Perform reasonably fast.
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/10
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, npostavs, 2017/01/10
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines,
Tino Calancha <=
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/10
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/11
- Message not available
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/12
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, npostavs, 2017/01/12
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/13
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/13
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Noam Postavsky, 2017/01/13
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, Tino Calancha, 2017/01/14
- bug#25410: 26.0.50; Refine an unified diff hunk only if adds lines, npostavs, 2017/01/18