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.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 76955 in the body.
You can then email your comments to 76955 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to v.pupillo <at> gmail.com, bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 11 Mar 2025 20:11:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Morgan Willcock <morgan <at> ice9.digital>:
New bug report received and forwarded. Copy sent to v.pupillo <at> gmail.com, bug-gnu-emacs <at> gnu.org. (Tue, 11 Mar 2025 20:11:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.1; php-ts-mode-php-executable default path may not match remote
 path
Date: Tue, 11 Mar 2025 20:09:37 +0000

The default value of php-ts-mode-php-executable is determined by
searching for a php binary locally, but the found path may not work for
TRAMP connections to a remote system:

  (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")

Would it not be more portable to just set the executable path to "php"
and then let a binary named "php" be located both locally and remotely?

In particular, if connecting from a Windows system to a remote system,
the probability of the binary location being the same on both systems is
likely to be very low.



In GNU Emacs 30.1 (build 2, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.18.2, Xaw scroll bars) of 2025-03-02 built on macmini
Windowing system distributor 'The X.Org Foundation', version 11.0.12101015
System Description: Debian GNU/Linux trixie/sid

Configured using:
 'configure --with-native-compilation --with-xml2 --with-x-toolkit=lucid
 --with-tree-sitter --disable-gc-mark-trace'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER
PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP X11 XDBE XIM XPM LUCID ZLIB

Important settings:
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  which-key-mode: t
  global-visual-wrap-prefix-mode: t
  display-time-mode: t
  savehist-mode: t
  repeat-mode: t
  recentf-mode: t
  minibuffer-electric-default-mode: t
  minibuffer-depth-indicate-mode: t
  midnight-mode: t
  ido-everywhere: t
  global-hl-line-mode: t
  editorconfig-mode: t
  global-display-fill-column-indicator-mode: t
  global-devil-mode: t
  devil-mode: t
  global-corfu-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-history-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  view-mode: t

Load-path shadows:
/home/mwillcock/.emacs.d/elpa/modus-themes-4.6.0/theme-loaddefs hides /usr/local/share/emacs/30.1/lisp/theme-loaddefs
/home/mwillcock/.emacs.d/elpa/python-0.29/python hides /usr/local/share/emacs/30.1/lisp/progmodes/python
/home/mwillcock/.emacs.d/elpa/eglot-1.18/eglot hides /usr/local/share/emacs/30.1/lisp/progmodes/eglot
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-css hides /usr/local/share/emacs/30.1/lisp/org/ob-css
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-version hides /usr/local/share/emacs/30.1/lisp/org/org-version
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-table hides /usr/local/share/emacs/30.1/lisp/org/ob-table
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-mobile hides /usr/local/share/emacs/30.1/lisp/org/org-mobile
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc-basic hides /usr/local/share/emacs/30.1/lisp/org/oc-basic
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-lint hides /usr/local/share/emacs/30.1/lisp/org/org-lint
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc-csl hides /usr/local/share/emacs/30.1/lisp/org/oc-csl
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc-bibtex hides /usr/local/share/emacs/30.1/lisp/org/oc-bibtex
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-macs hides /usr/local/share/emacs/30.1/lisp/org/org-macs
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-protocol hides /usr/local/share/emacs/30.1/lisp/org/org-protocol
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-forth hides /usr/local/share/emacs/30.1/lisp/org/ob-forth
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-ditaa hides /usr/local/share/emacs/30.1/lisp/org/ob-ditaa
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-compat hides /usr/local/share/emacs/30.1/lisp/org/org-compat
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox hides /usr/local/share/emacs/30.1/lisp/org/ox
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-rmail hides /usr/local/share/emacs/30.1/lisp/org/ol-rmail
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-core hides /usr/local/share/emacs/30.1/lisp/org/ob-core
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-latex hides /usr/local/share/emacs/30.1/lisp/org/ob-latex
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-mouse hides /usr/local/share/emacs/30.1/lisp/org/org-mouse
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-md hides /usr/local/share/emacs/30.1/lisp/org/ox-md
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-sql hides /usr/local/share/emacs/30.1/lisp/org/ob-sql
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-org hides /usr/local/share/emacs/30.1/lisp/org/ob-org
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-table hides /usr/local/share/emacs/30.1/lisp/org/org-table
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-ocaml hides /usr/local/share/emacs/30.1/lisp/org/ob-ocaml
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-clock hides /usr/local/share/emacs/30.1/lisp/org/org-clock
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-feed hides /usr/local/share/emacs/30.1/lisp/org/org-feed
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-refile hides /usr/local/share/emacs/30.1/lisp/org/org-refile
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-ascii hides /usr/local/share/emacs/30.1/lisp/org/ox-ascii
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-icalendar hides /usr/local/share/emacs/30.1/lisp/org/ox-icalendar
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-C hides /usr/local/share/emacs/30.1/lisp/org/ob-C
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-gnuplot hides /usr/local/share/emacs/30.1/lisp/org/ob-gnuplot
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-src hides /usr/local/share/emacs/30.1/lisp/org/org-src
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-clojure hides /usr/local/share/emacs/30.1/lisp/org/ob-clojure
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc hides /usr/local/share/emacs/30.1/lisp/org/oc
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol hides /usr/local/share/emacs/30.1/lisp/org/ol
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-ctags hides /usr/local/share/emacs/30.1/lisp/org/org-ctags
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-perl hides /usr/local/share/emacs/30.1/lisp/org/ob-perl
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-processing hides /usr/local/share/emacs/30.1/lisp/org/ob-processing
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-bbdb hides /usr/local/share/emacs/30.1/lisp/org/ol-bbdb
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-eval hides /usr/local/share/emacs/30.1/lisp/org/ob-eval
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-odt hides /usr/local/share/emacs/30.1/lisp/org/ox-odt
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-bibtex hides /usr/local/share/emacs/30.1/lisp/org/ol-bibtex
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc-biblatex hides /usr/local/share/emacs/30.1/lisp/org/oc-biblatex
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-timer hides /usr/local/share/emacs/30.1/lisp/org/org-timer
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-attach hides /usr/local/share/emacs/30.1/lisp/org/org-attach
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org hides /usr/local/share/emacs/30.1/lisp/org/org
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-fold hides /usr/local/share/emacs/30.1/lisp/org/org-fold
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-comint hides /usr/local/share/emacs/30.1/lisp/org/ob-comint
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-pcomplete hides /usr/local/share/emacs/30.1/lisp/org/org-pcomplete
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-keys hides /usr/local/share/emacs/30.1/lisp/org/org-keys
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-latex hides /usr/local/share/emacs/30.1/lisp/org/ox-latex
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-ruby hides /usr/local/share/emacs/30.1/lisp/org/ob-ruby
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-capture hides /usr/local/share/emacs/30.1/lisp/org/org-capture
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-gnus hides /usr/local/share/emacs/30.1/lisp/org/ol-gnus
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-eshell hides /usr/local/share/emacs/30.1/lisp/org/ob-eshell
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-tempo hides /usr/local/share/emacs/30.1/lisp/org/org-tempo
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-element-ast hides /usr/local/share/emacs/30.1/lisp/org/org-element-ast
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-man hides /usr/local/share/emacs/30.1/lisp/org/ol-man
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-js hides /usr/local/share/emacs/30.1/lisp/org/ob-js
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-plot hides /usr/local/share/emacs/30.1/lisp/org/org-plot
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-attach-git hides /usr/local/share/emacs/30.1/lisp/org/org-attach-git
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-lua hides /usr/local/share/emacs/30.1/lisp/org/ob-lua
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-eww hides /usr/local/share/emacs/30.1/lisp/org/ol-eww
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-fortran hides /usr/local/share/emacs/30.1/lisp/org/ob-fortran
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-screen hides /usr/local/share/emacs/30.1/lisp/org/ob-screen
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-footnote hides /usr/local/share/emacs/30.1/lisp/org/org-footnote
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-loaddefs hides /usr/local/share/emacs/30.1/lisp/org/org-loaddefs
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-julia hides /usr/local/share/emacs/30.1/lisp/org/ob-julia
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-awk hides /usr/local/share/emacs/30.1/lisp/org/ob-awk
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-dot hides /usr/local/share/emacs/30.1/lisp/org/ob-dot
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-emacs-lisp hides /usr/local/share/emacs/30.1/lisp/org/ob-emacs-lisp
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-doi hides /usr/local/share/emacs/30.1/lisp/org/ol-doi
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-faces hides /usr/local/share/emacs/30.1/lisp/org/org-faces
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-macro hides /usr/local/share/emacs/30.1/lisp/org/org-macro
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-fold-core hides /usr/local/share/emacs/30.1/lisp/org/org-fold-core
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-sed hides /usr/local/share/emacs/30.1/lisp/org/ob-sed
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-koma-letter hides /usr/local/share/emacs/30.1/lisp/org/ox-koma-letter
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-entities hides /usr/local/share/emacs/30.1/lisp/org/org-entities
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-sass hides /usr/local/share/emacs/30.1/lisp/org/ob-sass
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-datetree hides /usr/local/share/emacs/30.1/lisp/org/org-datetree
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-haskell hides /usr/local/share/emacs/30.1/lisp/org/ob-haskell
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-man hides /usr/local/share/emacs/30.1/lisp/org/ox-man
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-element hides /usr/local/share/emacs/30.1/lisp/org/org-element
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-lob hides /usr/local/share/emacs/30.1/lisp/org/ob-lob
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-id hides /usr/local/share/emacs/30.1/lisp/org/org-id
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-python hides /usr/local/share/emacs/30.1/lisp/org/ob-python
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-tangle hides /usr/local/share/emacs/30.1/lisp/org/ob-tangle
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-java hides /usr/local/share/emacs/30.1/lisp/org/ob-java
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-crypt hides /usr/local/share/emacs/30.1/lisp/org/org-crypt
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-cycle hides /usr/local/share/emacs/30.1/lisp/org/org-cycle
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-lisp hides /usr/local/share/emacs/30.1/lisp/org/ob-lisp
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-makefile hides /usr/local/share/emacs/30.1/lisp/org/ob-makefile
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-persist hides /usr/local/share/emacs/30.1/lisp/org/org-persist
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob hides /usr/local/share/emacs/30.1/lisp/org/ob
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-shell hides /usr/local/share/emacs/30.1/lisp/org/ob-shell
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-indent hides /usr/local/share/emacs/30.1/lisp/org/org-indent
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-colview hides /usr/local/share/emacs/30.1/lisp/org/org-colview
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-habit hides /usr/local/share/emacs/30.1/lisp/org/org-habit
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-irc hides /usr/local/share/emacs/30.1/lisp/org/ol-irc
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-texinfo hides /usr/local/share/emacs/30.1/lisp/org/ox-texinfo
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-ref hides /usr/local/share/emacs/30.1/lisp/org/ob-ref
/home/mwillcock/.emacs.d/elpa/org-9.7.24/oc-natbib hides /usr/local/share/emacs/30.1/lisp/org/oc-natbib
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-beamer hides /usr/local/share/emacs/30.1/lisp/org/ox-beamer
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-w3m hides /usr/local/share/emacs/30.1/lisp/org/ol-w3m
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-agenda hides /usr/local/share/emacs/30.1/lisp/org/org-agenda
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-duration hides /usr/local/share/emacs/30.1/lisp/org/org-duration
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-octave hides /usr/local/share/emacs/30.1/lisp/org/ob-octave
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-matlab hides /usr/local/share/emacs/30.1/lisp/org/ob-matlab
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-org hides /usr/local/share/emacs/30.1/lisp/org/ox-org
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-goto hides /usr/local/share/emacs/30.1/lisp/org/org-goto
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-plantuml hides /usr/local/share/emacs/30.1/lisp/org/ob-plantuml
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-eshell hides /usr/local/share/emacs/30.1/lisp/org/ol-eshell
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-maxima hides /usr/local/share/emacs/30.1/lisp/org/ob-maxima
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-inlinetask hides /usr/local/share/emacs/30.1/lisp/org/org-inlinetask
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-publish hides /usr/local/share/emacs/30.1/lisp/org/ox-publish
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-num hides /usr/local/share/emacs/30.1/lisp/org/org-num
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-R hides /usr/local/share/emacs/30.1/lisp/org/ob-R
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-lilypond hides /usr/local/share/emacs/30.1/lisp/org/ob-lilypond
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-archive hides /usr/local/share/emacs/30.1/lisp/org/org-archive
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-info hides /usr/local/share/emacs/30.1/lisp/org/ol-info
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-sqlite hides /usr/local/share/emacs/30.1/lisp/org/ob-sqlite
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-docview hides /usr/local/share/emacs/30.1/lisp/org/ol-docview
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ox-html hides /usr/local/share/emacs/30.1/lisp/org/ox-html
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ol-mhe hides /usr/local/share/emacs/30.1/lisp/org/ol-mhe
/home/mwillcock/.emacs.d/elpa/org-9.7.24/org-list hides /usr/local/share/emacs/30.1/lisp/org/org-list
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-groovy hides /usr/local/share/emacs/30.1/lisp/org/ob-groovy
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-exp hides /usr/local/share/emacs/30.1/lisp/org/ob-exp
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-calc hides /usr/local/share/emacs/30.1/lisp/org/ob-calc
/home/mwillcock/.emacs.d/elpa/org-9.7.24/ob-scheme hides /usr/local/share/emacs/30.1/lisp/org/ob-scheme

Features:
(shadow sort ecomplete mail-extr gnus-msg gnus-art mm-uu mml2015 mm-view
mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg
dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap
nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win gnus
nnheader range emacsbug switchmail message yank-media puny dired
dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config
gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils view compile text-property-search comp-run
comp-common flyspell ispell goto-addr thingatpt init which-key
visual-wrap time vc-git diff-mode track-changes vc-dispatcher shadowfile
savehist repeat tramp-cache time-stamp tramp-sh tramp rx trampver
tramp-integration files-x tramp-message tramp-compat xdg shell pcomplete
comint ansi-osc ring parse-time iso8601 time-date format-spec ansi-color
tramp-loaddefs recentf tree-widget wid-edit minibuf-eldef mb-depth
midnight ido hl-line editorconfig editorconfig-core
editorconfig-core-handle editorconfig-fnmatch
display-fill-column-indicator devil use-package-diminish corfu compat
modus-vivendi-theme modus-themes find-func edmacro kmacro pcase
use-package-bind-key bind-key easy-mmode diminish cl-extra help-mode
use-package-core ags-mode-autoloads corfu-autoloads devil-autoloads
diminish-autoloads eglot-autoloads flymake-ansible-lint-autoloads
indent-bars-autoloads inform-mode-autoloads jabber-autoloads
fsm-autoloads kixtart-mode-autoloads lua-mode-autoloads
markdown-mode-autoloads modus-themes-autoloads org-autoloads
org-msg-autoloads htmlize-autoloads package-lint-autoloads
php-mode-autoloads plantuml-mode-autoloads dash-autoloads
powershell-autoloads python-autoloads rainbow-mode-autoloads
renpy-autoloads info sly-autoloads srv-autoloads switchmail-autoloads
wgrep-autoloads yaml-mode-autoloads package browse-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs icons password-cache json
subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib
rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt
fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode
register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify dynamic-setting system-font-setting
font-render-setting cairo x-toolkit x multi-tty move-toolbar
make-network-process native-compile emacs)

Memory information:
((conses 16 313937 18266) (symbols 48 21736 0) (strings 32 67688 5193)
 (string-bytes 1 2162533) (vectors 16 30109)
 (vector-slots 8 378100 10177) (floats 8 357 2) (intervals 56 3317 6)
 (buffers 992 16))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 12 Mar 2025 12:51:01 GMT) Full text and rfc822 format available.

Message #8 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: Wed, 12 Mar 2025 14:50:03 +0200
> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> From: Morgan Willcock <morgan <at> ice9.digital>
> Date: Tue, 11 Mar 2025 20:09:37 +0000
> 
> 
> 
> The default value of php-ts-mode-php-executable is determined by
> searching for a php binary locally, but the found path may not work for
> TRAMP connections to a remote system:
> 
>   (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")
> 
> Would it not be more portable to just set the executable path to "php"
> and then let a binary named "php" be located both locally and remotely?

Does it help to use this instead:

  (defcustom php-ts-mode-php-executable
     (or (executable-find "php" t) "/usr/bin/php")




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 12 Mar 2025 18:26:01 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Wed, 12 Mar 2025 18:25:16 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

> Does it help to use this instead:
>
>   (defcustom php-ts-mode-php-executable
>      (or (executable-find "php" t) "/usr/bin/php")

I don't think that would help.

If the package is loaded while default-directory is local the value
would be wrong on the remote system.

If the package is loaded while default-directory is remote the value
would be wrong on the local system.

Neither the local or remote path is "/usr/bin/php".

I was surprised that the default value was not "php".  Is there some
benefit in searching for the executable so early?

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 12 Mar 2025 19:15:03 GMT) Full text and rfc822 format available.

Message #14 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: Wed, 12 Mar 2025 21:14:50 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
> Date: Wed, 12 Mar 2025 18:25:16 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> > Does it help to use this instead:
> >
> >   (defcustom php-ts-mode-php-executable
> >      (or (executable-find "php" t) "/usr/bin/php")
> 
> I don't think that would help.
> 
> If the package is loaded while default-directory is local the value
> would be wrong on the remote system.

So what is your scenario that it requires to have a php executable on
the remote host?  Can you describe your use case in detail?

> I was surprised that the default value was not "php".  Is there some
> benefit in searching for the executable so early?

Who said it must be on PATH?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 12 Mar 2025 19:48:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Wed, 12 Mar 2025 19:47:34 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Morgan Willcock <morgan <at> ice9.digital>
>> Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
>> Date: Wed, 12 Mar 2025 18:25:16 +0000
>> 
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>> 
>> > Does it help to use this instead:
>> >
>> >   (defcustom php-ts-mode-php-executable
>> >      (or (executable-find "php" t) "/usr/bin/php")
>> 
>> I don't think that would help.
>> 
>> If the package is loaded while default-directory is local the value
>> would be wrong on the remote system.
>
> So what is your scenario that it requires to have a php executable on
> the remote host?  Can you describe your use case in detail?

I am not doing anything complicated, just using the same major mode both
locally and remotely.

The local binary (on PATH) is "c:/Users/mwillcock/scoop/shims/php.exe".

The remote binary (on PATH, but if it wasn't I imagine I could get it on
PATH using connection-local-set-profiles - I am already doing that for
an LSP server binary) is "/usr/pkg/bin/php".

>> I was surprised that the default value was not "php".  Is there some
>> benefit in searching for the executable so early?
>
> Who said it must be on PATH?

I think it is more likely to be on PATH than not, and if "/usr/bin/php"
does exist I think that is also likely to be on PATH anyway.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 04:31:02 GMT) Full text and rfc822 format available.

Message #20 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 06:29:51 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
> Date: Wed, 12 Mar 2025 19:47:34 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> From: Morgan Willcock <morgan <at> ice9.digital>
> >> Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
> >> Date: Wed, 12 Mar 2025 18:25:16 +0000
> >> 
> >> Eli Zaretskii <eliz <at> gnu.org> writes:
> >> 
> >> > Does it help to use this instead:
> >> >
> >> >   (defcustom php-ts-mode-php-executable
> >> >      (or (executable-find "php" t) "/usr/bin/php")
> >> 
> >> I don't think that would help.
> >> 
> >> If the package is loaded while default-directory is local the value
> >> would be wrong on the remote system.
> >
> > So what is your scenario that it requires to have a php executable on
> > the remote host?  Can you describe your use case in detail?
> 
> I am not doing anything complicated, just using the same major mode both
> locally and remotely.
> 
> The local binary (on PATH) is "c:/Users/mwillcock/scoop/shims/php.exe".
> 
> The remote binary (on PATH, but if it wasn't I imagine I could get it on
> PATH using connection-local-set-profiles - I am already doing that for
> an LSP server binary) is "/usr/pkg/bin/php".

What is the binary used for in this mode, and why can't whatever is
done with it be always done locally?  I'm asking because I don't use
this mode and don't know why the executable is needed by it.

> >> I was surprised that the default value was not "php".  Is there some
> >> benefit in searching for the executable so early?
> >
> > Who said it must be on PATH?
> 
> I think it is more likely to be on PATH than not, and if "/usr/bin/php"
> does exist I think that is also likely to be on PATH anyway.

The defcustom exists so that you could customize it to anything, and
exec-path is not identical to PATH.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 07:36:02 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>, 76955 <at> debbugs.gnu.org
Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may not
 match remote path
Date: Thu, 13 Mar 2025 00:35:06 -0700
Morgan Willcock <morgan <at> ice9.digital> writes:

>   (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")

BTW, shouldn't this be called `php-ts-mode-php-command'?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 07:58:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: v.pupillo <at> gmail.com, 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Thu, 13 Mar 2025 09:57:05 +0200
> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> From: Stefan Kangas <stefankangas <at> gmail.com>
> Date: Thu, 13 Mar 2025 00:35:06 -0700
> 
> Morgan Willcock <morgan <at> ice9.digital> writes:
> 
> >   (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")
> 
> BTW, shouldn't this be called `php-ts-mode-php-command'?

We are splitting hair, but "command" could be a shell command",
whereas "executable" generally means a file name.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 08:01:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: v.pupillo <at> gmail.com, 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may not
 match remote path
Date: Thu, 13 Mar 2025 01:00:48 -0700
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>
>> From: Stefan Kangas <stefankangas <at> gmail.com>
>> Date: Thu, 13 Mar 2025 00:35:06 -0700
>>
>> Morgan Willcock <morgan <at> ice9.digital> writes:
>>
>> >   (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")
>>
>> BTW, shouldn't this be called `php-ts-mode-php-command'?
>
> We are splitting hair, but "command" could be a shell command",
> whereas "executable" generally means a file name.

It's mostly for consistency; I find few hits for -executable$ but many
for -command$ in our tree.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 10:18:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>, Eli Zaretskii <eliz <at> gnu.org>
Cc: 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 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'.

@Morgan: Will setting the executable path to "php" work in your scenario?
Of the functions listed above, which one do you usually use?

Thanks.

Vincenzo


In data giovedì 13 marzo 2025 05:29:51 Ora standard dell’Europa centrale, Eli 
Zaretskii ha scritto:
> > From: Morgan Willcock <morgan <at> ice9.digital>
> > Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
> > Date: Wed, 12 Mar 2025 19:47:34 +0000
> > 
> > Eli Zaretskii <eliz <at> gnu.org> writes:
> > >> From: Morgan Willcock <morgan <at> ice9.digital>
> > >> Cc: 76955 <at> debbugs.gnu.org,  v.pupillo <at> gmail.com
> > >> Date: Wed, 12 Mar 2025 18:25:16 +0000
> > >> 
> > >> Eli Zaretskii <eliz <at> gnu.org> writes:
> > >> > Does it help to use this instead:
> > >> >   (defcustom php-ts-mode-php-executable
> > >> >   
> > >> >      (or (executable-find "php" t) "/usr/bin/php")
> > >> 
> > >> I don't think that would help.
> > >> 
> > >> If the package is loaded while default-directory is local the value
> > >> would be wrong on the remote system.
> > > 
> > > So what is your scenario that it requires to have a php executable on
> > > the remote host?  Can you describe your use case in detail?
> > 
> > I am not doing anything complicated, just using the same major mode both
> > locally and remotely.
> > 
> > The local binary (on PATH) is "c:/Users/mwillcock/scoop/shims/php.exe".
> > 
> > The remote binary (on PATH, but if it wasn't I imagine I could get it on
> > PATH using connection-local-set-profiles - I am already doing that for
> > an LSP server binary) is "/usr/pkg/bin/php".
> 
> What is the binary used for in this mode, and why can't whatever is
> done with it be always done locally?  I'm asking because I don't use
> this mode and don't know why the executable is needed by it.
> 
> > >> I was surprised that the default value was not "php".  Is there some
> > >> benefit in searching for the executable so early?
> > > 
> > > Who said it must be on PATH?
> > 
> > I think it is more likely to be on PATH than not, and if "/usr/bin/php"
> > does exist I think that is also likely to be on PATH anyway.
> 
> The defcustom exists so that you could customize it to anything, and
> exec-path is not identical to PATH.







Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 11:27:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 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 11:26:03 +0000
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

> 'php-ts-mode-php-executable' it's used for 'php-ts-mode-flymake-php',
> 'run-php' and 'php-ts-mode-run-php-webserver'.

It was calling run-php where I initially found the problem.

> @Morgan: Will setting the executable path to "php" work in your scenario?
> Of the functions listed above, which one do you usually use?

Setting the value to "php" is how I use it, because that works
everywhere I need it even though the local and remote setups have
nothing in common.

Just to be clear, the "bug" I am reporting here is that the current
default value seems to assume that the local PHP setup will be identical
to a remote PHP setup, and that falling back to using a full path like
"/usr/bin/php" makes similar and platform specific assumptions.

To work in more places without requiring customisation, I think the
default value should be "php".

I cannot see any benefit in calling executable-find to set the default
value because this seems at odds with using the major mode with TRAMP
connections.

I see little benefit in "/usr/bin/php" as a default fallback value
because it is very likely that the binary would have been automatically
located in /usr/bin if that path exists.

If someone could explain the reasoning behind how the default value is
currently being set, and why that is better than just using the value
"php", feel free to close this bug report.

Thanks,
Morgan

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 13:57:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: v.pupillo <at> gmail.com, 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may not
 match remote path
Date: Thu, 13 Mar 2025 15:56:37 +0200
> From: Stefan Kangas <stefankangas <at> gmail.com>
> Date: Thu, 13 Mar 2025 01:00:48 -0700
> Cc: morgan <at> ice9.digital, 76955 <at> debbugs.gnu.org, v.pupillo <at> gmail.com
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> >> From: Stefan Kangas <stefankangas <at> gmail.com>
> >> Date: Thu, 13 Mar 2025 00:35:06 -0700
> >>
> >> Morgan Willcock <morgan <at> ice9.digital> writes:
> >>
> >> >   (defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")
> >>
> >> BTW, shouldn't this be called `php-ts-mode-php-command'?
> >
> > We are splitting hair, but "command" could be a shell command",
> > whereas "executable" generally means a file name.
> 
> It's mostly for consistency; I find few hits for -executable$ but many
> for -command$ in our tree.

I think we use "command" for strings that are shell commands, and
"program" for strings that are file names of program executables.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 14:08:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 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 15:07:41 +0100
In data giovedì 13 marzo 2025 12:26:03 Ora standard dell’Europa centrale, 
Morgan Willcock ha scritto:
> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> > 'php-ts-mode-php-executable' it's used for 'php-ts-mode-flymake-php',
> > 'run-php' and 'php-ts-mode-run-php-webserver'.
> 
> It was calling run-php where I initially found the problem.

Ok. 'run-php' can be invoked with C-u M-x run-php and you can specify the path 
to php. Sometimes I am forced to use older versions of php, Remi's php 
packages use a suffix to indicate the version, e.g. php54.

> 
> > @Morgan: Will setting the executable path to "php" work in your scenario?
> > Of the functions listed above, which one do you usually use?
> 
> Setting the value to "php" is how I use it, because that works
> everywhere I need it even though the local and remote setups have
> nothing in common.
> 
> Just to be clear, the "bug" I am reporting here is that the current
> default value seems to assume that the local PHP setup will be identical
> to a remote PHP setup, and that falling back to using a full path like
> "/usr/bin/php" makes similar and platform specific assumptions.
> 
> To work in more places without requiring customisation, I think the
> default value should be "php".
> 
> I cannot see any benefit in calling executable-find to set the default
> value because this seems at odds with using the major mode with TRAMP
> connections.
> 
> I see little benefit in "/usr/bin/php" as a default fallback value
> because it is very likely that the binary would have been automatically
> located in /usr/bin if that path exists.
> 
> If someone could explain the reasoning behind how the default value is
> currently being set, and why that is better than just using the value
> "php", feel free to close this bug report.

At first it was just 'php' then, since I don't know the details of how path 
resolution works on Windows or even Macs, I preferred to use 'executable-
find'. as in python.el for example. So, since I have always used 'php-mode' 
and wanted users to feel "at home", I used exactly the same expression: '(or 
(executable-find "php") "/usr/bin/php")'.

Vincenzo

> 
> Thanks,
> Morgan
> 
> --
> Morgan Willcock







Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 14:27:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Thu, 13 Mar 2025 16:25:57 +0200
> 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?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 14:43:01 GMT) Full text and rfc822 format available.

Message #47 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 16:41:45 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: Eli Zaretskii <eliz <at> gnu.org>,  76955 <at> debbugs.gnu.org
> Date: Thu, 13 Mar 2025 11:26:03 +0000
> 
> I cannot see any benefit in calling executable-find to set the default
> value because this seems at odds with using the major mode with TRAMP
> connections.

The main benefit is that invoking the program on local files will be
faster.  And I presume that most of these invocations are indeed on
local files; remote files are much more rare.  So speeding up the
local case seems like a good optimization.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 16:29:01 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Thu, 13 Mar 2025 17:28:41 +0100
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.

Vincenzo






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 16:46:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 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 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?

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 16:48:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Thu, 13 Mar 2025 18:47:42 +0200
> From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> Cc: morgan <at> ice9.digital, 76955 <at> debbugs.gnu.org
> Date: Thu, 13 Mar 2025 17:28:41 +0100
> 
> In data giovedì 13 marzo 2025 15:25:57 Ora standard dell’Europa centrale, Eli 
> Zaretskii ha scritto:
> > 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.

Yes, good idea.  Would you like to post a patch to that effect?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 17:00:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 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 16:59:00 +0000
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

>> If someone could explain the reasoning behind how the default value is
>> currently being set, and why that is better than just using the value
>> "php", feel free to close this bug report.
>
> At first it was just 'php' then, since I don't know the details of how path
> resolution works on Windows or even Macs, I preferred to use 'executable-
> find'. as in python.el for example.

I think the critical difference is, python.el is not using the path to
the binary as the default value, it takes the successful search as a
signal of which python executable name to be searching for:

(defcustom python-interpreter
  (cond ((executable-find "python") "python")
        (t "python3"))

> So, since I have always used 'php-mode' and wanted users to feel "at
> home", I used exactly the same expression: '(or (executable-find "php")
> "/usr/bin/php")'.

I don't think php-mode has a feature like run-php, so your original
default value of "php" makes much more sense to me.

I don't think you need to do anything special for Windows of macOS.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 17:18:01 GMT) Full text and rfc822 format available.

Message #62 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 19:17:24 +0200
> 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?

But if we want to allow customization of remote PHP executable, we
could introduce another defcustom.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 17:44:01 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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 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.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 17:54:02 GMT) Full text and rfc822 format available.

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

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: v.pupillo <at> gmail.com, 76955 <at> debbugs.gnu.org,
 Morgan Willcock <morgan <at> ice9.digital>
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Thu, 13 Mar 2025 18:53:36 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

Hi Eli,

> If executable-find fails to find the PHP binary on the remote host,
> how can using "php" which you suggested do any better?

Because the PATH you set in your remote .profile isn't expanded by
default into tramp-remote-path. You must arrange for it, for example by
adding symbol tramp-own-remote-path into that list.

(info "(tramp) Remote programs")

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Thu, 13 Mar 2025 19:29:02 GMT) Full text and rfc822 format available.

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.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Fri, 14 Mar 2025 20:30:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>, Eli Zaretskii <eliz <at> gnu.org>
Cc: 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Fri, 14 Mar 2025 21:29:20 +0100
[Message part 1 (text/plain, inline)]
Ciao Eli, the patch is attached.

Thanks

Vincenzo


In data giovedì 13 marzo 2025 20:28:14 Ora standard dell’Europa centrale, Eli 
Zaretskii ha scritto:
> > 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.

[0001-PHP-has-to-be-in-the-PATH-bug-76242.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 09:00:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Sat, 15 Mar 2025 10:58:58 +0200
> From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> Cc: 76955 <at> debbugs.gnu.org
> Date: Fri, 14 Mar 2025 21:29:20 +0100
> 
> Ciao Eli, the patch is attached.

Thanks, but this is IMO worse than what I suggested, which was to call
executable-find every time the program is invoked for remote systems.
The idea is that the users can customize php-ts-mode-php-executable
for their local setup, without affect the remote setup in any way.
The change you posted doesn't allow that: users will have to make sure
the same value is valid on both local and all of the remote systems,
which is not always possible.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 11:04:06 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Vincenzo Pupillo <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: Sat, 15 Mar 2025 11:03:40 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Ciao Eli, the patch is attached.
>
> Thanks, but this is IMO worse than what I suggested, which was to call
> executable-find every time the program is invoked for remote systems.
> The idea is that the users can customize php-ts-mode-php-executable
> for their local setup, without affect the remote setup in any way.
> The change you posted doesn't allow that: users will have to make sure
> the same value is valid on both local and all of the remote systems,
> which is not always possible.

I don't think any other modes provide a separate value for remote binary
paths, and TRAMP provides multiple ways to modify where the search for
the remote binary would be done.  I think in the extreme case where
TRAMP does not provide what is required, someone could always just set a
buffer local value to the required path based on their own criteria.

But to fix the bug that I reported, I feel the patch is correct, since
in the majority of cases the correct binary would be located by default
by using the value "php".

The same would apply for other remote binaries like diff, find, grep,
and xargs - if you resolve the path to the binary locally you may break
calling it remotely.

What problem is introduced by not calling executable-find?  You pointed
out it is faster to resolve the binary path once rather than multiple
times, but I don't think that it can be considered a good optimisation
when it breaks calling the binary on remotes systems.

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

I am not sure what you mean by "reliably", but being on PATH is not a
requirement to use it.  It will very likely be on PATH, but with some
additional configuration of the TRAMP connection it doesn't need to be.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 12:27:02 GMT) Full text and rfc822 format available.

Message #83 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: Sat, 15 Mar 2025 14:26:21 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>,  76955 <at> debbugs.gnu.org
> Date: Sat, 15 Mar 2025 11:03:40 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> > 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.
> 
> I am not sure what you mean by "reliably", but being on PATH is not a
> requirement to use it.  It will very likely be on PATH, but with some
> additional configuration of the TRAMP connection it doesn't need to be.

I mean that we should use executable-find for remote directories,
thus assuming that the program is on PATH on remote systems, and let
users customize the local value via the user option.  IOW, the user
option should not have effect on remote invocations.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 13:06:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Sat, 15 Mar 2025 14:05:23 +0100
In data sabato 15 marzo 2025 09:58:58 Ora standard dell’Europa centrale, Eli 
Zaretskii ha scritto:
> > From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> > Cc: 76955 <at> debbugs.gnu.org
> > Date: Fri, 14 Mar 2025 21:29:20 +0100
> > 
> > Ciao Eli, the patch is attached.
> 
> Thanks, but this is IMO worse than what I suggested, which was to call
> executable-find every time the program is invoked for remote systems.
> The idea is that the users can customize php-ts-mode-php-executable
> for their local setup, without affect the remote setup in any way.
> The change you posted doesn't allow that: users will have to make sure
> the same value is valid on both local and all of the remote systems,
> which is not always possible.

Sorry I misinterpreted what you wrote:
>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.
Vincenzo






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 13:09:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Sat, 15 Mar 2025 13:07:54 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Morgan Willcock <morgan <at> ice9.digital>
>> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>,  76955 <at> debbugs.gnu.org
>> Date: Sat, 15 Mar 2025 11:03:40 +0000
>>
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>>
>> > 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.
>>
>> I am not sure what you mean by "reliably", but being on PATH is not a
>> requirement to use it.  It will very likely be on PATH, but with some
>> additional configuration of the TRAMP connection it doesn't need to be.
>
> I mean that we should use executable-find for remote directories,
> thus assuming that the program is on PATH on remote systems, and let
> users customize the local value via the user option.

I think this introduces an additional complication if executable-find
finds a binary which is not the one that should be used.

> IOW, the user option should not have effect on remote invocations.

From my perspective as a user of mode, just setting the value to "php"
introduces no additional complexity, works in more places by default
than the current value, and doesn't deviate from how other modes (and
associated executable paths) are managed.

I feel we should probably get input from TRAMP maintainers at this point
- I don't think I can add much more context beyond what I've already
written and I don't want to keep repeating the same points.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 13:19:02 GMT) Full text and rfc822 format available.

Message #92 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: Sat, 15 Mar 2025 15:18:25 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
> Date: Sat, 15 Mar 2025 13:07:54 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> From: Morgan Willcock <morgan <at> ice9.digital>
> >> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>,  76955 <at> debbugs.gnu.org
> >> Date: Sat, 15 Mar 2025 11:03:40 +0000
> >>
> >> Eli Zaretskii <eliz <at> gnu.org> writes:
> >>
> >> > 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.
> >>
> >> I am not sure what you mean by "reliably", but being on PATH is not a
> >> requirement to use it.  It will very likely be on PATH, but with some
> >> additional configuration of the TRAMP connection it doesn't need to be.
> >
> > I mean that we should use executable-find for remote directories,
> > thus assuming that the program is on PATH on remote systems, and let
> > users customize the local value via the user option.
> 
> I think this introduces an additional complication if executable-find
> finds a binary which is not the one that should be used.
> 
> > IOW, the user option should not have effect on remote invocations.
> 
> >From my perspective as a user of mode, just setting the value to "php"
> introduces no additional complexity, works in more places by default
> than the current value, and doesn't deviate from how other modes (and
> associated executable paths) are managed.

My suggestion will still work in your case, no?

The advantage is that it will also work in other cases, when the user
option is customized to name a local version of the php executable.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 15:05:03 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Sat, 15 Mar 2025 15:03:57 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Morgan Willcock <morgan <at> ice9.digital>
>> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
>> Date: Sat, 15 Mar 2025 13:07:54 +0000
>>
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>>
>> >> From: Morgan Willcock <morgan <at> ice9.digital>
>> >> Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>,  76955 <at> debbugs.gnu.org
>> >> Date: Sat, 15 Mar 2025 11:03:40 +0000
>> >>
>> >> Eli Zaretskii <eliz <at> gnu.org> writes:
>> >>
>> >> > 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.
>> >>
>> >> I am not sure what you mean by "reliably", but being on PATH is not a
>> >> requirement to use it.  It will very likely be on PATH, but with some
>> >> additional configuration of the TRAMP connection it doesn't need to be.
>> >
>> > I mean that we should use executable-find for remote directories,
>> > thus assuming that the program is on PATH on remote systems, and let
>> > users customize the local value via the user option.
>>
>> I think this introduces an additional complication if executable-find
>> finds a binary which is not the one that should be used.
>>
>> > IOW, the user option should not have effect on remote invocations.
>>
>> >From my perspective as a user of mode, just setting the value to "php"
>> introduces no additional complexity, works in more places by default
>> than the current value, and doesn't deviate from how other modes (and
>> associated executable paths) are managed.
>
> My suggestion will still work in your case, no?

It would work in my particular case, but it also means that someone who
installed their own executable at "~/bin/php" on both the local and
remote systems, and then customised the value to "~/bin/php", would now
have a new class of problem on the remote system.

> The advantage is that it will also work in other cases, when the user
> option is customized to name a local version of the php executable.

These same issues exist with LSP server binaries for Eglot and linter
executables for Flymake; the defaults assume they are on PATH, but there
is also the possibility that someone has had to get the required binary
themselves, without installing it system-wide, and the TRAMP settings
for the connection are what allows the search to be steered to the
correct place.

I don't think it is feasible to begin a precedent that any code which
attempts to run an executable should now explicitly check whether the
system is remote and assume that it knows better than the user's
configuration.  I don't know the codebase well enough to declare that
there are no other instances of this happening, but I can show a similar
problem:

  (setq find-program "c:/ezwinports/bin/find.exe")

Having set this value, I have now broken the ability to use find on any
remote system where this path doesn't exist.  When it breaks the remote
usage I know exactly why and I know that I need to manage things
differently, taking into account the local environment and the
environment provided by the TRAMP connection.  I would not assume that
all code referencing find-program needs to start overriding its value if
default-directory is classed as being remote.

(I appreciate that "-program" may signal that this value is intended to
be the executable name rather than a complete path, but the semantics of
the problem are the same.)

That said, I do not claim to be TRAMP expert, I just use it.  A TRAMP
maintainer is probably better positioned to clarify the preferable way
to configure paths to executables so they work locally and remotely.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 16:10:02 GMT) Full text and rfc822 format available.

Message #98 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: Sat, 15 Mar 2025 18:09:10 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
> Date: Sat, 15 Mar 2025 15:03:57 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> >From my perspective as a user of mode, just setting the value to "php"
> >> introduces no additional complexity, works in more places by default
> >> than the current value, and doesn't deviate from how other modes (and
> >> associated executable paths) are managed.
> >
> > My suggestion will still work in your case, no?
> 
> It would work in my particular case, but it also means that someone who
> installed their own executable at "~/bin/php" on both the local and
> remote systems, and then customised the value to "~/bin/php", would now
> have a new class of problem on the remote system.

Customizing the variable to "~/bin/php" will only work if it is
correct for _all_ the remote systems, as you yourself pointed out.
Which is unlikely to happen.

And adding "~/bin" to PATH to fix this particular case is a
no-brainer.

So I still insist that my proposal is better than just changing the
default value to "php".

> I don't think it is feasible to begin a precedent that any code which
> attempts to run an executable should now explicitly check whether the
> system is remote and assume that it knows better than the user's
> configuration.  I don't know the codebase well enough to declare that
> there are no other instances of this happening, but I can show a similar
> problem:
> 
>   (setq find-program "c:/ezwinports/bin/find.exe")

If you do that, you are using those ports contrary to my suggestions,
which is to have a Posix-style tree with bin/, share/,
etc. subdirectories, add the bin/ subdirectory to PATH, and unzip all
the ports into the same tree.  That way, everything works seamlessly
and without problems.

> Having set this value, I have now broken the ability to use find on any
> remote system where this path doesn't exist.

The difference between Find and "php" is that the former is used by
several Emacs packages, and is a general-purpose program that should
be easily found on any system.  By contrast, "php" is used only by
this mode, and so the possibility for it to be not on PATH is higher.

But if it _is_ on PATH, then customizing the value to just "php" will
get users what they will have if we change the default to just "php".

> That said, I do not claim to be TRAMP expert, I just use it.  A TRAMP
> maintainer is probably better positioned to clarify the preferable way
> to configure paths to executables so they work locally and remotely.

Then let's stop arguing and install the change.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sat, 15 Mar 2025 16:52:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Sat, 15 Mar 2025 16:51:15 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> > My suggestion will still work in your case, no?
>> 
>> It would work in my particular case, but it also means that someone who
>> installed their own executable at "~/bin/php" on both the local and
>> remote systems, and then customised the value to "~/bin/php", would now
>> have a new class of problem on the remote system.
>
> Customizing the variable to "~/bin/php" will only work if it is
> correct for _all_ the remote systems, as you yourself pointed out.
> Which is unlikely to happen.

I am pointing out an example of user controlled paths which have been
specifically configured to match, which is not the original problem that
I was pointing out.

> And adding "~/bin" to PATH to fix this particular case is a
> no-brainer.

It is not necessarily easy to add "~/bin" to PATH for the remote
connection.

> So I still insist that my proposal is better than just changing the
> default value to "php".

> Then let's stop arguing and install the change.

I'm happy to leave the conversation at this point.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sun, 16 Mar 2025 08:35:03 GMT) Full text and rfc822 format available.

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

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Morgan Willcock <morgan <at> ice9.digital>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 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: Sun, 16 Mar 2025 09:34:09 +0100
Morgan Willcock <morgan <at> ice9.digital> writes:

Hi,

> That said, I do not claim to be TRAMP expert, I just use it.  A TRAMP
> maintainer is probably better positioned to clarify the preferable way
> to configure paths to executables so they work locally and remotely.

Tramp recommends to use (executable-find "php" 'remote) . This requires
to set a proper PATH on the remote side. Experience tells, that likely,
you will run into further problems if you haven't set the remote (and
local) PATH accordingly.

Users might apply hard-coded values, like "/exotic/path/php" or
"php". This is what connection-local variables are good for.

But a package should offer the proper way of setting.

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Sun, 16 Mar 2025 22:03:04 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>,
 Michael Albinus <michael.albinus <at> gmx.de>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Sun, 16 Mar 2025 23:01:59 +0100
Ciao Micheal, 
I wrote this function based on what you wrote in your last email and what I 
read in the TRAMP documentation:

(defun php-ts-mode--executable-find ()
  (let ((php-prog
	 (if (file-remote-p default-directory)
	     (let* ((remote-path (when (boundp 'tramp-remote-path) 
				tramp-remote-path))
		    (own-path (when (boundp 'tramp-own-remote-path) 
				tramp-own-remote-path))
		    (exec-path (delete-dups 
					(append remote-path own-path exec-path))))
	       (executable-find "php" t))
           php-ts-mode-php-executable)))
    php-prog))

Does this function make any sense?

Vincenzo

In data domenica 16 marzo 2025 09:34:09 Ora standard dell’Europa centrale, 
Michael Albinus ha scritto:
> Morgan Willcock <morgan <at> ice9.digital> writes:
> 
> Hi,
> 
> > That said, I do not claim to be TRAMP expert, I just use it.  A TRAMP
> > maintainer is probably better positioned to clarify the preferable way
> > to configure paths to executables so they work locally and remotely.
> 
> Tramp recommends to use (executable-find "php" 'remote) . This requires
> to set a proper PATH on the remote side. Experience tells, that likely,
> you will run into further problems if you haven't set the remote (and
> local) PATH accordingly.
> 
> Users might apply hard-coded values, like "/exotic/path/php" or
> "php". This is what connection-local variables are good for.
> 
> But a package should offer the proper way of setting.
> 
> Best regards, Michael.








Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Mon, 17 Mar 2025 08:07:02 GMT) Full text and rfc822 format available.

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

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org,
 Morgan Willcock <morgan <at> ice9.digital>
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Mon, 17 Mar 2025 09:06:40 +0100
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

> Ciao Micheal,

Hi Vincenzo,

> I wrote this function based on what you wrote in your last email and what I
> read in the TRAMP documentation:
>
> (defun php-ts-mode--executable-find ()
>   (let ((php-prog
> 	 (if (file-remote-p default-directory)
> 	     (let* ((remote-path (when (boundp 'tramp-remote-path)
> 				tramp-remote-path))
> 		    (own-path (when (boundp 'tramp-own-remote-path)
> 				tramp-own-remote-path))
> 		    (exec-path (delete-dups
> 					(append remote-path own-path exec-path))))
> 	       (executable-find "php" t))
>            php-ts-mode-php-executable)))
>     php-prog))
>
> Does this function make any sense?

No. Tramp doesn't use exec-path when it runs executable-find
remotely. tramp-own-remote-path is just a symbol, it doesn't carry any
value. Changes in remote path must be applied prior establishing a
remote connection. Etc pp ...

Pls call just (executable-find "php" t) in your package, this works
properly also for local default directory. Arranging for a proper
(remote) PATH is the duty of the user.

> Vincenzo

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Mon, 17 Mar 2025 09:26:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org,
 Morgan Willcock <morgan <at> ice9.digital>
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Mon, 17 Mar 2025 10:25:36 +0100
Ok, thank you Michael.

V.

In data lunedì 17 marzo 2025 09:06:40 Ora standard dell’Europa centrale, 
Michael Albinus ha scritto:
> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> > Ciao Micheal,
> 
> Hi Vincenzo,
> 
> > I wrote this function based on what you wrote in your last email and what
> > I
> > read in the TRAMP documentation:
> > 
> > (defun php-ts-mode--executable-find ()
> > 
> >   (let ((php-prog
> >   
> > 	 (if (file-remote-p default-directory)
> > 	 
> > 	     (let* ((remote-path (when (boundp 'tramp-remote-path)
> > 				
> > 				tramp-remote-path))
> > 				
> > 		    (own-path (when (boundp 'tramp-own-remote-path)
> > 				
> > 				tramp-own-remote-path))
> > 				
> > 		    (exec-path (delete-dups
> > 					
> > 					(append remote-path own-path exec-path))))
> > 					
> > 	       (executable-find "php" t))
> > 	       
> >            php-ts-mode-php-executable)))
> >     
> >     php-prog))
> > 
> > Does this function make any sense?
> 
> No. Tramp doesn't use exec-path when it runs executable-find
> remotely. tramp-own-remote-path is just a symbol, it doesn't carry any
> value. Changes in remote path must be applied prior establishing a
> remote connection. Etc pp ...
> 
> Pls call just (executable-find "php" t) in your package, this works
> properly also for local default directory. Arranging for a proper
> (remote) PATH is the duty of the user.
> 
> > Vincenzo
> 
> Best regards, Michael.







Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Mon, 17 Mar 2025 21:28:04 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Mon, 17 Mar 2025 22:27:28 +0100
[Message part 1 (text/plain, inline)]
Ciao Eli, this is the new patch. 
I did not write anything to /etc/NEWS in this patch, there is no new 30.2 
section. Do I need to create one?

In data giovedì 13 marzo 2025 17:47:42 Ora standard dell’Europa centrale, Eli 
Zaretskii ha scritto:
> > From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> > Cc: morgan <at> ice9.digital, 76955 <at> debbugs.gnu.org
> > Date: Thu, 13 Mar 2025 17:28:41 +0100
> > 
> > In data giovedì 13 marzo 2025 15:25:57 Ora standard dell’Europa centrale,
> > Eli> 
> > Zaretskii ha scritto:
> > > 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.
> Yes, good idea.  Would you like to post a patch to that effect?

[0001-PHP-should-be-in-the-PATH-either-locally-or-remotely.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Mon, 17 Mar 2025 22:31:04 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Mon, 17 Mar 2025 22:30:03 +0000
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

> Ciao Eli, this is the new patch.

Hi Vincenzo,

The php binaries which I use are installed with pkgsrc, which supports
installing multiple versions of PHP, installed as bin/php${PHP_VERSION}.
One of those versions would be available as bin/php.

If I have two remote versions installed, and one of them is found by
executable-find searching for "php", I cannot see how I would select the
other version once the patch is applied.

Shouldn't the search name "php" be configurable to allow the name to be
overridden?  Something like this:

  (executable-find php-program t)

where php-program defaults to being "php".

Thanks,
Morgan

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 18 Mar 2025 12:47:03 GMT) Full text and rfc822 format available.

Message #122 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: Tue, 18 Mar 2025 14:46:05 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: Eli Zaretskii <eliz <at> gnu.org>,  76955 <at> debbugs.gnu.org
> Date: Mon, 17 Mar 2025 22:30:03 +0000
> 
> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> 
> > Ciao Eli, this is the new patch.
> 
> Hi Vincenzo,
> 
> The php binaries which I use are installed with pkgsrc, which supports
> installing multiple versions of PHP, installed as bin/php${PHP_VERSION}.
> One of those versions would be available as bin/php.
> 
> If I have two remote versions installed, and one of them is found by
> executable-find searching for "php", I cannot see how I would select the
> other version once the patch is applied.

How do you do this with the current version of php-ts-mode?

> Shouldn't the search name "php" be configurable to allow the name to be
> overridden?  Something like this:
> 
>   (executable-find php-program t)
> 
> where php-program defaults to being "php".

It's possible to add this, but it would be a separate feature.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 18 Mar 2025 16:02:02 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Tue, 18 Mar 2025 16:00:57 +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: Mon, 17 Mar 2025 22:30:03 +0000
>> 
>> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
>> 
>> > Ciao Eli, this is the new patch.
>> 
>> Hi Vincenzo,
>> 
>> The php binaries which I use are installed with pkgsrc, which supports
>> installing multiple versions of PHP, installed as bin/php${PHP_VERSION}.
>> One of those versions would be available as bin/php.
>> 
>> If I have two remote versions installed, and one of them is found by
>> executable-find searching for "php", I cannot see how I would select the
>> other version once the patch is applied.
>
> How do you do this with the current version of php-ts-mode?

Since the value of php-ts-mode-php-executable is used locally and
remotely, I just set the buffer local value to the correct name.

  (connection-local-set-profile-variables
   'with-php84
   '((php-ts-mode-php-executable . "php84")))

  (connection-local-set-profiles
   '(:application tramp :machine "remotename")
   'with-php84)

>> Shouldn't the search name "php" be configurable to allow the name to be
>> overridden?  Something like this:
>> 
>>   (executable-find php-program t)
>> 
>> where php-program defaults to being "php".
>
> It's possible to add this, but it would be a separate feature.

The variable php-ts-mode-php-executable is effectively already providing
this feature, but the suggested change appears to remove it.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 18 Mar 2025 16:59:02 GMT) Full text and rfc822 format available.

Message #128 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: Tue, 18 Mar 2025 18:58:18 +0200
> From: Morgan Willcock <morgan <at> ice9.digital>
> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
> Date: Tue, 18 Mar 2025 16:00:57 +0000
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> If I have two remote versions installed, and one of them is found by
> >> executable-find searching for "php", I cannot see how I would select the
> >> other version once the patch is applied.
> >
> > How do you do this with the current version of php-ts-mode?
> 
> Since the value of php-ts-mode-php-executable is used locally and
> remotely, I just set the buffer local value to the correct name.

So each time you have a connection to a new host, you do this setting
anew?

> >>   (executable-find php-program t)
> >> 
> >> where php-program defaults to being "php".
> >
> > It's possible to add this, but it would be a separate feature.
> 
> The variable php-ts-mode-php-executable is effectively already providing
> this feature, but the suggested change appears to remove it.

Yes, because this feature is not really provided, not in the general
case, and we already agreed to stop arguing about it.

So let's install the latest change, and then let's add the php-program
option, which will make the support cleaner and more reliable.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 18 Mar 2025 17:41:06 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Eli Zaretskii <eliz <at> gnu.org>
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: Tue, 18 Mar 2025 17:40:13 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Morgan Willcock <morgan <at> ice9.digital>
>> Cc: v.pupillo <at> gmail.com,  76955 <at> debbugs.gnu.org
>> Date: Tue, 18 Mar 2025 16:00:57 +0000
>> 
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>> 
>> >> If I have two remote versions installed, and one of them is found by
>> >> executable-find searching for "php", I cannot see how I would select the
>> >> other version once the patch is applied.
>> >
>> > How do you do this with the current version of php-ts-mode?
>> 
>> Since the value of php-ts-mode-php-executable is used locally and
>> remotely, I just set the buffer local value to the correct name.
>
> So each time you have a connection to a new host, you do this setting
> anew?

Yes, if it is a development host and I want the setting to persist.

For this same environment, I have to configure the connection anyway to
modify the value of tramp-remote-path, because the LSP server binary
that I use is self-installed and will not be on PATH with the default
TRAMP settings.

I also use local PHP and LSP server binaries, which is why I don't just
set the global value to what works remotely.

-- 
Morgan Willcock




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Tue, 18 Mar 2025 20:26:02 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Morgan Willcock <morgan <at> ice9.digital>, Eli Zaretskii <eliz <at> gnu.org>
Cc: 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Tue, 18 Mar 2025 21:25:02 +0100
In data martedì 18 marzo 2025 13:46:05 Ora standard dell’Europa centrale, Eli 
Zaretskii ha scritto:
> > From: Morgan Willcock <morgan <at> ice9.digital>
> > Cc: Eli Zaretskii <eliz <at> gnu.org>,  76955 <at> debbugs.gnu.org
> > Date: Mon, 17 Mar 2025 22:30:03 +0000
> > 
> > Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> > > Ciao Eli, this is the new patch.
> > 
> > Hi Vincenzo,
> > 
> > The php binaries which I use are installed with pkgsrc, which supports
> > installing multiple versions of PHP, installed as bin/php${PHP_VERSION}.
> > One of those versions would be available as bin/php.
> > 
> > If I have two remote versions installed, and one of them is found by
> > executable-find searching for "php", I cannot see how I would select the
> > other version once the patch is applied.
> 
> How do you do this with the current version of php-ts-mode?
> 
> > Shouldn't the search name "php" be configurable to allow the name to be
> > 
> > overridden?  Something like this:
> >   (executable-find php-program t)
> > 
> > where php-program defaults to being "php".
> 
> It's possible to add this, but it would be a separate feature.

My proposal is this:

(defvar-local php-ts-mode-alternative-php-program-name nil
  "An alternative to the usual `php' program name.
In non-nil, `php-ts-mode--executable' try to find this executable.")

(defun php-ts-mode--executable ()
  "Return the absolute filename of the `php' executable.
If the `default-directory' is remote, search on a remote host, otherwise
return `php-ts-mode-php-default-executable'.  If
`php-ts-mode-alternative-php-program-name' is non-nil, finds this program
instead of the usual `php'."
  (let ((php-prog
         (if (file-remote-p default-directory)
             (executable-find
              (or php-ts-mode-alternative-php-program-name "php") t)
           (if php-ts-mode-alternative-php-program-name
               (executable-find
                php-ts-mode-alternative-php-program-name)
             php-ts-mode-php-default-executable))))
    php-prog))

WDYT?

Vincenzo








Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 19 Mar 2025 12:19:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>,
 Michael Albinus <michael.albinus <at> gmx.de>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Wed, 19 Mar 2025 14:17:55 +0200
> From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> Cc: 76955 <at> debbugs.gnu.org
> Date: Tue, 18 Mar 2025 21:25:02 +0100
> 
> (defvar-local php-ts-mode-alternative-php-program-name nil
>   "An alternative to the usual `php' program name.
> In non-nil, `php-ts-mode--executable' try to find this executable.")
> 
> (defun php-ts-mode--executable ()
>   "Return the absolute filename of the `php' executable.
> If the `default-directory' is remote, search on a remote host, otherwise
> return `php-ts-mode-php-default-executable'.  If
> `php-ts-mode-alternative-php-program-name' is non-nil, finds this program
> instead of the usual `php'."
>   (let ((php-prog
>          (if (file-remote-p default-directory)
>              (executable-find
>               (or php-ts-mode-alternative-php-program-name "php") t)
>            (if php-ts-mode-alternative-php-program-name
>                (executable-find
>                 php-ts-mode-alternative-php-program-name)
>              php-ts-mode-php-default-executable))))
>     php-prog))
> 
> WDYT?

I think this is okay, but let's also ask Michael (CC'ed).

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 19 Mar 2025 13:15:01 GMT) Full text and rfc822 format available.

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

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Vincenzo Pupillo <v.pupillo <at> gmail.com>, 76955 <at> debbugs.gnu.org,
 morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Wed, 19 Mar 2025 14:14:30 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

Hi,

>>   (let ((php-prog
>>          (if (file-remote-p default-directory)
>>              (executable-find
>>               (or php-ts-mode-alternative-php-program-name "php") t)
>>            (if php-ts-mode-alternative-php-program-name
>>                (executable-find
>>                 php-ts-mode-alternative-php-program-name)
>>              php-ts-mode-php-default-executable))))
>>     php-prog))
>>
>> WDYT?
>
> I think this is okay, but let's also ask Michael (CC'ed).

The following should suffice:

--8<---------------cut here---------------start------------->8---
(or (executable-find
      (or php-ts-mode-alternative-php-program-name "php") t)
    php-ts-mode-php-default-executable)
--8<---------------cut here---------------end--------------->8---

executable-find works also on local default-directory with non-nil
REMOTE. And you don't need the let-clause.

> Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 19 Mar 2025 17:15:01 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>, Michael Albinus <michael.albinus <at> gmx.de>
Cc: 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Wed, 19 Mar 2025 18:14:23 +0100
[Message part 1 (text/plain, inline)]
Ciao Micheal, thank you. 
The new version of the patch is attached.

Thanks.

Vincenzo


In data mercoledì 19 marzo 2025 14:14:30 Ora standard dell’Europa centrale, 
Michael Albinus ha scritto:
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> Hi,
> 
> >>   (let ((php-prog
> >>   
> >>          (if (file-remote-p default-directory)
> >>          
> >>              (executable-find
> >>              
> >>               (or php-ts-mode-alternative-php-program-name "php") t)
> >>            
> >>            (if php-ts-mode-alternative-php-program-name
> >>            
> >>                (executable-find
> >>                
> >>                 php-ts-mode-alternative-php-program-name)
> >>              
> >>              php-ts-mode-php-default-executable))))
> >>     
> >>     php-prog))
> >> 
> >> WDYT?
> > 
> > I think this is okay, but let's also ask Michael (CC'ed).
> 
> The following should suffice:
> 
> --8<---------------cut here---------------start------------->8---
> (or (executable-find
>       (or php-ts-mode-alternative-php-program-name "php") t)
>     php-ts-mode-php-default-executable)
> --8<---------------cut here---------------end--------------->8---
> 
> executable-find works also on local default-directory with non-nil
> REMOTE. And you don't need the let-clause.
> 
> > Thanks.

[0001-PHP-should-be-in-the-PATH-either-locally-or-remotely.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 19 Mar 2025 17:31:02 GMT) Full text and rfc822 format available.

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

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Wed, 19 Mar 2025 18:30:23 +0100
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

> Ciao Micheal, thank you.

Hi Vincenzo,

> The new version of the patch is attached.

I guess the docstring of php-ts-mode--executable must be adapted to the
recent affair.

> Thanks.
>
> Vincenzo

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Wed, 19 Mar 2025 18:26:01 GMT) Full text and rfc822 format available.

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

From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 76955 <at> debbugs.gnu.org, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Wed, 19 Mar 2025 19:25:18 +0100
[Message part 1 (text/plain, inline)]
In data mercoledì 19 marzo 2025 18:30:23 Ora standard dell’Europa centrale, 
Michael Albinus ha scritto:
> Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> > Ciao Micheal, thank you.
> 
> Hi Vincenzo,
> 
> > The new version of the patch is attached.
> 
> I guess the docstring of php-ts-mode--executable must be adapted to the
> recent affair.

Done

> 
> > Thanks.
> > 
> > Vincenzo
> 
> Best regards, Michael.

Thanks!

Vincenzo
[0001-PHP-should-be-in-the-PATH-either-locally-or-remotely.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76955; Package emacs. (Fri, 21 Mar 2025 16:32:03 GMT) Full text and rfc822 format available.

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

From: Morgan Willcock <morgan <at> ice9.digital>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, Michael Albinus <michael.albinus <at> gmx.de>,
 76955 <at> debbugs.gnu.org
Subject: Re: bug#76955: 30.1; php-ts-mode-php-executable default path may
 not match remote path
Date: Fri, 21 Mar 2025 16:31:03 +0000
Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:

>> > The new version of the patch is attached.
>>
>> I guess the docstring of php-ts-mode--executable must be adapted to the
>> recent affair.

I guess that the intention is described in the title of the patch ("PHP
should be in the PATH, either locally or remotely"), but the current
setup with php-ts-mode-php-executable allows an explicit path to be set
which is not on PATH, and it can be set both locally and remotely.

I just want to check that removing this feature is completely
intentional, since someone may be using it.

Thanks,
Morgan

-- 
Morgan Willcock




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Sat, 29 Mar 2025 11:35:02 GMT) Full text and rfc822 format available.

Notification sent to Morgan Willcock <morgan <at> ice9.digital>:
bug acknowledged by developer. (Sat, 29 Mar 2025 11:35:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Vincenzo Pupillo <v.pupillo <at> gmail.com>
Cc: 76955-done <at> debbugs.gnu.org, michael.albinus <at> gmx.de, morgan <at> ice9.digital
Subject: Re: bug#76955: 30.1;
 php-ts-mode-php-executable default path may not match remote path
Date: Sat, 29 Mar 2025 14:33:51 +0300
> From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, morgan <at> ice9.digital, 76955 <at> debbugs.gnu.org
> Date: Wed, 19 Mar 2025 19:25:18 +0100
> 
> In data mercoledì 19 marzo 2025 18:30:23 Ora standard dell’Europa centrale, 
> Michael Albinus ha scritto:
> > Vincenzo Pupillo <v.pupillo <at> gmail.com> writes:
> > > Ciao Micheal, thank you.
> > 
> > Hi Vincenzo,
> > 
> > > The new version of the patch is attached.
> > 
> > I guess the docstring of php-ts-mode--executable must be adapted to the
> > recent affair.
> 
> Done
> 
> > 
> > > Thanks.
> > > 
> > > Vincenzo
> > 
> > Best regards, Michael.
> 
> Thanks!

Thanks, now installed on the emacs-30 branch, and closing the bug.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 27 Apr 2025 11:24:14 GMT) Full text and rfc822 format available.

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.