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

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 18 Oct 2022 15:59:02 +0000

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 [email-masked].

-- 
58525: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=58525
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#58525: 28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS repository
From: Dmitry Gutov <[email-masked]>
To: Mark Harig <[email-masked]>, "[email-masked]" <[email-masked]>
Cc: [email-masked]
Date: Tue, 18 Oct 2022 18:58:29 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

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.

Subject: 28.1: `vc-dir' (key sequence: C-x v d) fails when used with a CVS repository
From: Mark Harig <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Fri, 14 Oct 2022 17:36:38 +0000 (UTC)
List-Id: <debbugs-submit.debbugs.gnu.org>

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.)