X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: joe@HIDDEN, bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 25 Jul 2025 13:25:02 +0000
Resent-Message-ID: <handler.79094.B.175344987217589 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: 79094 <at> debbugs.gnu.org
Cc: "Joe Sadusk" <joe@HIDDEN>
X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN
X-Debbugs-Original-Xcc: "Joe Sadusk" <joe@HIDDEN>
Received: via spool by submit <at> debbugs.gnu.org id=B.175344987217589
(code B ref -1); Fri, 25 Jul 2025 13:25:02 +0000
Received: (at submit) by debbugs.gnu.org; 25 Jul 2025 13:24:32 +0000
Received: from localhost ([127.0.0.1]:33783 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ufIPX-0004Zb-FM
for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:32 -0400
Received: from lists.gnu.org ([2001:470:142::17]:32976)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ufIPS-0004Z1-45
for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:29 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>)
id 1ufIPA-0005Od-8h
for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:15 -0400
Received: from mout.gmx.net ([212.227.17.20])
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>)
id 1ufIP2-0006fU-ES
for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:07 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1753449837; x=1754054637; i=michael.albinus@HIDDEN;
bh=dsf/4XtdmLY6KibbRQ1JYO3J7rpZIdZD1+q/lPJrXJM=;
h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:MIME-Version:
Content-Type:cc:content-transfer-encoding:content-type:date:from:
message-id:mime-version:reply-to:subject:to;
b=ch5sKnZC9xw2CxA7DNtqBfvLUXDGlr2c/zSOjFa56JeRZKvRs5ZdOhQTwnC5DO+e
zEhAyzGzrwHKXv1bS4BEqNnhxhKEQ8VFoCjSSiz8R9JF5btwIKgAF9z+uoYIRgKcw
wE/bhU31zhwe0E0VbdRdvdgq0CtCo3NkuMdIRW32vdKIWTT02+8aM106g8QUjyEWQ
ImUj5GyfaTuWmhFiG4R6hbsWNTsrEfKQyRf08nywM9Itx/or1VSTxOq0VSbxzHhqP
N/vh+RMbAx/D8YE+UHYE8pbZpeNPmppq54pqg8gGtEKYOAyqx6nxjBhlxFH/QQuik
zFB8CQ2z+dnnK0ToJg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1N4hvb-1uWjYw0fTz-016nMg for
<bug-gnu-emacs@HIDDEN>; Fri, 25 Jul 2025 15:23:57 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
Date: Fri, 25 Jul 2025 15:23:56 +0200
Message-ID: <87ikjgo13n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:SlmEpleUbuVm4Yq8/9+RgVDuX8wxwT83QbtJhffPXjI+JmYjPu5
9vuG8rz1rb6+Pyaa8XP+L/USpObbtTbTx8rljqN9FzEzraz3XZu20PF/FI2OdARSwsSIStU
U0IZ5EpdPQroJCH8bouTTHmzg4EFNB8MSmWLC8SdZ10qa4bgU5qeh0pYEB9lYskXNaKhVL/
RuTMPrbpJLv1R+mvRUlVA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:2s40iBuh1AM=;Xp488pBfbJ2LY34+UEWwUlShryb
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
Received-SPF: pass client-ip=212.227.17.20;
envelope-from=michael.albinus@HIDDEN; helo=mout.gmx.net
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001,
RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001,
SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
--=-=-=
Content-Type: text/plain
-------------------- Start of forwarded message --------------------
From: "Joe Sadusk" <joe@HIDDEN>
Subject: Optimizations for round trips in tramp
Date: Wed, 23 Jul 2025 17:30:53 +0000
To: emacs-devel@HIDDEN
--=-=-=
Content-Type: multipart/alternative; boundary="==-=-="
--==-=-=
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Hi, long time emacs user, first time contributor. I maintain an emacs confi=
g for my company's dev environment, which is primarily using remote worksta=
tions, so the config makes heavy use of tramp. I did some digging to find t=
he source of some pauses and delays that happen during navigation and file =
open, particularly when remote dir-locals are enabled. And I found that a m=
ajor piece of these pauses comes from calls to locate-dominating-file. This=
function doesn't have a tramp specific implementation, and so it loops in =
lisp, making many small tramp calls for things like expand-file-name, file-=
exists-p, file-directory-p, each of which issue a tramp-send-command and in=
cur a round-trip to the server.
My remote workstation connection has somewhat bad latency, each tramp round=
trip appears to take around 0.15s. Clocking a call to do (locate-dominating=
-file "/some/file/deep/in/a/repo" ".git") took over 2 seconds. This gets ev=
en worse when locate-dominating-file is used by dir-locals-find-file, becau=
se it uses the predicate form of locate-dominating-file, and the predicate =
does multiple tramp round trips itself. (dir-locals-find-file=C2=A0"/some/f=
ile/deep/in/a/repo") took over 3 seconds. This kind of a delay pops up when=
opening a file, reverting, traversing directories, making the dev experien=
ce much less fluid.
So I did an experiment to see if I could implement these operations to use =
a single tramp round-trip, or as few as possible. The result is here:
https://github.com/jsadusk/tramp-hlo
The result is a huge improvement. dir-locals-find-file went from 3+ seconds=
to 0.18 seconds, with only 1 or 2 tramp-send-commands. This also hugely sp=
eeds up vc-mode, which many people turn off for tramp to optmize speed. Min=
d you, this is on my workstation, which is a fairly stock Ubuntu 22.04 mach=
ine. I haven't tested this on the myriad of environments tramp has to work =
with. I'm sure there are edge cases I'm missing. But its working great for =
me, so I'm treating this as a proof of concept. I also wrote this as an adv=
ice function rather than a tramp handler, so I could turn it on and off eas=
ily. A real version of this would be vetted across many environments and be=
properly integrated with tramp-sh.el.=C2=A0
So I wanted to see what people think about this approach and if its worth t=
urning into a real patch for tramp? And if there's any advice on making it =
more comprehensive? Also, I'm searching out other higher level operations t=
hat could be made into server side tramp scripts, if anyone knows of some g=
ood targets.
So please, comment, critique, tell me I'm doing it wrong, or give me the go=
ahead and I'll be happy to make a patch.=C2=A0
Joe Sadusk
--==-=-=
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"tex=
t/html; charset=3Dutf-8"></head><body><div>Hi, long time emacs user, first =
time contributor. I maintain an emacs config for my company's dev environme=
nt, which is primarily using remote workstations, so the config makes heavy=
use of tramp. I did some digging to find the source of some pauses and del=
ays that happen during navigation and file open, particularly when remote d=
ir-locals are enabled. And I found that a major piece of these pauses comes=
from calls to locate-dominating-file. This function doesn't have a tramp s=
pecific implementation, and so it loops in lisp, making many small tramp ca=
lls for things like expand-file-name, file-exists-p, file-directory-p, each=
of which issue a tramp-send-command and incur a round-trip to the server.<=
/div><div><br></div><div>My remote workstation connection has somewhat bad =
latency, each tramp roundtrip appears to take around 0.15s. Clocking a call=
to do (locate-dominating-file "/some/file/deep/in/a/repo" ".git") took ove=
r 2 seconds. This gets even worse when locate-dominating-file is used by di=
r-locals-find-file, because it uses the predicate form of locate-dominating=
-file, and the predicate does multiple tramp round trips itself. (dir-local=
s-find-file=C2=A0"/some/file/deep/in/a/repo") took over 3 seconds. This kin=
d of a delay pops up when opening a file, reverting, traversing directories=
, making the dev experience much less fluid.</div><div><br></div><div>So I =
did an experiment to see if I could implement these operations to use a sin=
gle tramp round-trip, or as few as possible. The result is here:</div><div>=
<a href=3D"https://github.com/jsadusk/tramp-hlo">https://github.com/jsadusk=
/tramp-hlo</a></div><div><br></div><div>The result is a huge improvement. d=
ir-locals-find-file went from 3+ seconds to 0.18 seconds, with only 1 or 2 =
tramp-send-commands. This also hugely speeds up vc-mode, which many people =
turn off for tramp to optmize speed. Mind you, this is on my workstation, w=
hich is a fairly stock Ubuntu 22.04 machine. I haven't tested this on the m=
yriad of environments tramp has to work with. I'm sure there are edge cases=
I'm missing. But its working great for me, so I'm treating this as a proof=
of concept. I also wrote this as an advice function rather than a tramp ha=
ndler, so I could turn it on and off easily. A real version of this would b=
e vetted across many environments and be properly integrated with tramp-sh.=
el.=C2=A0</div><div><br></div><div>So I wanted to see what people think abo=
ut this approach and if its worth turning into a real patch for tramp? And =
if there's any advice on making it more comprehensive? Also, I'm searching =
out other higher level operations that could be made into server side tramp=
scripts, if anyone knows of some good targets.</div><div><br></div><div>So=
please, comment, critique, tell me I'm doing it wrong, or give me the goah=
ead and I'll be happy to make a patch.=C2=A0</div><div><br></div><div>Joe S=
adusk</div></body></html>
--==-=-=--
--=-=-=
Content-Type: text/plain
-------------------- End of forwarded message --------------------
--=-=-=--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Michael Albinus <michael.albinus@HIDDEN> Subject: bug#79094: Acknowledgement ([wishlist] Optimizations for round trips in tramp) Message-ID: <handler.79094.B.175344987217589.ack <at> debbugs.gnu.org> References: <87ikjgo13n.fsf@HIDDEN> X-Gnu-PR-Message: ack 79094 X-Gnu-PR-Package: emacs Reply-To: 79094 <at> debbugs.gnu.org Date: Fri, 25 Jul 2025 13:25:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. As you requested using X-Debbugs-CC, your message was also forwarded to "Joe Sadusk" <joe@HIDDEN> (after having been given a bug report number, if it did not have one). Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 79094 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 79094: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79094 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
Received: (at control) by debbugs.gnu.org; 25 Jul 2025 13:34:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 25 09:34:06 2025 Received: from localhost ([127.0.0.1]:33833 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ufIYn-0005N1-Fx for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:34:06 -0400 Received: from mout.gmx.net ([212.227.17.22]:46795) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1ufIYT-0005LZ-5V for control <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:33:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1753450418; x=1754055218; i=michael.albinus@HIDDEN; bh=JG763DfaTzl/mfqK/kkznCtGeMan/xjlv+YapAUl3ks=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:MIME-Version: Content-Type:cc:content-transfer-encoding:content-type:date:from: message-id:mime-version:reply-to:subject:to; b=NaV+iZMnskJdCJrhSIWenhXjFEMnd1j2Gf+Xnzj19Hdjj888+EEOr3pKJ3QPfVni wR80j5gMsVXq2KL7YHwwWZASd5EksZ8zz1flTueDJaE5fG/pqLk40V26hthbanU84 QnaEP1xLPzshgs/IJFENupnjx+idV6bveE9rRXKKKwjDCw3ZVL7le3a/wFEL/CYaV 9nGpDBihQzYfqGW3wtH977949EgNcvRj2i525UqdrkjGbKF1P+PxJ8+w20voGJnZb Ryal7DOpufjq5Jmk2teQeF37038vyJ+hafsQFhxiC7KsgnV2KSzdzPX6J290uFBIg dKCIajDfE/5q0VV9Vw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MirjY-1uBTVd23Iy-00ac3U for <control <at> debbugs.gnu.org>; Fri, 25 Jul 2025 15:33:37 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: control <at> debbugs.gnu.org Subject: control message for bug #79094 Date: Fri, 25 Jul 2025 15:33:36 +0200 Message-ID: <87freko0nj.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:8WS3vOjP2uiyTBWhqQg10U1JPsY1kl/FLIFADM8lNu36/6agw46 TJ9F+201SrHaJjJ05VQKW39tmWfGyScidNx5KPchUWwWtueo7IoYitayxGMTRvQnFCJRmtI oGzLeEEfkTsD9ngIGKLgI+yIULdntYFY+bRG2Z09AI93a8spix6+lrGV/DdVgmRF0XRLLPU EsU+jSH+94XHdqdMcll8g== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:On4BCq97tFI=;zA6Fk8XcMgNPAmHb1E3yJOpIMqh 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 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) submitter 79094 "Joe Sadusk" <joe@HIDDEN> quit
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 25 Jul 2025 14:42:02 +0000
Resent-Message-ID: <handler.79094.B79094.175345447618469 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175345447618469
(code B ref 79094); Fri, 25 Jul 2025 14:42:02 +0000
Received: (at 79094) by debbugs.gnu.org; 25 Jul 2025 14:41:16 +0000
Received: from localhost ([127.0.0.1]:35119 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ufJbn-0004ni-Jk
for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 10:41:16 -0400
Received: from mout.gmx.net ([212.227.17.20]:42769)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ufJbk-0004nF-D5
for 79094 <at> debbugs.gnu.org; Fri, 25 Jul 2025 10:41:14 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1753454463; x=1754059263; i=michael.albinus@HIDDEN;
bh=mXMpFbfKNiBRSkLIdYidAsKujCiv2o0kWuMxazkN8mo=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=ARrcPPzOWi+7Myf9fXLVWxP7FplHakU/BGQ6MXJ+BhKUlLZKmy7MkYugLKikq+OY
VJdL68M+VdP8yKIIIKARu1CvhbmIUL7bBw9jgyFJcYalgMv+icNeVhs5jF4AJRk6I
soRt3YsNjsxsxKT6jA/oK2MKEx8vOeuM96EQTDJA2UsfCRd5KFBKiMqL0f3UbupQW
wE2pWIhtsZdpH4h0ADS290LsOhLWEeVXFfcSYRX2s8mPEoZU+oOzVAi7LmX9B75oX
iBgJ7QymFJHiYWpeHR5bLNXkfhUmNJnqFsviycofcsciOQ8gF6+9bd9wxP7mp9wJ2
EiewD3TQipwfdourcw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx104
[212.227.17.168]) with ESMTPSA (Nemesis) id 1MyKDU-1uVKnD16mi-00uUFe; Fri, 25
Jul 2025 16:41:03 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <87ikjgo13n.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN>
Date: Fri, 25 Jul 2025 16:41:02 +0200
Message-ID: <877bzwnxj5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:qqlNqV1r53dAKnYDIon8qylnb7WA4S8p1G5enxW12F7Ms2ekD3e
P8eOOVpXYmXLl+IaAs6xzVh/HlS6uAX+smtf0kpzUm6D2S+rE0DeTlNToIijlMs2u7EV9cU
1wOYC07B2CZTXW8s45xFk0D9TlUQtFn4LtKrapeawQPscCHEs9wMYRfXmOqW3xxz6RmHg/g
ld1w1SlzUdA+tCDPWkbkg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:lwx/pZU1pFk=;VyyJbv9qTokCjeCIAw1dq/96vqa
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
Qr08ygZfw2HUXPZ0+/drlS1wRNS14Pdo=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
> Hi, long time emacs user, first time contributor.
Hi Joe,
I much appreciate your ideas. I've played a little bit with the code,
here are my first remarks.
> I maintain an emacs config for my company's dev environment, which is
> primarily using remote workstations, so the config makes heavy use of
> tramp. I did some digging to find the source of some pauses and delays
> that happen during navigation and file open, particularly when remote
> dir-locals are enabled. And I found that a major piece of these pauses
> comes from calls to locate-dominating-file. This function doesn't have
> a tramp specific implementation, and so it loops in lisp, making many
> small tramp calls for things like expand-file-name, file-exists-p,
> file-directory-p, each of which issue a tramp-send-command and incur a
> round-trip to the server.
Yes, this is a common problem in Tramp. There are already also some attemp=
ts to
optimize Tramp, see the places tramp-bundle-read-file-names is used.
> My remote workstation connection has somewhat bad latency, each tramp
> roundtrip appears to take around 0.15s. Clocking a call to do
> (locate-dominating-file "/some/file/deep/in/a/repo" ".git") took over
> 2 seconds. This gets even worse when locate-dominating-file is used by
> dir-locals-find-file, because it uses the predicate form of
> locate-dominating-file, and the predicate does multiple tramp round
> trips itself. (dir-locals-find-file "/some/file/deep/in/a/repo") took
> over 3 seconds. This kind of a delay pops up when opening a file,
> reverting, traversing directories, making the dev experience much less
> fluid.
>
> So I did an experiment to see if I could implement these operations to
> use a single tramp round-trip, or as few as possible. The result is
> here:
> https://github.com/jsadusk/tramp-hlo
>
> The result is a huge improvement. dir-locals-find-file went from 3+
> seconds to 0.18 seconds, with only 1 or 2 tramp-send-commands. This
> also hugely speeds up vc-mode, which many people turn off for tramp to
> optmize speed. Mind you, this is on my workstation, which is a fairly
> stock Ubuntu 22.04 machine. I haven't tested this on the myriad of
> environments tramp has to work with. I'm sure there are edge cases I'm
> missing. But its working great for me, so I'm treating this as a proof
> of concept. I also wrote this as an advice function rather than a
> tramp handler, so I could turn it on and off easily. A real version of
> this would be vetted across many environments and be properly
> integrated with tramp-sh.el.=20
>
> So I wanted to see what people think about this approach and if its
> worth turning into a real patch for tramp? And if there's any advice
> on making it more comprehensive? Also, I'm searching out other higher
> level operations that could be made into server side tramp scripts, if
> anyone knows of some good targets.
>
> So please, comment, critique, tell me I'm doing it wrong, or give me
> the goahead and I'll be happy to make a patch.
I believe this is worth to give it to the public. Since Tramp is just
the implementation of core magic file operations, I believe it might be
better offered as GNU ELPA package. But I may be wrong, let's see what
other people think.
Here are my first comments on the code after playing with it for an hour
or so. All my proposals for change are rather untested, so you should
use them with care.
First of all, I had to adapt tramp-hlo-dir-locals--all-files. It misses
the argument '&optional base-el-only', and I got an error at runtime.
> (defgroup tramp-hlo nil
> "High level operations as tramp handlers"
> :group 'tools)
I believe you don't need it. You have no defcustom or defface to place
it there. And even if you would have it, the defgroup 'tramp' would be
sufficient.
> (defconst tramp-hlo-dir-locals--all-files-script
> "Script to check for dir-locals in a remote dir"
>=20
> (defconst tramp-hlo-list-parents-script
> "Script to list all parents in upward order of a directory, with home =
abbreviations"
>=20
> (defconst tramp-hlo-locate-dominating-file-script
> "Script to find a dominating file directory on a remote host"
>=20
> (defconst tramp-hlo-locate-dominating-file-multi-script
> "Script to find several dominating files on a remote host"
The docstrings are very terse. Please explain which arguments are
expected, and what will be the result.
> (defun tramp-hlo-dir-locals--all-files (orig-fun directory &optional bas=
e-el-only)
> "Tramp version of dir-locals--all-files"
Please quote Lisp symbols in docstrings `like-this'. The first sentence
of a docstring must finish with a period. And again, explain arguiments
and the result of the function. This yields also for the other
docstrings.
> (let ((connection (file-remote-p directory)))
> (if connection
Well, you have this for almost all functions. And this doesn't work, if
directory is relative file name, or it is handled by another Tramp
backend but tramp-sh.el.
I would introduce a macro, like
(defmacro tramp-hlo-active-p (file)
`(and-let* ((non-essential t)
(vec (ignore-errors
(tramp-dissect-file-name (expand-file-name ,file))))
((tramp-sh-file-name-handler-p vec)))))
Then you can write
(if (tramp-hlo-active-p directory)
> (mapcar (lambda (name) (concat connection name))
You don't need connection here, you have vec which knows everything
about the remote file name. Call
(mapcar (lambda (name) (tramp-make-tramp-file-name vec name))
=20
> (defun tramp-hlo-locate-dominating-file-pred (connection vec file pred)
> "Implementation of tramp-hlo-locate-dominating-file for a name predica=
te"
You don't need connection as argument. Use tramp-make-tramp-file-name
where appropriate.
=20
> (defun tramp-hlo-locate-dominating-file-list (connection vec file names)
> "Implementation of tramp-hlo-locate-dominating-file for a list of name=
s"
Same for connection.
> (let* ((localfile (nth 6 vec))
Pls use the accessor functions for vec. In this case, use
(let* ((localfile (tramp-file-name-localname vec))
> (quoted-names (mapcar (lambda (name) (format "\"%s\"" name)) na=
mes))
Please donm't quote with '"'. This works often enough, but if, for
example, name contains a quotation mark itself, you're lost. Use instead
(quoted-names (mapcar #'tramp-shell-quote-argument names))
> (defun tramp-hlo-dir-locals-find-file (orig-fun file)
> "Tramp implementation of dir-locals-find-file"
In this function, you have implemented an own cache. Consider using
tramp-cache.el, it is more powerful. For example. it handles also cache
expiration, and much more.
> (let* ((locals-files (tramp-hlo-find-dominating-files (file-name=
-directory file)
> '(".dir-locals.el" ".=
dir-locals-2.el")))
...
> (file-attribute-modification-time
> (file-attributes f))))
file-attributes could cause another round-trip to the remote. Perhaps
you expand your script(s) to return also some file attributes already,
associated with the file name(s), like tramp-bundle-read-file-names does.
=20
> (defun configure-tramp-hlo ()
> (advice-add 'dir-locals--all-files :around #'tramp-hlo-dir-locals--all=
-files)
> (advice-add 'locate-dominating-file :around #'tramp-hlo-locate-dominat=
ing-file)
> (advice-add 'dir-locals-find-file :around #'tramp-hlo-dir-locals-find-=
file)
> )
Please add also a function to remove the advices. And shouldn't this be in=
teractive?
> Joe Sadusk
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 26 Jul 2025 05:56:02 +0000
Resent-Message-ID: <handler.79094.B79094.175350935720572 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Michael Albinus" <michael.albinus@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175350935720572
(code B ref 79094); Sat, 26 Jul 2025 05:56:02 +0000
Received: (at 79094) by debbugs.gnu.org; 26 Jul 2025 05:55:57 +0000
Received: from localhost ([127.0.0.1]:39056 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ufXsy-0005Lh-AO
for submit <at> debbugs.gnu.org; Sat, 26 Jul 2025 01:55:56 -0400
Received: from mail-pj1-f42.google.com ([209.85.216.42]:60871)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1ufPQM-0008Jl-5H
for 79094 <at> debbugs.gnu.org; Fri, 25 Jul 2025 16:53:50 -0400
Received: by mail-pj1-f42.google.com with SMTP id
98e67ed59e1d1-31223a4cddeso2014201a91.1
for <79094 <at> debbugs.gnu.org>; Fri, 25 Jul 2025 13:53:50 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1753476824; x=1754081624;
h=references:in-reply-to:cc:to:subject:tls-required:message-id:from
:content-transfer-encoding:date:mime-version:x-gm-message-state:from
:to:cc:subject:date:message-id:reply-to;
bh=/dYSF5OpZr1ZJseGPZFTx10xsAIVi/+bvQE6bSQMqa8=;
b=v7qDENDWQEVoLYY+mzkF0WOYR0ckXyPx4Kz35UWahKrH+I6OX2KTMMvWWq5ucXRlIX
kSOedF0ZDF+MuoGfnQIVLjMlCkGuR6GHfI110glFsEgGjUFWiTM7KYhR/elFlmvnVOkt
l2eosjhwYvBhRjPn+UnH/Fdd3rCri4gEXUDQ0ZfWC6THwsYtNR7vXZyWeWf0HwvjrXWB
ifAFc7Ta586IRTNKl4M91jPYrX347WqXusrfH0i+E06uvoCMB0muPq68udLJq1eAKnVS
qkm/td/l/ECL78d7s9njsYTu9HB6qmVKrjS9EY2UXlzwQquzN+J950flMJ0IOdubWTB6
/yUA==
X-Gm-Message-State: AOJu0Yy/bNhyyFh1Q/vfGQjx6LMmviR1VA/1VgQAG/niUae34wK23vis
DirvWaTw6HSrnIx67QmQh96HgGATuFvXOwA+qD+BtXUhsAvrFWGe2/AjRa2Yqw==
X-Gm-Gg: ASbGncv4LUTDlEPL9x8rCvPSCw+HQ4wVc4WJW8I4NSv6iLrQjpAv8t+vJxFghF2q4dV
WgldMdNELPZtzkIpLbZ4LaK2RxCW/HML9kfqzNwha/GXLjd7BDubN0a7DUlErDuoN5sD7jjqaUP
e8Zaa78ThBpU6WmbYcUzRfXj5j6nCLnqHEdydKKPFP7XPQ7Q0UFlYSJLgkv4oiTiddyjGuxfWvj
dbggKE0kLt/L4yOy6/QnTxr8+3N4YUWg1+bkupB4lHlSGl3X2dXh+797HZhCTNYKuJ8FxzeGYh5
2brIzunsgdpmPk4Hz+GqGn76Cmox2dKNmeDd5uuTcKt90L/DoM6onpyVKjXS8c8dpE4JnqbFDI9
UhORNnqdoruiF
X-Google-Smtp-Source: AGHT+IELE7CTt1fo5xFKbsrpdhopwozw4tsIk8y2z+2UXhmdpdSP3WtJu+Q3SIDebf/2WHucY7g8MQ==
X-Received: by 2002:a17:90b:4ac5:b0:315:cc22:68d9 with SMTP id
98e67ed59e1d1-31e77a4af86mr4359476a91.31.1753476823350;
Fri, 25 Jul 2025 13:53:43 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
41be03b00d2f7-b3f7f6d93f6sm456735a12.69.2025.07.25.13.53.42
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Fri, 25 Jul 2025 13:53:42 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id DF3AA3E387;
Fri, 25 Jul 2025 13:53:41 -0700 (PDT)
MIME-Version: 1.0
Date: Fri, 25 Jul 2025 20:53:41 +0000
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
TLS-Required: No
In-Reply-To: <877bzwnxj5.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
X-Spam-Score: 0.2 (/)
X-Mailman-Approved-At: Sat, 26 Jul 2025 01:55:55 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.8 (/)
Thanks for the feedback! I'm happy to make some changes.=20
>=20Yes, this is a common problem in Tramp. There are already also some a=
ttempts to
> optimize Tramp, see the places tramp-bundle-read-file-names is used.
Makes sense, let me know if there are any optimizations duplicated in the=
main tramp codebase, or any that would better fit there.
> I believe this is worth to give it to the public. Since Tramp is just
> the implementation of core magic file operations, I believe it might be
> better offered as GNU ELPA package. But I may be wrong, let's see what
> other people think.
I realized after posting in emacs-devel that tramp handlers are restricte=
d to the magic file handlers, so I agree that this would work better as a=
n ELPA module. I'll plan to rework this into a user accessible module. Wo=
uld it make sense to make this a minor mode?
> First of all, I had to adapt tramp-hlo-dir-locals--all-files. It misses
> the argument '&optional base-el-only', and I got an error at runtime.
Is that an argument in master? I'm looking at the implementation of dir-l=
ocals--all-files in 30.1 and it only has a single directory argument.
> > (defgroup tramp-hlo nil
> > "High level operations as tramp handlers"
> > :group 'tools)
> I believe you don't need it. You have no defcustom or defface to place
> it there. And even if you would have it, the defgroup 'tramp' would be
> sufficient.
Good point, I've always just defined groups for every module without cons=
idering whether its necessary. I can see some defcustoms for enabling fea=
tures though, let me see what it looks like as I flesh out functionality.
> The docstrings are very terse. Please explain which arguments are
> expected, and what will be the result.
Absolutely, this was a minimal first effort to get the experiment working=
. I'll fill these out properly.
=20
>=20Please quote Lisp symbols in docstrings `like-this'. The first senten=
ce
> of a docstring must finish with a period. And again, explain arguiments
> and the result of the function. This yields also for the other
> docstrings.
Noted.
=20
>=20Well, you have this for almost all functions. And this doesn't work, =
if
> directory is relative file name, or it is handled by another Tramp
> backend but tramp-sh.el.
>=20
>=20I would introduce a macro, like
>=20
>=20(defmacro tramp-hlo-active-p (file)
> `(and-let* ((non-essential t)
> (vec (ignore-errors
> (tramp-dissect-file-name (expand-file-name ,file))))
> ((tramp-sh-file-name-handler-p vec)))))
>=20
>=20Then you can write
>=20
>=20(if (tramp-hlo-active-p directory)
Definitely, this was least effort for the experiment. I had actually cons=
idered writing a small framework for defining per-protocol high-level han=
dlers, similar to tramp-file-handlers-alist. This would also allow other =
modules to add their own handlers.
> You don't need connection here, you have vec which knows everything
> about the remote file name. Call
>=20
>=20(mapcar (lambda (name) (tramp-make-tramp-file-name vec name))
> You don't need connection as argument. Use tramp-make-tramp-file-name
> where appropriate.
Got it, I didn't know the right function to format a connection string fr=
om vec. This is much better.
> Pls use the accessor functions for vec. In this case, use
>=20
>=20(let* ((localfile (tramp-file-name-localname vec))
Noted.
> Please donm't quote with '"'. This works often enough, but if, for
> example, name contains a quotation mark itself, you're lost. Use instea=
d
>=20
>=20(quoted-names (mapcar #'tramp-shell-quote-argument names))
Great, I was afraid of these escaping issues but didn't know there was a =
function available for it. Thanks.
> In this function, you have implemented an own cache. Consider using
> tramp-cache.el, it is more powerful. For example. it handles also cache
> expiration, and much more.
This isn't my cache, is the cache from dir-locals. This function is a mos=
tly copy and paste from emacs/lisp/files.el:dir-locals-find-file, with th=
e initial call to locate-dominating-file reworked. I couldn't think of a =
way to reuse the old function but still avoid round-trips, hence the copy=
-paste. But I still need to use the same cache dir-locals creates in orde=
r to be compatible with the parsing mechanism.
=20
>=20file-attributes could cause another round-trip to the remote. Perhaps
> you expand your script(s) to return also some file attributes already,
> associated with the file name(s), like tramp-bundle-read-file-names doe=
s.
That was definitely one of my plans, but it is looking at mtime for the f=
ile returned from cache, which might not be the same file queried earlier=
in the function. I could filter the cache for all filenames on the same =
remote, and look up all of them in the script.=20
=20=20
>=20Please add also a function to remove the advices. And shouldn't this =
be interactive?
Absolutely, this was a minimal effort to make it work. I'll clean up the =
user-facing interface. Would this make sense as a minor-mode? Or should i=
t just have a function to add and remove advices?
Joe
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 26 Jul 2025 05:56:02 +0000
Resent-Message-ID: <handler.79094.B79094.175350935720583 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175350935720583
(code B ref 79094); Sat, 26 Jul 2025 05:56:02 +0000
Received: (at 79094) by debbugs.gnu.org; 26 Jul 2025 05:55:57 +0000
Received: from localhost ([127.0.0.1]:39058 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ufXsz-0005Lm-0Y
for submit <at> debbugs.gnu.org; Sat, 26 Jul 2025 01:55:57 -0400
Received: from mail-pf1-f175.google.com ([209.85.210.175]:45353)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1ufR8I-0007kM-OY
for 79094 <at> debbugs.gnu.org; Fri, 25 Jul 2025 18:43:20 -0400
Received: by mail-pf1-f175.google.com with SMTP id
d2e1a72fcca58-7426c44e014so2255684b3a.3
for <79094 <at> debbugs.gnu.org>; Fri, 25 Jul 2025 15:43:18 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1753483392; x=1754088192;
h=references:in-reply-to:to:subject:tls-required:message-id:from
:content-transfer-encoding:date:mime-version:x-gm-message-state:from
:to:cc:subject:date:message-id:reply-to;
bh=/dYSF5OpZr1ZJseGPZFTx10xsAIVi/+bvQE6bSQMqa8=;
b=Jeu70rIYAv92cElVJyEm2UlQyIUIJVytE3JaBVqsOHbuG0F8QZPojMQDb+wjQJjBpS
KfQUl/4gTKLwMar8/frlykBNcRefBTY7w85mZO8jEztagtVB2XJjbF1zZK8FOeRRhSj1
RQ/ONm77GL6/7GRx723oiGczewSvJAwNKJbZpTn9LnyZ8wndmKOR2pa6WisJKsOq5oHO
sMKNJ+Accnv9qg+JIqgEdVCe5eoleiM2k1RThoGlBD7jSI2R1PGPR7cKeDHaoh7bhGYV
bot8vz/ju7EbLgo0coXB/VOXuJ6PlPNA0ie7POqHRbPGcGGpRodxjzC63ZwOeFEA2lfx
Vqyg==
X-Gm-Message-State: AOJu0YxChjWb0fiSWPo0BegzoGpgpnC7vydnVLc6kzL/QJUOvrAeM5i0
aVZpLuCJNGFQIVa1a5LJRuJ9uRIxCHHPb6hY69DRJnOsUgIU2XEZtEiQqTq03Q==
X-Gm-Gg: ASbGncuwQl8AIyG+V+5rAd47OuA3NXe0oiN1dcBA06Lwz6LFXvz+D41Np+5G8cp92ri
sXQvBitK03Zq1/XGq/mLjy535ugn8/0uWd/MCSPUhp+l0V2Sia7GwEt3Vk/KOE7fHM3dQJaO94Q
03cpSN7kZDfJ2NB7VbMrtY9zKJP2SxxuIwolXUOHI5Rtg7B6wQ1IqxJrb8mDQcYF07H/jRwRGvk
qvMR0tCvXt04pd++oyqZhefH21mUJTsUsDdOrCrmziLGXju287K4BNlTN4DLZUe8R5hCo/dAL32
Imd4I+Gl9YXSDeD7pBPs0WxQcJH1/aJ0vr8E3i4z+yYFprRQrxza5stFyaEEeoahrkC51azGjtI
20AEfqUyk8Muj
X-Google-Smtp-Source: AGHT+IEiA2EzLPg/W2ygHq3yv83Seilgp/FGsl4qA4BAby2/3QsgiKkBEGU4s8z+RgTuZKKvVCj06A==
X-Received: by 2002:a05:6a20:3949:b0:231:c295:136d with SMTP id
adf61e73a8af0-23d70028218mr6009862637.14.1753483392001;
Fri, 25 Jul 2025 15:43:12 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
d2e1a72fcca58-7640b8b5080sm464525b3a.134.2025.07.25.15.43.11
for <79094 <at> debbugs.gnu.org>
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Fri, 25 Jul 2025 15:43:11 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id CD97E3E387
for <79094 <at> debbugs.gnu.org>; Fri, 25 Jul 2025 15:43:10 -0700 (PDT)
MIME-Version: 1.0
Date: Fri, 25 Jul 2025 22:43:10 +0000
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <2e925184d251aad2deb694f497e1dd3e6753da72@HIDDEN>
TLS-Required: No
In-Reply-To: <877bzwnxj5.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
X-Spam-Score: 0.2 (/)
X-Mailman-Approved-At: Sat, 26 Jul 2025 01:55:55 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.8 (/)
Thanks for the feedback! I'm happy to make some changes.=20
>=20Yes, this is a common problem in Tramp. There are already also some a=
ttempts to
> optimize Tramp, see the places tramp-bundle-read-file-names is used.
Makes sense, let me know if there are any optimizations duplicated in the=
main tramp codebase, or any that would better fit there.
> I believe this is worth to give it to the public. Since Tramp is just
> the implementation of core magic file operations, I believe it might be
> better offered as GNU ELPA package. But I may be wrong, let's see what
> other people think.
I realized after posting in emacs-devel that tramp handlers are restricte=
d to the magic file handlers, so I agree that this would work better as a=
n ELPA module. I'll plan to rework this into a user accessible module. Wo=
uld it make sense to make this a minor mode?
> First of all, I had to adapt tramp-hlo-dir-locals--all-files. It misses
> the argument '&optional base-el-only', and I got an error at runtime.
Is that an argument in master? I'm looking at the implementation of dir-l=
ocals--all-files in 30.1 and it only has a single directory argument.
> > (defgroup tramp-hlo nil
> > "High level operations as tramp handlers"
> > :group 'tools)
> I believe you don't need it. You have no defcustom or defface to place
> it there. And even if you would have it, the defgroup 'tramp' would be
> sufficient.
Good point, I've always just defined groups for every module without cons=
idering whether its necessary. I can see some defcustoms for enabling fea=
tures though, let me see what it looks like as I flesh out functionality.
> The docstrings are very terse. Please explain which arguments are
> expected, and what will be the result.
Absolutely, this was a minimal first effort to get the experiment working=
. I'll fill these out properly.
=20
>=20Please quote Lisp symbols in docstrings `like-this'. The first senten=
ce
> of a docstring must finish with a period. And again, explain arguiments
> and the result of the function. This yields also for the other
> docstrings.
Noted.
=20
>=20Well, you have this for almost all functions. And this doesn't work, =
if
> directory is relative file name, or it is handled by another Tramp
> backend but tramp-sh.el.
>=20
>=20I would introduce a macro, like
>=20
>=20(defmacro tramp-hlo-active-p (file)
> `(and-let* ((non-essential t)
> (vec (ignore-errors
> (tramp-dissect-file-name (expand-file-name ,file))))
> ((tramp-sh-file-name-handler-p vec)))))
>=20
>=20Then you can write
>=20
>=20(if (tramp-hlo-active-p directory)
Definitely, this was least effort for the experiment. I had actually cons=
idered writing a small framework for defining per-protocol high-level han=
dlers, similar to tramp-file-handlers-alist. This would also allow other =
modules to add their own handlers.
> You don't need connection here, you have vec which knows everything
> about the remote file name. Call
>=20
>=20(mapcar (lambda (name) (tramp-make-tramp-file-name vec name))
> You don't need connection as argument. Use tramp-make-tramp-file-name
> where appropriate.
Got it, I didn't know the right function to format a connection string fr=
om vec. This is much better.
> Pls use the accessor functions for vec. In this case, use
>=20
>=20(let* ((localfile (tramp-file-name-localname vec))
Noted.
> Please donm't quote with '"'. This works often enough, but if, for
> example, name contains a quotation mark itself, you're lost. Use instea=
d
>=20
>=20(quoted-names (mapcar #'tramp-shell-quote-argument names))
Great, I was afraid of these escaping issues but didn't know there was a =
function available for it. Thanks.
> In this function, you have implemented an own cache. Consider using
> tramp-cache.el, it is more powerful. For example. it handles also cache
> expiration, and much more.
This isn't my cache, is the cache from dir-locals. This function is a mos=
tly copy and paste from emacs/lisp/files.el:dir-locals-find-file, with th=
e initial call to locate-dominating-file reworked. I couldn't think of a =
way to reuse the old function but still avoid round-trips, hence the copy=
-paste. But I still need to use the same cache dir-locals creates in orde=
r to be compatible with the parsing mechanism.
=20
>=20file-attributes could cause another round-trip to the remote. Perhaps
> you expand your script(s) to return also some file attributes already,
> associated with the file name(s), like tramp-bundle-read-file-names doe=
s.
That was definitely one of my plans, but it is looking at mtime for the f=
ile returned from cache, which might not be the same file queried earlier=
in the function. I could filter the cache for all filenames on the same =
remote, and look up all of them in the script.=20
=20=20
>=20Please add also a function to remove the advices. And shouldn't this =
be interactive?
Absolutely, this was a minimal effort to make it work. I'll clean up the =
user-facing interface. Would this make sense as a minor-mode? Or should i=
t just have a function to add and remove advices?
Joe
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 26 Jul 2025 07:34:01 +0000
Resent-Message-ID: <handler.79094.B79094.175351519214805 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175351519214805
(code B ref 79094); Sat, 26 Jul 2025 07:34:01 +0000
Received: (at 79094) by debbugs.gnu.org; 26 Jul 2025 07:33:12 +0000
Received: from localhost ([127.0.0.1]:39411 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ufZP5-0003qh-T5
for submit <at> debbugs.gnu.org; Sat, 26 Jul 2025 03:33:12 -0400
Received: from mout.gmx.net ([212.227.15.18]:43223)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ufZP3-0003qL-4m
for 79094 <at> debbugs.gnu.org; Sat, 26 Jul 2025 03:33:10 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1753515182; x=1754119982; i=michael.albinus@HIDDEN;
bh=eBqEBxXJB7yxyt4HSKHYcZPwVW6fzYu5dB7dXY1sKWQ=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=EVqWzc+ZB/LaZ/wrWViueIrBckgNE8QJnPL1TKTGQgKPw59TOWuRE/N+2yaStr/r
Dv1yEx7hQ7RQ3y06LMegz47vtN2e/uPdUK1KRb0ZX4gFQ6owvyrC/3dh7SO6Dg0uM
kuWZ41inV16E0Jh8gzSKNznkB0R/MNHWuKo29t1nEZsutnZqpUur2qxmHT336rgJ/
a2aMTR7xYsTBp9XDLcFdL1nPY5qV/6WlCSdTf3eZ4jWFjmAyIEuvoXu3hbv2aj8Zd
cEOkdQhbv0LIfIBxsSYxd8IliT/PMgN14dq76Amv/MgGPZnAyFDZyRENmpHv8KuGs
JdDr4hFbSJkDz4xu0Q==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx004
[212.227.17.190]) with ESMTPSA (Nemesis) id 1M8ygO-1ujR1M0sgI-00AJg9; Sat, 26
Jul 2025 09:33:02 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
Date: Sat, 26 Jul 2025 09:33:01 +0200
Message-ID: <87o6t7mmoi.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:n+sfIaw63ofw5CnTe+843QKxO42CatGjjnhU0HDMI6o93ZJlpd3
/R9HbsygUNbTAqSfY+58B1waBjnStZcxb5LIL+Yxb+TNTOVAD0Xsd2h7JowxbaNtiCRie+p
9/KjNKkkwYL4xgDUKyyjfqjd2RpEMzJp6/L2I8BNzazGaISSEWsQsEmlUw1JRsF7uqUE4sq
WWP9xVv3ogPeYL5+cA8sQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:oA+wUnJGlPo=;M+1GMWxgYLCF1wfZLpZ1rQTpIzv
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
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
>> Yes, this is a common problem in Tramp. There are already also some att=
empts to
>> optimize Tramp, see the places tramp-bundle-read-file-names is used.
>
> Makes sense, let me know if there are any optimizations duplicated in
> the main tramp codebase, or any that would better fit there.
No, in Tramp's codebase there are no optimizations like yours (yet).
>> I believe this is worth to give it to the public. Since Tramp is just
>> the implementation of core magic file operations, I believe it might be
>> better offered as GNU ELPA package. But I may be wrong, let's see what
>> other people think.
>
> I realized after posting in emacs-devel that tramp handlers are
> restricted to the magic file handlers, so I agree that this would work
> better as an ELPA module. I'll plan to rework this into a user
> accessible module. Would it make sense to make this a minor mode?
It would need to be a global minor mode. The only advance I see is that
you can enable/disable it with predefined command names, but that's not
different from calling configure-tramp-hlo.
Your package does not define key bindings, and it does not offer hooks,
which would be another reason for a minor mode. There's no user option
to customize. And there's no major mode which would like to enable your
minor mode by default.
>> First of all, I had to adapt tramp-hlo-dir-locals--all-files. It misses
>> the argument '&optional base-el-only', and I got an error at runtime.
>
> Is that an argument in master? I'm looking at the implementation of
> dir-locals--all-files in 30.1 and it only has a single directory
> argument.
Yes, it is a recent change, commit 81c21d89ede8 in Emacs master. See
also bug#75890.
>> I would introduce a macro, like
>>=20
>> (defmacro tramp-hlo-active-p (file)
>> `(and-let* ((non-essential t)
>> (vec (ignore-errors
>> (tramp-dissect-file-name (expand-file-name ,file))))
>> ((tramp-sh-file-name-handler-p vec)))))
>>=20
>> Then you can write
>>=20
>> (if (tramp-hlo-active-p directory)
>
> Definitely, this was least effort for the experiment. I had actually
> considered writing a small framework for defining per-protocol
> high-level handlers, similar to tramp-file-handlers-alist. This would
> also allow other modules to add their own handlers.
Good idea. But this can wait until needed.
>> file-attributes could cause another round-trip to the remote. Perhaps
>> you expand your script(s) to return also some file attributes already,
>> associated with the file name(s), like tramp-bundle-read-file-names doe=
s.
>
> That was definitely one of my plans, but it is looking at mtime for
> the file returned from cache, which might not be the same file queried
> earlier in the function. I could filter the cache for all filenames on
> the same remote, and look up all of them in the script.
Let's discuss this with your next cede version.
> Would this make sense as a minor-mode? Or should it just have a function=
to add and remove advices?
The latter, I believe.
Another question: if we bring this code to Tramp core or to GNU ELPA,
the copyright must be assigned to the FSF. There are some papers to be
signed. Would you be willing to do so?
I ask it now, because the process can be fast, or not ... And we don't
want to be blocked by legal issues :-)
> Joe
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 30 Jul 2025 17:53:01 +0000
Resent-Message-ID: <handler.79094.B79094.17538979704366 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Michael Albinus" <michael.albinus@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.17538979704366
(code B ref 79094); Wed, 30 Jul 2025 17:53:01 +0000
Received: (at 79094) by debbugs.gnu.org; 30 Jul 2025 17:52:50 +0000
Received: from localhost ([127.0.0.1]:42567 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uhAyv-00018M-LR
for submit <at> debbugs.gnu.org; Wed, 30 Jul 2025 13:52:50 -0400
Received: from mail-pl1-f172.google.com ([209.85.214.172]:43260)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1uhAys-00017z-Ca
for 79094 <at> debbugs.gnu.org; Wed, 30 Jul 2025 13:52:47 -0400
Received: by mail-pl1-f172.google.com with SMTP id
d9443c01a7336-2403c13cac3so10328005ad.0
for <79094 <at> debbugs.gnu.org>; Wed, 30 Jul 2025 10:52:46 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1753897960; x=1754502760;
h=references:in-reply-to:cc:to:subject:tls-required:message-id:from
:content-transfer-encoding:date:mime-version:x-gm-message-state:from
:to:cc:subject:date:message-id:reply-to;
bh=mNXliEyjkT2ElNZ3J/jEYAnG60pSumHznn76smDR3VA=;
b=Af/KSzwIpyflUvaE3Qt6F6A4EPfLWItZjYekxTjP+06afMtPSfH4HJocQOZZ7Gi+MX
vFs7cp2kHxJ9k3595Q8RIWlZmtcOibRpOmEvfiyi/SV8NGDlMyVhBFXv0h3miJFXDAIv
Pue6ZaMXFaKHXvBxth8J6qWFl4PRqyeEn6KiwB7HxIBcBrDPGGztidozSsz6wQOi8Xb0
4aS9NhcjKZRmxMnKQzXJsA3pVjmaH1py5lmxF4SGYpBJG72YxHsORCZTnnIl193dMyJs
/kbDLOc+93x17artB3eZU7DgLiWoaC68W+lMIQDxJeH065kMOe8AJKVjPRgLHRO2vDK8
23dg==
X-Gm-Message-State: AOJu0Yy8ywzC9p/PUmA36jXFEmNZLQ4okHmX2CybJQNmzG6rnaikZbdV
H3F8DM6jcM99SXSm44Ykvdq2LqfAttzlu1OMRjLaVkF1TsfhYdBSlIZrt46wWw==
X-Gm-Gg: ASbGncuurwqb3J150CB6LNb5LwALcdXPjSg3YL9VLYrRFOfNbRG99M5JkMsxzW24OZ2
0CjwQYtLVo0rubbrhJv7iAMyxRoEm16OPKOEOYnmBKA8PL+21hT8Bb6U/vNhFExv4Ga4GpGXkEf
o4cKDjPUnUSOR8JDo8t8VbE4QgfbtSeRbpOz7gbAq2lP9giZVudWmEG9Tt2fECJnEj2QOTsRJoy
TV7gYOAKwP5pVAO8995iRU8EYTsWUZfmY5Y+V2M6n7Tan9NZ6TfzJEDUf5qrd8kjzevoadbsLez
gyzOYKCzwk0Q8F94JLqshkSLzhPBVNA3+BZmUQ04n2q2/eQ8NcpUvlrFkfTiP6kk0JPQowqE94N
7TL6A/jXJbq92
X-Google-Smtp-Source: AGHT+IFyzRRYnNyTXT0bZSPBWVl7ACpjUtDsIw2V9FMABp35C0IPETuU9YIdVjqsgrDOyNqv075ftQ==
X-Received: by 2002:a17:902:f64a:b0:240:8cb5:98cc with SMTP id
d9443c01a7336-240968c9470mr57467065ad.26.1753897959907;
Wed, 30 Jul 2025 10:52:39 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
d9443c01a7336-2408cc228b7sm31315635ad.53.2025.07.30.10.52.39
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Wed, 30 Jul 2025 10:52:39 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id 8F44D3E38F;
Wed, 30 Jul 2025 10:52:38 -0700 (PDT)
MIME-Version: 1.0
Date: Wed, 30 Jul 2025 17:52:38 +0000
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
TLS-Required: No
In-Reply-To: <87o6t7mmoi.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
July 26, 2025 at 12:33 AM, "Michael Albinus" <michael.albinus@HIDDEN mail=
to:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%22%20%3Cmichael.albin=
us%40gmx.de%3E > wrote:
I've pushed changes to address all the issues except for the remaining ro=
undtrip in tramp-hlo-dir-locals-find-file. My first attempt at that one b=
roke some functionality, so it'll take a little trial and error and I did=
n't want to hold up the rest.
> > > I believe this is worth to give it to the public. Since Tramp is ju=
st
> > > the implementation of core magic file operations, I believe it mig=
ht be
> > > better offered as GNU ELPA package. But I may be wrong, let's see =
what
> > > other people think.
> > >=20
>=20> I realized after posting in emacs-devel that tramp handlers are
> > restricted to the magic file handlers, so I agree that this would wo=
rk
> > better as an ELPA module. I'll plan to rework this into a user
> > accessible module. Would it make sense to make this a minor mode?
> >=20
>=20It would need to be a global minor mode. The only advance I see is th=
at
> you can enable/disable it with predefined command names, but that's not
> different from calling configure-tramp-hlo.
>=20
>=20Your package does not define key bindings, and it does not offer hook=
s,
> which would be another reason for a minor mode. There's no user option
> to customize. And there's no major mode which would like to enable your
> minor mode by default.
Got it, makes sense as a global overlay rather than a mode.
> > >=20
>=20> > First of all, I had to adapt tramp-hlo-dir-locals--all-files. It =
misses
> > > the argument '&optional base-el-only', and I got an error at runti=
me.
> > >=20
>=20> Is that an argument in master? I'm looking at the implementation o=
f
> > dir-locals--all-files in 30.1 and it only has a single directory
> > argument.
> >=20
>=20Yes, it is a recent change, commit 81c21d89ede8 in Emacs master. See
> also bug#75890.
Noted, I'm now testing with master and stable to ensure compatibilty.=20
>=20> > I would introduce a macro, like
> > >=20=20
>=20> > (defmacro tramp-hlo-active-p (file)
> > > `(and-let* ((non-essential t)
> > > (vec (ignore-errors
> > > (tramp-dissect-file-name (expand-file-name ,file))))
> > > ((tramp-sh-file-name-handler-p vec)))))
> > >=20=20
>=20> > Then you can write
> > >=20=20
>=20> > (if (tramp-hlo-active-p directory)
> > >=20
>=20> Definitely, this was least effort for the experiment. I had actual=
ly
> > considered writing a small framework for defining per-protocol
> > high-level handlers, similar to tramp-file-handlers-alist. This woul=
d
> > also allow other modules to add their own handlers.
I took your idea and ran with it, making it a little more concise. See th=
e tramp-hlo-advice macro.
> > > file-attributes could cause another round-trip to the remote. Perha=
ps
> > > you expand your script(s) to return also some file attributes alre=
ady,
> > > associated with the file name(s), like tramp-bundle-read-file-name=
s does.
> > >=20
>=20> That was definitely one of my plans, but it is looking at mtime fo=
r
> > the file returned from cache, which might not be the same file queri=
ed
> > earlier in the function. I could filter the cache for all filenames =
on
> > the same remote, and look up all of them in the script.
> >=20
>=20Let's discuss this with your next cede version.
I'm still tweaking this. The way to make it work is a script specific to =
`dir-locals-find-file` which checks for dominating files and cache direct=
ories in one go. This however reworks the flow of the original dir-locals=
-find-file function, which is currently mostly a cut and paste of the ori=
ginal. I am trying to ensure it is 100% workalike before adding this chan=
ge.
=20
>=20> Would this make sense as a minor-mode? Or should it just have a fun=
ction to add and remove advices?
> >=20
>=20The latter, I believe.
There's now a setup-tramp-hlo and remove-tramp-hlo, and they're interacti=
ve.
> Another question: if we bring this code to Tramp core or to GNU ELPA,
> the copyright must be assigned to the FSF. There are some papers to be
> signed. Would you be willing to do so?
>=20
>=20I ask it now, because the process can be fast, or not ... And we don'=
t
> want to be blocked by legal issues :-)
Happy to sign it over. I want to make this as widely accessible as possib=
le.
Joe
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 31 Jul 2025 05:35:01 +0000
Resent-Message-ID: <handler.79094.B79094.175394004926722 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175394004926722
(code B ref 79094); Thu, 31 Jul 2025 05:35:01 +0000
Received: (at 79094) by debbugs.gnu.org; 31 Jul 2025 05:34:09 +0000
Received: from localhost ([127.0.0.1]:45382 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uhLvd-0006ww-Aa
for submit <at> debbugs.gnu.org; Thu, 31 Jul 2025 01:34:09 -0400
Received: from mout.gmx.net ([212.227.15.19]:37197)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uhLva-0006wD-Uc
for 79094 <at> debbugs.gnu.org; Thu, 31 Jul 2025 01:34:07 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1753940038; x=1754544838; i=michael.albinus@HIDDEN;
bh=UPwgl+GoDXL8FHiTDCi9ugaDOTViGh9+uUg37+f3YFI=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=Ib37b8pApQ17Z04kYSgPfTyOfp7tYn0sik6Jm2sOdMWOMnUU35h/ESaoPrwODNBe
c3op3EElQLH+xDlmDD3qjP/xgOJoS78H0ZfoB3o8GHRNS/POMCnP+Du6GMk7bLDzp
V/hSM0Cf1+S+OrZkPsrHKqWa31fZ31DyxdBMNTcYFTMwJRisLa7sJsXHlsMv3tD4G
/WE5hhx0+ChCfLL9LCLttz+DsqVbfuBBfD2KnDtrcVG3sFY6sm+uwODo+E0/lNBL7
hhiw5sDC0a00hs1TP/I+PIvGgWGbN7dQ8BLa1yC5LFWtm5obZIuWue5+IKGtDVL08
gjYTlpA9lWltGelsJg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
[212.227.17.190]) with ESMTPSA (Nemesis) id 1MXGvM-1vAdUx3faw-00JQlf; Thu, 31
Jul 2025 07:33:57 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
Date: Thu, 31 Jul 2025 07:33:57 +0200
Message-ID: <871ppwsz3u.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:dayAm4u4jyzbveFOUJVDKH8OS+o9k5zPFA0djanChHajYBbgPSl
7O9YgGltTceZfIKgOtiMBkLZtBKU9G91iZXJHbGCOmAWL321Fp2r1Nc4PeDzX6OjHEjHxNz
lRFCcuRyBDuuWozh0HeOmNWB253nlBpgGWmvIJtIogHds5nxkeYe1cVnoCuxX6/Wpahwpq+
PD312FsNtIaMZIiuXDjJg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:8VS9fKFtzm0=;kQAv9Uge58fgkqzkWDLiUyz1ykt
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
SSpl0AxGjmyULZI5IUSu/ShBbqFRWCbw=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
> I've pushed changes to address all the issues except for the remaining
> roundtrip in tramp-hlo-dir-locals-find-file. My first attempt at that
> one broke some functionality, so it'll take a little trial and error
> and I didn't want to hold up the rest.
I'm busy these days. Will check over the weekend.
=20
>> I ask it now, because the process can be fast, or not ... And we don't
>> want to be blocked by legal issues :-)
>
> Happy to sign it over. I want to make this as widely accessible as possi=
ble.
Template sent off-list.
> Joe
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 31 Jul 2025 15:29:02 +0000
Resent-Message-ID: <handler.79094.B79094.17539757181223 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Michael Albinus" <michael.albinus@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.17539757181223
(code B ref 79094); Thu, 31 Jul 2025 15:29:02 +0000
Received: (at 79094) by debbugs.gnu.org; 31 Jul 2025 15:28:38 +0000
Received: from localhost ([127.0.0.1]:49139 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uhVCw-0000Jc-8R
for submit <at> debbugs.gnu.org; Thu, 31 Jul 2025 11:28:38 -0400
Received: from mail-pg1-f169.google.com ([209.85.215.169]:55756)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1uhVCt-0000JI-JA
for 79094 <at> debbugs.gnu.org; Thu, 31 Jul 2025 11:28:36 -0400
Received: by mail-pg1-f169.google.com with SMTP id
41be03b00d2f7-b34a6d0c9a3so636152a12.3
for <79094 <at> debbugs.gnu.org>; Thu, 31 Jul 2025 08:28:35 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1753975709; x=1754580509;
h=references:in-reply-to:cc:to:subject:tls-required:message-id:from
:date:mime-version:x-gm-message-state:from:to:cc:subject:date
:message-id:reply-to;
bh=3QzxOhpWqbQ08dcDnJ+F+aVGwZtu10dIT9W45t96Y0c=;
b=d0pbnVqsexspmJ4icyU8WH7dY4nFpscMYIGpAWXOtPDjkM2iTl5cgqSN0gOliKQXsg
FnK5kejP+9I8VI/dpi4J5hsJHu85Hg3uaY4vXl5bfd/laxku65Hp6FxcLZC+n6EKvHz+
hIBxgSbsigirl6XfYENwvIYDunL2Pp+ziks15GHvaRLoTMU1n9Nq+iVGCMxDVP5pGZoM
UNj1OSB4mSVNSZgp8BkyGlW9D/KEYfTN7U+eWAa0sgNx+OtlUdBPjKLzYKmlKY5relzq
HHLg7kVDNX1Z1SmzN+52ua7JLcSZrd1EDCs35EYh/piLwv2+onvWB6dOxg4jtN5PcRS8
hvCw==
X-Gm-Message-State: AOJu0YxcIyTvR4ut6FZFID6F1W2vwBXZACPD4yPLoQZ887TQbgyNYugN
1GBOexNFlpg6d3wKTYlJpIOd133+2UxQ8RYgJPjjr6r92eaSs3IsW7pgfFmpVw==
X-Gm-Gg: ASbGncuJ2AYrZBVB7E65ohTPzPru6/KstE8GfOthW3owwB2qP+/5TbhO7XeFe1E3R9k
m+OwFYkZPQgumZ4MNS4lQXRTMPK9mAZxjwmS5yQa8oirmmjSWGUq5J1RIqA4qZKppthveg0yHuG
WjTj53+BFmReKgCnUoqO7sf20yYoo4KTYVDMHRZjZiGqPwzxYvsGKgFoP+zaaHVxBUid/9uCT09
LVnAzYj6FN0A4WdXXaBXrAc2PMjO7UjbRquIgeFiM2UBZXSblNSYa7E5AdAm/DENrZ9vsYRSSgH
13moggzB5+GF9GFTqxqiOUyMlmChVcbiFVNzY1eLcZ7iSEeLYa1XXHqbBQTxK/3ifbA7h29lO7Y
7q5bjFpXdmb/kDGEo++77aN0=
X-Google-Smtp-Source: AGHT+IHUHeO1l92sanQfCSee1ckJx8At2l74DKX7L11s8LO4YQhcZCC2uw2LrohuCVVTHcoeMJH0tw==
X-Received: by 2002:a17:903:1ca:b0:240:fc:abd7 with SMTP id
d9443c01a7336-24096b23bc8mr110537775ad.31.1753975708831;
Thu, 31 Jul 2025 08:28:28 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
d9443c01a7336-241e899d272sm20775355ad.135.2025.07.31.08.28.28
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Thu, 31 Jul 2025 08:28:28 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id E6AC93E38F;
Thu, 31 Jul 2025 08:28:27 -0700 (PDT)
MIME-Version: 1.0
Date: Thu, 31 Jul 2025 15:28:27 +0000
Content-Type: multipart/alternative;
boundary="a48566e1-aa66-4c7d-a74e-82bd1ba35607-1"
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <ef7212a43aa8a4d9f6974efc759c31fd76ee5c3c@HIDDEN>
TLS-Required: No
In-Reply-To: <871ppwsz3u.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<871ppwsz3u.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
--a48566e1-aa66-4c7d-a74e-82bd1ba35607-1
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Don't bother yet, I just realized I pushed with a bug. I'll update when I=
've got it working for real.
July 30, 2025 at 10:33 PM, "Michael Albinus" <michael.albinus@HIDDEN mail=
to:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%22%20%3Cmichael.albin=
us%40gmx.de%3E > wrote:
>=20
>=20"Joe Sadusk" <joe@HIDDEN> writes:
>=20
>=20Hi Joe,
>=20
>=20>=20
>=20> I've pushed changes to address all the issues except for the remain=
ing
> > roundtrip in tramp-hlo-dir-locals-find-file. My first attempt at tha=
t
> > one broke some functionality, so it'll take a little trial and error
> > and I didn't want to hold up the rest.
> >=20
>=20I'm busy these days. Will check over the weekend.
>=20=20
>=20
> >=20
>=20> >=20
>=20> > I ask it now, because the process can be fast, or not ... And we =
don't
> > > want to be blocked by legal issues :-)
> > >=20
>=20> Happy to sign it over. I want to make this as widely accessible as=
possible.
> >=20
>=20Template sent off-list.
>=20
>=20>=20
>=20> Joe
> >=20
>=20Best regards, Michael.
>
--a48566e1-aa66-4c7d-a74e-82bd1ba35607-1
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"t=
ext/html; charset=3Dutf-8"></head><body><div>Don't bother yet, I just rea=
lized I pushed with a bug. I'll update when I've got it working for real.=
<br><br></div><p>July 30, 2025 at 10:33 PM, "Michael Albinus" <<a href=
=3D"mailto:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%22%20%3Cmicha=
el.albinus%40gmx.de%3E" target=3D"_blank" tabindex=3D"-1">michael.albinus=
@gmx.de</a>> wrote:</p><blockquote>"Joe Sadusk" <joe@HIDDEN>=
writes:<br><br>Hi Joe,<br><br><blockquote>I've pushed changes to address=
all the issues except for the remaining<br> roundtrip in tramp-hlo-dir-l=
ocals-find-file. My first attempt at that<br> one broke some functionalit=
y, so it'll take a little trial and error<br> and I didn't want to hold u=
p the rest.</blockquote><br>I'm busy these days. Will check over the week=
end.<br> <br><blockquote><blockquote>I ask it now, because the process ca=
n be fast, or not ... And we don't<br> want to be blocked by legal issues=
:-)</blockquote><br> Happy to sign it over. I want to make this as widel=
y accessible as possible.</blockquote><br>Template sent off-list.<br><br>=
<blockquote>Joe</blockquote><br>Best regards, Michael.</blockquote><div><=
br></div></body></html>
--a48566e1-aa66-4c7d-a74e-82bd1ba35607-1--
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 02 Aug 2025 15:36:02 +0000
Resent-Message-ID: <handler.79094.B79094.175414895232718 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175414895232718
(code B ref 79094); Sat, 02 Aug 2025 15:36:02 +0000
Received: (at 79094) by debbugs.gnu.org; 2 Aug 2025 15:35:52 +0000
Received: from localhost ([127.0.0.1]:37161 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uiEH0-0008VX-MB
for submit <at> debbugs.gnu.org; Sat, 02 Aug 2025 11:35:52 -0400
Received: from mout.gmx.net ([212.227.17.21]:55461)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uiEGx-0008Ux-JE
for 79094 <at> debbugs.gnu.org; Sat, 02 Aug 2025 11:35:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1754148939; x=1754753739; i=michael.albinus@HIDDEN;
bh=zFVzclRWgrozHO4hsw9UsbRguzx2p6xT9m1mRNGzs0E=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=eQZq1EZ2XWFCbJ9/5vvDL7BQJ6tQTc2xC9NrFf29XTmD9Ova1LpSmWtN89+CRCzw
B8esm8iSmb/DvIeNWYD3b2Q+3J4LqTTUNfBSEiW9eyQ6cVzNTA/a2bRYRGn2EcvxT
F9WNXlVBz7FawRITuSjg0KwmmvSvAI2CmOu4xwLbM/9oeU7oGd+DFAK4OTefbpOFp
p/bZ8iWCoIQQ8Jr3i37yAZAOVRM6e2c1aUSTukiSEnD5ph74OBU4ndcyTIIKMvTtD
2/X51pdiwjRDtIkvZ9+KJiVOJZNLRk3DSE5HZREKCKRfJMAq0PO//9dpQXMSX294m
adb0Kj7+xU/1lhNYVw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1MRTNF-1v3SYR2s6P-00JxDj; Sat, 02
Aug 2025 17:35:38 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
Date: Sat, 02 Aug 2025 17:35:37 +0200
Message-ID: <87y0s1g2ie.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:KFZWK74UsGL6qP+fAKUqHSaBkFoNVouvhfoSAq/EXhGnezmAXZK
4sQ71YPmEPZRcYglkOvdf2dwgopfyH+Fi0RPk85eB4ETLEfdTtxdCbCnvqruhN3i061P1de
i5GE3d/YryRgoB7v683l7uSQrKw5xF2Sy2bBY9H7M6JU93aIwDCzwwJl/FrKbo3QKTs6X/q
U8Xbw7juREmYFbiFDbXfg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:nVXVIKeItfw=;QJ1EUJxqTCWRlVDsLEpvX2PzXHJ
5Ar+0A7Heqch2ZTzR2qTPWqqinKWMVayMoDrMOcjDPaA0ZL5Ljbv2RiK3LdcIW7/954hJk07t
lVATi3qjrLH9lHg7uE3aha9UX7Jz2LetxQ/bSwrSwsZvbeiU34Rd82iXcvMvStdt4oMS1e1dW
NJ0mTDYsTFaiUXxqH+J4LYnYmegWkpBc5mVoop7XXWdRAjD/F7OyYP2GEF+x2M1nNuqdSESQd
96Wh8ViiAaN67TAV8M4KhHUTTtobIXDRGka/GRXshRtmmp8nr9re9A4xys5tzcpiQRe6FCDpi
9CPtiHN2kcDWiaSCybhckeKVB9Wyg4OVe3T2jYP+842cDk1UEQKeTNoNyEZ3MXTvTi/vHOxlf
otrqAykFNbvQ2pFnbsJfJLIZTqi5WehIxQgeHnBEREN+mSR9McJTg+/48c8nhenTqVmviEiXb
jOP2d/SFuiMji7T90KTrT7TcMOdXjoa2ZoEQLZULHuLJ/+jFZeZt0f800YHy/q0oJXRBqlldj
DtrQKdkJDvJgvaI7MfSNEKUCavl0qC2FGVl+KKKYz+kuDaqxyNdOKQJYgzY1G7mYesV6/Hxad
3yq3wPFJvBtci8uoy363JL5dGdJRn1OrPSQpww5y4STFzwL74x0H0dWS5iv+vufgS0h+q6btZ
n+YvVuxBsz6T7QTobxLQpjdJfPv4tngAZYJDfdt2FvlbwxpzUG1w37VxRePem5nAgIMLfVsWw
NDBDleSG8CekRyMXYkaEMXRYct+VAgMv2QcK1cHWjZhrXYg6egFWP9d7+AN/BBlZ4bzDjVV39
/CTmcjVsJVXZgmtnqaMfvxZ9RxtQCeIaXXH+ZGpOb963Cl79xFOFXQa4FvT7+HJJIXsM1jKDJ
+jQ8OcQv0NOcdTPl7c3tcdI/WNk4Wf1JKMDPAfqvcZIpmRg6Xy1DIm3VHY5RkvlhfC7jmJKRE
bKyqpNxEge2wZMxO7j472grn+NbEYWQBLQckANVnXpQROLUmPInSE3Uvup+U85hb23+0lu9uR
MMyQT3LM5XgqKu0+hvj4XFsf9lAZUBCvmNdpWEV1yy0TsG2tBdR+c36LxLCjNYPMMyk+IxiEW
AXnk9iYHg8dXB34vUzzXJXgJymHazcId6IsfinPVFoESqmGrtMoDTTJTolmZIw/bD11HfxNlu
CTnoFQwwCiHJJ1fER8iSxPLjiC56XibV/9mfP4Ni3gBSLDCU7CuBprzKD3cOTK7X5l1A8dH/4
p4IBChoZSG34rU94cSIjdkiP7C43b2cJG3pVAJcNKo0Zcw1p6EkW6be5PcXyM4xnkulhyW7ir
SVZ2jpnlecgIMv/RrQQd6nREoNdi9HLCTlCxgBtPmoTcDqMNyw21nf573wrTxkhcZ0F5dSQiP
Rbo7/d3b3FmGPw/NLyuYwm+Nw/l3VRchBW0dX44T7rlxNd3Numdgj3cBKlaNiHvnVFD/TfHbV
ftXn5d4UWPsxD5lAYcbVeh0yLlU7nSGdJRGD2MfKNHKu2WBGj8IHeCOm+HX1db1Srd9Xg+d5T
2H3tIKSgkEvTAyfV/P3bUAJzH7nwfhj6bZXAXdaqIg8DeaQAoG++ZdrGC3uDvHLdWxj2maT4p
oXVWd+4u5PypphkfL1EgoDgylBhmFAbEpKotDCmFq9kWionEo39gjxyQpz67UqCp6qtuJ+zcp
++adHyNSw3YPup/sVb3wjiiaQhqZCBdnfbUpm6tBNizGwFmfEwnMwVgVQum01kSZr+m3Z8kwo
X3Ae9rqxmVFLnX+HsDUkl/es7vuPFiDnbUUfQUCtqBJnwLi0ZcWZVv6jC+ZB/1+ij3cbVHZca
suwN95r32JU/mMMzMEEJ0Zs1Wn0bh1+VJPnOwTtJVjmvTbogGQmDddxvF4GA2mhOuOrIfjz4N
OBOtQceOGUHpGLEwf3DItSj+rZrqpyLjoguiMThM0GRN9cUsjG16P42CLf1q683RYvyyBcE+4
uldRZZJo9la4mHBh24cmdccNofYNKo91HFh7Y83LcbzEfpxWyyosUqfAJodlhcjxLDKw2oAMl
1ITG4P9BK8GZMG2T+0qJJ9WIzgW2s2zPTk/yKuvErW6Eb5Ax/RzfaJcfqTDt9wUp81Qibs+wk
1Ygwc4eLlid+Q/nUjCTwjbmVV5UkgIZsWZRdpjNIsirbAbzkObtgTrmuzJcGAc3h+vurXSxgb
SgRLoPD1x5EGzBTZdwGvW34jyDwqBVFnw9nSAKCherrnCMW5PjOxKj30wXu75ShghqFk8zH9M
n/P+UdibkIj9hLBlUGNMj01HNR2tx2zQHOxk7B/P9ddwn2uJHlyNs3kxCcU6ug9hTi03BZjcX
vIeKPldjde5GO94pmb7eqgdO1XSQS4Yecec6GXxUiBsvh8BCNwoEaWrQ1/+VxnaboJIaxnMmV
XBj2MT6vwejZ1aThQkfhP+d+RG4ZllN/n7+yzsI/g5ZeXI8ADhdj0q34L93vMt0w3Edqo0Ukb
h9jOcypPeQDMi3PRNCXGUQGf8msn1dR0CiEQ0wSkI1Q0lGjSuwLDre/ubWFOLMMeK7WIX2oHU
XsBII36UCupf3kx5enS1d8STvyqsHfwryt84bYhqBXJnL+vZz9p1x1W1rbbWH5gRK4t2yPq7I
b3YuJ9qOqo4TrUalVSC49W6VgXtRaM2qUv9EZtpl2oXVsfGahSqCyCmiXG+6XyKAB0mLyZThn
QI9+xZccHbGoV1rsD8W0uQl5/yqb3+JOwB+EM8DuuEtTEe5fUXtTBW+LoPre42fdo1bQtBRWC
BW5DmOsJLnB2NUvFHi9jAztiTCXxX9YzYLsyrfTERRTbCDnaaIb8ymN9XniSDezaluUWIGJmO
p68E6p2GvQm6jSJ+oj7WuYxvugT5joaLFcOdjQrss7f+HgUb9bfFQ2i9/4gikYFg36JJS1skr
Cr6y8yrG4pVbEx/rdhl8LDFG8jVuuDVY6Y4vc6WmLCNto/AtwxFIptIAEBx70PaJKKsnlWMpH
qexxT3WQ6QepGgySm+t/HUKJVUAAPTlrarZLcmLjzS0Wnf4m63z9uEhSHEeJz0O+j7D+704IR
TSwsS8p/R13glQtfUNiiJyh0iIFrW+ah/FyYGnGOTkyEz1sQQIKrFpjcSLGm37UMpJmoT01uR
EAjwCALXTfyqeML6dVG82LfnAEQRAAOrd1r57gvp7RGkQv1mqsuHhL5kagcRu6H5BfEsbkliG
fWyUsHwSstMO5tbTmXIHBolXNS247KtbQwTkoptJWp70/JwbL0Y28XMj6sfTqLF+rj3ieKYw0
/Zx8ej7mPzd/dSc6Vy0I0Vczq7GCSJ67kXt+Oq3Uau7v0TVpXeTglydN56QlCbYFKh1AfwZx2
y9qRFHAfUZdM8s4QP+DQ3lsPb+cX9vw021jTbCfaN0yi0T/H1s8sh31uNftfcyQEU5Ys16iTb
OxdU/W0Ei2t+X4g3p45F3U/QlWLo2kODkwUOkS15oSxxWBhlAyOQxvD0cgzG0ZZUbnv/VXnmd
JV/MDrX9MWT4jmTsE9sxUl8HiI2pHWsHNtb2W5L+SNNH3dTol6OjvqGutKA1yKj9H0Es5K7PZ
JuJVbYz9pAkHX52MG7TGpLPZpQ6A3wx3c3Kwnw1JgLCV
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
> I've pushed changes to address all the issues except for the remaining
> roundtrip in tramp-hlo-dir-locals-find-file. My first attempt at that
> one broke some functionality, so it'll take a little trial and error
> and I didn't want to hold up the rest.
Thanks. I still need to review this.
However, I'm working on a WIP patch, which adds the infrastructure to
Tramp for adding new handlers for operations, which aren't foreseen
yet. Essentially, there are two new functions:
--8<---------------cut here---------------start------------->8---
tramp-add-external-operation is a byte-code-function in =E2=80=98tramp.el=
=E2=80=99.
(tramp-add-external-operation OPERATION FUNCTION BACKEND)
Add FUNTION to Tramp BACKEND as handler for OPERATION.
OPERATION must not be one the the magic operations listed in Info
node =E2=80=98(elisp) Magic File Names=E2=80=99. FUNCTION must have the sa=
me argument
list as OPERATION. BACKEND, a symbol, must be one of the Tramp backend
packages like =E2=80=98tramp-sh=E2=80=99.
--8<---------------cut here---------------end--------------->8---
--8<---------------cut here---------------start------------->8---
tramp-remove-external-operation is a byte-code-function in =E2=80=98tramp.e=
l=E2=80=99.
(tramp-remove-external-operation OPERATION BACKEND)
Remove OPERATION from Tramp BACKEND as handler for OPERATION.
OPERATION must not be one the the magic operations listed in Info
node =E2=80=98(elisp) Magic File Names=E2=80=99. BACKEND, a symbol, must be=
one of the
Tramp backend packages like =E2=80=98tramp-sh=E2=80=99.
--8<---------------cut here---------------end--------------->8---
So all what you need to do is something like this:
--8<---------------cut here---------------start------------->8---
(defun setup-tramp-hlo ()
"Setup tramp high-level functions.
Adds advice functions with tramp implementations for the following emacs
built-in functions:
- `dir-locals--all-files'
- `locate-dominating-file'
- `dir-locals-find-file'"
(interactive)
(tramp-add-external-operation
#'dir-locals--all-files
#'tramp-hlo-dir-locals--all-files 'tramp-sh)
(tramp-add-external-operation
#'locate-dominating-file
#'tramp-hlo-locate-dominating-file 'tramp-sh)
(tramp-add-external-operation
#'dir-locals-find-file
#'tramp-hlo-dir-locals-find-file 'tramp-sh)
)
(defun remove-tramp-hlo ()
"Remove tramp high-level functions.
Remove tramp advice functions for the following emacs built-in functions:
- `dir-locals--all-files'
- `locate-dominating-file'
- `dir-locals-find-file'"
(interactive)
(tramp-remove-external-operation
#'dir-locals--all-files 'tramp-sh)
(tramp-remove-external-operation
#'locate-dominating-file 'tramp-sh)
(tramp-remove-external-operation
#'dir-locals-find-file 'tramp-sh)
)
--8<---------------cut here---------------end--------------->8---
tramp-hlo-dir-locals--all-files, tramp-hlo-locate-dominating-file and
tramp-hlo-dir-locals-find-file don't need any longer the first argument,
orig-fun. And you can get rid of tramp-hlo-advice.
In your own backend implementations, I recommend to use the macro
--8<---------------cut here---------------start------------->8---
(with-parsed-tramp-file-name nil file ...)
--8<---------------cut here---------------end--------------->8---
This creates for you the variables 'v' (the tramp-file-name structure of
'file') as well as 'method', 'user', 'host' and 'localname' (the
respective parts of the remote file name 'file'.
The Tramp patch is appended. Do you like to test it?
> Joe
Best regards, Michael.
--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment
Content-Transfer-Encoding: quoted-printable
diff --git a/lisp/tramp.el b/lisp/tramp.el
index 2208ce88..b8012f59 100644
=2D-- a/lisp/tramp.el
+++ b/lisp/tramp.el
@@ -2380,6 +2380,9 @@ arguments to pass to the OPERATION."
signal-hook-function)
(apply operation args)))
=20
+(defvar tramp-file-name-for-operation-external nil
+ "List of operations added by external packages.")
+
;; We handle here all file primitives. Most of them have the file
;; name as first parameter; nevertheless we check for them explicitly
;; in order to be signaled if a new primitive appears. This
@@ -2387,6 +2390,10 @@ arguments to pass to the OPERATION."
;; syntactical means whether a foreign method must be called. It would
;; ease the life if `file-name-handler-alist' would support a decision
;; function as well but regexp only.
+;; Operations added by external packages are added to
+;; `tramp-file-name-for-operation-external'. They expect the file
+;; name to be checked as first argument or, if there isn't any
+;; argument, `default-directory'.
(defun tramp-file-name-for-operation (operation &rest args)
"Return file name related to OPERATION file primitive.
ARGS are the arguments OPERATION has been called with.
@@ -2396,40 +2403,40 @@ first argument of `expand-file-name' is absolute a=
nd not remote.
Must be handled by the callers."
(cond
;; FILE resp DIRECTORY.
- ((member operation
- '(access-file byte-compiler-base-file-name delete-directory
- delete-file diff-latest-backup-file directory-file-name
- directory-files directory-files-and-attributes dired-compress-file
- dired-uncache file-acl file-accessible-directory-p file-attributes
- file-directory-p file-executable-p file-exists-p file-local-copy
- file-locked-p file-modes file-name-as-directory
- file-name-case-insensitive-p file-name-directory
- file-name-nondirectory file-name-sans-versions
- file-notify-add-watch file-ownership-preserved-p file-readable-p
- file-regular-p file-remote-p file-selinux-context file-symlink-p
- file-system-info file-truename file-writable-p
- find-backup-file-name get-file-buffer
- insert-directory insert-file-contents load lock-file make-director=
y
- make-lock-file-name set-file-acl set-file-modes
- set-file-selinux-context set-file-times substitute-in-file-name
- unhandled-file-name-directory unlock-file vc-registered
- ;; Emacs 28- only.
- make-directory-internal
- ;; Emacs 29+ only.
- abbreviate-file-name
- ;; Tramp internal magic file name function.
- tramp-set-file-uid-gid))
+ ((memq operation
+ '(access-file byte-compiler-base-file-name delete-directory
+ delete-file diff-latest-backup-file directory-file-name
+ directory-files directory-files-and-attributes dired-compress-file
+ dired-uncache file-acl file-accessible-directory-p file-attributes
+ file-directory-p file-executable-p file-exists-p file-local-copy
+ file-locked-p file-modes file-name-as-directory
+ file-name-case-insensitive-p file-name-directory
+ file-name-nondirectory file-name-sans-versions
+ file-notify-add-watch file-ownership-preserved-p file-readable-p
+ file-regular-p file-remote-p file-selinux-context file-symlink-p
+ file-system-info file-truename file-writable-p
+ find-backup-file-name get-file-buffer
+ insert-directory insert-file-contents load lock-file make-directory
+ make-lock-file-name set-file-acl set-file-modes
+ set-file-selinux-context set-file-times substitute-in-file-name
+ unhandled-file-name-directory unlock-file vc-registered
+ ;; Emacs 28- only.
+ make-directory-internal
+ ;; Emacs 29+ only.
+ abbreviate-file-name
+ ;; Tramp internal magic file name function.
+ tramp-set-file-uid-gid))
(if (file-name-absolute-p (nth 0 args))
(nth 0 args)
default-directory))
;; STRING FILE.
((eq operation 'make-symbolic-link) (nth 1 args))
;; FILE DIRECTORY resp FILE1 FILE2.
- ((member operation
- '(add-name-to-file copy-directory copy-file
- file-equal-p file-in-directory-p
- file-name-all-completions file-name-completion
- file-newer-than-file-p rename-file))
+ ((memq operation
+ '(add-name-to-file copy-directory copy-file
+ file-equal-p file-in-directory-p
+ file-name-all-completions file-name-completion
+ file-newer-than-file-p rename-file))
(cond
((tramp-tramp-file-p (nth 0 args)) (nth 0 args))
((file-name-absolute-p (nth 1 args)) (nth 1 args))
@@ -2446,29 +2453,34 @@ Must be handled by the callers."
(nth 2 args)
default-directory))
;; BUFFER.
- ((member operation
- '(make-auto-save-file-name
- set-visited-file-modtime verify-visited-file-modtime))
+ ((memq operation
+ '(make-auto-save-file-name
+ set-visited-file-modtime verify-visited-file-modtime))
(buffer-file-name
(if (bufferp (nth 0 args)) (nth 0 args) (current-buffer))))
;; COMMAND.
- ((member operation
- '(exec-path make-nearby-temp-file make-process process-file
- shell-command start-file-process temporary-file-directory
- ;; Emacs 29+ only.
- list-system-processes memory-info process-attributes
- ;; Emacs 30+ only.
- file-group-gid file-user-uid))
+ ((memq operation
+ '(exec-path make-nearby-temp-file make-process process-file
+ shell-command start-file-process temporary-file-directory
+ ;; Emacs 29+ only.
+ list-system-processes memory-info process-attributes
+ ;; Emacs 30+ only.
+ file-group-gid file-user-uid))
default-directory)
;; PROC.
- ((member operation '(file-notify-rm-watch file-notify-valid-p))
+ ((memq operation '(file-notify-rm-watch file-notify-valid-p))
(when (processp (nth 0 args))
(tramp-get-default-directory (process-buffer (nth 0 args)))))
;; VEC.
- ((member operation
- '(tramp-get-home-directory tramp-get-remote-gid
- tramp-get-remote-groups tramp-get-remote-uid))
+ ((memq operation
+ '(tramp-get-home-directory tramp-get-remote-gid
+ tramp-get-remote-groups tramp-get-remote-uid))
(tramp-make-tramp-file-name (nth 0 args)))
+ ;; FILE resp DIRECTORY.
+ ((memq operation tramp-file-name-for-operation-external)
+ (if (file-name-absolute-p (nth 0 args))
+ (nth 0 args)
+ default-directory))
;; Unknown file primitive.
(t (error "Unknown file I/O primitive: %s" operation))))
=20
@@ -2494,6 +2506,65 @@ Must be handled by the callers."
res (cdr elt))))
res)))
=20
+(defun tramp-add-external-operation (operation function backend)
+ "Add FUNTION to Tramp BACKEND as handler for OPERATION.
+OPERATION must not be one the the magic operations listed in Info
+node `(elisp) Magic File Names'. FUNCTION must have the same argument
+list as OPERATION. BACKEND, a symbol, must be one of the Tramp backend
+packages like `tramp-sh'."
+ (require backend)
+ ;; Make BACKEND aware of the new operation.
+ (when-let* ((fnha
+ (intern
+ (concat (symbol-name backend) "-file-name-handler-alist")))
+ ((boundp fnha)))
+ (add-to-list fnha (cons operation function)))
+ (unless (memq operation tramp-file-name-for-operation-external)
+ ;; Make Tramp aware of the new operation.
+ (add-to-list 'tramp-file-name-for-operation-external operation)
+ (put #'tramp-file-name-handler
+ 'operations
+ (cons operation (get 'tramp-file-name-handler 'operations)))
+ ;; Add an advice for OPERATION, in order to invoke the handler FUNCTI=
ON.
+ (advice-add
+ operation :around
+ `(lambda (orig-fun &rest args)
+ (if-let* ((handler (find-file-name-handler (car args) #',operation)))
+ (apply handler #',operation args)
+ (apply orig-fun args)))
+ `((name . ,(concat "tramp-advice-" (symbol-name operation)))))))
+
+(defun tramp-remove-external-operation (operation backend)
+ "Remove OPERATION from Tramp BACKEND as handler for OPERATION.
+OPERATION must not be one the the magic operations listed in Info
+node `(elisp) Magic File Names'. BACKEND, a symbol, must be one of the
+Tramp backend packages like `tramp-sh'."
+ ;; Remove OPERATION from BACKEND.
+ (when-let* ((fnha
+ (intern
+ (concat (symbol-name backend) "-file-name-handler-alist")))
+ ((boundp fnha)))
+ (setf (alist-get operation (symbol-value fnha) nil 'remove) nil))
+ ;; Check, whether OPERATION is still used in any backend.
+ (unless (seq-some
+ (lambda (fnha)
+ (unless (eq 'tramp-ftp-file-name-handler (cdr fnha))
+ ;; Load backend.
+ (funcall (symbol-function (car fnha)) "/")
+ (alist-get
+ operation
+ (symbol-value
+ (intern (concat (symbol-name (cdr fnha)) "-alist"))))))
+ tramp-foreign-file-name-handler-alist)
+ ;; Make Tramp unaware of OPERATION.
+ (setq tramp-file-name-for-operation-external
+ (delq operation tramp-file-name-for-operation-external))
+ (put #'tramp-file-name-handler
+ 'operations
+ (delete operation (get 'tramp-file-name-handler 'operations)))
+ ;; Remove an advice for OPERATION.
+ (advice-remove operation (concat "tramp-advice-" (symbol-name operati=
on)))))
+
;; Main function.
;;;###autoload
(defun tramp-file-name-handler (operation &rest args)
--=-=-=--
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 03 Aug 2025 03:11:02 +0000
Resent-Message-ID: <handler.79094.B79094.17541906262570 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Michael Albinus" <michael.albinus@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.17541906262570
(code B ref 79094); Sun, 03 Aug 2025 03:11:02 +0000
Received: (at 79094) by debbugs.gnu.org; 3 Aug 2025 03:10:26 +0000
Received: from localhost ([127.0.0.1]:40443 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uiP7B-0000fL-0H
for submit <at> debbugs.gnu.org; Sat, 02 Aug 2025 23:10:25 -0400
Received: from mail-qk1-f174.google.com ([209.85.222.174]:50660)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1uiP77-0000eR-U8
for 79094 <at> debbugs.gnu.org; Sat, 02 Aug 2025 23:10:22 -0400
Received: by mail-qk1-f174.google.com with SMTP id
af79cd13be357-7e7fb58425cso6206485a.1
for <79094 <at> debbugs.gnu.org>; Sat, 02 Aug 2025 20:10:21 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1754190616; x=1754795416;
h=references:in-reply-to:cc:to:subject:tls-required:message-id:from
:date:mime-version:x-gm-message-state:from:to:cc:subject:date
:message-id:reply-to;
bh=zIaBG34wZsk+LK0E43dyQ/u8W2jluzFTERMC9WoF2Cw=;
b=r8810lJHGpaMD+u8gYro33cPbETe5N07XyuGzGBsgR31NViT/6qJ9wqexIwyaSb8AP
wVmLF8B9UkQaMUT2eMrWYYSltLdWCnKeJImox1PiNJ3AFkuqfb0hUpq+v24+xO5J3w9e
yTYMlI06R3HMMNP+iE53T02hv7tzZjwji/Lmtr2mTvoy6Yv3oilH16C2qRrZy984QQQE
nyrfNi8nGZ3BFs7O1WW/HcRpTVlDQwLpqKAckFwQN9a3QlsiNUvIgVzwfw0OX4SR4pR7
0lCOGQ0YjxrpJ/kECqBdrveZuGF5cVR4Bq+BujXhhSpMIJ0hvV8rJmazP2HFDrMVT/+k
LE7Q==
X-Gm-Message-State: AOJu0YyjM2SnZtl9Y5hXmkrfvTZrYSrWNifPOhAagkwHI62ObKp60nPw
pOknGURRdoUhmcLKy3xiPS7Vq71j82e9I4w7MAr0GFjhgVVLCdWCiJVRlzfraQ==
X-Gm-Gg: ASbGncuRPLuLY90E2ClgmJZLx2zUX9AbeVzp/c67x971kJNzDVMW4hK0gJTq3gRWrrj
BRD6BSDMA3HbjiO+7UI4GccdXx7OnLgV2A9ZYe7uq8wJ8LnuXCDLVihoPvwe/QX/mNVyH75wMmV
85Lu1QwVPInFNyqHppiulSvdklRfh03+zRy7xPr0JFNoU10Q8sCm3gspNK5gTmfIifb6AiLwLdH
YcCyaCqpT54Fqb8NkLHZgZD2ZEdtcGoykKfuycys06ABmDRBqX/DQU2qadn3fohRidDPsM3xVny
AAJfE/Dkp3zvr0RtyiLu8kRHV07xNV+LYX6us1i56ulJokM8G6y+VxM/P+zmwEneJ2m906HkLUN
nNyQWBZJo8zR1
X-Google-Smtp-Source: AGHT+IHCUzCZsf01lDn0McntLg8IDTymnPHBsK79DCkXcjVldCRx7Meo7w4xatkmt9zWiE/YWe2nOA==
X-Received: by 2002:a05:620a:844:b0:7e6:5ef5:c7e3 with SMTP id
af79cd13be357-7e696399d03mr467032385a.63.1754190615898;
Sat, 02 Aug 2025 20:10:15 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
af79cd13be357-7e67f742e7asm400282585a.71.2025.08.02.20.10.15
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Sat, 02 Aug 2025 20:10:15 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id EC3FA3E387;
Sat, 2 Aug 2025 20:10:13 -0700 (PDT)
MIME-Version: 1.0
Date: Sun, 03 Aug 2025 03:10:13 +0000
Content-Type: multipart/alternative;
boundary="8d0d2933-3b19-4878-a606-05d815851389-1"
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
TLS-Required: No
In-Reply-To: <87y0s1g2ie.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
--8d0d2933-3b19-4878-a606-05d815851389-1
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
That would be perfect for this application. I will definitely test it out=
. I'm assuming this patch is for unstable emacs?=C2=A0=C2=A0
Also, I saw with-parse-tramp-file-name and considered using it. However t=
he macro I wrote for the advice function form of these operations already=
has to dissect the filename to check if its a valid tramp file, so I wan=
ted to reuse the parse that already happened. However in the case of your=
new tramp external operations it completely makes sense.
What would you say if I made a version using advice functions for emacs 3=
0, and another using tramp external operations for unstable?
Joe
August 2, 2025 at 11:35 AM, "Michael Albinus" <michael.albinus@HIDDEN mai=
lto:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%22%20%3Cmichael.albi=
nus%40gmx.de%3E > wrote:
>=20
>=20"Joe Sadusk" <joe@HIDDEN> writes:
>=20
>=20Hi Joe,
>=20
>=20>=20
>=20> I've pushed changes to address all the issues except for the remain=
ing
> > roundtrip in tramp-hlo-dir-locals-find-file. My first attempt at tha=
t
> > one broke some functionality, so it'll take a little trial and error
> > and I didn't want to hold up the rest.
> >=20
>=20Thanks. I still need to review this.
>=20
>=20However, I'm working on a WIP patch, which adds the infrastructure to
> Tramp for adding new handlers for operations, which aren't foreseen
> yet. Essentially, there are two new functions:
>=20
>=20--8<---------------cut here---------------start------------->8---
> tramp-add-external-operation is a byte-code-function in =E2=80=98tramp.=
el=E2=80=99.
>=20
>=20(tramp-add-external-operation OPERATION FUNCTION BACKEND)
>=20
>=20Add FUNTION to Tramp BACKEND as handler for OPERATION.
> OPERATION must not be one the the magic operations listed in Info
> node =E2=80=98(elisp) Magic File Names=E2=80=99. FUNCTION must have the=
same argument
> list as OPERATION. BACKEND, a symbol, must be one of the Tramp backend
> packages like =E2=80=98tramp-sh=E2=80=99.
> --8<---------------cut here---------------end--------------->8---
>=20
>=20--8<---------------cut here---------------start------------->8---
> tramp-remove-external-operation is a byte-code-function in =E2=80=98tra=
mp.el=E2=80=99.
>=20
>=20(tramp-remove-external-operation OPERATION BACKEND)
>=20
>=20Remove OPERATION from Tramp BACKEND as handler for OPERATION.
> OPERATION must not be one the the magic operations listed in Info
> node =E2=80=98(elisp) Magic File Names=E2=80=99. BACKEND, a symbol, mus=
t be one of the
> Tramp backend packages like =E2=80=98tramp-sh=E2=80=99.
> --8<---------------cut here---------------end--------------->8---
>=20
>=20So all what you need to do is something like this:
>=20
>=20--8<---------------cut here---------------start------------->8---
>=20
>=20(defun setup-tramp-hlo ()
> "Setup tramp high-level functions.
> Adds advice functions with tramp implementations for the following emac=
s
> built-in functions:
> - `dir-locals--all-files'
> - `locate-dominating-file'
> - `dir-locals-find-file'"
> (interactive)
> (tramp-add-external-operation
> #'dir-locals--all-files
> #'tramp-hlo-dir-locals--all-files 'tramp-sh)
> (tramp-add-external-operation
> #'locate-dominating-file
> #'tramp-hlo-locate-dominating-file 'tramp-sh)
> (tramp-add-external-operation
> #'dir-locals-find-file
> #'tramp-hlo-dir-locals-find-file 'tramp-sh)
> )
>=20
>=20(defun remove-tramp-hlo ()
> "Remove tramp high-level functions.
> Remove tramp advice functions for the following emacs built-in function=
s:
> - `dir-locals--all-files'
> - `locate-dominating-file'
> - `dir-locals-find-file'"
> (interactive)
> (tramp-remove-external-operation
> #'dir-locals--all-files 'tramp-sh)
> (tramp-remove-external-operation
> #'locate-dominating-file 'tramp-sh)
> (tramp-remove-external-operation
> #'dir-locals-find-file 'tramp-sh)
> )
> --8<---------------cut here---------------end--------------->8---
>=20
>=20tramp-hlo-dir-locals--all-files, tramp-hlo-locate-dominating-file and
> tramp-hlo-dir-locals-find-file don't need any longer the first argument=
,
> orig-fun. And you can get rid of tramp-hlo-advice.
>=20
>=20In your own backend implementations, I recommend to use the macro
>=20
>=20--8<---------------cut here---------------start------------->8---
> (with-parsed-tramp-file-name nil file ...)
> --8<---------------cut here---------------end--------------->8---
>=20
>=20This creates for you the variables 'v' (the tramp-file-name structure=
of
> 'file') as well as 'method', 'user', 'host' and 'localname' (the
> respective parts of the remote file name 'file'.
>=20
>=20The Tramp patch is appended. Do you like to test it?
>=20
>=20>=20
>=20> Joe
> >=20
>=20Best regards, Michael.
>
--8d0d2933-3b19-4878-a606-05d815851389-1
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"t=
ext/html; charset=3Dutf-8"></head><body><div>That would be perfect for th=
is application. I will definitely test it out. I'm assuming this patch is=
for unstable emacs?=C2=A0=C2=A0</div><div><br></div><div>Also, I saw wit=
h-parse-tramp-file-name and considered using it. However the macro I wrot=
e for the advice function form of these operations already has to dissect=
the filename to check if its a valid tramp file, so I wanted to reuse th=
e parse that already happened. However in the case of your new tramp exte=
rnal operations it completely makes sense.</div><div><br></div><div>What =
would you say if I made a version using advice functions for emacs 30, an=
d another using tramp external operations for unstable?</div><div><br></d=
iv><div>Joe<br><br></div><p>August 2, 2025 at 11:35 AM, "Michael Albinus"=
<<a href=3D"mailto:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%2=
2%20%3Cmichael.albinus%40gmx.de%3E" target=3D"_blank" tabindex=3D"-1">mic=
hael.albinus@HIDDEN</a>> wrote:</p><blockquote>"Joe Sadusk" <joe@sa=
dusk.com> writes:<br><br>Hi Joe,<br><br><blockquote>I've pushed change=
s to address all the issues except for the remaining<br> roundtrip in tra=
mp-hlo-dir-locals-find-file. My first attempt at that<br> one broke some =
functionality, so it'll take a little trial and error<br> and I didn't wa=
nt to hold up the rest.</blockquote><br>Thanks. I still need to review th=
is.<br><br>However, I'm working on a WIP patch, which adds the infrastruc=
ture to<br>Tramp for adding new handlers for operations, which aren't for=
eseen<br>yet. Essentially, there are two new functions:<br><br>--8<---=
------------cut here---------------start------------->8---<br>tramp-ad=
d-external-operation is a byte-code-function in =E2=80=98tramp.el=E2=80=
=99.<br><br>(tramp-add-external-operation OPERATION FUNCTION BACKEND)<br>=
<br>Add FUNTION to Tramp BACKEND as handler for OPERATION.<br>OPERATION m=
ust not be one the the magic operations listed in Info<br>node =E2=80=98(=
elisp) Magic File Names=E2=80=99. FUNCTION must have the same argument<b=
r>list as OPERATION. BACKEND, a symbol, must be one of the Tramp backend=
<br>packages like =E2=80=98tramp-sh=E2=80=99.<br>--8<---------------cu=
t here---------------end--------------->8---<br><br>--8<-----------=
----cut here---------------start------------->8---<br>tramp-remove-ext=
ernal-operation is a byte-code-function in =E2=80=98tramp.el=E2=80=99.<br=
><br>(tramp-remove-external-operation OPERATION BACKEND)<br><br>Remove OP=
ERATION from Tramp BACKEND as handler for OPERATION.<br>OPERATION must no=
t be one the the magic operations listed in Info<br>node =E2=80=98(elisp)=
Magic File Names=E2=80=99. BACKEND, a symbol, must be one of the<br>Tram=
p backend packages like =E2=80=98tramp-sh=E2=80=99.<br>--8<-----------=
----cut here---------------end--------------->8---<br><br>So all what =
you need to do is something like this:<br><br>--8<---------------cut h=
ere---------------start------------->8---<br><br>(defun setup-tramp-hl=
o ()<br> "Setup tramp high-level functions.<br>Adds advice functions wit=
h tramp implementations for the following emacs<br>built-in functions:<br=
>- `dir-locals--all-files'<br>- `locate-dominating-file'<br>- `dir-locals=
-find-file'"<br> (interactive)<br> (tramp-add-external-operation<br> =
#'dir-locals--all-files<br> #'tramp-hlo-dir-locals--all-files 'tramp-sh=
)<br> (tramp-add-external-operation<br> #'locate-dominating-file<br> =
#'tramp-hlo-locate-dominating-file 'tramp-sh)<br> (tramp-add-external-o=
peration<br> #'dir-locals-find-file<br> #'tramp-hlo-dir-locals-find-f=
ile 'tramp-sh)<br> )<br><br>(defun remove-tramp-hlo ()<br> "Remove tram=
p high-level functions.<br>Remove tramp advice functions for the followin=
g emacs built-in functions:<br>- `dir-locals--all-files'<br>- `locate-dom=
inating-file'<br>- `dir-locals-find-file'"<br> (interactive)<br> (tramp=
-remove-external-operation<br> #'dir-locals--all-files 'tramp-sh)<br> =
(tramp-remove-external-operation<br> #'locate-dominating-file 'tramp-sh=
)<br> (tramp-remove-external-operation<br> #'dir-locals-find-file 'tra=
mp-sh)<br> )<br>--8<---------------cut here---------------end--------=
------->8---<br><br>tramp-hlo-dir-locals--all-files, tramp-hlo-locate-=
dominating-file and<br>tramp-hlo-dir-locals-find-file don't need any long=
er the first argument,<br>orig-fun. And you can get rid of tramp-hlo-advi=
ce.<br><br>In your own backend implementations, I recommend to use the ma=
cro<br><br>--8<---------------cut here---------------start------------=
->8---<br>(with-parsed-tramp-file-name nil file ...)<br>--8<-------=
--------cut here---------------end--------------->8---<br><br>This cre=
ates for you the variables 'v' (the tramp-file-name structure of<br>'file=
') as well as 'method', 'user', 'host' and 'localname' (the<br>respective=
parts of the remote file name 'file'.<br><br>The Tramp patch is appended=
. Do you like to test it?<br><br><blockquote>Joe</blockquote><br>Best reg=
ards, Michael.</blockquote><div><br></div></body></html>
--8d0d2933-3b19-4878-a606-05d815851389-1--
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 03 Aug 2025 06:49:02 +0000
Resent-Message-ID: <handler.79094.B79094.17542037226498 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.17542037226498
(code B ref 79094); Sun, 03 Aug 2025 06:49:02 +0000
Received: (at 79094) by debbugs.gnu.org; 3 Aug 2025 06:48:42 +0000
Received: from localhost ([127.0.0.1]:41580 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uiSWQ-0001gk-4P
for submit <at> debbugs.gnu.org; Sun, 03 Aug 2025 02:48:42 -0400
Received: from mout.gmx.net ([212.227.17.20]:47169)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uiSWM-0001gO-VG
for 79094 <at> debbugs.gnu.org; Sun, 03 Aug 2025 02:48:39 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1754203712; x=1754808512; i=michael.albinus@HIDDEN;
bh=Dlpxm1AhkRuKwzIJqNZf01t2KhtlNFED0oYrmt2LZn0=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=q+wCtQd8DRUqOukm4UpY4erjXYhPftwT4NgPvAG3q+f8Qw3/sgaq4LtXLA6dUmAg
v7vdP/f2G6eNgA+0IaVEQEDZt1RnUByaqB+tcaLIVQo/UQB+buqR2H88kWlC8l5Jd
h22GNUnZMXgrxRgHfbX8cUkYowA3QTWvAv1HHVS69dEpRna/IE8NWsAsxXL4JXzdF
U6/RU6QG2m3flWGwpY9tXKryg3M9bmLQcl3+lndJH9RnZ/ysJdkzNerVupP5Y9Iky
piolxv3HERyS6g/BkUB2LemFPmN6VwzP9toEQC7/R0Vvu/R/XJ4gzhOGHEDs7DG6H
lMq1wobyYB7+/1d2cA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1M7K3Y-1uja3Q0zXg-000Vfd; Sun, 03
Aug 2025 08:48:32 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
<cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
Date: Sun, 03 Aug 2025 08:48:31 +0200
Message-ID: <87jz3kgatc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:C83EVGfE9elCKBU3dP58JLE1p5SLI5mteN/BmCRdTqLtIIfDIzp
MJkc56Iw96axBRGYVl7AbcjgBiVZl4RYdWyZEBm4V8g2KPpt0OA5qdWXCaNjAqYQkf4fgFc
mNiI3JH6zHmO3R+8uaoHhz9Row2coeirdq0pZvRTYpZ3UpXG80tniwtNKYAavrE6bpAYKwH
hR7I0IH39GpSP5WdBYygQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:sLo/GXQAuSg=;ar3yjrcMHnc7yeEHuUtMcZ3oHH1
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
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
> That would be perfect for this application. I will definitely test it
> out. I'm assuming this patch is for unstable emacs? =20
Yes. Emacs 30 is closed for new features.
> What would you say if I made a version using advice functions for
> emacs 30, and another using tramp external operations for unstable?
That's not needed. Tramp is also available on GNU ELPA. The next release
for GNU ELPA, 2.8.0.2, planned for the end of this month, will include
my patch.
Tramp 2.8 is backward compatible down to Emacs 28.
All what you need in your package is a line like the following in the
head of the file:
=2D-8<---------------cut here---------------start------------->8---
;; Package-Requires: ((tramp "2.8"))
=2D-8<---------------cut here---------------end--------------->8---
> Joe
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 03 Aug 2025 09:43:02 +0000
Resent-Message-ID: <handler.79094.B79094.175421415719084 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175421415719084
(code B ref 79094); Sun, 03 Aug 2025 09:43:02 +0000
Received: (at 79094) by debbugs.gnu.org; 3 Aug 2025 09:42:37 +0000
Received: from localhost ([127.0.0.1]:42584 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uiVEi-0004xi-OU
for submit <at> debbugs.gnu.org; Sun, 03 Aug 2025 05:42:37 -0400
Received: from mout.gmx.net ([212.227.15.18]:39189)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uiVEf-0004xM-Ui
for 79094 <at> debbugs.gnu.org; Sun, 03 Aug 2025 05:42:35 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1754214145; x=1754818945; i=michael.albinus@HIDDEN;
bh=EqcYj2GSwKFE2BqDRJ40g6fqZ4nSikuTWqCyl/zdgQk=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=Z+BuK/iRz3SO5B6ykoc45Fp615wCdpmMCcX1XfkRDVPgRJqemRZYxRdlf0bgY3Yb
zwOds6KZy3/VLHht/KhVIzOUrZ7FcfrXeiblBWf/KL7OeIuvanUsGajxbLSUr2GF1
RUn3vOyCIJlSp9ZAc6wdkw+IVXggDvmBRQhh/2ORJqREc/vDDC4k8+ywYj3/Jj34I
bBVtFlzOmZaRb/ytJk1neapjkpzaLPYXYoHqY0dEolXmRxCJLHku+1Exh6tult0YZ
ADtFa1gGSiqotErD1Qzz01Ae3zYR+RQtTe1+9U4jhdIitw8pYZqwNPGuM3q/o9JOZ
jf3cpW6P94ezbwODrQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx004
[212.227.17.190]) with ESMTPSA (Nemesis) id 1MvbBk-1uPSFS43eg-015STR; Sun, 03
Aug 2025 11:42:25 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
Date: Sun, 03 Aug 2025 11:42:24 +0200
Message-ID: <875xf4g2rj.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:4GAj0zvh+rqI7VJTYBXeeDivjWK18eCdjZe6jluJQLpRQMNscgO
kRzbmEypEBh8V7DsRtku+dKVRvSpjJJPzFcoRFHLKF0pzQYwyKUj4yhR3RDazZ+E3y669iU
DsIv0YZq/BupaLIPWfweovCwmcZQkGC56b8lmuNJp0XPg2oB0sDI67wZLbLtgzs/qvlpIHq
tjzJPLpl5BL2gkU9pKjfg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:Ir6vnwYl3eE=;YuF6Ae5UyT0eE+TetxvXLCC1q7K
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
yXclMkcUrBip/M5mouaSIvEW/LY1UhOo=
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
I went through the current version of tramp-hlo.el. Besides of the
proposed infrastructure change, there's not too much to say now. The
file needs some formatting change (don't excedd 80 chars width), and the
header might be in more sync with other files in GNU ELPA:
There are some documentation nitpicks. The first line in a docstring
shall be finished with a period. Two sentences shall be divided by two
space characters. Something like this, see (info "(elisp) Documentation Tips")
Tramp is written in documentation "Tramp", and Emacs is written
"Emacs". Capitalized.
For the ;;; Commentary section, I'll provide you an info link into the
Tramp manual, describing this approach. Once available.
For my taste, some more comments would be useful.
You see, all of this is rather minor :-)
> Joe
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Tue, 05 Aug 2025 10:04:02 +0000
Resent-Message-ID: <handler.79094.B79094.17543882235165 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.17543882235165
(code B ref 79094); Tue, 05 Aug 2025 10:04:02 +0000
Received: (at 79094) by debbugs.gnu.org; 5 Aug 2025 10:03:43 +0000
Received: from localhost ([127.0.0.1]:53743 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ujEWE-0001LE-KE
for submit <at> debbugs.gnu.org; Tue, 05 Aug 2025 06:03:42 -0400
Received: from mout.gmx.net ([212.227.17.22]:54753)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ujEWB-0001Kw-MJ
for 79094 <at> debbugs.gnu.org; Tue, 05 Aug 2025 06:03:40 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1754388210; x=1754993010; i=michael.albinus@HIDDEN;
bh=9kirBlGpumYlW25uOkhOdLZdsqDzBHjl78MU28d8llY=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=ldvrIUt01rj05VdDS1MSPJteWpVC1+DiqURhFa5KcPzOskM155BdNHRTUVMPcbJS
nbYl7dV7kKWYrNvcjlK/oPG/YmhfU8eVpvVJDG4X4OdLRCgsKUeGmUYhegGPY0u9z
KYpsOeCV/Wx/0WfZTJ96B8Gwp45V944yN8VPunBp4kMoD8zSrhWUFBQe3Aww7n3y1
/xbstAoMtFMTZXgMs+2AthJmHdwH0O6BNyabw/1cMcyQDbLWujJ1NUIoCACSnpL4W
RsL9BvQerxJS9y6//W1cv5MJuTnfaHcGUIQ49wjdd7FnJ5ZhvuhRYnzPZnzeRr7pS
KaaUwBrCc4LeEtcvGg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx104
[212.227.17.168]) with ESMTPSA (Nemesis) id 1MTzb8-1vA91E17sw-00L8lp; Tue, 05
Aug 2025 12:03:30 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <87jz3kgatc.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
<cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
<87jz3kgatc.fsf@HIDDEN>
Date: Tue, 05 Aug 2025 12:03:29 +0200
Message-ID: <87pldaccge.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:WjxBu9dQib7D2Ue+kdqMGjWJtuNbvHC4lJvi/QW7qKUkg+vQDg5
a5PcZ3mILzLV86xACTlTIASHmrFuRbC5KaoJmjvo3BL8Kslv7KKulP8qES3oZqMOVZDe+b5
0qUb0Vgvm5Uyt27jRXRydSJ89aOvTPiXbBfB1pfXGPN1EHFwaqm2tJVB/n23LnX2g06xNFs
VqX51R90kcwX2sSXUhXRg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:2O7AUVhdkWs=;KTlnVYepKgYHfWqzhBZEPF0YpmL
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
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
Michael Albinus <michael.albinus@HIDDEN> writes:
Hi Joe,
>> That would be perfect for this application. I will definitely test it
>> out. I'm assuming this patch is for unstable emacs? =20
>
> Yes. Emacs 30 is closed for new features.
I've pushed the patch to the repositories.
>> Joe
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: "Joe Sadusk" <joe@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 06 Aug 2025 12:34:02 +0000
Resent-Message-ID: <handler.79094.B79094.175448362618095 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Michael Albinus" <michael.albinus@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175448362618095
(code B ref 79094); Wed, 06 Aug 2025 12:34:02 +0000
Received: (at 79094) by debbugs.gnu.org; 6 Aug 2025 12:33:46 +0000
Received: from localhost ([127.0.0.1]:58412 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ujdL0-0004hm-0T
for submit <at> debbugs.gnu.org; Wed, 06 Aug 2025 08:33:46 -0400
Received: from mail-pf1-f172.google.com ([209.85.210.172]:48506)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <jsadusk@HIDDEN>) id 1ujdKx-0004hY-8b
for 79094 <at> debbugs.gnu.org; Wed, 06 Aug 2025 08:33:44 -0400
Received: by mail-pf1-f172.google.com with SMTP id
d2e1a72fcca58-76c18568e5eso2540711b3a.1
for <79094 <at> debbugs.gnu.org>; Wed, 06 Aug 2025 05:33:43 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1754483617; x=1755088417;
h=references:in-reply-to:cc:to:subject:tls-required:message-id:from
:date:mime-version:x-gm-message-state:from:to:cc:subject:date
:message-id:reply-to;
bh=FnT1dte8hk5gqAIyg1Uc+5gTeaoeEAvrXmtqGQIm040=;
b=l4KaMp/EjUi++ycxd9/5bkfNkQSqG5OEZorYjtPLq/0e6M+QQSMFSp/ReHkRz8TJm9
LzikOJOh8ApBQaPxjswfRZG1wtVTytJ3XUPS0VuvWT4kIRVE1vR+hFtnLEJEQMw2KQBC
cIvOCvQdf+1zoo/0gX2tZVR+SEt2HBTSUgR/0TxmETXV2mM1vP1yiUlkrue4Z8s5xkXt
Wo0UDr/NJEFYTn3Vn8zniLuCKrsTuQ8xUooXlbaCkGDay0HbnFNG7y5v2xtZ56gq5HKh
3HUJ2DezmIgR+qeZnCB0kTjOg7PKh32uHsBlrp1bjEuvo6V383ELlUTfQKcJsk/Q5MyA
WNxg==
X-Gm-Message-State: AOJu0YyL0kRAZ4OdvmpDbhyeLLc72VtqqynBH7b0WRONr4jtTP26VfRZ
rgRyn6JvU75bxGmQTk/bIwGBUodwxDLwDgp8a1+ce3vJdWRSrsRN71x9ZWFp1g==
X-Gm-Gg: ASbGncvm882lUCS4d4Z6BlqBZRQ5hObvz+uov2tIAzk1AkLvpnCyQy1dN9bj8Fu7YX1
CcIapupOZ+sQprjqmNRgeDzH5NqQnbS2G3MOUNM60OnQM3xCPaLp775Uy0Lk4rxsJ01rxe2ooEw
JP5NAl4i0bMLfG1qsNKpxfwrGH8jspDXNtlw+jvfPyYNMMc9mynRL5y1oNj9r+LJ50lomhs+l12
gKYUb/TxAbtsoc5Ipwzd0saPQ3EFoepDvyAZMkLDENqukelyzWIckTpzu3A7PjimPV1DFQQwtAQ
RiFHi+3pNNre7mHMnmNILhdw6ldIf6QHMjqpwVdGttRMocOqYej5J3z3wOkesMeLcDd9rDpBvk8
ZPHnjnUyIHuW5
X-Google-Smtp-Source: AGHT+IHpQhhXQ194o2LpcZRcxqyt3M5BixgIl6D38ZqBCN7BztJlUKg7kvowqWnuDxkaK+lpw+xrFA==
X-Received: by 2002:a05:6a20:3d19:b0:23f:facd:5bc3 with SMTP id
adf61e73a8af0-240313b9ea3mr3637148637.23.1754483616472;
Wed, 06 Aug 2025 05:33:36 -0700 (PDT)
Received: from sadusk.com ([157.131.129.2]) by smtp.gmail.com with ESMTPSA id
d2e1a72fcca58-76bcceab691sm15293536b3a.55.2025.08.06.05.33.35
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Wed, 06 Aug 2025 05:33:35 -0700 (PDT)
Received: from sadusk.com (ZenWiFi_XT8-EA80 [192.168.50.1])
by sadusk.com (Postfix) with ESMTPSA id F25373E38F;
Wed, 6 Aug 2025 05:33:34 -0700 (PDT)
MIME-Version: 1.0
Date: Wed, 06 Aug 2025 12:33:34 +0000
Content-Type: multipart/alternative;
boundary="35dcfea0-207d-4a79-a53b-e8d6e2d3ee30-1"
From: "Joe Sadusk" <joe@HIDDEN>
Message-ID: <f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN>
TLS-Required: No
In-Reply-To: <87pldaccge.fsf@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
<cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
<87jz3kgatc.fsf@HIDDEN> <87pldaccge.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
--35dcfea0-207d-4a79-a53b-e8d6e2d3ee30-1
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Sorry, I've been on a family vacation and haven't had a chance to test. I=
'm hoping to have some time today.=C2=A0
August 5, 2025 at 6:03 AM, "Michael Albinus" <michael.albinus@HIDDEN mail=
to:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%22%20%3Cmichael.albin=
us%40gmx.de%3E > wrote:
>=20
>=20Michael Albinus <michael.albinus@HIDDEN> writes:
>=20
>=20Hi Joe,
>=20
>=20>=20
>=20> >=20
>=20> > That would be perfect for this application. I will definitely tes=
t it
> > > out. I'm assuming this patch is for unstable emacs?
> > >=20
>=20> Yes. Emacs 30 is closed for new features.
> >=20
>=20I've pushed the patch to the repositories.
>=20
>=20>=20
>=20> >=20
>=20> > Joe
> > >
> >=20
>=20Best regards, Michael.
>
--35dcfea0-207d-4a79-a53b-e8d6e2d3ee30-1
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"t=
ext/html; charset=3Dutf-8"></head><body><div>Sorry, I've been on a family=
vacation and haven't had a chance to test. I'm hoping to have some time =
today.=C2=A0<br><br></div><p>August 5, 2025 at 6:03 AM, "Michael Albinus"=
<<a href=3D"mailto:michael.albinus@HIDDEN?to=3D%22Michael%20Albinus%2=
2%20%3Cmichael.albinus%40gmx.de%3E" target=3D"_blank" tabindex=3D"-1">mic=
hael.albinus@HIDDEN</a>> wrote:</p><blockquote>Michael Albinus <mic=
hael.albinus@HIDDEN> writes:<br><br>Hi Joe,<br><br><blockquote><blockq=
uote>That would be perfect for this application. I will definitely test i=
t<br> out. I'm assuming this patch is for unstable emacs?</blockquote><br=
> Yes. Emacs 30 is closed for new features.</blockquote><br>I've pushed t=
he patch to the repositories.<br><br><blockquote><blockquote>Joe</blockqu=
ote></blockquote><br>Best regards, Michael.</blockquote><div><br></div></=
body></html>
--35dcfea0-207d-4a79-a53b-e8d6e2d3ee30-1--
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 06 Aug 2025 13:32:02 +0000
Resent-Message-ID: <handler.79094.B79094.175448710029219 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175448710029219
(code B ref 79094); Wed, 06 Aug 2025 13:32:02 +0000
Received: (at 79094) by debbugs.gnu.org; 6 Aug 2025 13:31:40 +0000
Received: from localhost ([127.0.0.1]:58548 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ujeF1-0007bB-Sg
for submit <at> debbugs.gnu.org; Wed, 06 Aug 2025 09:31:40 -0400
Received: from mout.gmx.net ([212.227.15.15]:60867)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ujeEy-0007ax-Pk
for 79094 <at> debbugs.gnu.org; Wed, 06 Aug 2025 09:31:37 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1754487088; x=1755091888; i=michael.albinus@HIDDEN;
bh=Xtj6LtTytYih6BvqVkO7jSFg23//OW6yy9ZrnX9UvbY=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=HBEY3B8c4YDkWZfvod43Xl5fxDwp9jgKZ9sGYXeXkpmb8RhR3WPS9QFy105qti9r
Gnm3WQ58AcTTxb/PgDEbUozNDT4a5ZHxEwczV35Y/kGB5dDXlSB5t+bTrlFJ2XwOy
pkinIkeEwy6gpUH4VNpa8iNnriMiobpXLzofeW3xCW80cmOrvqAw62X8dH4xS1O9T
Sd8wo1AH0qiOXZAXZMDy+HNgU8dVrCJdy025lgBevcTvPx9FLlxKBz6n/eUxtwg03
o51RHpFolQ3m57y0+6LBIfBVA8Xj897IPGSy1l/fUEdJCtkXiyTLC2Dt025w0RgQO
0lw3XjCN4j/TEighAQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
[212.227.17.190]) with ESMTPSA (Nemesis) id 1MVvL5-1vAq9i3cWb-00WMu3; Wed, 06
Aug 2025 15:31:27 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
<cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
<87jz3kgatc.fsf@HIDDEN> <87pldaccge.fsf@HIDDEN>
<f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN>
Date: Wed, 06 Aug 2025 15:31:27 +0200
Message-ID: <87jz3gbmq8.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:geDg3tvDAzvydWZJ0eKHCV89VXosmhN3ho9kG4tPvMLw+eaOtDr
L44sVCi8HxPQTdQJM22EhkddkRIvw+o83cM+K3ihqcHZ40lq6BKOBfQA5D/HzFTdzhRldey
Btok+wNdFW3s0QuovwOohR5PmdLo62S8ltr8DGETDUQG7bavI7qe3wB5DbTdvVx1LNRYvQY
WTI+DRmeMNYryW209/61w==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:xeJhM/S/8xM=;YqJDwheWGHa7W+IUH8olw9xeIYz
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
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
> Sorry, I've been on a family vacation and haven't had a chance to
> test. I'm hoping to have some time today.=20
No problem, take your time.
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79094: [wishlist] Optimizations for round trips in tramp
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Tue, 26 Aug 2025 17:56:02 +0000
Resent-Message-ID: <handler.79094.B79094.175623093721041 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79094
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
To: "Joe Sadusk" <joe@HIDDEN>
Cc: 79094 <at> debbugs.gnu.org
Received: via spool by 79094-submit <at> debbugs.gnu.org id=B79094.175623093721041
(code B ref 79094); Tue, 26 Aug 2025 17:56:02 +0000
Received: (at 79094) by debbugs.gnu.org; 26 Aug 2025 17:55:37 +0000
Received: from localhost ([127.0.0.1]:56559 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uqxtQ-0005TJ-Fq
for submit <at> debbugs.gnu.org; Tue, 26 Aug 2025 13:55:36 -0400
Received: from mout.gmx.net ([212.227.17.22]:37817)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uqxtM-0005T2-Cz
for 79094 <at> debbugs.gnu.org; Tue, 26 Aug 2025 13:55:33 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1756230925; x=1756835725; i=michael.albinus@HIDDEN;
bh=2jwWa5Qf0urXcrznE1FbNsacDE6NuD7cBf+uAUml7RU=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
content-transfer-encoding:content-type:date:from:message-id:
mime-version:reply-to:subject:to;
b=cKG8M0FIU/vTZrDxU7u9D2FhzJ5mcGS8w1oQgUnhjtHMp6Of9Ucgenkb907eFx65
JNR8C2pfQKbX5FUDdq52P4tXL9b75YOyitd3ImYrtcNMARRBU30CKd/cAcsO6wH4M
gYOUwYaSB5IJWZG8whGIGEAHK4I3Y73VBIiAFhDSSkfF2B8TX7XdM/kZl+OFkQMfD
1gk9ZyqczC4PLyEHD9kupAQzWzXsIa/JLZwjmZPcEMqxyBmvyq4xK+DDfNFCzzx4n
b8evlsaAYm/kzqibbhMGp8oPVwNUKG8SAdIzwi+bXHW6jq0oP5rD941jzSTPF5djZ
2Ij9O2gOQHJCne+Thw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1N0XD2-1ucRHU3sbU-010PfM; Tue, 26
Aug 2025 19:55:25 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN>
References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN>
<4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN>
<87o6t7mmoi.fsf@HIDDEN>
<b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN>
<87y0s1g2ie.fsf@HIDDEN>
<cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN>
<87jz3kgatc.fsf@HIDDEN> <87pldaccge.fsf@HIDDEN>
<f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN>
Date: Tue, 26 Aug 2025 19:55:23 +0200
Message-ID: <87tt1uge7o.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:4FioEgkpsSMvWOUbvDmyP9U6+dT5/5PaVa87qmAngEuEcfFD7/g
vSlz6oxUGNUjRrTnjmy/lxlLymmP7jrszPzCWHtEDIJ2xlqhcdoJcMrcRnvCf2JXKnqp19S
7utSG2rktpwYKsockv8qrlHkmKVpSuEMx9lmkG5EUsJisetF33cEzzCl9ekyft7wi18qA+/
1dAkh7nmVYTcpKWBuNHXA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:eCiiMPCxu28=;vMF+ebvBUfyCqt1Zl+FSGr5FYIB
g4owZX3ri24elPewSLNDqiQkmIlxltXYEx+2HKIWsMRe7Lt71Q1qbpeiNdoGl+6yfGailiaV2
ZuUAIE/IXlrsxk2Q2xibbVOOXsouuHistT0TUgbYU7uZdTpafUYTgpT5dY9s7niGit2ZTg8we
P6flCdpuwQ2LNIK+sWAeLgZwYSrO1b41EnfNr5dha/hHNdN8JgBKxNdIdUS1gmlCJ9Yxc080w
fxV8YBbSfNMPOjoMKHidFwLMl/OVONa3GTRTlQ75ZO+JcVj9yRNRaEbqmkIcO9mqZ99g7eKvT
pf27UVIr9EWqvdK0BVDo6tWVqhDUasbwYKxo51B50pmZPLqMjQ6qPU7IliOAa1buHpMlsTRTj
YYUHY+JxJwEf4izP610wNIE9eFDAqqS6wwhi4Kn++GjOzomU/vPPiAfoiOB046Wrevn44HhgJ
GHswcg83MWlQJOFw8/hgNzvzXpj5Qw/nwPTzlr5alf26tYsVfbqCTkMCG/4EtBWcuaJiGeqrz
zBtoVlu8XEa25sa6E9kkp4aVzK3RGjRQlgT1/3e28FZCIosE/CtnmWVeKf64cIIm2/F9NLT50
uZ6PXZKy7dCl3dYnaGe0dhqmLKmWjxDo5XmeaF0RGTAjX3OOAnX1RDybIkPc1F8IpH46U+PZY
2N1aEyoMJ++fwJuEL4RX3QAsjfpR/7sfLLXxrHwlrE22iaSUgeJvThM8JCxJra62DCKaeeIR2
xWtmRTW3eLljJMuQWjzemaetQhPS5MWM2412vuTOTuOBK0qAIENUMfAGAKFQTwYCjRP0pDq7i
waWrUVdmjDh+Y4r0iK/l1dXIiJKo6PDAuRQwbUiKJ0m9mui3WP9giDjNEiRznGkdrifEmZ/Da
g45IkegjxDWrLtDAlJ9340udkgB3XRN18/PvIWHiu6bCqe/I804JxsvzmEMg/JEyNIIGzqAPI
837KfbynJznRyeddR2x9n49BjoXuPhcyBJLOxtPB5VZCbJ4ioP20j8hpmhTlliKTrIjAIFozm
zgXSuC6NDTxuzA8UMwgx1XK6TbZ/2KHUCzIyKgV/cKPSSJ9giClIrVUHQGzcmHHuoyZffllte
m0nMzTLKmvp2sxcwqz3roSFTtHt3jTe2xMR1x7nb8gfG/fJ7b2nYsfy/fnHZ2L1Y8ZGLjsvTC
jjM/CVbYpPGN9UgeKzuKro240amAiTAiIcAIyhrt0SENJXnf6LNyaNMgpnLmRNjAhRhF1UKls
NWiJp1/VlHR2TQAJvtkpfpxF1lx+jiRpWBGqcMVujDUoZ0u1Jrq2PCSSbMPBIYZbKkwz+yZzA
zO/v6pAf42fG2QaAw5XPfol1+7j2rCee+bJPibUSVZ7vdi4iTMt5ggDcVrHQ8N0QDZgpkPpJk
R0RrQ+a1VByp0YQqRismRIgdk+ZTMXGTJC1ag4aqdb0T+VK1U0SNrJTlPqjYg06NqmMDj5a+X
2umQiFi1NIUOutqzi0kXn/uJYlm8Qo7wjOIvdVJv79QkPzZWYq5vRfrCaPbCnaX6GRd2AkYe/
fk0tePVUpfae6TkGOaogxhyyllC63zboRBN+WRuDC0QBEkUvc1+xAeKsCQ2cyeNenIJztbFDR
uQBXCMOf6H4QCOHZPDI5BHZu8dEvoDXBu21N/TfN/rmMzZfXICdC5AW3FflWxo5pZABPTBv4U
0qcC6IGlZNV6BnjW8jSg/NISDKkUXy7ytws4Tnut2Y/+L0zDrq6WfRvCpPgg6+ej/6lRx3ycr
4mRcZHVyUYpmtnvEDdvgvXNWdw46RHGVMXptKv2IJDZsEWxJjmBg/yKAHLg1x+d8fZW2A8YMi
1nj8D197OLcqVepFcy0umnOJaDadQVzLzivOJVdMbkxB2NsfE90qleFwu+L+CxMIrSscAepaK
7dRTdKhuIKTx+owJb92cvQuJSmXuJLe8WWI6GIpjQDj3uNt2xbZhEPhKgSYxig6ecKBV29YEn
kUFJ7kxVjig9V0xX0Fhz8I6pjvSvvNuBLp439BBl6jmrlTIkwimaxYDlcmELGb9FVz/toyWM5
VLfN9OMd5HcRUsU3QFDyZp4hK6jd70o/gAnDuRu5qUfdpur9P+v4XZFg0eA/MjQKXcCmgd7NF
aR2FQgxqo6TwXW8oMTA/F4GZe85v/I6s4HD2rpdtS35+/OU+n1oX5zBibKeG7WkA+JEzBlfzo
uMM1FykRSzb2pD89yPeQmX6D5YlkCcP3zhEJ6SzZ2/8IisrwheHh6U0fZV8p5mLHdPD2B3lAs
H5TM403Byr8SiJUzQzMNHaBzF6uzR4tvAVb9ZDBmQOoZheVVx0VAJ7WRnki5SMwBrEn9hDD95
INPhHoBUqn7gSFszAUhl8Awy/AxAG3xmQY4U1nkAPrWCL0MNUY38sJTzfRrQH/FmMrYfVlow3
KtMEFaqpWLtE6mKMAlgtommB1RXHtNOBgLCsJYrs5p2Pr/pWEN0bFtREqlj/oVOEvy3w+WtkF
3NblV5T4hi0u5/1JN+jnN+xJgfX7jJ/UI6XUWWOFDf49lP9OIfZi8P02pXGl1XW7n5KJQL9p7
4yM19dlUx0jBM/EYD5j/AW78t+UVwarnvJeZibTrID1kTU7x2UrP9A/domoxeeq3T7xtwQ5Qw
XloOI5aZP12krcORQee3b6qqBzyz1bw6220f9ZeqzmFF6b+PLfCcsNx3s0BXfng/LBEWRb6LO
yHyRwvehEb5lI/iEBS8XYh4LHBLHaPOFNBkbmybZ8Q/3PB0F/cTGET2yIse3KVG3w55cvz1+T
FUx8wXuq8wyiNzZ4wu9SNebzM9wgJ49jmv947ozK3R8G+5qb0pyaad7LZMHVtjKfrASoT8sPS
D9qPxhj0eOkTo82RwljX/0ziv/JKEMRSUNQY3BPpkD1++qaNpRsUQ2/tWjbKqh4JLNKiVKRba
pbQ1hYoxiu85Ucl7r1ERb5Wpqqpw5ryaiVZXliZz+iyYd5/CXk1wTiXLeCTuIsHMeanMRiMMR
pu4IkYtDCoWqvXJDV47LWx9Xi1RTHVQKcWXDKRQyBdCY78AhtYY3b3nHg/bgKF8dpSVJoo+kc
lib9zakUgpeol2Cy4inGkHqGlJ8g9AZ54gNMfomLH3o2lY82Yzoj8DUh2u9pSggHfFX4IPN9F
o3vTAM/HSLbirOoZg5ngMiNssE4hmGCMJGHIhe9Bwr/qHF+49iF6hRaNuZ5t7OQRg6vg7lmbD
ZnG327ssUvZpDTuoOeNtaHmH99QF8m0g1THXHSxIV5DbusDjUyiNwSae4XZS70aHnynTFMUas
ThiIPvuKHVUoMU4fTDaXI/66eEju+przwPXa7JJWadw0s4tZ8EocWmJCycdlbref5Fj/4k67Z
dcAag40+y6ObRcXH5WA0JXxGlrg+CEgvqMxKzHYxsGfJ5dRIcBozO9cKCGuv4luJ5UBkMVJWJ
00YL9ef5yhf7cO3neaJYq9nQqhJHI7G9yaoKecWpevGH7r55dr2ryEw4HvEnX+U/75bPpSchU
CCDZfBZZ7AEfSIWnvZCT1xDIKNyNF4i0C6c68s00NAMj9q6ppJg6n/hMB8aUXhGZv+AO97ybv
79hWMZEZkj8vmcqSunupb8b5egVu4oJuQxHXfW0HUFNLRqca95nNCj2imBo4aqVOhnzHPImZZ
PL2TsTiozi4g9pjH/aF68kthaFRaO+jcpM/35X2uLq6Twhr67OlntJi08U9XUWQ++bJ3iKIs+
wk++PNR99z3f+LToMUJeoff6SVQa78jXCH0ZC2vUjEWClKgXEJeDjuKviCYZZTkGZy478WzKW
7m5pCd6kWAUEBelXUEsR7Tp7djRfy+BdXAI7HZTR6+AcE6WtJ3b/ysvsBtdl2uC8Y6k+/nMQv
yBH5alGQ6OekUFKbiS7u2tVudV2YHHluYSh/DO9zYB3wRa2xIX7JSqCOp47KwkXSFnOB8Mdxe
Lt2dzLRPtrVDKyM9CQJsPc9LRrCgY1rLldAf0WRLky+pKKI6uJ81BjT/ff0adiKACs/arjtMO
H35pEZ6FZdprbRC7kGWZU8/UihrRB3rvFiX7lZ0nRkBJDj4HU4Lol9qSokgDF+so92lJZJX6j
GUTMKx2SmhU1ZFMkYAG4OKislxZkXLu6cJpP4h+7W+8W8X5DiholvAxPfNeWdFSg6k1R+h0Bi
Mx3huJOhXL1qvgJRZTkbMr6Ko0RQJAu2LiIYzTH7Pjc72CwJzbNpJw/fwIy0wFRklfwKE38Md
nIS18/pFlEblaGzmEYs8F1BcqNPoWEkV34liMkhDtt6vaJBgsg1U0jsBG9zqI3dKPzVoZtM83
cNMjxuKYIoifBYIXC6vbhzZLBR7BIDs4kxPH5fvkbrE55BGM4ai5PPZXSJxWtVQPrZIRFxSaz
1cZWWWZBNzWAOKv1jhbLu1v24MPtaoHwtZM0s33rw3ujq7Gt+nbWWBR/vLSsqn24g1mg6xQxn
/ZD6SwvbmCMb6zuR1HE7W1aUWc9Z+dS8WP9LNNUX+YTtS31lcwdm8vCf6Nj1unsmNKapPNa/S
F5CpZA4bLAL6FEf8KjTATFKXTrebYBlb5cEhGrlylmnqVH/96nCehXiNL4wNThItiEfhpgxgw
cJl8fnhRfzreT7+UhlW1LeFl0jSJKW6ylCbXGwVJsvvH1jfSiiNOL14MKil3vL7wetu+HgY3b
HmfgRtxb6v1I5jbDnVsB0SenF4q10CUh4jpF/+zMoLe9vYhqs2It4ScJAczM9+ARc13mijD8B
89Zw7ldmwVNlirLJQ6NaWpFM6JTO
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
"Joe Sadusk" <joe@HIDDEN> writes:
Hi Joe,
> Sorry, I've been on a family vacation and haven't had a chance to
> test. I'm hoping to have some time today.=20
Is there something I could help?
Best regards, Michael.
MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Michael Albinus <michael.albinus@HIDDEN> Subject: bug#79094: closed ([wishlist] Optimizations for round trips in tramp) CC: tracker <at> debbugs.gnu.org Message-ID: <handler.79094.D79094.176060053723846.ackdone <at> debbugs.gnu.org> References: <87o6q78f92.fsf@HIDDEN> <87ikjgo13n.fsf@HIDDEN> X-Gnu-PR-Message: closed 79094 X-Gnu-PR-Package: emacs Date: Thu, 16 Oct 2025 07:43:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1760600582-23929-0" This is a multi-part message in MIME format... ------------=_1760600582-23929-0 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Your message dated Thu, 16 Oct 2025 09:42:01 +0200 with message-id <87o6q78f92.fsf@HIDDEN> and subject line Re: bug#79094: [wishlist] Optimizations for round trips in= tramp has caused the debbugs.gnu.org bug report #79094, regarding [wishlist] Optimizations for round trips in tramp to be marked as done. (If you believe you have received this mail in error, please contact help-debbugs@HIDDEN) --=20 79094: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79094 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems ------------=_1760600582-23929-0 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 25 Jul 2025 13:24:32 +0000 Received: from localhost ([127.0.0.1]:33783 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ufIPX-0004Zb-FM for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:32 -0400 Received: from lists.gnu.org ([2001:470:142::17]:32976) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1ufIPS-0004Z1-45 for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>) id 1ufIPA-0005Od-8h for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:15 -0400 Received: from mout.gmx.net ([212.227.17.20]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>) id 1ufIP2-0006fU-ES for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1753449837; x=1754054637; i=michael.albinus@HIDDEN; bh=dsf/4XtdmLY6KibbRQ1JYO3J7rpZIdZD1+q/lPJrXJM=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:MIME-Version: Content-Type:cc:content-transfer-encoding:content-type:date:from: message-id:mime-version:reply-to:subject:to; b=ch5sKnZC9xw2CxA7DNtqBfvLUXDGlr2c/zSOjFa56JeRZKvRs5ZdOhQTwnC5DO+e zEhAyzGzrwHKXv1bS4BEqNnhxhKEQ8VFoCjSSiz8R9JF5btwIKgAF9z+uoYIRgKcw wE/bhU31zhwe0E0VbdRdvdgq0CtCo3NkuMdIRW32vdKIWTT02+8aM106g8QUjyEWQ ImUj5GyfaTuWmhFiG4R6hbsWNTsrEfKQyRf08nywM9Itx/or1VSTxOq0VSbxzHhqP N/vh+RMbAx/D8YE+UHYE8pbZpeNPmppq54pqg8gGtEKYOAyqx6nxjBhlxFH/QQuik zFB8CQ2z+dnnK0ToJg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N4hvb-1uWjYw0fTz-016nMg for <bug-gnu-emacs@HIDDEN>; Fri, 25 Jul 2025 15:23:57 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: [wishlist] Optimizations for round trips in tramp X-Debbugs-Cc: "Joe Sadusk" <joe@HIDDEN> Date: Fri, 25 Jul 2025 15:23:56 +0200 Message-ID: <87ikjgo13n.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:SlmEpleUbuVm4Yq8/9+RgVDuX8wxwT83QbtJhffPXjI+JmYjPu5 9vuG8rz1rb6+Pyaa8XP+L/USpObbtTbTx8rljqN9FzEzraz3XZu20PF/FI2OdARSwsSIStU U0IZ5EpdPQroJCH8bouTTHmzg4EFNB8MSmWLC8SdZ10qa4bgU5qeh0pYEB9lYskXNaKhVL/ RuTMPrbpJLv1R+mvRUlVA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:2s40iBuh1AM=;Xp488pBfbJ2LY34+UEWwUlShryb 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 Received-SPF: pass client-ip=212.227.17.20; envelope-from=michael.albinus@HIDDEN; helo=mout.gmx.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain -------------------- Start of forwarded message -------------------- From: "Joe Sadusk" <joe@HIDDEN> Subject: Optimizations for round trips in tramp Date: Wed, 23 Jul 2025 17:30:53 +0000 To: emacs-devel@HIDDEN --=-=-= Content-Type: multipart/alternative; boundary="==-=-=" --==-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi, long time emacs user, first time contributor. I maintain an emacs confi= g for my company's dev environment, which is primarily using remote worksta= tions, so the config makes heavy use of tramp. I did some digging to find t= he source of some pauses and delays that happen during navigation and file = open, particularly when remote dir-locals are enabled. And I found that a m= ajor piece of these pauses comes from calls to locate-dominating-file. This= function doesn't have a tramp specific implementation, and so it loops in = lisp, making many small tramp calls for things like expand-file-name, file-= exists-p, file-directory-p, each of which issue a tramp-send-command and in= cur a round-trip to the server. My remote workstation connection has somewhat bad latency, each tramp round= trip appears to take around 0.15s. Clocking a call to do (locate-dominating= -file "/some/file/deep/in/a/repo" ".git") took over 2 seconds. This gets ev= en worse when locate-dominating-file is used by dir-locals-find-file, becau= se it uses the predicate form of locate-dominating-file, and the predicate = does multiple tramp round trips itself. (dir-locals-find-file=C2=A0"/some/f= ile/deep/in/a/repo") took over 3 seconds. This kind of a delay pops up when= opening a file, reverting, traversing directories, making the dev experien= ce much less fluid. So I did an experiment to see if I could implement these operations to use = a single tramp round-trip, or as few as possible. The result is here: https://github.com/jsadusk/tramp-hlo The result is a huge improvement. dir-locals-find-file went from 3+ seconds= to 0.18 seconds, with only 1 or 2 tramp-send-commands. This also hugely sp= eeds up vc-mode, which many people turn off for tramp to optmize speed. Min= d you, this is on my workstation, which is a fairly stock Ubuntu 22.04 mach= ine. I haven't tested this on the myriad of environments tramp has to work = with. I'm sure there are edge cases I'm missing. But its working great for = me, so I'm treating this as a proof of concept. I also wrote this as an adv= ice function rather than a tramp handler, so I could turn it on and off eas= ily. A real version of this would be vetted across many environments and be= properly integrated with tramp-sh.el.=C2=A0 So I wanted to see what people think about this approach and if its worth t= urning into a real patch for tramp? And if there's any advice on making it = more comprehensive? Also, I'm searching out other higher level operations t= hat could be made into server side tramp scripts, if anyone knows of some g= ood targets. So please, comment, critique, tell me I'm doing it wrong, or give me the go= ahead and I'll be happy to make a patch.=C2=A0 Joe Sadusk --==-=-= Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"tex= t/html; charset=3Dutf-8"></head><body><div>Hi, long time emacs user, first = time contributor. I maintain an emacs config for my company's dev environme= nt, which is primarily using remote workstations, so the config makes heavy= use of tramp. I did some digging to find the source of some pauses and del= ays that happen during navigation and file open, particularly when remote d= ir-locals are enabled. And I found that a major piece of these pauses comes= from calls to locate-dominating-file. This function doesn't have a tramp s= pecific implementation, and so it loops in lisp, making many small tramp ca= lls for things like expand-file-name, file-exists-p, file-directory-p, each= of which issue a tramp-send-command and incur a round-trip to the server.<= /div><div><br></div><div>My remote workstation connection has somewhat bad = latency, each tramp roundtrip appears to take around 0.15s. Clocking a call= to do (locate-dominating-file "/some/file/deep/in/a/repo" ".git") took ove= r 2 seconds. This gets even worse when locate-dominating-file is used by di= r-locals-find-file, because it uses the predicate form of locate-dominating= -file, and the predicate does multiple tramp round trips itself. (dir-local= s-find-file=C2=A0"/some/file/deep/in/a/repo") took over 3 seconds. This kin= d of a delay pops up when opening a file, reverting, traversing directories= , making the dev experience much less fluid.</div><div><br></div><div>So I = did an experiment to see if I could implement these operations to use a sin= gle tramp round-trip, or as few as possible. The result is here:</div><div>= <a href=3D"https://github.com/jsadusk/tramp-hlo">https://github.com/jsadusk= /tramp-hlo</a></div><div><br></div><div>The result is a huge improvement. d= ir-locals-find-file went from 3+ seconds to 0.18 seconds, with only 1 or 2 = tramp-send-commands. This also hugely speeds up vc-mode, which many people = turn off for tramp to optmize speed. Mind you, this is on my workstation, w= hich is a fairly stock Ubuntu 22.04 machine. I haven't tested this on the m= yriad of environments tramp has to work with. I'm sure there are edge cases= I'm missing. But its working great for me, so I'm treating this as a proof= of concept. I also wrote this as an advice function rather than a tramp ha= ndler, so I could turn it on and off easily. A real version of this would b= e vetted across many environments and be properly integrated with tramp-sh.= el.=C2=A0</div><div><br></div><div>So I wanted to see what people think abo= ut this approach and if its worth turning into a real patch for tramp? And = if there's any advice on making it more comprehensive? Also, I'm searching = out other higher level operations that could be made into server side tramp= scripts, if anyone knows of some good targets.</div><div><br></div><div>So= please, comment, critique, tell me I'm doing it wrong, or give me the goah= ead and I'll be happy to make a patch.=C2=A0</div><div><br></div><div>Joe S= adusk</div></body></html> --==-=-=-- --=-=-= Content-Type: text/plain -------------------- End of forwarded message -------------------- --=-=-=-- ------------=_1760600582-23929-0 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 79094-done) by debbugs.gnu.org; 16 Oct 2025 07:42:17 +0000 Received: from localhost ([127.0.0.1]:33734 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1v9Icq-0006CX-LL for submit <at> debbugs.gnu.org; Thu, 16 Oct 2025 03:42:16 -0400 Received: from mout.gmx.net ([212.227.17.22]:53683) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1v9Icm-0006CF-0A for 79094-done <at> debbugs.gnu.org; Thu, 16 Oct 2025 03:42:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1760600522; x=1761205322; i=michael.albinus@HIDDEN; bh=fwof2/2tsg67S490lNgDvICyclK6f8dALhtKvojKVfc=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date: Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=uaZqAqSRsnfOHkEwxgdlVzsiTM51c6Qy3eF0IC93FRtyn5PkqGi38f0td4ZdP/+M 2WsPmo6i7XUCM0+YRvONUCSv7xg8AKC9BZN+7BP8hURUBY8AJ2rQzCXzyENzXEkwp EQtDc7P8e/3r/QhwJ3IrSGz1HR/YNe3X125TnK/T4dea1lfw7nuhF6awst2YkAC71 9P0hfnF7mid+e60DgN3NyE9r2R8R+kV461w+W9X5wW6RLC6qX+1DDGV4Ysf4WBZn7 JCWcR3eYJZDBGb0K+wAyVDfU95KmCPrIQqcs8XTVwpKEYmfjLVx5rtQ2viE2x8D3H TTG0CvdCFSANXuCTfw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MWRRT-1uhaTJ1sRX-00YhqC; Thu, 16 Oct 2025 09:42:02 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: "Joe Sadusk" <joe@HIDDEN> Subject: Re: bug#79094: [wishlist] Optimizations for round trips in tramp In-Reply-To: <87tt1uge7o.fsf@HIDDEN> References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN> <4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN> <87o6t7mmoi.fsf@HIDDEN> <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN> <87y0s1g2ie.fsf@HIDDEN> <cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN> <87jz3kgatc.fsf@HIDDEN> <87pldaccge.fsf@HIDDEN> <f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN> <87tt1uge7o.fsf@HIDDEN> Date: Thu, 16 Oct 2025 09:42:01 +0200 Message-ID: <87o6q78f92.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:NBJrXlnE3++3dYm+YQ3hqaKvS948tP7jFHFytySfB23pQIgqCIG eUADHZv7216d5H4MpkNadU6ntiKrAmOOkLAUG917i7890qg8C4HEZgtC9kprDVnRJ8vKFBC SYP+ZPX5izPYY7kpfIc/ABPdDvfYZ65x7kzqy679PFQOaJC8048vw/CxywDhpCcJ6Uz6mRJ KSeBHJ2byzJs+zSlZyMgw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:N2Y82PlsdYg=;O5Jr6pAok+oYqD/c8KAdSmpRoXL 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 TfTHgCsBe8WFtJQ3hXef3yogEuelLjq9jNA= Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 79094-done Cc: 79094-done <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Version: 31.1 Michael Albinus <michael.albinus@HIDDEN> writes: Hi Joe, >> Sorry, I've been on a family vacation and haven't had a chance to >> test. I'm hoping to have some time today.=20 > > Is there something I could help? Well, no further problem reported for weeks. I'll close the bug; pls report if you see problems with Tramp's implementation of the new mechanis= m. Btw, I haven't seen your name yet on the list of FSF contributors. Do you have problems in getting copyright papers from FSF? Best regards, Michael. ------------=_1760600582-23929-0--
MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: "Joe Sadusk" <joe@HIDDEN> Subject: bug#79094: closed (Re: bug#79094: [wishlist] Optimizations for round trips in tramp) Message-ID: <handler.79094.D79094.176060053723846.notifdone <at> debbugs.gnu.org> References: <87o6q78f92.fsf@HIDDEN> <87ikjgo13n.fsf@HIDDEN> X-Gnu-PR-Message: they-closed 79094 X-Gnu-PR-Package: emacs Reply-To: 79094 <at> debbugs.gnu.org Date: Thu, 16 Oct 2025 07:43:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1760600582-23929-1" This is a multi-part message in MIME format... ------------=_1760600582-23929-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #79094: [wishlist] Optimizations for round trips in tramp which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 79094 <at> debbugs.gnu.org. --=20 79094: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79094 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems ------------=_1760600582-23929-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 79094-done) by debbugs.gnu.org; 16 Oct 2025 07:42:17 +0000 Received: from localhost ([127.0.0.1]:33734 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1v9Icq-0006CX-LL for submit <at> debbugs.gnu.org; Thu, 16 Oct 2025 03:42:16 -0400 Received: from mout.gmx.net ([212.227.17.22]:53683) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1v9Icm-0006CF-0A for 79094-done <at> debbugs.gnu.org; Thu, 16 Oct 2025 03:42:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1760600522; x=1761205322; i=michael.albinus@HIDDEN; bh=fwof2/2tsg67S490lNgDvICyclK6f8dALhtKvojKVfc=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date: Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=uaZqAqSRsnfOHkEwxgdlVzsiTM51c6Qy3eF0IC93FRtyn5PkqGi38f0td4ZdP/+M 2WsPmo6i7XUCM0+YRvONUCSv7xg8AKC9BZN+7BP8hURUBY8AJ2rQzCXzyENzXEkwp EQtDc7P8e/3r/QhwJ3IrSGz1HR/YNe3X125TnK/T4dea1lfw7nuhF6awst2YkAC71 9P0hfnF7mid+e60DgN3NyE9r2R8R+kV461w+W9X5wW6RLC6qX+1DDGV4Ysf4WBZn7 JCWcR3eYJZDBGb0K+wAyVDfU95KmCPrIQqcs8XTVwpKEYmfjLVx5rtQ2viE2x8D3H TTG0CvdCFSANXuCTfw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MWRRT-1uhaTJ1sRX-00YhqC; Thu, 16 Oct 2025 09:42:02 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: "Joe Sadusk" <joe@HIDDEN> Subject: Re: bug#79094: [wishlist] Optimizations for round trips in tramp In-Reply-To: <87tt1uge7o.fsf@HIDDEN> References: <87ikjgo13n.fsf@HIDDEN> <877bzwnxj5.fsf@HIDDEN> <4c29df968c7a437e5490cb8d644dacbe3f27651f@HIDDEN> <87o6t7mmoi.fsf@HIDDEN> <b788bbdc3a84d2f90fc1bd44232761b7dabea8ae@HIDDEN> <87y0s1g2ie.fsf@HIDDEN> <cb9787de81b522f673de9e062aae8ce47cf96545@HIDDEN> <87jz3kgatc.fsf@HIDDEN> <87pldaccge.fsf@HIDDEN> <f78a404bd4ba226608fa8ccbd57041595dcfef93@HIDDEN> <87tt1uge7o.fsf@HIDDEN> Date: Thu, 16 Oct 2025 09:42:01 +0200 Message-ID: <87o6q78f92.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:NBJrXlnE3++3dYm+YQ3hqaKvS948tP7jFHFytySfB23pQIgqCIG eUADHZv7216d5H4MpkNadU6ntiKrAmOOkLAUG917i7890qg8C4HEZgtC9kprDVnRJ8vKFBC SYP+ZPX5izPYY7kpfIc/ABPdDvfYZ65x7kzqy679PFQOaJC8048vw/CxywDhpCcJ6Uz6mRJ KSeBHJ2byzJs+zSlZyMgw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:N2Y82PlsdYg=;O5Jr6pAok+oYqD/c8KAdSmpRoXL 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 TfTHgCsBe8WFtJQ3hXef3yogEuelLjq9jNA= Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 79094-done Cc: 79094-done <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Version: 31.1 Michael Albinus <michael.albinus@HIDDEN> writes: Hi Joe, >> Sorry, I've been on a family vacation and haven't had a chance to >> test. I'm hoping to have some time today.=20 > > Is there something I could help? Well, no further problem reported for weeks. I'll close the bug; pls report if you see problems with Tramp's implementation of the new mechanis= m. Btw, I haven't seen your name yet on the list of FSF contributors. Do you have problems in getting copyright papers from FSF? Best regards, Michael. ------------=_1760600582-23929-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 25 Jul 2025 13:24:32 +0000 Received: from localhost ([127.0.0.1]:33783 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ufIPX-0004Zb-FM for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:32 -0400 Received: from lists.gnu.org ([2001:470:142::17]:32976) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1ufIPS-0004Z1-45 for submit <at> debbugs.gnu.org; Fri, 25 Jul 2025 09:24:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>) id 1ufIPA-0005Od-8h for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:15 -0400 Received: from mout.gmx.net ([212.227.17.20]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>) id 1ufIP2-0006fU-ES for bug-gnu-emacs@HIDDEN; Fri, 25 Jul 2025 09:24:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1753449837; x=1754054637; i=michael.albinus@HIDDEN; bh=dsf/4XtdmLY6KibbRQ1JYO3J7rpZIdZD1+q/lPJrXJM=; h=X-UI-Sender-Class:From:To:Subject:Date:Message-ID:MIME-Version: Content-Type:cc:content-transfer-encoding:content-type:date:from: message-id:mime-version:reply-to:subject:to; b=ch5sKnZC9xw2CxA7DNtqBfvLUXDGlr2c/zSOjFa56JeRZKvRs5ZdOhQTwnC5DO+e zEhAyzGzrwHKXv1bS4BEqNnhxhKEQ8VFoCjSSiz8R9JF5btwIKgAF9z+uoYIRgKcw wE/bhU31zhwe0E0VbdRdvdgq0CtCo3NkuMdIRW32vdKIWTT02+8aM106g8QUjyEWQ ImUj5GyfaTuWmhFiG4R6hbsWNTsrEfKQyRf08nywM9Itx/or1VSTxOq0VSbxzHhqP N/vh+RMbAx/D8YE+UHYE8pbZpeNPmppq54pqg8gGtEKYOAyqx6nxjBhlxFH/QQuik zFB8CQ2z+dnnK0ToJg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N4hvb-1uWjYw0fTz-016nMg for <bug-gnu-emacs@HIDDEN>; Fri, 25 Jul 2025 15:23:57 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: [wishlist] Optimizations for round trips in tramp X-Debbugs-Cc: "Joe Sadusk" <joe@HIDDEN> Date: Fri, 25 Jul 2025 15:23:56 +0200 Message-ID: <87ikjgo13n.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:SlmEpleUbuVm4Yq8/9+RgVDuX8wxwT83QbtJhffPXjI+JmYjPu5 9vuG8rz1rb6+Pyaa8XP+L/USpObbtTbTx8rljqN9FzEzraz3XZu20PF/FI2OdARSwsSIStU U0IZ5EpdPQroJCH8bouTTHmzg4EFNB8MSmWLC8SdZ10qa4bgU5qeh0pYEB9lYskXNaKhVL/ RuTMPrbpJLv1R+mvRUlVA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:2s40iBuh1AM=;Xp488pBfbJ2LY34+UEWwUlShryb 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 Received-SPF: pass client-ip=212.227.17.20; envelope-from=michael.albinus@HIDDEN; helo=mout.gmx.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain -------------------- Start of forwarded message -------------------- From: "Joe Sadusk" <joe@HIDDEN> Subject: Optimizations for round trips in tramp Date: Wed, 23 Jul 2025 17:30:53 +0000 To: emacs-devel@HIDDEN --=-=-= Content-Type: multipart/alternative; boundary="==-=-=" --==-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi, long time emacs user, first time contributor. I maintain an emacs confi= g for my company's dev environment, which is primarily using remote worksta= tions, so the config makes heavy use of tramp. I did some digging to find t= he source of some pauses and delays that happen during navigation and file = open, particularly when remote dir-locals are enabled. And I found that a m= ajor piece of these pauses comes from calls to locate-dominating-file. This= function doesn't have a tramp specific implementation, and so it loops in = lisp, making many small tramp calls for things like expand-file-name, file-= exists-p, file-directory-p, each of which issue a tramp-send-command and in= cur a round-trip to the server. My remote workstation connection has somewhat bad latency, each tramp round= trip appears to take around 0.15s. Clocking a call to do (locate-dominating= -file "/some/file/deep/in/a/repo" ".git") took over 2 seconds. This gets ev= en worse when locate-dominating-file is used by dir-locals-find-file, becau= se it uses the predicate form of locate-dominating-file, and the predicate = does multiple tramp round trips itself. (dir-locals-find-file=C2=A0"/some/f= ile/deep/in/a/repo") took over 3 seconds. This kind of a delay pops up when= opening a file, reverting, traversing directories, making the dev experien= ce much less fluid. So I did an experiment to see if I could implement these operations to use = a single tramp round-trip, or as few as possible. The result is here: https://github.com/jsadusk/tramp-hlo The result is a huge improvement. dir-locals-find-file went from 3+ seconds= to 0.18 seconds, with only 1 or 2 tramp-send-commands. This also hugely sp= eeds up vc-mode, which many people turn off for tramp to optmize speed. Min= d you, this is on my workstation, which is a fairly stock Ubuntu 22.04 mach= ine. I haven't tested this on the myriad of environments tramp has to work = with. I'm sure there are edge cases I'm missing. But its working great for = me, so I'm treating this as a proof of concept. I also wrote this as an adv= ice function rather than a tramp handler, so I could turn it on and off eas= ily. A real version of this would be vetted across many environments and be= properly integrated with tramp-sh.el.=C2=A0 So I wanted to see what people think about this approach and if its worth t= urning into a real patch for tramp? And if there's any advice on making it = more comprehensive? Also, I'm searching out other higher level operations t= hat could be made into server side tramp scripts, if anyone knows of some g= ood targets. So please, comment, critique, tell me I'm doing it wrong, or give me the go= ahead and I'll be happy to make a patch.=C2=A0 Joe Sadusk --==-=-= Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <!DOCTYPE html><html><head><meta http-equiv=3D"Content-Type" content=3D"tex= t/html; charset=3Dutf-8"></head><body><div>Hi, long time emacs user, first = time contributor. I maintain an emacs config for my company's dev environme= nt, which is primarily using remote workstations, so the config makes heavy= use of tramp. I did some digging to find the source of some pauses and del= ays that happen during navigation and file open, particularly when remote d= ir-locals are enabled. And I found that a major piece of these pauses comes= from calls to locate-dominating-file. This function doesn't have a tramp s= pecific implementation, and so it loops in lisp, making many small tramp ca= lls for things like expand-file-name, file-exists-p, file-directory-p, each= of which issue a tramp-send-command and incur a round-trip to the server.<= /div><div><br></div><div>My remote workstation connection has somewhat bad = latency, each tramp roundtrip appears to take around 0.15s. Clocking a call= to do (locate-dominating-file "/some/file/deep/in/a/repo" ".git") took ove= r 2 seconds. This gets even worse when locate-dominating-file is used by di= r-locals-find-file, because it uses the predicate form of locate-dominating= -file, and the predicate does multiple tramp round trips itself. (dir-local= s-find-file=C2=A0"/some/file/deep/in/a/repo") took over 3 seconds. This kin= d of a delay pops up when opening a file, reverting, traversing directories= , making the dev experience much less fluid.</div><div><br></div><div>So I = did an experiment to see if I could implement these operations to use a sin= gle tramp round-trip, or as few as possible. The result is here:</div><div>= <a href=3D"https://github.com/jsadusk/tramp-hlo">https://github.com/jsadusk= /tramp-hlo</a></div><div><br></div><div>The result is a huge improvement. d= ir-locals-find-file went from 3+ seconds to 0.18 seconds, with only 1 or 2 = tramp-send-commands. This also hugely speeds up vc-mode, which many people = turn off for tramp to optmize speed. Mind you, this is on my workstation, w= hich is a fairly stock Ubuntu 22.04 machine. I haven't tested this on the m= yriad of environments tramp has to work with. I'm sure there are edge cases= I'm missing. But its working great for me, so I'm treating this as a proof= of concept. I also wrote this as an advice function rather than a tramp ha= ndler, so I could turn it on and off easily. A real version of this would b= e vetted across many environments and be properly integrated with tramp-sh.= el.=C2=A0</div><div><br></div><div>So I wanted to see what people think abo= ut this approach and if its worth turning into a real patch for tramp? And = if there's any advice on making it more comprehensive? Also, I'm searching = out other higher level operations that could be made into server side tramp= scripts, if anyone knows of some good targets.</div><div><br></div><div>So= please, comment, critique, tell me I'm doing it wrong, or give me the goah= ead and I'll be happy to make a patch.=C2=A0</div><div><br></div><div>Joe S= adusk</div></body></html> --==-=-=-- --=-=-= Content-Type: text/plain -------------------- End of forwarded message -------------------- --=-=-=-- ------------=_1760600582-23929-1--
Received: (at fakecontrol) by fakecontrolmessage; To: internal_control <at> debbugs.gnu.org From: Debbugs Internal Request <help-debbugs@HIDDEN> Subject: Internal Control Message-Id: bug No longer marked as fixed in versions 31.1 and reopened. Date: Sun, 26 Oct 2025 11:29:01 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug No longer marked as fixed in versions 31.1 and reopened. thanks # This fakemail brought to you by your local debbugs # administrator
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.