all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "João Távora" <joaotavora@gmail.com>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: jeberger@free.fr, 61748@debbugs.gnu.org
Subject: bug#61748: 27.2; Eglot should use shell-file-name when launching the language server for a remote file
Date: Tue, 28 Feb 2023 16:28:11 +0000	[thread overview]
Message-ID: <CALDnm50G=cvqaPwxfmFOxC10d6BZ5hd+-HU5wFapqYgtJd+3cA@mail.gmail.com> (raw)
In-Reply-To: <87356p6b7g.fsf@gmx.de>

On Tue, Feb 28, 2023 at 3:50 PM Michael Albinus <michael.albinus@gmx.de> wrote:
>
> João Távora <joaotavora@gmail.com> writes:
>
> Hi João,
>
> >> I don't expect a user to solve it. And a user shouldn't expect that
> >> changing a variable is sufficient.
> >
> > I respectfully but diametrically disagree here.
> >
> > Here's an untested patch that could solve this.  It can probably
> > be made smarter by only invalidating the cache when a change
> > to the variable is detected.
>
> Hmm. It will delay startup of remote processes, if tramp-remote-path
> doesn't change for different processes. Perhaps it is negligable, but at
> least for slow connections people will be hit by this.
>
> I'll play with it. Perhaps there is a smarter version of it, as you say.

Here's another still untested but smarter patch.  Caches fully
on until user messes with tramp-remote-path, else immediately
flushed.

diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index 56436d32970..335d718b139 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -2316,10 +2316,7 @@ Remote programs
 @end lisp

 When remote search paths are changed, local @value{tramp} caches must
-be recomputed.  To force @value{tramp} to recompute afresh, call
-@kbd{M-x tramp-cleanup-this-connection @key{RET}} or friends
-(@pxref{Cleanup remote connections}).
-
+be recomputed, but not by the user, so don't worry about this.

 @node Remote shell setup
 @section Remote shell setup hints
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index ec8437176db..ef618855584 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -5571,10 +5571,18 @@ tramp-check-remote-uname
   "Check whether REGEXP matches the connection property \"uname\"."
   (string-match-p regexp (tramp-get-connection-property vec "uname" "")))

+(defvar tramp-last-used-remote-path nil)
+
 (defun tramp-get-remote-path (vec)
   "Compile list of remote directories for PATH.
 Nonexistent directories are removed from spec."
   (with-current-buffer (tramp-get-connection-buffer vec)
+    (when (not (equal tramp-last-used-remote-path tramp-remote-path))
+      ;; If user has tweaked `tramp-remote-path', flush any caches
+      ;; bug#61748.
+      (dolist (v (list vec (tramp-get-process vec)))
+        (tramp-flush-connection-property v "remote-path")))
+      (setq tramp-last-used-remote-path tramp-remote-path))
     ;; Expand connection-local variables.
     (tramp-set-connection-local-variables vec)
     (with-tramp-connection-property





  reply	other threads:[~2023-02-28 16:28 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1909672588.15608265.1677223717877.JavaMail.root@zimbra60-e10.priv.proxad.net>
2023-02-24  7:39 ` bug#61748: 27.2; Eglot should use shell-file-name when launching the language server for a remote file jeberger
2023-02-24  8:15   ` Eli Zaretskii
2023-02-24 11:11     ` jeberger
2023-02-24 16:44       ` Michael Albinus
2023-02-27 11:07   ` João Távora
2023-02-27 12:05     ` João Távora
2023-02-27 17:59       ` bug#61748: [informatique] " Jérôme M. Berger
2023-02-27 23:41         ` João Távora
2023-02-28  9:50           ` jeberger
2023-02-28 10:14             ` Michael Albinus
2023-02-28 10:28               ` João Távora
2023-02-27 19:57       ` Michael Albinus
2023-02-27 20:07         ` João Távora
2023-02-27 20:13           ` Michael Albinus
2023-02-28  0:00             ` João Távora
2023-02-28  8:41               ` Michael Albinus
2023-02-28 12:18                 ` João Távora
2023-02-28 12:34                   ` Michael Albinus
2023-02-28 12:46                     ` João Távora
2023-02-28 13:05                       ` Michael Albinus
2023-02-28 13:47                         ` João Távora
2023-02-28 14:10                           ` Michael Albinus
2023-02-28 14:24                             ` João Távora
2023-02-28 14:45                               ` Michael Albinus
2023-02-28 15:13                                 ` João Távora
2023-02-28 15:44                                   ` Michael Albinus
2023-02-28 16:43                               ` Eli Zaretskii
2023-02-28 16:49                                 ` João Távora
2023-02-28 17:56                                   ` Eli Zaretskii
2023-03-01  4:34                                     ` Richard Stallman
2023-03-01  9:31                                       ` João Távora
2023-03-01 13:04                                         ` Eli Zaretskii
2023-03-01 13:05                                           ` João Távora
2023-02-28 13:59                   ` jeberger
2023-02-28 14:25                     ` João Távora
2023-02-28 14:49                       ` Michael Albinus
2023-02-28 14:53                         ` João Távora
2023-02-28 15:15                           ` Michael Albinus
2023-02-28 15:23                             ` João Távora
2023-02-28 15:50                               ` Michael Albinus
2023-02-28 16:28                                 ` João Távora [this message]
2023-03-02  9:14                                   ` Michael Albinus
2023-03-02 10:56                                     ` João Távora
2023-03-02 11:40                                       ` Michael Albinus
2023-03-03  0:24                                         ` João Távora
2023-02-28 14:49                       ` jeberger
2023-02-28 15:07                         ` João Távora
2023-02-28 15:12                         ` Michael Albinus
2023-02-28 16:16                           ` jeberger
2023-02-28 16:41                             ` jeberger
2023-02-28 17:09                               ` João Távora
2023-03-01  8:09                                 ` jeberger
2023-03-02 13:28                                   ` João Távora
2023-03-07 10:15                                     ` João Távora
2023-03-01  8:39                               ` Michael Albinus
2023-03-01  8:51                                 ` jeberger
2023-03-01  9:07                                   ` Michael Albinus
2023-03-01 10:01                                     ` jeberger
2023-03-01 10:11                                       ` Michael Albinus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CALDnm50G=cvqaPwxfmFOxC10d6BZ5hd+-HU5wFapqYgtJd+3cA@mail.gmail.com' \
    --to=joaotavora@gmail.com \
    --cc=61748@debbugs.gnu.org \
    --cc=jeberger@free.fr \
    --cc=michael.albinus@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.