GNU bug report logs - #58525
28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS repository

Previous Next

Package: emacs;

Reported by: Mark Harig <idirectscm <at> aim.com>

Date: Fri, 14 Oct 2022 17:37:02 UTC

Severity: normal

Tags: moreinfo

Found in version 28.1

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#58525: closed (28.1: `vc-dir' (key sequence: C-x v d) fails
 when used with a CVS repository)
Date: Tue, 18 Oct 2022 15:59:01 +0000
[Message part 1 (text/plain, inline)]
Your message dated Tue, 18 Oct 2022 18:58:29 +0300
with message-id <c225e898-e148-e052-b44f-35bacab44a9f <at> yandex.ru>
and subject line Re: bug#58525: 28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS repository
has caused the debbugs.gnu.org bug report #58525,
regarding 28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS repository
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
58525: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=58525
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Mark Harig <idirectscm <at> aim.com>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>
Subject: 28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS
 repository
Date: Fri, 14 Oct 2022 17:36:38 +0000 (UTC)
When attempting to retrieve a VC status for a directory or file
when the VC backend is CVS, the `vc-dir' command fails with an
error message.

Steps to recreate the problem, using `emacs -Q':

# 1. Create a new CVS repository from a bash shell prompt:
$ cd   # Start in home directory.
$ mkdir tmp1
$ cvs -d ~/tmp1 init  # Create a new CVS repository in ~/tmp1.
$ CVSROOT=~/tmp1; export CVSROOT

# 2. Create a new project to add to the CVS repository:
$ mkdir tmp2
$ mkdir tmp2/project1
$ cd tmp2/project1
$ touch foo.txt README.txt  # Create some empty files.
$ cd ..  # Return to tmp2 directory.

# 3. Add project as a module named "project1" to the CVS repository:
$ cvs import -m "Initial versions." . project1 start
N ./foo.txt
N ./README.txt

No conflicts created by this import

# 4. Retrieve the CVS module "project1":
$ cd ..  # Return to home directory.
$ ls tmp1 tmp2  # Check directories' contents.
tmp1:
CVSROOT/  project1/

tmp2:
project1/

# 5. Retrieve the new module from the CVS repository:
$ mkdir tmp3
$ cd tmp3
$ cvs checkout project1 project1
U project1/README.txt
U project1/foo.txt

$ ls
project1/
$ ls project1
CVS/  foo.txt  README.txt

# 6. Start emacs in directory ~/tmp3/project1:
$ cd project1
$ emacs -Q

7. In Emacs, type `C-x d' (the function `dired') to list the
   contents of the initial directory, ~/tmp3/project1.  This list
   will include the subdirectory `CVS' and the two files
   `foo.txt' and `README.txt'.

8. Type `C-x v d' (the function `vc-dir') to list the VC status
   for the files in the directory.  The following error message
   will be written to the *Messages* buffer:

   vc-responsible-backend: Wrong type argument: sequencep, t
   Mark set

9. Type `C-u C-x v d' (that is, add a prefix argument to `C-x v
   d').  The following prompt will be displayed:

   VC status for directory: ~/tmp3/project1

At the prompt, accept the command by pressing the <RET> key.  The
second prompt will then be displayed:

   Use VC backend:

At this prompt, type `CVS' and press <RET> (Note that the capital
letters C V S are required).  The command completes successfully
and a *vc-dir* buffer is displayed with the VC backend correctly
identified as CVS.

So, the code for `vc-dir' (or, key sequence C-x v d) contains an
error in which it cannot correctly identify the VC backend if it
is not provided, when the VC backend is CVS.

(End of report.)



[Message part 3 (message/rfc822, inline)]
From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Mark Harig <idirectscm <at> aim.com>, "eliz <at> gnu.org" <eliz <at> gnu.org>
Cc: 58525-done <at> debbugs.gnu.org
Subject: Re: bug#58525: 28.1: `vc-dir' (key sequence: C-x v d) fails when used
 with a CVS repository
Date: Tue, 18 Oct 2022 18:58:29 +0300
On 18.10.2022 18:39, Mark Harig wrote:
>> Not sure how you get to the step of being prompted for the backend.
> 
>  From the original report, here is Step 9.  Adding a prefix (that
> is, C-u) to `C-x v d' will get a prompt for the VC backend.
> 
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=58525#5

Sorry, missed that.

>>> 9. Type `C-u C-x v d' (that is, add a prefix argument to `C-x v
>>>     d').  The following prompt will be displayed:
>>>
>>>     VC status for directory: ~/tmp3/project1
>>>
>>> At the prompt, accept the command by pressing the <RET> key.  The
>>> second prompt will then be displayed:
>>>
>>>     Use VC backend:
> 
>> This should be fixed in Emacs 28.2 released in September.
>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=51800 says Emacs
>> 29 only, but it's been backported.
>>
>> Since you are not seeing the exact error for some reason, it's
>> possible that your problem has not been fixed still. But try
>> Emacs 28.2 at least.
> 
> If the Emacs maintainers say that they have verified (by
> following the steps needed to produce the problem in Emacs 28.1)
> that the problem reported for Emacs 28.1 has been fixed in a
> later release, then that should complete this process.

Yup, looks fixed in Emacs 28.2.

Closing. Thanks for the report.


This bug report was last modified 2 years and 215 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.