Subject: bug#488 closed by Chong Yidong <[email-masked]> (Re: VC mark-resolved)

From: [email-masked] (Emacs bug Tracking System)

This is an automatic notification regarding your bug report
which was filed against the emacs package:

#488: VC error: mark-resolved not implemented for CVS

It has been closed by Chong Yidong <[email-masked]>.

Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Chong Yidong <[email-masked]> by
replying to this email.

-- 
488: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=488
Emacs Bug Tracking System
Contact [email-masked] with problems
>From [email-masked] Wed Sep 24 12:17:07 2008
From: Chong Yidong <[email-masked]>
To: Dan Nicolaescu <[email-masked]>
Cc: Stefan Monnier <[email-masked]>,
        [email-masked]
Subject: Re: VC mark-resolved
Date: Wed, 24 Sep 2008 15:17:31 -0400

Dan Nicolaescu <[email-masked]> writes:

> Stefan Monnier <[email-masked]> writes:
>
>   > > CVS is hardly alone.  In fact, it seems that no other back-end
>   > > implements the mark-resolved action: I tried grepping for
>   > > `mark-resolved' in the vc-*.el files and came up with nothing.
>   > 
>   > There should be a (defalias 'vc-cvs-mark-resolved 'ignore)
>   > Or maybe even (defalias 'vc-default-mark-resolved 'ignore).
>   > But in any case, it seems like the mark-resolved thingy was not
>   > fully implemented if none of the backends define it.
>
> Yep, a pointer to a relevant discussion: 
> http://article.gmane.org/gmane.emacs.devel/94816

I checked in a new function, vc-default-mark-resolved, into vc.el.  It
does nothing except issue a message saying the conflict is resolved.
Someone else can write the vc-*-mark-resolved functions at a later date;
for now, at least `C-x v v' doesn't get stuck at the error.

>From [email-masked] Thu Jun 26 14:41:41 2008
From: Chong Yidong <[email-masked]>
To: [email-masked]
Subject: VC error: mark-resolved not implemented for CVS
Date: Thu, 26 Jun 2008 17:36:45 -0400

Suppose a CVS file is not up to date.  Set debug-on-error to t.  Make an
incompatible edit to the file, then do

C-x v v

Since the file is not up-to-date, this signals an error, as expected.
So do

C-x v +

to pull in the conflicting changes.  This adds the usual <<< and >>>
lines to the file.  After resolving the changes, try to check in the
file:

C-x v v 

The result:

Debugger entered--Lisp error: (error "Sorry, mark-resolved is not implemented for CVS")
  signal(error ("Sorry, mark-resolved is not implemented for CVS"))
  error("Sorry, %s is not implemented for %s" mark-resolved CVS)
  vc-call-backend(CVS mark-resolved ("/home/cyd/trunk/src/ChangeLog"))
  vc-mark-resolved(CVS ("/home/cyd/trunk/src/ChangeLog"))
  vc-next-action(nil)
  call-interactively(vc-next-action nil nil)