unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options
@ 2023-05-08 14:56 Benson Chu
  2023-05-08 15:14 ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Benson Chu @ 2023-05-08 14:56 UTC (permalink / raw)
  To: 63373


Hello, I am using tramp with an old version of ssh (6.6.1), which
doesn't have the -G options. #'tramp-ssh-controlmaster-option is assumed
to return a string, and with my version of ssh,
#'tramp-ssh-controlmaster-option returns nil due to the recent changes
adding the "suppress" option.

This patch fixes the bug, returning an empty string where previously nil
was returned.


In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.17.8, Xaw scroll bars) of 2023-05-07 built on ArchDawn
Repository revision: d5ab8b6f2459b0c0111edc1ac7da20e1452c1f33
Repository branch: safe-to-build
Windowing system distributor 'The X.Org Foundation', version 11.0.12101008
System Description: Arch Linux

Configured using:
 'configure --with-native-compilation --with-tree-sitter
 --with-x-toolkit=lucid --prefix=/home/benson/'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM LUCID ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: VTerm

Minor modes in effect:
  dap-tooltip-mode: t
  dap-ui-many-windows-mode: t
  dap-ui-controls-mode: t
  dap-ui-mode: t
  dap-auto-configure-mode: t
  dap-mode: t
  treemacs-filewatch-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  org-roam-db-autosync-mode: t
  doom-modeline-mode: t
  global-exwm-edit-mode: t
  exwmx-global-mode: t
  straight-use-package-mode: t
  straight-package-neutering-mode: t
  org-super-agenda-mode: t
  org-edna-mode: t
  keyfreq-autosave-mode: t
  keyfreq-mode: t
  shackle-mode: t
  pdf-occur-global-minor-mode: t
  erc-colorize-mode: t
  erc-hl-nicks-mode: t
  auto-insert-mode: t
  pyvenv-mode: t
  projectile-mode: t
  display-hard-drive-space-mode: t
  display-time-mode: t
  display-battery-mode: t
  async-bytecomp-package-mode: t
  which-function-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  shell-dirtrack-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  marginalia-mode: t
  savehist-mode: t
  server-mode: t
  vertico-multiform-mode: t
  vertico-mode: t
  pestctrl-minor-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/benson/.emacs.d/elpa/transient-20230315.1520/transient hides /home/benson/emacs-git/lisp/transient
