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: Mark Harig <idirectscm <at> aim.com>
Subject: bug#58525: closed (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 15:59:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

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

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 58525 <at> debbugs.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: 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.

[Message part 3 (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.)




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

Previous Next


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