Subject: bug#29723: 25.3; `compile' doesn't honor `tramp-methods', always uses "/bin/sh"

From: "Matz, Daniel A. (JSC-EG511)" <[email-masked]>
Date: Fri, 15 Dec 2017 19:56:37 +0000

Hello,

Starting with emacs -Q, execute the following:

--8<---------------cut here---------------start------------->8---
(require 'tramp)
(let ((scpx-method (cdr (assoc "scpx" tramp-methods))))
  (add-to-list 'scpx-method '(tramp-remote-shell "/bin/bash"))
  (add-to-list 'tramp-methods (cons "scpx" scpx-method)))
--8<---------------cut here---------------end--------------->8---

Then use the "scpx" connection type to find a file on a remote host.  Then, use `shell-command' to run "echo $_".  I get an output of "/bin/bash".  Then, run the same command with `compile'.  I get an output of "/bin/sh".  I was expecting to again get "/bin/bash".

Thank you!

Daniel

In GNU Emacs 25.3.1 (x86_64-apple-darwin15.6.0, NS appkit-1404.47 Version 10.11.6 (Build 15G1611))
of 2017-09-13 built on JSSLA17030925
Windowing system distributor 'Apple', version 10.3.1404
Configured using:
'configure --disable-dependency-tracking --disable-silent-rules
--enable-locallisppath=/usr/local/share/emacs/site-lisp
--infodir=/usr/local/Cellar/emacs/25.3/share/info/emacs
--prefix=/usr/local/Cellar/emacs/25.3 --without-x --with-xml2
--without-dbus --without-gnutls --with-imagemagick --with-ns
--disable-ns-self-contained'

Configured features:
JPEG IMAGEMAGICK NOTIFY ACL LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS

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

Major mode: Dired by name

Minor modes in effect:
  shell-dirtrack-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Tramp: Found remote shell prompt on ‘blade11-fsl’
Tramp: Opening connection for blade11-fsl using scpx...done
ls does not support --dired; see ‘dired-use-ls-dired’ for more details.
/bin/bash
Tramp: Opening connection for blade11-fsl using scpx...
Tramp: Sending command ‘exec ssh -q   -o ControlMaster=auto -o ControlPath='tramp.%C' -o ControlPersist=no -e none -t -t blade11-fsl /bin/sh’
Tramp: Waiting for prompts from remote shell...done
Tramp: Found remote shell prompt on ‘blade11-fsl’
Tramp: Opening connection for blade11-fsl using scpx...done
Compilation finished

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rfc822 mml mml-sec epg
epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mail-utils
compile dired tramp-cache tramp-sh tramp tramp-compat auth-source cl-seq
eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core cl-macs
gv gnus-util mm-util help-fns help-mode easymenu cl-loaddefs pcase
cl-lib mail-prsvr password-cache tramp-loaddefs trampver shell pcomplete
comint ansi-color ring format-spec advice time-date mule-util tooltip
eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel
ns-win ucs-normalize term/common-win tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cl-generic 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 charscript case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote kqueue cocoa ns multi-tty
make-network-process emacs)

Memory information:
((conses 16 219866 11318)
(symbols 48 22367 0)
(miscs 40 65 321)
(strings 32 24665 6831)
(string-bytes 1 805327)
(vectors 16 37025)
(vector-slots 8 697142 5701)
(floats 8 228 204)
(intervals 56 503 0)
(buffers 976 21))