unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* vc-mode: initial comments lost if using CVS
@ 2005-08-25 11:10 era eriksson
  2005-08-25 16:30 ` Aaron S. Hawley
  0 siblings, 1 reply; 5+ messages in thread
From: era eriksson @ 2005-08-25 11:10 UTC (permalink / raw)


In GNU Emacs 21.3.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2005-03-05 on terranova, modified by Debian
configured using `configure '--build=i386-linux' '--host=i386-linux'
'--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
'--localstatedir=/var/lib' '--infodir=/usr/share/info'
'--mandir=/usr/share/man' '--with-pop=yes' '--with-x=yes'
'--with-x-toolkit=athena' 'CFLAGS=-DDEBIAN -g -O2'
'build_alias=i386-linux' 'host_alias=i386-linux''
Important settings:
  value of $LC_ALL: en_US.UTF-8
  value of $LC_COLLATE: sv_FI@euro.UTF-8
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: sv_FI@euro.UTF-8
  value of $LC_NUMERIC: sv_FI@euro.UTF-8
  value of $LC_TIME: sv_FI@euro.UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

The description of the variable vc-initial-comment is:

 ,-------------------------
 | vc-initial-comment's value is t
 |
 | Documentation:
 | *If non-nil, prompt for initial comment when a file is registered.
 |
 | You can customize this variable.
 |
 | Defined in `vc'.
 `-------------------------

My expectation would be that the initial comments would be passed in as
the new file's description. But under CVS, the Description: of a new
file is always empty if I've registered it in Emacs.

