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

From: Dan Nicolaescu <[email-masked]>
Date: Tue, 3 Feb 2009 23:43:33 -0800 (PST)

Torsten Bronger <[email-masked]> writes:

  > Hallöchen!
  > 
  > Dan Nicolaescu writes:
  > 
  > > Torsten Bronger <[email-masked]> writes:
  > >
  > >> Dan Nicolaescu writes:
  > >> 
  > >>> Torsten Bronger <[email-masked]> writes:
  > >>>
  > >>>> If I visit an unchanged file under bzr revision control,
  > >>>> i.e. the modeline says "Bzr-" (NOT "Bzr:"), I can't use C-u C-x
  > >>>> v =, i.e. vc-diff but with explicit revision parameters.  The
  > >>>> error message is:
  > >>>> 
  > >>>> vc-bzr-previous-revision: Wrong type argument: stringp, nil
  > >
  > > [...]
  > >
  > > This shows that (vc-working-revision
  > > "/home/bronger/src/chantal/current/chantal/samples/remote_client/la2chantal.py")
  > >
  > > returns nil.  So probably for some reason
  > > (vc-bzr-working-revision
  > > "/home/bronger/src/chantal/current/chantal/samples/remote_client/la2chantal.py")
  > >
  > > returns nil.  Can you try to debug why that happens?
  > 
  > I don't know Lisp, but I hooked into the bzr executable and can
  > safely say that it isn't called for this action.  So apparently,
  > vc-bzr-working-revision tries to get the revno from the metadata in
  > the .bzr/ directory.  The branch format is "Bazaar Branch Format 7
  > (needs bzr 1.6)".

Thanks, I checked in a fix for that.

  > By the way, bug#618 is probably related to this.  Formerly, I had
  > missing revno in the modeline only in lightweight checkout, now I
  > have the same problem with all branches.  Maybe the branch metadata
  > format has diverged too much for vc-bzr?

Is this still a problem now?  If it is and you can describe how to get a
"lightweight checkout", it might be easy to fix.
If you want to look into this yourself, vc-bzr-working-revision is the
function that should get the version number.