/home/benson/.emacs.d/elpa/modus-themes-20230413.1203/theme-loaddefs hides /home/benson/emacs-git/lisp/theme-loaddefs
/home/benson/.emacs.d/lisp/scratch hides /home/benson/.emacs.d/lisp/ti-config/libraries/scratch
/home/benson/.emacs.d/elpa/memoize-20200103.2036/memoize hides /home/benson/.emacs.d/submodule/emacs-memoize/memoize
/home/benson/.emacs.d/elpa/ivy-20230410.1815/colir hides /home/benson/.emacs.d/submodule/k-useless/colir
/home/benson/.emacs.d/elpa/ts-20220822.181350/ts hides /home/benson/.emacs.d/submodule/ts.el/ts
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-res hides /home/benson/.emacs.d/submodule/xelb/xcb-res
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-systemtray hides /home/benson/.emacs.d/submodule/xelb/xcb-systemtray
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xv hides /home/benson/.emacs.d/submodule/xelb/xcb-xv
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-dri2 hides /home/benson/.emacs.d/submodule/xelb/xcb-dri2
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-types hides /home/benson/.emacs.d/submodule/xelb/xcb-types
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xf86vidmode hides /home/benson/.emacs.d/submodule/xelb/xcb-xf86vidmode
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xinput hides /home/benson/.emacs.d/submodule/xelb/xcb-xinput
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-screensaver hides /home/benson/.emacs.d/submodule/xelb/xcb-screensaver
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xproto hides /home/benson/.emacs.d/submodule/xelb/xcb-xproto
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-render hides /home/benson/.emacs.d/submodule/xelb/xcb-render
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-keysyms hides /home/benson/.emacs.d/submodule/xelb/xcb-keysyms
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-debug hides /home/benson/.emacs.d/submodule/xelb/xcb-debug
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-cursor hides /home/benson/.emacs.d/submodule/xelb/xcb-cursor
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xkb hides /home/benson/.emacs.d/submodule/xelb/xcb-xkb
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-record hides /home/benson/.emacs.d/submodule/xelb/xcb-record
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xlib hides /home/benson/.emacs.d/submodule/xelb/xcb-xlib
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xvmc hides /home/benson/.emacs.d/submodule/xelb/xcb-xvmc
/home/benson/.emacs.d/elpa/xelb-0.18/el_client hides /home/benson/.emacs.d/submodule/xelb/el_client
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-dpms hides /home/benson/.emacs.d/submodule/xelb/xcb-dpms
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-renderutil hides /home/benson/.emacs.d/submodule/xelb/xcb-renderutil
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-shape hides /home/benson/.emacs.d/submodule/xelb/xcb-shape
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-icccm hides /home/benson/.emacs.d/submodule/xelb/xcb-icccm
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xevie hides /home/benson/.emacs.d/submodule/xelb/xcb-xevie
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-present hides /home/benson/.emacs.d/submodule/xelb/xcb-present
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-ge hides /home/benson/.emacs.d/submodule/xelb/xcb-ge
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xfixes hides /home/benson/.emacs.d/submodule/xelb/xcb-xfixes
/home/benson/.emacs.d/elpa/xelb-0.18/xcb hides /home/benson/.emacs.d/submodule/xelb/xcb
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xc_misc hides /home/benson/.emacs.d/submodule/xelb/xcb-xc_misc
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-dri3 hides /home/benson/.emacs.d/submodule/xelb/xcb-dri3
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xf86dri hides /home/benson/.emacs.d/submodule/xelb/xcb-xf86dri
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xselinux hides /home/benson/.emacs.d/submodule/xelb/xcb-xselinux
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-ewmh hides /home/benson/.emacs.d/submodule/xelb/xcb-ewmh
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-composite hides /home/benson/.emacs.d/submodule/xelb/xcb-composite
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-bigreq hides /home/benson/.emacs.d/submodule/xelb/xcb-bigreq
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xembed hides /home/benson/.emacs.d/submodule/xelb/xcb-xembed
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-randr hides /home/benson/.emacs.d/submodule/xelb/xcb-randr
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xinerama hides /home/benson/.emacs.d/submodule/xelb/xcb-xinerama
/home/benson/.emacs.d/elpa/xelb-0.18/xelb hides /home/benson/.emacs.d/submodule/xelb/xelb
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xtest hides /home/benson/.emacs.d/submodule/xelb/xcb-xtest
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-shm hides /home/benson/.emacs.d/submodule/xelb/xcb-shm
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xim hides /home/benson/.emacs.d/submodule/xelb/xcb-xim
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-sync hides /home/benson/.emacs.d/submodule/xelb/xcb-sync
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-glx hides /home/benson/.emacs.d/submodule/xelb/xcb-glx
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-damage hides /home/benson/.emacs.d/submodule/xelb/xcb-damage
/home/benson/.emacs.d/elpa/xelb-0.18/xcb-xprint hides /home/benson/.emacs.d/submodule/xelb/xcb-xprint
/usr/share/emacs/site-lisp/mu4e/mu4e-folders hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-folders
/usr/share/emacs/site-lisp/mu4e/mu4e-message hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-message
/usr/share/emacs/site-lisp/mu4e/mu4e-vars hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-vars
/usr/share/emacs/site-lisp/mu4e/mu4e-icalendar hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-icalendar
/usr/share/emacs/site-lisp/mu4e/mu4e-compose hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-compose
/usr/share/emacs/site-lisp/mu4e/mu4e-mark hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-mark
/usr/share/emacs/site-lisp/mu4e/mu4e-search hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-search
/usr/share/emacs/site-lisp/mu4e/mu4e-actions hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-actions
/usr/share/emacs/site-lisp/mu4e/mu4e-contrib hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-contrib
/usr/share/emacs/site-lisp/mu4e/mu4e-update hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-update
/usr/share/emacs/site-lisp/mu4e/mu4e-helpers hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-helpers
/usr/share/emacs/site-lisp/mu4e/mu4e hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e
/usr/share/emacs/site-lisp/mu4e/mu4e-org hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-org
/usr/share/emacs/site-lisp/mu4e/mu4e-speedbar hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-speedbar
/usr/share/emacs/site-lisp/mu4e/mu4e-headers hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-headers
/usr/share/emacs/site-lisp/mu4e/mu4e-lists hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-lists
/usr/share/emacs/site-lisp/mu4e/mu4e-main hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-main
/usr/share/emacs/site-lisp/mu4e/mu4e-bookmarks hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-bookmarks
/usr/share/emacs/site-lisp/mu4e/mu4e-draft hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-draft
/usr/share/emacs/site-lisp/mu4e/mu4e-contacts hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-contacts
/usr/share/emacs/site-lisp/mu4e/mu4e-server hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-server
/usr/share/emacs/site-lisp/mu4e/mu4e-view hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-view
/usr/share/emacs/site-lisp/mu4e/mu4e-context hides /home/benson/.emacs.d/submodule/mu/mu4e/mu4e-context

