GNU bug report logs - #5961
23.1 regression: vc-hg does not show 0 version number for 'added files

Previous Next

Package: emacs;

Reported by: Dan Nicolaescu <dann <at> gnu.org>

Date: Fri, 16 Apr 2010 20:08:02 UTC

Severity: normal

Done: Dan Nicolaescu <dann <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Dan Nicolaescu <dann <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#5961: marked as done (23.1 regression: vc-hg does not show 0
 version number for 'added files)
Date: Sat, 17 Apr 2010 16:11:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sat, 17 Apr 2010 12:10:53 -0400
with message-id <yxqochiys8i.fsf <at> fencepost.gnu.org>
and subject line Re: bug#5961: 23.1 regression: vc-hg does not show 0 version number for 'added files
has caused the GNU bug report #5961,
regarding 23.1 regression: vc-hg does not show 0 version number for 'added files
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact help-debbugs <at> gnu.org
immediately.)


-- 
5961: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5961
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Dan Nicolaescu <dann <at> gnu.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.1 regression: vc-hg does not show 0 version number for 'added files
Date: Fri, 16 Apr 2010 16:06:57 -0400
After this change:

  Show working revision correctly for mercurial.
  * vc-hg.el (vc-hg-working-revision): Use hg parent instead of
  hg log as suggested by Alex Harsanyi <alexharsanyi <at> gmail.com>,


the mode-line show Hg@ instead of Hg <at> 0 for files in the VC 'added state.  This is a regression from 23.1.

The problem is that the "hg parent " command does not distinguish
between the 'added and 'unregistered files.

Should the patch below go into the 23.2 branch?

=== modified file 'lisp/vc-hg.el'
--- lisp/vc-hg.el	2010-04-07 05:56:35 +0000
+++ lisp/vc-hg.el	2010-04-16 19:36:29 +0000
@@ -196,16 +196,16 @@ If nil, use the value of `vc-diff-switch
   (let*
       ((status nil)
        (default-directory (file-name-directory file))
+       ;; Avoid localization of messages so we can parse the output.
+       (avoid-local-env (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
+				     process-environment))
        (out
         (with-output-to-string
           (with-current-buffer
               standard-output
             (setq status
                   (condition-case nil
-		      (let ((process-environment
-			     ;; Avoid localization of messages so we can parse the output.
-			     (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
-				     process-environment)))
+		      (let ((process-environment avoid-local-env))
 			;; Ignore all errors.
 			(process-file
 			 "hg" nil t nil
@@ -213,7 +213,21 @@ If nil, use the value of `vc-diff-switch
                     ;; Some problem happened.  E.g. We can't find an `hg'
                     ;; executable.
                     (error nil)))))))
-    (when (eq 0 status) out)))
+    (if (eq 0 status)
+	out
+      ;; Check if the file is in the 'added state, the above hg
+      ;; command does not distinguish between 'added and 'unregistered.
+      (setq status
+	    (condition-case nil
+		(let ((process-environment avoid-local-env))
+		  ;; Ignore all errors.
+		  (process-file
+		   "hg" nil nil nil
+		   "log" "-l1" (file-relative-name file)))
+	      ;; Some problem happened.  E.g. We can't find an `hg'
+	      ;; executable.
+	      (error nil)))
+      (when (eq 0 status) "0"))))
 
 ;;; History functions
 




[Message part 3 (message/rfc822, inline)]
From: Dan Nicolaescu <dann <at> gnu.org>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 5961-done <at> debbugs.gnu.org
Subject: Re: bug#5961: 23.1 regression: vc-hg does not show 0 version number
	for 'added files
Date: Sat, 17 Apr 2010 12:10:53 -0400
Chong Yidong <cyd <at> stupidchicken.com> writes:

> Dan Nicolaescu <dann <at> gnu.org> writes:
>
>> After this change:
>>
>>   Show working revision correctly for mercurial.
>>   * vc-hg.el (vc-hg-working-revision): Use hg parent instead of
>>   hg log as suggested by Alex Harsanyi <alexharsanyi <at> gmail.com>,
>>
>> the mode-line show Hg@ instead of Hg <at> 0 for files in the VC 'added
>> state.  This is a regression from 23.1.
>>
>> The problem is that the "hg parent " command does not distinguish
>> between the 'added and 'unregistered files.
>>
>> Should the patch below go into the 23.2 branch?
>
> Yes please.  I don't have hg installed at the moment, so it's
> inconvenient for me to double check your work, but if you're confident
> it's correct then please go ahead and commit it.

Thanks, done.


This bug report was last modified 15 years and 34 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.