Subject: bug#72341: VC: CVS template lines not stripped when committing

From: Eli Zaretskii <[email-masked]>
Date: Sun, 28 Jul 2024 20:49:15 +0300

> Date: Sun, 28 Jul 2024 14:32:57 +0200
> From: Christoph Badura <[email-masked]>
> 
> CVS strips all lines beginning with "CVS: " after editing the commit
> message.  This is not done when using VC.
> 
> Specifically log-edit-hook's default includes log-edit-insert-cvs-template
> causing the CVS/Template file to be inserted.  However, the lines starting
> with "CVS: " aren't stripped out when log-edit-done is called.  The change
> is then committed with "cvs ci -m" which does not strip these line, as the
> template file is only loaded when cvs invokes an editor to edit the commit
> message.
> 
> This behaviour is very annoying when working in a project that makes use of
> CVS templates (e.g. NetBSD).  It would be nice, if VC behaved by default
> like CVS does.

I'm confused by your description.  At the beginning you say:

  CVS strips all lines beginning with "CVS: " after editing the commit
  message.

But later you say:

  However, the lines starting with "CVS: " aren't stripped out when
  log-edit-done is called.  The change is then committed with
  "cvs ci -m" which does not strip these line, as the template file is
  only loaded when cvs invokes an editor to edit the commit message.

If "cvs ci -m" doesn't strip the "CVS: " lines, then when and how does
the stripping you describe at the beginning happens?  And what does
the last part of the last sentence above, about the template file
being loaded when CVS invokes an editor, has to do with this issue?

Thanks.