Subject: Re: bug#78860: 30.1.90; eshell: wrong-number-of-arguments

From: Eli Zaretskii <[email-masked]>
Date: Sun, 22 Jun 2025 08:59:11 +0300

> From: Christopher Howard <[email-masked]>
> Date: Sat, 21 Jun 2025 20:24:38 -0800
> 
> 
> When I run the command "git status" in eshell, I am getting the error "wrong-number-of-arguments".
> 
> M-x package-isolate <ENTER> <ENTER>
> M-x eshell <ENTER>
> git status <ENTER> [or] *git status <ENTER>
> 
> With debug-on-error, here is the backtrace:
> 
> ```
> Debugger entered--Lisp error: (wrong-number-of-arguments (1 . 1) 2)
>   eshell-stringify("status" nil)
>   #f(compiled-function (i) #<bytecode 0x12a893834464da57>)("status")
>   mapcar(#f(compiled-function (i) #<bytecode 0x12a893834464da57>) ("status"))
>   eshell-connection-local-command("/home/christopher/.guix-home/profile/bin/git" ("status"))
>   eshell-external-command("/home/christopher/.guix-home/profile/bin/git" ("status"))
>   eshell-explicit-command("*git" ("status"))

Crystal ball says you a version mismatch between the code that calls
Eshell and Eshell itself.  Because eshell-stringify indeed accepted
only 1 argument in Emacs 30, but in Emacs 31 it can accept 2.

FTR: I cannot reproduce this problem.