Package: emacs;
Reported by: Artem Smushkov <artyom.smushkov <at> gmail.com>
Date: Wed, 6 Nov 2024 01:46:01 UTC
Severity: normal
Found in version 29.4
Fixed in version 31.1
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 74219 in the body.
You can then email your comments to 74219 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#74219
; Package emacs
.
(Wed, 06 Nov 2024 01:46:02 GMT) Full text and rfc822 format available.Artem Smushkov <artyom.smushkov <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Wed, 06 Nov 2024 01:46:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Artem Smushkov <artyom.smushkov <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 29.4; TRAMP uses the same ad-hoc proxy for every docker container on remote hosts Date: Tue, 05 Nov 2024 19:34:02 +0200
[Message part 1 (text/plain, inline)]
I need to access some number of similarly named docker containers on different remote hosts. For example I run cd "/<ssh:host1|docker:container_name:/>" in eshell, run some commands there, then I may run cd "/<ssh:host2|docker:container_name:/>" and run some commands there, etc. Emacs lisp functions (like cd, ls, find-file, dired, etc) work as expected, but when I run some executable there (bash, python, etc) it always connects to the same host no matter what I specified in "cd" command previously. The workaround to make things work is to run (setq tramp-default-proxies-alist nil) before switching to different host. In GNU Emacs 29.4 (build 1, x86_64-redhat-linux-gnu, GTK+ Version 3.24.42, cairo version 1.18.0) of 2024-07-16 built on 27527c2e06f843c0962737354e0b3cf7 System Description: Fedora Linux 40.20241103.0 (Sway Atomic) Configured using: 'configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --runstatedir=/run --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-cairo --with-dbus --with-gif --with-gpm=no --with-harfbuzz --with-jpeg --with-json --with-modules --with-native-compilation=aot --with-pgtk --with-png --with-rsvg --with-sqlite3 --with-tiff --with-tree-sitter --with-webp --with-xpm --with-xwidgets build_alias=x86_64-redhat-linux-gnu host_alias=x86_64-redhat-linux-gnu CC=gcc 'CFLAGS=-DMAIL_USE_LOCKF -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' LDFLAGS=-Wl,-z,relro PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig CXX=g++ 'CXXFLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer '' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM XWIDGETS GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Python Minor modes in effect: windmove-mode: t eglot-booster-mode: t eglot--managed-mode: t flymake-mode: t rainbow-delimiters-mode: t autopair-mode: t eshell-syntax-highlighting-global-mode: t eat-eshell-mode: t global-git-commit-mode: t server-mode: t global-corfu-mode: t corfu-mode: t global-treesit-auto-mode: t marginalia-mode: t savehist-mode: t vertico-mode: t override-global-mode: t doom-modeline-mode: t which-key-mode: t shell-dirtrack-mode: t gcmh-mode: t global-auto-revert-mode: t general-override-mode: t global-evil-collection-unimpaired-mode: t evil-collection-unimpaired-mode: t evil-mode: t evil-local-mode: t global-display-line-numbers-mode: t display-line-numbers-mode: t straight-use-package-mode: t straight-package-neutering-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /var/home/templarrr/.emacs.d/straight/build/transient/transient hides /usr/share/emacs/29.4/lisp/transient /var/home/templarrr/.emacs.d/straight/build/jsonrpc/jsonrpc hides /usr/share/emacs/29.4/lisp/jsonrpc /var/home/templarrr/.emacs.d/straight/build/external-completion/external-completion hides /usr/share/emacs/29.4/lisp/external-completion /var/home/templarrr/.emacs.d/straight/build/use-package/use-package hides /usr/share/emacs/29.4/lisp/use-package/use-package /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-lint hides /usr/share/emacs/29.4/lisp/use-package/use-package-lint /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-jump hides /usr/share/emacs/29.4/lisp/use-package/use-package-jump /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-ensure hides /usr/share/emacs/29.4/lisp/use-package/use-package-ensure /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-diminish hides /usr/share/emacs/29.4/lisp/use-package/use-package-diminish /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-delight hides /usr/share/emacs/29.4/lisp/use-package/use-package-delight /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-core hides /usr/share/emacs/29.4/lisp/use-package/use-package-core /var/home/templarrr/.emacs.d/straight/build/use-package/use-package-bind-key hides /usr/share/emacs/29.4/lisp/use-package/use-package-bind-key /var/home/templarrr/.emacs.d/straight/build/bind-key/bind-key hides /usr/share/emacs/29.4/lisp/use-package/bind-key /var/home/templarrr/.emacs.d/straight/build/xref/xref hides /usr/share/emacs/29.4/lisp/progmodes/xref /var/home/templarrr/.emacs.d/straight/build/project/project hides /usr/share/emacs/29.4/lisp/progmodes/project /var/home/templarrr/.emacs.d/straight/build/flymake/flymake hides /usr/share/emacs/29.4/lisp/progmodes/flymake /var/home/templarrr/.emacs.d/straight/build/eglot/eglot hides /usr/share/emacs/29.4/lisp/progmodes/eglot /var/home/templarrr/.emacs.d/straight/build/org/ox hides /usr/share/emacs/29.4/lisp/org/ox /var/home/templarrr/.emacs.d/straight/build/org/ox-texinfo hides /usr/share/emacs/29.4/lisp/org/ox-texinfo /var/home/templarrr/.emacs.d/straight/build/org/ox-publish hides /usr/share/emacs/29.4/lisp/org/ox-publish /var/home/templarrr/.emacs.d/straight/build/org/ox-org hides /usr/share/emacs/29.4/lisp/org/ox-org /var/home/templarrr/.emacs.d/straight/build/org/ox-odt hides /usr/share/emacs/29.4/lisp/org/ox-odt /var/home/templarrr/.emacs.d/straight/build/org/ox-md hides /usr/share/emacs/29.4/lisp/org/ox-md /var/home/templarrr/.emacs.d/straight/build/org/ox-man hides /usr/share/emacs/29.4/lisp/org/ox-man /var/home/templarrr/.emacs.d/straight/build/org/ox-latex hides /usr/share/emacs/29.4/lisp/org/ox-latex /var/home/templarrr/.emacs.d/straight/build/org/ox-koma-letter hides /usr/share/emacs/29.4/lisp/org/ox-koma-letter /var/home/templarrr/.emacs.d/straight/build/org/ox-icalendar hides /usr/share/emacs/29.4/lisp/org/ox-icalendar /var/home/templarrr/.emacs.d/straight/build/org/ox-html hides /usr/share/emacs/29.4/lisp/org/ox-html /var/home/templarrr/.emacs.d/straight/build/org/ox-beamer hides /usr/share/emacs/29.4/lisp/org/ox-beamer /var/home/templarrr/.emacs.d/straight/build/org/ox-ascii hides /usr/share/emacs/29.4/lisp/org/ox-ascii /var/home/templarrr/.emacs.d/straight/build/org/org hides /usr/share/emacs/29.4/lisp/org/org /var/home/templarrr/.emacs.d/straight/build/org/org-version hides /usr/share/emacs/29.4/lisp/org/org-version /var/home/templarrr/.emacs.d/straight/build/org/org-timer hides /usr/share/emacs/29.4/lisp/org/org-timer /var/home/templarrr/.emacs.d/straight/build/org/org-tempo hides /usr/share/emacs/29.4/lisp/org/org-tempo /var/home/templarrr/.emacs.d/straight/build/org/org-table hides /usr/share/emacs/29.4/lisp/org/org-table /var/home/templarrr/.emacs.d/straight/build/org/org-src hides /usr/share/emacs/29.4/lisp/org/org-src /var/home/templarrr/.emacs.d/straight/build/org/org-refile hides /usr/share/emacs/29.4/lisp/org/org-refile /var/home/templarrr/.emacs.d/straight/build/org/org-protocol hides /usr/share/emacs/29.4/lisp/org/org-protocol /var/home/templarrr/.emacs.d/straight/build/org/org-plot hides /usr/share/emacs/29.4/lisp/org/org-plot /var/home/templarrr/.emacs.d/straight/build/org/org-persist hides /usr/share/emacs/29.4/lisp/org/org-persist /var/home/templarrr/.emacs.d/straight/build/org/org-pcomplete hides /usr/share/emacs/29.4/lisp/org/org-pcomplete /var/home/templarrr/.emacs.d/straight/build/org/org-num hides /usr/share/emacs/29.4/lisp/org/org-num /var/home/templarrr/.emacs.d/straight/build/org/org-mouse hides /usr/share/emacs/29.4/lisp/org/org-mouse /var/home/templarrr/.emacs.d/straight/build/org/org-mobile hides /usr/share/emacs/29.4/lisp/org/org-mobile /var/home/templarrr/.emacs.d/straight/build/org/org-macs hides /usr/share/emacs/29.4/lisp/org/org-macs /var/home/templarrr/.emacs.d/straight/build/org/org-macro hides /usr/share/emacs/29.4/lisp/org/org-macro /var/home/templarrr/.emacs.d/straight/build/org/org-loaddefs hides /usr/share/emacs/29.4/lisp/org/org-loaddefs /var/home/templarrr/.emacs.d/straight/build/org/org-list hides /usr/share/emacs/29.4/lisp/org/org-list /var/home/templarrr/.emacs.d/straight/build/org/org-lint hides /usr/share/emacs/29.4/lisp/org/org-lint /var/home/templarrr/.emacs.d/straight/build/org/org-keys hides /usr/share/emacs/29.4/lisp/org/org-keys /var/home/templarrr/.emacs.d/straight/build/org/org-inlinetask hides /usr/share/emacs/29.4/lisp/org/org-inlinetask /var/home/templarrr/.emacs.d/straight/build/org/org-indent hides /usr/share/emacs/29.4/lisp/org/org-indent /var/home/templarrr/.emacs.d/straight/build/org/org-id hides /usr/share/emacs/29.4/lisp/org/org-id /var/home/templarrr/.emacs.d/straight/build/org/org-habit hides /usr/share/emacs/29.4/lisp/org/org-habit /var/home/templarrr/.emacs.d/straight/build/org/org-goto hides /usr/share/emacs/29.4/lisp/org/org-goto /var/home/templarrr/.emacs.d/straight/build/org/org-footnote hides /usr/share/emacs/29.4/lisp/org/org-footnote /var/home/templarrr/.emacs.d/straight/build/org/org-fold hides /usr/share/emacs/29.4/lisp/org/org-fold /var/home/templarrr/.emacs.d/straight/build/org/org-fold-core hides /usr/share/emacs/29.4/lisp/org/org-fold-core /var/home/templarrr/.emacs.d/straight/build/org/org-feed hides /usr/share/emacs/29.4/lisp/org/org-feed /var/home/templarrr/.emacs.d/straight/build/org/org-faces hides /usr/share/emacs/29.4/lisp/org/org-faces /var/home/templarrr/.emacs.d/straight/build/org/org-entities hides /usr/share/emacs/29.4/lisp/org/org-entities /var/home/templarrr/.emacs.d/straight/build/org/org-element hides /usr/share/emacs/29.4/lisp/org/org-element /var/home/templarrr/.emacs.d/straight/build/org/org-duration hides /usr/share/emacs/29.4/lisp/org/org-duration /var/home/templarrr/.emacs.d/straight/build/org/org-datetree hides /usr/share/emacs/29.4/lisp/org/org-datetree /var/home/templarrr/.emacs.d/straight/build/org/org-cycle hides /usr/share/emacs/29.4/lisp/org/org-cycle /var/home/templarrr/.emacs.d/straight/build/org/org-ctags hides /usr/share/emacs/29.4/lisp/org/org-ctags /var/home/templarrr/.emacs.d/straight/build/org/org-crypt hides /usr/share/emacs/29.4/lisp/org/org-crypt /var/home/templarrr/.emacs.d/straight/build/org/org-compat hides /usr/share/emacs/29.4/lisp/org/org-compat /var/home/templarrr/.emacs.d/straight/build/org/org-colview hides /usr/share/emacs/29.4/lisp/org/org-colview /var/home/templarrr/.emacs.d/straight/build/org/org-clock hides /usr/share/emacs/29.4/lisp/org/org-clock /var/home/templarrr/.emacs.d/straight/build/org/org-capture hides /usr/share/emacs/29.4/lisp/org/org-capture /var/home/templarrr/.emacs.d/straight/build/org/org-attach hides /usr/share/emacs/29.4/lisp/org/org-attach /var/home/templarrr/.emacs.d/straight/build/org/org-attach-git hides /usr/share/emacs/29.4/lisp/org/org-attach-git /var/home/templarrr/.emacs.d/straight/build/org/org-archive hides /usr/share/emacs/29.4/lisp/org/org-archive /var/home/templarrr/.emacs.d/straight/build/org/org-agenda hides /usr/share/emacs/29.4/lisp/org/org-agenda /var/home/templarrr/.emacs.d/straight/build/org/ol hides /usr/share/emacs/29.4/lisp/org/ol /var/home/templarrr/.emacs.d/straight/build/org/ol-w3m hides /usr/share/emacs/29.4/lisp/org/ol-w3m /var/home/templarrr/.emacs.d/straight/build/org/ol-rmail hides /usr/share/emacs/29.4/lisp/org/ol-rmail /var/home/templarrr/.emacs.d/straight/build/org/ol-mhe hides /usr/share/emacs/29.4/lisp/org/ol-mhe /var/home/templarrr/.emacs.d/straight/build/org/ol-man hides /usr/share/emacs/29.4/lisp/org/ol-man /var/home/templarrr/.emacs.d/straight/build/org/ol-irc hides /usr/share/emacs/29.4/lisp/org/ol-irc /var/home/templarrr/.emacs.d/straight/build/org/ol-info hides /usr/share/emacs/29.4/lisp/org/ol-info /var/home/templarrr/.emacs.d/straight/build/org/ol-gnus hides /usr/share/emacs/29.4/lisp/org/ol-gnus /var/home/templarrr/.emacs.d/straight/build/org/ol-eww hides /usr/share/emacs/29.4/lisp/org/ol-eww /var/home/templarrr/.emacs.d/straight/build/org/ol-eshell hides /usr/share/emacs/29.4/lisp/org/ol-eshell /var/home/templarrr/.emacs.d/straight/build/org/ol-doi hides /usr/share/emacs/29.4/lisp/org/ol-doi /var/home/templarrr/.emacs.d/straight/build/org/ol-docview hides /usr/share/emacs/29.4/lisp/org/ol-docview /var/home/templarrr/.emacs.d/straight/build/org/ol-bibtex hides /usr/share/emacs/29.4/lisp/org/ol-bibtex /var/home/templarrr/.emacs.d/straight/build/org/ol-bbdb hides /usr/share/emacs/29.4/lisp/org/ol-bbdb /var/home/templarrr/.emacs.d/straight/build/org/oc hides /usr/share/emacs/29.4/lisp/org/oc /var/home/templarrr/.emacs.d/straight/build/org/oc-natbib hides /usr/share/emacs/29.4/lisp/org/oc-natbib /var/home/templarrr/.emacs.d/straight/build/org/oc-csl hides /usr/share/emacs/29.4/lisp/org/oc-csl /var/home/templarrr/.emacs.d/straight/build/org/oc-bibtex hides /usr/share/emacs/29.4/lisp/org/oc-bibtex /var/home/templarrr/.emacs.d/straight/build/org/oc-biblatex hides /usr/share/emacs/29.4/lisp/org/oc-biblatex /var/home/templarrr/.emacs.d/straight/build/org/oc-basic hides /usr/share/emacs/29.4/lisp/org/oc-basic /var/home/templarrr/.emacs.d/straight/build/org/ob hides /usr/share/emacs/29.4/lisp/org/ob /var/home/templarrr/.emacs.d/straight/build/org/ob-tangle hides /usr/share/emacs/29.4/lisp/org/ob-tangle /var/home/templarrr/.emacs.d/straight/build/org/ob-table hides /usr/share/emacs/29.4/lisp/org/ob-table /var/home/templarrr/.emacs.d/straight/build/org/ob-sqlite hides /usr/share/emacs/29.4/lisp/org/ob-sqlite /var/home/templarrr/.emacs.d/straight/build/org/ob-sql hides /usr/share/emacs/29.4/lisp/org/ob-sql /var/home/templarrr/.emacs.d/straight/build/org/ob-shell hides /usr/share/emacs/29.4/lisp/org/ob-shell /var/home/templarrr/.emacs.d/straight/build/org/ob-sed hides /usr/share/emacs/29.4/lisp/org/ob-sed /var/home/templarrr/.emacs.d/straight/build/org/ob-screen hides /usr/share/emacs/29.4/lisp/org/ob-screen /var/home/templarrr/.emacs.d/straight/build/org/ob-scheme hides /usr/share/emacs/29.4/lisp/org/ob-scheme /var/home/templarrr/.emacs.d/straight/build/org/ob-sass hides /usr/share/emacs/29.4/lisp/org/ob-sass /var/home/templarrr/.emacs.d/straight/build/org/ob-ruby hides /usr/share/emacs/29.4/lisp/org/ob-ruby /var/home/templarrr/.emacs.d/straight/build/org/ob-ref hides /usr/share/emacs/29.4/lisp/org/ob-ref /var/home/templarrr/.emacs.d/straight/build/org/ob-python hides /usr/share/emacs/29.4/lisp/org/ob-python /var/home/templarrr/.emacs.d/straight/build/org/ob-processing hides /usr/share/emacs/29.4/lisp/org/ob-processing /var/home/templarrr/.emacs.d/straight/build/org/ob-plantuml hides /usr/share/emacs/29.4/lisp/org/ob-plantuml /var/home/templarrr/.emacs.d/straight/build/org/ob-perl hides /usr/share/emacs/29.4/lisp/org/ob-perl /var/home/templarrr/.emacs.d/straight/build/org/ob-org hides /usr/share/emacs/29.4/lisp/org/ob-org /var/home/templarrr/.emacs.d/straight/build/org/ob-octave hides /usr/share/emacs/29.4/lisp/org/ob-octave /var/home/templarrr/.emacs.d/straight/build/org/ob-ocaml hides /usr/share/emacs/29.4/lisp/org/ob-ocaml /var/home/templarrr/.emacs.d/straight/build/org/ob-maxima hides /usr/share/emacs/29.4/lisp/org/ob-maxima /var/home/templarrr/.emacs.d/straight/build/org/ob-matlab hides /usr/share/emacs/29.4/lisp/org/ob-matlab /var/home/templarrr/.emacs.d/straight/build/org/ob-makefile hides /usr/share/emacs/29.4/lisp/org/ob-makefile /var/home/templarrr/.emacs.d/straight/build/org/ob-lua hides /usr/share/emacs/29.4/lisp/org/ob-lua /var/home/templarrr/.emacs.d/straight/build/org/ob-lob hides /usr/share/emacs/29.4/lisp/org/ob-lob /var/home/templarrr/.emacs.d/straight/build/org/ob-lisp hides /usr/share/emacs/29.4/lisp/org/ob-lisp /var/home/templarrr/.emacs.d/straight/build/org/ob-lilypond hides /usr/share/emacs/29.4/lisp/org/ob-lilypond /var/home/templarrr/.emacs.d/straight/build/org/ob-latex hides /usr/share/emacs/29.4/lisp/org/ob-latex /var/home/templarrr/.emacs.d/straight/build/org/ob-julia hides /usr/share/emacs/29.4/lisp/org/ob-julia /var/home/templarrr/.emacs.d/straight/build/org/ob-js hides /usr/share/emacs/29.4/lisp/org/ob-js /var/home/templarrr/.emacs.d/straight/build/org/ob-java hides /usr/share/emacs/29.4/lisp/org/ob-java /var/home/templarrr/.emacs.d/straight/build/org/ob-haskell hides /usr/share/emacs/29.4/lisp/org/ob-haskell /var/home/templarrr/.emacs.d/straight/build/org/ob-groovy hides /usr/share/emacs/29.4/lisp/org/ob-groovy /var/home/templarrr/.emacs.d/straight/build/org/ob-gnuplot hides /usr/share/emacs/29.4/lisp/org/ob-gnuplot /var/home/templarrr/.emacs.d/straight/build/org/ob-fortran hides /usr/share/emacs/29.4/lisp/org/ob-fortran /var/home/templarrr/.emacs.d/straight/build/org/ob-forth hides /usr/share/emacs/29.4/lisp/org/ob-forth /var/home/templarrr/.emacs.d/straight/build/org/ob-exp hides /usr/share/emacs/29.4/lisp/org/ob-exp /var/home/templarrr/.emacs.d/straight/build/org/ob-eval hides /usr/share/emacs/29.4/lisp/org/ob-eval /var/home/templarrr/.emacs.d/straight/build/org/ob-eshell hides /usr/share/emacs/29.4/lisp/org/ob-eshell /var/home/templarrr/.emacs.d/straight/build/org/ob-emacs-lisp hides /usr/share/emacs/29.4/lisp/org/ob-emacs-lisp /var/home/templarrr/.emacs.d/straight/build/org/ob-dot hides /usr/share/emacs/29.4/lisp/org/ob-dot /var/home/templarrr/.emacs.d/straight/build/org/ob-ditaa hides /usr/share/emacs/29.4/lisp/org/ob-ditaa /var/home/templarrr/.emacs.d/straight/build/org/ob-css hides /usr/share/emacs/29.4/lisp/org/ob-css /var/home/templarrr/.emacs.d/straight/build/org/ob-core hides /usr/share/emacs/29.4/lisp/org/ob-core /var/home/templarrr/.emacs.d/straight/build/org/ob-comint hides /usr/share/emacs/29.4/lisp/org/ob-comint /var/home/templarrr/.emacs.d/straight/build/org/ob-clojure hides /usr/share/emacs/29.4/lisp/org/ob-clojure /var/home/templarrr/.emacs.d/straight/build/org/ob-calc hides /usr/share/emacs/29.4/lisp/org/ob-calc /var/home/templarrr/.emacs.d/straight/build/org/ob-awk hides /usr/share/emacs/29.4/lisp/org/ob-awk /var/home/templarrr/.emacs.d/straight/build/org/ob-R hides /usr/share/emacs/29.4/lisp/org/ob-R /var/home/templarrr/.emacs.d/straight/build/org/ob-C hides /usr/share/emacs/29.4/lisp/org/ob-C /var/home/templarrr/.emacs.d/straight/build/seq/seq hides /usr/share/emacs/29.4/lisp/emacs-lisp/seq /var/home/templarrr/.emacs.d/straight/build/map/map hides /usr/share/emacs/29.4/lisp/emacs-lisp/map /var/home/templarrr/.emacs.d/straight/build/eldoc/eldoc hides /usr/share/emacs/29.4/lisp/emacs-lisp/eldoc Features: (shadow sort mail-extr emacsbug vc-src vc-sccs vc-svn vc-cvs vc-rcs evil-collection-log-view log-view vc bug-reference consult-xref mule-util evil-collection-consult consult magit-bookmark evil-collection-bookmark bookmark windmove tabify org-datetree org-capture avy gptel-curl pcmpl-unix vc-hg vc-bzr eglot-booster evil-collection-eglot eglot external-completion jsonrpc evil-collection-xref xref evil-collection-flymake flymake seq-25 track-changes evil-collection-ert ert ewoc evil-collection-debug debug backtrace evil-collection-compile compile em-unix em-term em-script em-ls em-hist em-pred em-glob em-extpipe em-cmpl em-dirs em-basic em-banner org-indent visual-fill-column org-modern oc-basic ol-eww evil-collection-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win evil-collection-gnus gnus nnheader range wid-edit ol-docview evil-collection-doc-view doc-view jka-compr evil-collection-image image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi evil-collection-vc-git vc-git vc-dispatcher pp tramp-cache time-stamp tramp-sh pulse rainbow-delimiters autopair advice delsel .emacs git-auto-commit-mode git-auto-commit-mode-autoloads org-ql-autoloads peg-autoloads ov-autoloads org-super-agenda-autoloads ts-autoloads ht-autoloads map-autoloads ob-python evil-collection-python python project org-tempo tempo gptel-org evil-org-agenda evil-org org-element org-persist xdg org-id org-refile org-element-ast inline avl-tree evil-collection-org org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete org-list org-footnote org-faces org-entities evil-collection-outline noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs find-func evil-collection-calendar cal-menu calendar cal-loaddefs org-version org-compat org-macs org-modern-autoloads visual-fill-column-autoloads gptel gptel-openai gptel-autoloads eshell-up eshell-up-autoloads eshell-syntax-highlighting em-alias eshell-syntax-highlighting-autoloads evil-collection-eshell em-prompt eshell esh-var esh-mode esh-cmd generator esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups esh-util evil-collection-eat eat term/xterm xterm evil-collection-term term disp-table ehelp color eat-autoloads consult-autoloads pcase evil-collection-magit magit-submodule magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit evil-collection-package-menu package url-handlers evil-collection-magit-repos magit-repos magit-apply magit-wip magit-log which-func evil-collection-imenu imenu magit-diff smerge-mode diff evil-collection-diff-mode diff-mode git-commit evil-collection-log-edit log-edit message sendmail yank-media puny rfc822 mml mml-sec evil-collection-epa epa derived epg rfc6068 epg-config gnus-util text-property-search mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor server magit-mode transient browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util url-parse url-vars mailcap benchmark magit-git magit-base evil-collection-magit-section magit-section cursor-sensor crm magit-autoloads with-editor-autoloads transient-autoloads magit-section-autoloads nerd-icons-corfu nerd-icons-corfu-autoloads corfu-popupinfo evil-collection-corfu corfu cus-load corfu-autoloads docker-compose-mode docker-compose-mode-autoloads yaml-mode-autoloads dockerfile-mode evil-collection-sh-script sh-script smie executable dockerfile-mode-autoloads vue-mode-autoloads edit-indirect-autoloads ssass-mode-autoloads vue-html-mode-autoloads mmm-mode-autoloads eglot-booster-autoloads eglot-autoloads track-changes-autoloads jsonrpc-autoloads flymake-autoloads project-autoloads xref-autoloads external-completion-autoloads eldoc-autoloads autopair-autoloads rainbow-delimiters-autoloads treesit-auto treesit treesit-auto-autoloads marginalia marginalia-autoloads orderless orderless-autoloads savehist evil-collection-vertico vertico vertico-autoloads avy-autoloads use-package-bind-key bind-key easy-mmode doom-themes-ext-org doom-themes-ext-visual-bell face-remap doom-dracula-theme doom-themes doom-themes-base doom-themes-autoloads doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path f s dash compat compat-30 doom-modeline-autoloads shrink-path-autoloads f-autoloads dash-autoloads s-autoloads compat-autoloads evil-collection-info info seq-autoloads nerd-icons nerd-icons-faces nerd-icons-data nerd-icons-data-mdicon nerd-icons-data-flicon nerd-icons-data-codicon nerd-icons-data-devicon nerd-icons-data-sucicon nerd-icons-data-wicon nerd-icons-data-faicon nerd-icons-data-powerline nerd-icons-data-octicon nerd-icons-data-pomicon nerd-icons-data-ipsicon nerd-icons-autoloads evil-collection-which-key which-key which-key-autoloads use-package-diminish tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat shell pcomplete evil-collection-comint comint ansi-osc parse-time iso8601 time-date format-spec auth-source eieio eieio-core password-cache json ansi-color gcmh gcmh-autoloads autorevert filenotify general general-autoloads evil-org-autoloads use-package-ensure evil-collection-unimpaired evil-collection-tabulated-list evil-collection-tab-bar evil-collection-simple evil-collection-replace evil-collection-process-menu evil-collection-indent evil-collection-help evil-collection-elisp-mode evil-collection-eldoc evil-collection-dired evil-collection-buff-menu evil-collection annalist evil-collection-autoloads annalist-autoloads evil evil-integration evil-maps evil-commands reveal evil-jumps evil-command-window evil-types evil-search evil-ex evil-macros evil-repeat evil-states evil-core comp comp-cstr warnings icons rx evil-common thingatpt rect evil-vars ring edmacro kmacro evil-autoloads goto-chg-autoloads finder-inf dired-hide-dotfiles-autoloads diredfl-autoloads dired-single dired-single-autoloads all-the-icons-dired map byte-opt all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons dired dired-loaddefs all-the-icons-dired-autoloads all-the-icons-autoloads use-package-core display-line-numbers use-package-autoloads bind-key-autoloads straight-autoloads cl-seq cl-extra help-mode straight subr-x cl-macs gv cl-loaddefs cl-lib bytecomp byte-compile rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads xwidget-internal dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 910410 584255) (symbols 48 46732 3) (strings 32 203349 48898) (string-bytes 1 7434336) (vectors 16 110076) (vector-slots 8 2444820 715504) (floats 8 1489 3472) (intervals 56 42025 50370) (buffers 984 63))
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#74219
; Package emacs
.
(Thu, 07 Nov 2024 18:49:01 GMT) Full text and rfc822 format available.Message #8 received at 74219 <at> debbugs.gnu.org (full text, mbox):
From: Michael Albinus <michael.albinus <at> gmx.de> To: Artem Smushkov <artyom.smushkov <at> gmail.com> Cc: 74219 <at> debbugs.gnu.org Subject: Re: bug#74219: 29.4; TRAMP uses the same ad-hoc proxy for every docker container on remote hosts Date: Thu, 07 Nov 2024 19:48:35 +0100
Artem Smushkov <artyom.smushkov <at> gmail.com> writes: Hi Artem, your subject isn't correct. True is "Tramp uses the same ad-hoc proxy for every docker container with the same name on remote hosts". > I need to access some number of similarly named docker containers on > different remote hosts. For example I run > > cd "/ssh:host1|docker:container_name:/" > > in eshell, run some commands there, then I may run > > cd "/ssh:host2|docker:container_name:/" > > and run some commands there, etc. Emacs lisp functions (like cd, ls, > find-file, dired, etc) work as expected, but when I run some > executable > there (bash, python, etc) it always connects to the same host no > matter > what I specified in "cd" command previously. The workaround to make > things work is to run > > (setq tramp-default-proxies-alist nil) > > before switching to different host. That's not possible with Tramp. Not with the current design. The proxy definitions are kept internally, and they apply in reverse order of their appearance in the remote file names. After you have accessed "/ssh:host1|docker:container_name:", Tramp caches the information, that the remote host "/docker:container_name:" is reachable via "/ssh:host1:". You can even use the short form "/docker:container_name:" now, and Tramp remembers the hops. When you give a different multi-hop remote file name, like "/ssh:host2|docker:container_name:", Tramp parses from the end, and it detects, that it should use the hop "/ssh:host1:" as proxy. No further check. That's why you see the observed behavior. One could argue that this is an error. I'm not so sure, it is rather a consequence of the design. Proxy declarations were introduced in Tramp by means of configuring tramp-default-proxies-alist. This list is organized to detect proxy hops by starting with the final, target host, and adding the proxies to pass in order to reach that target. People found the configuration of that user option too complex, and that's why ad-hoc multi-hop remote file names have been added years later. But the principle has been kept. One possible mitigation is to set tramp-default-proxies-alist to nil before using different ad-hoc multi-hop file names. However, this is too drastic in my mind, because you will lose *all* specifications there, even for other multi-hops. Another, and better, solution is to use different target names. Do you need to give the containers the very same name "container_name" on both "host1" and "host2"? If you would give them different names, the problem doesn't exist. Best regards, Michael.
bug-gnu-emacs <at> gnu.org
:bug#74219
; Package emacs
.
(Sat, 09 Nov 2024 09:41:01 GMT) Full text and rfc822 format available.Message #11 received at 74219 <at> debbugs.gnu.org (full text, mbox):
From: Michael Albinus <michael.albinus <at> gmx.de> To: Artem Smushkov <artyom.smushkov <at> gmail.com> Cc: 74219 <at> debbugs.gnu.org Subject: Re: bug#74219: 29.4; TRAMP uses the same ad-hoc proxy for every docker container on remote hosts Date: Sat, 09 Nov 2024 10:40:37 +0100
Michael Albinus <michael.albinus <at> gmx.de> writes: Hi Artem, > That's not possible with Tramp. Not with the current design. The proxy > definitions are kept internally, and they apply in reverse order of > their appearance in the remote file names. I've checked the implementation, and it looks like adding this feature is not as expensive as I thought. So I have implemented it. Pushed to both Emacs and Tramp git repo, master branch. The Tramp manual has a new subsection "5.4.1 Using different proxies for the same destination" which explains this. In short, you must set tramp-show-ad-hoc-proxies to t. Do you have a chance to test it? Best regards, Michael.
bug-gnu-emacs <at> gnu.org
:bug#74219
; Package emacs
.
(Mon, 11 Nov 2024 10:54:02 GMT) Full text and rfc822 format available.Message #14 received at 74219 <at> debbugs.gnu.org (full text, mbox):
From: Artem Smushkov <artyom.smushkov <at> gmail.com> To: Michael Albinus <michael.albinus <at> gmx.de> Cc: 74219 <at> debbugs.gnu.org Subject: Re: bug#74219: 29.4; TRAMP uses the same ad-hoc proxy for every docker container on remote hosts Date: Mon, 11 Nov 2024 12:51:53 +0200
[Message part 1 (text/plain, inline)]
Hi Michael, Thank you a lot! I will test it today or tomorrow. On Sat, Nov 9 2024 at 10:40:37 AM +01:00:00, Michael Albinus <michael.albinus <at> gmx.de> wrote: > Michael Albinus <michael.albinus <at> gmx.de > <mailto:michael.albinus <at> gmx.de>> writes: > > Hi Artem, > >> That's not possible with Tramp. Not with the current design. The >> proxy >> definitions are kept internally, and they apply in reverse order of >> their appearance in the remote file names. > > I've checked the implementation, and it looks like adding this feature > is not as expensive as I thought. So I have implemented it. Pushed to > both Emacs and Tramp git repo, master branch. > > The Tramp manual has a new subsection "5.4.1 Using different proxies > for > the same destination" which explains this. In short, you must set > tramp-show-ad-hoc-proxies to t. > > Do you have a chance to test it? > > Best regards, Michael.
[Message part 2 (text/html, inline)]
Michael Albinus <michael.albinus <at> gmx.de>
:Artem Smushkov <artyom.smushkov <at> gmail.com>
:Message #19 received at 74219-done <at> debbugs.gnu.org (full text, mbox):
From: Michael Albinus <michael.albinus <at> gmx.de> To: Artem Smushkov <artyom.smushkov <at> gmail.com> Cc: 74219-done <at> debbugs.gnu.org Subject: Re: bug#74219: 29.4; TRAMP uses the same ad-hoc proxy for every docker container on remote hosts Date: Fri, 29 Nov 2024 13:27:42 +0100
Version: 31.1 Artem Smushkov <artyom.smushkov <at> gmail.com> writes: > Hi Michael, Hi Artem, > Sorry for a long delay, had much busier days then I expected. I tested > it in emacs built from master git branch, it works perfectly! Thank > you a lot! Thanks for the feedback. I'm closing the bug, therefore. Best regards, Michael.
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sat, 28 Dec 2024 12:24:08 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.