GNU bug report logs - #76955
30.1; php-ts-mode-php-executable default path may not match remote path

Previous Next

Package: emacs;

Reported by: Morgan Willcock <morgan <at> ice9.digital>

Date: Tue, 11 Mar 2025 20:11:02 UTC

Severity: normal

Found in version 30.1

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #71 received at 76955 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Morgan Willcock <morgan <at> ice9.digital>
Cc: v.pupillo <at> gmail.com, 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Thu, 13 Mar 2025 21:28:14 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
> Date: Thu, 13 Mar 2025 17:43:11 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> From: Morgan Willcock <morgan <at> ice9.digital>
> >> Cc: Eli Zaretskii <eliz <at> gnu.org>,  76955 <at> debbugs.gnu.org
> >> Date: Thu, 13 Mar 2025 16:45:04 +0000
> >> 
> >> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> >> 
> >> > In data giovedì 13 marzo 2025 15:25:57 Ora standard dell’Europa centrale, Eli
> >> > Zaretskii ha scritto:
> >> >> > From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> >> >> > Cc: 76955 <at> debbugs.gnu.org
> >> >> > Date: Thu, 13 Mar 2025 11:17:11 +0100
> >> >> >
> >> >> > Ciao,
> >> >> >
> >> >> > 'php-ts-mode-php-executable' it's used for 'php-ts-mode-flymake-php',
> >> >> > 'run-php' and 'php-ts-mode-run-php-webserver'.
> >> >>
> >> >> Then please consider the solution proposed below.
> >> >>
> >> >> > @Morgan: Will setting the executable path to "php" work in your scenario?
> >> >> > Of the functions listed above, which one do you usually use?
> >> >>
> >> >> Customizing the value is an okay solution, but we are discussing how
> >> >> to solve this for users that don't customize.
> >> >>
> >> >> How about the following solution:
> >> >>
> >> >>  . we replace references to php-ts-mode-php-executable with a call to
> >> >>    a function
> >> >>  . that function will do something like
> >> >>
> >> >>    (let ((php-prog (if (file-remote-p default-directory)
> >> >>                        (executable-find "php" t)
> >> >> 		     php-ts-mode-php-executable)))
> >> >>      php-prog)
> >> >>
> >> >> WDYT?
> >> > Yes, that's fine. Maybe we should also rename 'php-ts-mode-php-executable',
> >> > something like 'php-ts-mode-php-default-executable'. It seems to me that it
> >> > might not be clear that this value would not be used if the file was remote.
> >> 
> >> Wouldn't this approach make it impossible to override the value for the
> >> remote system if the wrong PHP binary is found by executable-find?
> >
> > If executable-find fails to find the PHP binary on the remote host,
> > how can using "php" which you suggested do any better?
> 
> Because in that case I can modify either search path or the value of the
> variable to match where the (correct) PHP binary is.
> 
> I think that using the value "php" would work the in majority of cases
> for the majority of people, and working around issues is already covered
> by existing Emacs functionality.
> 
> > But if we want to allow customization of remote PHP executable, we
> > could introduce another defcustom.
> 
> This will have the same problems if connecting to two remote system
> which are configured differently.

So I conclude that expecting "php" to be on PATH on remote systems is
a requirement, since nothing else will work reliably enough, and let's
close this discussion at that.




This bug report was last modified 51 days ago.

Previous Next


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