Subject: 28.0.50; tramp is hooked into C-x d (vc-dir) but not C-x = (vc-doff)

From: Steingold <[email-masked]>
Date: Mon, 23 Aug 2021 18:09:14 -0400

when editing a remote file, vc-dir shows the *vc-dir* buffer correctly,
but vc-diff in the same buffer fails:

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (error "Failed (status 128): git --no-pager diff-index --exit-code -p HEAD  -- :(literal)/scp:remote:/path/file.py")
  signal(error ("Failed (status 128): git --no-pager diff-index --exit-code -p HEAD  -- :(literal)/scp:remote:/path/file.py"))
  error("Failed (%s): %s" "status 128" "git --no-pager diff-index --exit-code -p HEAD  -- :(literal)/scp:remote:/path/file.py")
  vc-do-command("*vc-diff*" 1 "git" (":(literal)/scp:remote:/path/file.py") "--no-pager" "diff-index" "--exit-code" "-p" "HEAD" nil "--")
  apply(vc-do-command "*vc-diff*" 1 "git" (":(literal)/scp:remote:/path/file.py") ("--no-pager" "diff-index" "--exit-code" "-p" "HEAD" nil "--"))
  vc-git-command("*vc-diff*" 1 (":(literal)/scp:remote:/path/file.py") "diff-index" "--exit-code" "-p" "HEAD" nil "--")
  apply(vc-git-command "*vc-diff*" 1 (":(literal)/scp:remote:/path/file.py") "diff-index" "--exit-code" ("-p" "HEAD" nil "--"))
  vc-git-diff(("/scp:remote:/path/file.py") nil nil "*vc-diff*" t)
  apply(vc-git-diff (("/scp:remote:/path/file.py") nil nil "*vc-diff*" t))
  vc-call-backend(Git diff ("/scp:remote:/path/file.py") nil nil "*vc-diff*" t)
  vc-diff-internal(t (Git ("/scp:remote:/path/file.py")) nil nil t)
  vc-diff(nil t)
  funcall-interactively(vc-diff nil t)
  call-interactively(vc-diff nil nil)
  command-execute(vc-diff)
--8<---------------cut here---------------end--------------->8---

Same error on = (vc-diff) in the *vc-dir* buffer.

I am pretty sure this is a regression from about 2-3 weeks ago.

(vc-next-action also fails)

In GNU Emacs 28.0.50 (build 5, x86_64-apple-darwin19.6.0, NS appkit-1894.60 Version 10.15.7 (Build 19H1323))
 of 2021-08-23 built on 3c22fb11fdab.ant.amazon.com
Repository revision: 00edc8329a6277f2e5b5204efbe503e2b7957006
Repository branch: master
Windowing system distributor 'Apple', version 10.3.1894
System Description:  Mac OS X 10.15.7

Configured using:
 'configure --with-imagemagick --with-mailutils --with-ns
 PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/imagemagick/lib/pkgconfig:/usr/local/opt/gnutls/lib/pkgconfig:/usr/local/opt/jansson/lib/pkgconfig:/usr/local/opt/libtiff/lib/pkgconfig:/usr/local/opt/libpng/lib/pkgconfig:/usr/local/opt/libjpeg/lib/pkgconfig:/usr/local/opt/freetype/lib/pkgconfig'

Configured features:
ACL GMP GNUTLS IMAGEMAGICK JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY KQUEUE
NS PDUMPER PNG THREADS TIFF TOOLKIT_SCROLL_BARS ZLIB

Important settings:
  value of $LC_MESSAGES: C
  value of $LANG: C
  locale-coding-system: utf-8-unix

Major mode: Org

Minor modes in effect:
  pyvenv-mode: t
  shell-dirtrack-mode: t
  flyspell-mode: t
  global-edit-server-edit-mode: t
  winner-mode: t
  which-function-mode: t
  url-handler-mode: t
  show-paren-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-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
  column-number-mode: t
  line-number-mode: t
  auto-fill-function: org-auto-fill-function
  abbrev-mode: t

Load-path shadows:
None found.

Features:
(shadow sort bbdb-message mailalias cookie1 mail-extr gnus-msg emacsbug
sendmail vc-mtn vc-src vc-sccs vc-svn vc-cvs vc-rcs vc-dir ewoc cl-print
debug backtrace dabbrev skeleton misearch multi-isearch rx color
autoload lisp-mnt mm-archive gnutls network-stream url-http url-gw nsm
url-cache url-auth finder-inf package add-log vc-hg vc-bzr tramp-cache
remember vc cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs bug-reference conf-mode
company-oddmuse company-keywords company-etags company-gtags
company-dabbrev-code company-dabbrev company-files company-clang
company-template company-cmake company-bbdb yasnippet-snippets yasnippet
flymake-proc flymake company-capf company pcase help-fns radix-tree elpy
edmacro kmacro elpy-rpc pyvenv eshell esh-cmd esh-ext esh-opt esh-proc
esh-io esh-arg esh-module esh-groups esh-util elpy-shell elpy-profile
elpy-django s elpy-refactor ido grep compile etags fileloop xref project
cus-edit pp cus-start python tramp-sh tramp tramp-loaddefs trampver
tramp-integration files-x tramp-compat shell ls-lisp flyspell ispell
org-element avl-tree generator ol-eww eww xdg url-queue thingatpt mm-url
ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-search eieio-opt
cl-extra help-mode speedbar ezimage dframe gnus-art mm-uu mml2015
mm-view mml-smime smime dig gnus-sum shr kinsoku svg dom browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util mailcap gnus-group gnus-undo gnus-start gnus-dbus
dbus xml gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time
gnus-spec gnus-int gnus-range message rmc puny rfc822 mml mml-sec epa
derived epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
gmm-utils mailheader gnus-win ol-docview doc-view jka-compr image-mode
exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint
org-pcomplete pcomplete comint ansi-color org-list org-faces
org-entities noutline outline org-version ob-emacs-lisp ob-core ob-eval
org-table ol org-keys org-compat org-macs org-loaddefs format-spec
find-func cal-x view cal-china cal-bahai cal-islam holidays hol-loaddefs
bbdb-anniv cal-iso cal-hebrew lunar cal-julian solar cal-dst vc-git
diff-mode easy-mmode vc-dispatcher appt diary-lib diary-loaddefs
cal-menu calendar cal-loaddefs dired-aux dired dired-loaddefs midnight
warnings gnus nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045
ietf-drums text-property-search time-date mail-utils mm-util mail-prsvr
wid-edit bbdb-mua bbdb-com crm mailabbrev bbdb bbdb-site timezone
edit-server advice server winner ring which-func imenu url-handlers
url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache json subr-x map seq byte-opt gv bytecomp byte-compile
cconv url-vars paren help-at-pt desktop frameset cl-loaddefs cl-lib
cus-load info iso-transl tooltip eldoc electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize
mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-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 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 composite charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button
loaddefs faces cus-face macroexp files window text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads kqueue cocoa ns lcms2
multi-tty make-network-process emacs)

Memory information:
((conses 16 1730297 264010)
 (symbols 48 39892 1)
 (strings 32 397217 56034)
 (string-bytes 1 11710856)
 (vectors 16 113387)
 (vector-slots 8 1439079 162214)
 (floats 8 943 538)
 (intervals 56 172493 3877)
 (buffers 992 62))

-- 
Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1894
http://childpsy.net http://calmchildstories.com http://steingoldpsychology.com
https://jij.org https://jihadwatch.org http://think-israel.org
If you do not move, you will not feel the shackles.