Subject: bug#78877: 31.0.50; Command `package-vc-rebuild' fails with error '(wrong-type-argument stringp nil)'

From: Philip Kaludercic <[email-masked]>
Date: Thu, 26 Jun 2025 20:44:51 +0000

Roi Martin <[email-masked]> writes:

> After installing a package using `package-vc-install-from-checkout',
> `package-vc-rebuild' fails with error '(wrong-type-argument stringp nil)'.
>
> The error can be reproduced following these steps:
>
>   emacs -Q --init-directory=/tmp/package-vc-bug
>   M-x package-vc-install-from-checkout /path/to/pkg-foo RET
>   M-x package-vc-rebuild pkg-foo RET
>
> Which produces the following backtrace:
>
>   Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>     vc-file-getprop(nil vc-working-revision)
>     vc-working-revision(nil)

The critical issue seems to be this line, right?  We didn't find a main
file, but wanted determine the revision of that file.

>     package-vc--unpack-1(#s(package-desc :name pkg-foo :version (0) :summary "No description available." :reqs nil :kind vc :archive nil :dir "/tmp/package-vc-bug/elpa/pkg-foo/" :extras ((:commit . "unknown")) :signed nil) "/tmp/package-vc-bug/elpa/pkg-foo/")
>     package-vc-rebuild(#s(package-desc :name pkg-foo :version (0) :summary "No description available." :reqs nil :kind vc :archive nil :dir "/tmp/package-vc-bug/elpa/pkg-foo/" :extras ((:commit . "unknown")) :signed nil))
>     funcall-interactively(package-vc-rebuild #s(package-desc :name pkg-foo :version (0) :summary "No description available." :reqs nil :kind vc :archive nil :dir "/tmp/package-vc-bug/elpa/pkg-foo/" :extras ((:commit . "unknown")) :signed nil))
>     command-execute(package-vc-rebuild record)
>     execute-extended-command(nil "package-vc-rebuild" nil)
>     funcall-interactively(execute-extended-command nil "package-vc-rebuild" nil)
>     command-execute(execute-extended-command)
>
> Where pkg-foo is a dummy package exposing a couple of functions.

What was the file structure of the package.

> I think this bug could be related to the changes installed as part of
> Bug#78017.

Could you elaborate your suspicion?

> Tested in:
>
>   GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
>    3.24.49, cairo version 1.18.2) of 2025-06-23 built on wopr
>   Repository revision: 1a8e8203a158f6bdc74e38f2cdb3214b6c06b9d8
>   Repository branch: master