GNU bug report logs - #2157
23.0.90; bzr support: vc-diff doesn't work with prefix argument on unchanged files

Previous Next

Package: emacs;

Reported by: Torsten Bronger <bronger <at> physik.rwth-aachen.de>

Date: Mon, 2 Feb 2009 10:10:05 UTC

Severity: normal

Done: Dan Nicolaescu <dann <at> ics.uci.edu>

Bug is archived. No further changes may be made.

Full log


Message #42 received at 2157 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Torsten Bronger <bronger <at> physik.rwth-aachen.de>
To: Dan Nicolaescu <dann <at> ics.uci.edu>
Cc: 2157 <at> debbugs.gnu.org
Subject: Re: bug#2157: 23.0.90; bzr support: vc-diff doesn't work with prefix
 argument on unchanged files
Date: Wed, 04 Feb 2009 18:09:30 +0100
Hallöchen!

Dan Nicolaescu writes:

> [...]
>
> It looks like the lightweight checkout contains a
> .bzr/branch/location file that is not present in a normal one.  So
> that could be used to differentiate between the two, like here:
>
> --- vc-bzr.el.~1.74.~ Wed Feb  4 05:54:29 2009
> +++ vc-bzr.el         Wed Feb  4 07:43:07 2009
> @@ -327,7 +327,12 @@
>         (lastrev-file (expand-file-name vc-bzr-admin-lastrev rootdir)))
>      ;; This looks at internal files to avoid forking a bzr process.
>      ;; May break if they change their format.
> -    (if (file-exists-p branch-format-file)
> +    (if (and 
> +     (file-exists-p branch-format-file)
> +      (not (file-exists-p 
> +             (expand-file-name
> +               (concat vc-bzr-admin-dirname
> +                               "/branch/location") rootdir))))
>          (with-temp-buffer
>            (insert-file-contents branch-format-file)
>            (goto-char (point-min))

This probably works, however, even better is to check whether the
"location" starts with "file://" and then look there.  Maybe one can
just call the function recursively just with another "file"
parameter (must "file" exist actually?).  If "location" doesn't
start with "file://", do the fallback.

The Bazaar documentation explicitly says that lightweight checkouts
should be done only locally.  For example, you can use them to
switch efficiently between locally stored branches.  Therefore, one
can expect "file://" in most cases indeed.

I use to have many files open (40+), and when I start Emacs, I can
see a significant CPU usage of bzr processes now, thus my concern.

Tschö,
Torsten.

-- 
Torsten Bronger, aquisgrana, europa vetus
                   Jabber ID: torsten.bronger <at> jabber.rwth-aachen.de




This bug report was last modified 16 years and 146 days ago.

Previous Next


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