Subject: bug#13004: closed (Re: bug#13004: 24.2; vc-diff from vc-log doesn't show diff before renames (for Mercurial backend).)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 15 Dec 2023 21:10:02 +0000

Your bug report

#13004: 24.2; vc-diff from vc-log doesn't show diff before renames (for Mercurial backend).

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

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
13004: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=13004
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#13004: 24.2; vc-diff from vc-log doesn't show diff before renames (for Mercurial backend).
From: Dmitry Gutov <[email-masked]>
To: Glenn Morris <[email-masked]>, Oleksandr Gavenko <[email-masked]>
Cc: [email-masked]
Date: Fri, 15 Dec 2023 23:09:48 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 30.1

On 26/11/2012 23:54, Glenn Morris wrote:
> Glenn Morris wrote:
> 
>> Sorry, I didn't read properly. You were talking about calling "diff"
>> from a log buffer. I still think using log -f may help, since otherwise
>> it presumably looks like there is nothing to take a diff of. Does it
>> help?
> Answering my own question, no.
> But what does
> 
> hg diff -r 214 -r 215 en-pronunciation_ru.rst
> 
> report for you?
> 
> For me, an equivalent diff command does not report any differences.
> So this looks like an hg issue, not an Emacs one.

It can be called an Hg issue, but it resembles Git in this: both 'diff' 
and 'blame' commands require the file names that feature in the revision 
asked about, not the "current" ones.

In the course of fixing bug#55871, I've also added Hg support, so now 
you should have a button at the end of the revision history, if the last 
commit contains renames, to show the log for the previous name(s).

Note that for this to work, "-f" should _not_ be in vc-hg-log-switches.

Closing, but feedback welcome.

Subject: 24.2; vc-diff from vc-log doesn't show diff before renames (for Mercurial backend).
From: Oleksandr Gavenko <[email-masked]>
To: [email-masked]
Date: Mon, 26 Nov 2012 20:29:08 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

As always:

  $ emacs -Q

Next I open any file from Mercurial repo which is "hg mv" or "hg cp".

If you build history "C-x v l" and try to look diff (log-view-diff or "d") for
changeset before rename you get message, like:

  Finding changes in /home/user/devel/my-devel/gadict/en-pronunciation_ru.rst...
  No changes between 214 and 215

while:

  $ hg diff -r 215 en-pronunciation_ru.rst

  diff --git a/en-spelling_ru.rst b/en-pronunciation_ru.rst
  copy from en-spelling_ru.rst
  copy to en-pronunciation_ru.rst
  --- a/en-spelling_ru.rst
  +++ b/en-pronunciation_ru.rst
  @@ -1,5 +1,4 @@
   .. -*- coding: utf-8 -*-
  -
   .. include:: header.rst

   ===================

In GNU Emacs 24.2.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.10)
 of 2012-09-09 on trouble, modified by Debian

Also reproduced in GNU Emacs 24.2.50.1 (x86_64-unknown-linux-gnu, GTK+ Version
2.24.10):

  $ bzr info -v

  Related branches:
    parent branch: bzr://bzr.savannah.gnu.org/emacs/emacs-24/

  Branch history:
    110934 revisions
     10084 days old
   first revision: Thu 1985-04-18 00:48:29 +0000
  latest revision: Wed 2012-11-21 21:28:14 +0200

I expect that vc-view-diff follow history on copy as this do original CLI
client "hg".

-- 
Best regards!