Steps to repro:

  M-: (setq vc-initial-comment 't)
  Create a buffer with some text in it. Save in a convenient location,
  such as /tmp/foo.txt
  vc-register (C-x v v)
  Supply an initial comment and finish (C-c C-c)
  (If you don't have an RCS or CVS subdirectory in /tmp; Emacs will
  offer to create an RCS subdirectory.)

If you were using RCS, at this point the file will be checked in, and
your initial comment will be visible in the description: when you type
C-x v l.

However, under CVS, the file is only "added" but not "committed" at this
point. The next C-x v v will ask for a commit comment, and actually
commit the current file to the repository.

Now, under CVS, if you type C-x v l, the description: field will be
empty, and there will be no trace of your initial comment.

This has been in Emacs vc-mode for as long as I've been trying to use
this feature.

/* era */

-- 
If this were a real .signature, it would suck less.  Well, maybe not.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: vc-mode: initial comments lost if using CVS
  2005-08-25 11:10 vc-mode: initial comments lost if using CVS era eriksson
@ 2005-08-25 16:30 ` Aaron S. Hawley
  2005-08-26  6:09   ` era eriksson
  0 siblings, 1 reply; 5+ messages in thread
From: Aaron S. Hawley @ 2005-08-25 16:30 UTC (permalink / raw)
  Cc: bug-gnu-emacs


I can't confirm the behavior of the missing change comment, however I can
confirm a missing description when the file is added outside of Emacs (and
without a -m message).  I'm assuming that your scenario entails adding the
file to CVS from the command-line rather than Emacs.  It seems Emacs can
register files to CVS ("add") with `vc-next-action' (C-x v v).

I've tried to reproduce the situation with a CVS module "vc-mode-test"
created from scratch (perhaps others know a quicker way of creating a
minimal CVS repository). I do the "add" and "commit" from within Emacs.
The description and change comment show up in the changelog.  Can you
verify this?

$ mkdir ~/cvs
$ export CVSROOT=$HOME/cvs
$ cvs init
$ cd /tmp
$ mkdir vc-mode-test
$ cd vc-mode-test
$ cvs import -m"Created directory structure" vc-mode-test vc-mode test

No conflicts created by this import

$ cd ..
$ cvs vc-mode-test
CVS
$ cd -
$ emacs foo.txt

In Emacs,

Set vc-initial-comment to non-nil with `M-: (setq vc-initial-comment t)'.
Register the file (`cvs add') with `C-x v v' and enter a description.
Check-in the initial revision (`cvs commit') with `C-x v v' and enter a
change comment.

Viewing the changelog with `C-x v l' shows:

RCS file: /home/ashawley/cvs/vc-mode-test/foo.txt,v
Working file: foo.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
An added file.

----------------------------
revision 1.1
date: 2005-08-25 16:18:43 +0000;  author: ashawley;  state: Exp;
Initial comment.

Hope that helps.
/a

On Thu, 25 Aug 2005, era eriksson wrote:

> ...
>
> However, under CVS, the file is only "added" but not "committed" at this
> point. The next C-x v v will ask for a commit comment, and actually
> commit the current file to the repository.
>
> Now, under CVS, if you type C-x v l, the description: field will be
> empty, and there will be no trace of your initial comment.
>
> This has been in Emacs vc-mode for as long as I've been trying to use
> this feature.
>
> /* era */

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: vc-mode: initial comments lost if using CVS
  2005-08-25 16:30 ` Aaron S. Hawley
@ 2005-08-26  6:09   ` era eriksson
  2005-08-26 13:07     ` Aaron S. Hawley
  0 siblings, 1 reply; 5+ messages in thread
From: era eriksson @ 2005-08-26  6:09 UTC (permalink / raw)
  Cc: bug-gnu-emacs

On Thu, 25 Aug 2005 12:30:34 -0400 (EDT), "Aaron S. Hawley"
<Aaron.Hawley@uvm.edu> said:
> I can't confirm the behavior of the missing change comment, however I can
> confirm a missing description when the file is added outside of Emacs
> (and without a -m message).  I'm assuming that your scenario entails adding
> the file to CVS from the command-line rather than Emacs. 

Nope, this is specifically about adding a new file to CVS from within
Emacs.

Which version of Emacs were you trying this on?

http://savannah.gnu.org/cgi-bin/viewcvs/emacs/emacs/lisp/vc-cvs.el.diff?r1=1.24.4.3&r2=1.77
doesn't reveal (to me) anything to indicate that this particular
behavior would have been consciously changed, but some of the changes
are rather wide-reaching (in particular, the introduction of
vc-cvs-command to replace the generic vc-do-command), so perhaps it
changed just as a side effect of something else.

> $ mkdir ~/cvs
> $ export CVSROOT=$HOME/cvs
> $ cvs init
> $ cd /tmp
> $ mkdir vc-mode-test
> $ cd vc-mode-test
> $ cvs import -m"Created directory structure" vc-mode-test vc-mode test

For quick experimentation, you don't really need to import.

 vnix$ mkdir /tmp/cvsroot
 vnix$ cvs -d /tmp/cvsroot init
 vnix$ mkdir /tmp/cvsroot/vc-mode-test
 vnix$ cvs -d /tmp/cvsroot co vc-mode-test
 vnix$ emacs vc-mode-test/foo.txt

> In Emacs,
> 
> Set vc-initial-comment to non-nil with `M-: (setq vc-initial-comment t)'.
> Register the file (`cvs add') with `C-x v v' and enter a description.
> Check-in the initial revision (`cvs commit') with `C-x v v' and enter a
> change comment.

Yes, this is correct. Just to be candid, which version of CVS are you
using? I'm currently on 1.12.9 but this has been happening since I was
using Emacs 20 (or was it even 19.35?) and CVS 1.11.

/* era */

-- 
If this were a real .signature, it would suck less.  Well, maybe not.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: vc-mode: initial comments lost if using CVS
  2005-08-26  6:09   ` era eriksson
@ 2005-08-26 13:07     ` Aaron S. Hawley
  2005-08-26 18:39       ` era eriksson
  0 siblings, 1 reply; 5+ messages in thread
From: Aaron S. Hawley @ 2005-08-26 13:07 UTC (permalink / raw)
  Cc: bug-gnu-emacs

I'm running a GNU/Linux system via Debian.
I can get the test case to work in both Emacs 21 and Emacs from CVS:

  * GNU Emacs 21.4.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of
    2005-03-17 on trouble, modified by Debian

  * GNU Emacs 22.0.50.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
    of 2005-08-08 on malambruno, modified by Debian

  $ cvs --version

  Concurrent Versions System (CVS) 1.12.9 (client/server)

  Copyright (c) 1989-2004 Brian Berliner, david d `zoo' zuhn,
                          Jeff Polk, and other authors

  CVS may be copied only under the terms of the GNU General Public
  License, a copy of which can be found with the CVS distribution kit.

  Specify the --help option for further information about CVS

I don't try to appear as a maintainer of vc-mode, so others are more
capable of speaking to your question about changes to vc-cvs.el.

Thanks for the information on a minimal CVS repository.
/a

On Fri, 26 Aug 2005, era eriksson wrote:

> Nope, this is specifically about adding a new file to CVS from within
> Emacs.
>
> Which version of Emacs were you trying this on?
>
> ...
>
> > In Emacs,
> >
> > Set vc-initial-comment to non-nil with `M-: (setq vc-initial-comment t)'.
> > Register the file (`cvs add') with `C-x v v' and enter a description.
> > Check-in the initial revision (`cvs commit') with `C-x v v' and enter a
> > change comment.
>
> Yes, this is correct. Just to be candid, which version of CVS are you
> using? I'm currently on 1.12.9 but this has been happening since I was
> using Emacs 20 (or was it even 19.35?) and CVS 1.11.
>
> /* era */

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: vc-mode: initial comments lost if using CVS
  2005-08-26 13:07     ` Aaron S. Hawley
@ 2005-08-26 18:39       ` era eriksson
  0 siblings, 0 replies; 5+ messages in thread
From: era eriksson @ 2005-08-26 18:39 UTC (permalink / raw)
  Cc: bug-gnu-emacs

On Fri, 26 Aug 2005 09:07:53 -0400 (EDT), "Aaron S. Hawley"
<Aaron.Hawley@uvm.edu> said:
> I'm running a GNU/Linux system via Debian.
> I can get the test case to work in both Emacs 21 and Emacs from CVS:

You are correct. Thanks for taking the time to try to repro. I was too
quick to jump on Emacs -- turns out the bug is actually in CVS.

I had apparently never used a ssh-based CVS repo from outside Emacs;
this is the crucial point required to repro, but it repros from the
command line as well.

You need to have an ssh server running locally, and for convenience, you
should have your password in ssh-agent or similar.

 vnix$ cd /tmp
 vnix$ mkdir cvstemp
 vnix$ cvs -d /tmp/cvstemp init
 vnix$ mkdir /tmp/cvstemp/foo

 vnix$ cvs -d :ext:era@localhost:/tmp/cvstemp co foo
 vnix$ cd foo
 vnix$ echo nst >test.txt
 vnix$ cvs add -m "add" test.txt
 vnix$ cvs commit -m "commit" test.txt
 vnix$ cvs log test.txt

Now, you should see an empty description, and (of course) also be able
to repro this from within Emacs.

Sorry for the misdirected bug report, and thanks again for your patience
with me,

/* era */

-- 
If this were a real .signature, it would suck less.  Well, maybe not.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2005-08-26 18:39 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-08-25 11:10 vc-mode: initial comments lost if using CVS era eriksson
2005-08-25 16:30 ` Aaron S. Hawley
2005-08-26  6:09   ` era eriksson
2005-08-26 13:07     ` Aaron S. Hawley
2005-08-26 18:39       ` era eriksson

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).