Subject: 27.0.50; Tramp explicte-shell-file-name not work and not safe local variable
From: Shuguang Sun <[email-masked]>
To: [email-masked]
Date: Fri, 22 Mar 2019 14:17:25 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

The recent change to Tramp for shell/explict shell has break the remote shell again. For example:
- Tramp to a host
- in a remote diretory, M-x shell
  it raise the error message: env path/to/cmdproxy.exe can't be found 
  which looks tramp shell invoke the local shell, instead the remote shell
  
I have the settings:
```
  (connection-local-set-profile-variables
   'remote-bash
   '((explicit-shell-file-name . "/bin/bash")
     (explicit-bash-args . ("-i"))
     ))

  (connection-local-set-profiles
   '(:application tramp :protocol "plink" :user "user" :machine "host.com")
   'remote-bash)
```
In the previous version of tramp (about Feb), it will invoke the explicit-shell-file-name, instead of local cmdproxy.

Another issue, the emacs treat explicit-shell-file-name and explicit-bash-args as non-safe local variables and ask how to deal it (Y/N/! ...).
In the previous version of tramp (about Feb), it takes these two variables as safe which I think is reasonable because user sets it in tramp-way explicitely and it is only used in tramp only.

In GNU Emacs 27.0.50 (build 3, x86_64-w64-mingw32)
 of 2019-03-21 built on RSHMX11052
Repository revision: c569cceb2d334564d320d2b4098c855db7eb88a0
Repository branch: master
Windowing system distributor 'Microsoft Corp.', version 10.0.15063
System Description: Microsoft Windows 10 Enterprise (v10.0.1703.15063.1631)

Recent messages:
Wrote c:/Users/user/HOME/.emacs [2 times]
Tramp: Opening connection for [email-masked] using plink...done
Opening directory /plink:[email-masked]:/opt/bee/home_NEW/user/...done
Tramp: Opening connection for [email-masked] using plink...
Tramp: Sending command `plink -l user  -ssh -t host.com " env 'TERM=dumb' 'PROMPT_COMMAND=' 'PS1=#$ ' /bin/sh " && exit || exit'
Tramp: Waiting for prompts from remote shell...
Tramp: Sending password
Tramp: Waiting for prompts from remote shell...done
Tramp: Found remote shell prompt on `host.com'
Tramp: Opening connection for [email-masked] using plink...done

Configured using:
 'configure --without-imagemagick --without-pop
 '--program-transform-name=s/^ctags$/ctags.emacs/''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY W32NOTIFY ACL GNUTLS LIBXML2
ZLIB TOOLKIT_SCROLL_BARS THREADS JSON PDUMPER LCMS2 GMP

Important settings:
  value of $LANG: CHS
  locale-coding-system: cp936