Subject: bug#70901: 30.0.50; Tramp doesn't use ControlMaster even with (setq tramp-use-connection-share nil)

From: Michael Albinus <[email-masked]>
Date: Sat, 18 May 2024 13:19:34 +0200

Dmitry Gutov <[email-masked]> writes:

> Hi Michael,

Hi Dmitry,

> Perhaps it'd make sense to adjust the logging so that the first
> "...done" is printed right after the connection is established.

That is already the case. Tramp uses a (slightly modified version) of
the progress reporter. You'll see two invocations of it, "Opening
connection ..." and "Waiting for prompts ...". They are cascaded. When
the second, inner progress reporter finishes, ssh has returned the prompt.

--8<---------------cut here---------------start------------->8---
13:01:30.750374 tramp-maybe-open-connection (3) # Opening connection nil for gandalf using ssh...
13:01:30.794366 tramp-send-command (6) # exec ssh -o ControlMaster=auto -o ControlPath=/home/albinus/.cache/emacs/tramp.%C -o ControlPersist=no -e none gandalf || exit
13:01:30.794769 tramp-process-actions (3) # Waiting for prompts from remote shell...
13:01:32.633372 tramp-process-actions (6) #
Last login: Sat May 18 13:01:31 2024 from 2002:6443:eb5:0:f832:242f:9e14:df3d
[albinus@gandalf ~]$
13:01:32.633453 tramp-process-actions (3) # Waiting for prompts from remote shell...done
13:01:35.830072 tramp-maybe-open-connection (3) # Opening connection nil for gandalf using ssh...done
--8<---------------cut here---------------end--------------->8---

One modification of Tramp is, that in case of cascaded progress reportes
only the outer one is visible in the echo area.

Best regards, Michael.