Features:
(shadow sort mail-extr emacsbug magit-patch macros tabify
org-roam-dailies scheme slime-asdf ...)

Memory information:
((conses 16 4295309 788024)
 (symbols 48 120245 5)
 (strings 32 1017035 37461)
 (string-bytes 1 40123215)
 (vectors 16 418091)
 (vector-slots 8 7085908 676667)
 (floats 8 2908 14301)
 (intervals 56 211852 23664)
 (buffers 984 136))





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options
  2023-05-08 14:56 bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options Benson Chu
@ 2023-05-08 15:14 ` Eli Zaretskii
  2023-05-08 15:14   ` Benson Chu
  0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2023-05-08 15:14 UTC (permalink / raw)
  To: Benson Chu; +Cc: 63373

> From: Benson Chu <bensonchu457@fastmail.com>
> Date: Mon, 08 May 2023 09:56:28 -0500
> 
> 
> Hello, I am using tramp with an old version of ssh (6.6.1), which
> doesn't have the -G options. #'tramp-ssh-controlmaster-option is assumed
> to return a string, and with my version of ssh,
> #'tramp-ssh-controlmaster-option returns nil due to the recent changes
> adding the "suppress" option.
> 
> This patch fixes the bug, returning an empty string where previously nil
> was returned.

ENOPATCH





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options
  2023-05-08 15:14 ` Eli Zaretskii
@ 2023-05-08 15:14   ` Benson Chu
  2023-05-09 15:15     ` Michael Albinus
  0 siblings, 1 reply; 5+ messages in thread
From: Benson Chu @ 2023-05-08 15:14 UTC (permalink / raw)
  To: 63373

[-- Attachment #1: Type: text/plain, Size: 570 bytes --]

Oops

On Mon, May 8, 2023, at 10:14 AM, Eli Zaretskii wrote:
>> From: Benson Chu <bensonchu457@fastmail.com>
>> Date: Mon, 08 May 2023 09:56:28 -0500
>> 
>> 
>> Hello, I am using tramp with an old version of ssh (6.6.1), which
>> doesn't have the -G options. #'tramp-ssh-controlmaster-option is assumed
>> to return a string, and with my version of ssh,
>> #'tramp-ssh-controlmaster-option returns nil due to the recent changes
>> adding the "suppress" option.
>> 
>> This patch fixes the bug, returning an empty string where previously nil
>> was returned.
>
> ENOPATCH

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-tramp-ssh-controlmaster-options-shouldn-t-return-nil.patch --]
[-- Type: text/x-patch; name="0001-tramp-ssh-controlmaster-options-shouldn-t-return-nil.patch", Size: 2517 bytes --]

From efade8d654ac90629b56c4566cef6d8695dad3fa Mon Sep 17 00:00:00 2001
From: Benson Chu <bensonchu457@gmail.com>
Date: Mon, 8 May 2023 09:46:44 -0500
Subject: [PATCH] ; tramp-ssh-controlmaster-options shouldn't return nil

* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): should never
return nil, but empty string
---
 lisp/net/tramp-sh.el | 38 +++++++++++++++++++++-----------------
 1 file changed, 21 insertions(+), 17 deletions(-)

diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index d020615af07..221f6bef5f9 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -4856,26 +4856,30 @@ tramp-ssh-controlmaster-options
          (stringp tramp-ssh-controlmaster-options))
     tramp-ssh-controlmaster-options)
 
+   ;; We can't auto-compute the options
+   ((ignore-errors
+      (not (tramp-ssh-option-exists-p vec "ControlMaster=auto")))
+    "")
+
    ;; Determine the options.
    (t (ignore-errors
         ;; ControlMaster and ControlPath options are introduced in OpenSSH 3.9.
-	(when (tramp-ssh-option-exists-p vec "ControlMaster=auto")
-          (concat
-           "-o ControlMaster="
-           (if (eq tramp-use-connection-share 'suppress)
-               "no" "auto")
-
-           " -o ControlPath="
-           (if (eq tramp-use-connection-share 'suppress)
-               "none"
-             ;; Hashed tokens are introduced in OpenSSH 6.7.
-	     (if (tramp-ssh-option-exists-p vec "ControlPath=tramp.%C")
-		 "tramp.%%C" "tramp.%%r@%%h:%%p"))
-
-           ;; ControlPersist option is introduced in OpenSSH 5.6.
-	   (when (and (not (eq tramp-use-connection-share 'suppress))
-                      (tramp-ssh-option-exists-p vec "ControlPersist=no"))
-	     " -o ControlPersist=no")))))))
+        (concat
+         "-o ControlMaster="
+         (if (eq tramp-use-connection-share 'suppress)
+             "no" "auto")
+
+         " -o ControlPath="
+         (if (eq tramp-use-connection-share 'suppress)
+             "none"
+           ;; Hashed tokens are introduced in OpenSSH 6.7.
+	   (if (tramp-ssh-option-exists-p vec "ControlPath=tramp.%C")
+	       "tramp.%%C" "tramp.%%r@%%h:%%p"))
+
+         ;; ControlPersist option is introduced in OpenSSH 5.6.
+	 (when (and (not (eq tramp-use-connection-share 'suppress))
+                    (tramp-ssh-option-exists-p vec "ControlPersist=no"))
+	   " -o ControlPersist=no"))))))
 
 (defun tramp-scp-strict-file-name-checking (vec)
   "Return the strict file name checking argument of the local scp."
-- 
2.40.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options
  2023-05-08 15:14   ` Benson Chu
