Valentin Gatien-Baron <valentin.gatienbaron@gmail.com> writes:
Sometimes, vc-annotate in a file tracked by mercurial returns an
error like this instead of a proper annotate buffer:
[...]
Step 3 is probably an hg bug. However `hg parent` was deprecated in
2014, so people may be reluctant to change it. And it would be simpler
for vc-hg-working-revision to call `hg log -r . -T {rev}` (vc-git does
that, so I assume that it works in general on top of fixing the
current issue). `.` means the current revision, see `hg help revset`.
So something like this:
(defun vc-hg-working-revision (file)
"Hg-specific version of `vc-working-revision'."
(ignore-errors
(with-output-to-string
(vc-hg-command standard-output 0 nil
"log" "-r" "." "--template" "{rev}"))))
(This bug report unfortunately got no response at the time.)
I'm pretty unfamiliar with Mercurial, but perhaps Dmitry has some
comments here (added to the Cc's).