@ 2023-05-09 15:15     ` Michael Albinus
  2023-05-09 22:18       ` Benson Chu
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Albinus @ 2023-05-09 15:15 UTC (permalink / raw)
  To: Benson Chu; +Cc: 63373-done

Version: 29.2

"Benson Chu" <bensonchu457@fastmail.com> writes:

Hi,

>>> Hello, I am using tramp with an old version of ssh (6.6.1), which
>>> doesn't have the -G options.

What a pity. OpenSSH has added -G in release 6.7.

>>> #'tramp-ssh-controlmaster-option is assumed
>>> to return a string, and with my version of ssh,
>>> #'tramp-ssh-controlmaster-option returns nil due to the recent changes
>>> adding the "suppress" option.
>>>
>>> This patch fixes the bug, returning an empty string where previously nil
>>> was returned.

Thanks, I've applied your patch to the master branch. It will also
appear with the next Tramp release on GNU ELPA. Closing the bug.

According to git log, you have supplied already some tiny changes. This
is great!, but you risk to exceed the limit of changes which are
accepted without signing legal papers of the FSF. This means mainly
giving the copyright to the FSF.

Would you like to sign the FSF papers, in order to be prepared?

Best regards, Michael.





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options
  2023-05-09 15:15     ` Michael Albinus
@ 2023-05-09 22:18       ` Benson Chu
  0 siblings, 0 replies; 5+ messages in thread
From: Benson Chu @ 2023-05-09 22:18 UTC (permalink / raw)
  To: 63373

I am currently in the process of getting the FSF paperwork signed. 

Thanks,
Benson

On Tue, May 9, 2023, at 10:15 AM, Michael Albinus wrote:
> Version: 29.2
>
> "Benson Chu" <bensonchu457@fastmail.com> writes:
>
> Hi,
>
>>>> Hello, I am using tramp with an old version of ssh (6.6.1), which
>>>> doesn't have the -G options.
>
> What a pity. OpenSSH has added -G in release 6.7.
>
>>>> #'tramp-ssh-controlmaster-option is assumed
>>>> to return a string, and with my version of ssh,
>>>> #'tramp-ssh-controlmaster-option returns nil due to the recent changes
>>>> adding the "suppress" option.
>>>>
>>>> This patch fixes the bug, returning an empty string where previously nil
>>>> was returned.
>
> Thanks, I've applied your patch to the master branch. It will also
> appear with the next Tramp release on GNU ELPA. Closing the bug.
>
> According to git log, you have supplied already some tiny changes. This
> is great!, but you risk to exceed the limit of changes which are
> accepted without signing legal papers of the FSF. This means mainly
> giving the copyright to the FSF.
>
> Would you like to sign the FSF papers, in order to be prepared?
>
> Best regards, Michael.





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-05-09 22:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-08 14:56 bug#63373: [PATCH] 30.0.50; Bug in tramp-ssh-controlmaster-options Benson Chu
2023-05-08 15:14 ` Eli Zaretskii
2023-05-08 15:14   ` Benson Chu
2023-05-09 15:15     ` Michael Albinus
2023-05-09 22:18       ` Benson Chu

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).