* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
[not found] ` <20240722075709.1C23CC41F06@vcs2.savannah.gnu.org>
@ 2024-08-05 14:30 ` Madhu
2024-08-05 16:57 ` Michael Albinus
2024-09-25 16:08 ` Andreas Schwab
1 sibling, 1 reply; 8+ messages in thread
From: Madhu @ 2024-08-05 14:30 UTC (permalink / raw)
To: emacs-devel
* Michael Albinus via Mailing list for Emacs changes <20240722075709.1C23CC41F06@vcs2.savannah.gnu.org> :
Wrote on Mon, 22 Jul 2024 03:57:08 -0400 (EDT):
> branch: emacs-30
> commit f050b9c5033ef92ac299d3da30774bc228fd0e08
> Author: Michael Albinus <michael.albinus@gmx.de>
> diff --git a/lisp/net/tramp-integration.el b/lisp/net/tramp-integration.el
> --- a/lisp/net/tramp-integration.el
> +++ b/lisp/net/tramp-integration.el
> @@ -275,9 +275,14 @@ NAME must be equal to `tramp-current-connection'."
> ;;; Integration of shortdoc.el:
>
> (with-eval-after-load 'shortdoc
> - (dolist (elem '((file-remote-p
> + (dolist (elem `((file-remote-p
> :eval (file-remote-p "/ssh:user@host:/tmp/foo")
> - :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method))
> + :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method)
> + :eval (file-remote-p "/ssh:user@[::1]#1234:/tmp/foo" 'host)
> + ;; We don't want to see the text properties.
> + :no-eval (file-remote-p "/sudo::/tmp/foo" 'user)
> + :result ,(substring-no-properties
> + (file-remote-p "/sudo::/tmp/foo" 'user)))
just a caveat that substring-no-properties can end up being called on
nil here. I agree it is unlikely, but I managed to trigger it with the
`swiper' package, where an unconditional (require 'tramp) in the midst
of code kept failing.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-08-05 14:30 ` emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests Madhu
@ 2024-08-05 16:57 ` Michael Albinus
2024-08-05 18:21 ` Michael Albinus
0 siblings, 1 reply; 8+ messages in thread
From: Michael Albinus @ 2024-08-05 16:57 UTC (permalink / raw)
To: Madhu; +Cc: emacs-devel
Madhu <enometh@meer.net> writes:
Hi Madhu,
>> ;;; Integration of shortdoc.el:
>>
>> (with-eval-after-load 'shortdoc
>> - (dolist (elem '((file-remote-p
>> + (dolist (elem `((file-remote-p
>> :eval (file-remote-p "/ssh:user@host:/tmp/foo")
>> - :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method))
>> + :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method)
>> + :eval (file-remote-p "/ssh:user@[::1]#1234:/tmp/foo" 'host)
>> + ;; We don't want to see the text properties.
>> + :no-eval (file-remote-p "/sudo::/tmp/foo" 'user)
>> + :result ,(substring-no-properties
>> + (file-remote-p "/sudo::/tmp/foo" 'user)))
>
> just a caveat that substring-no-properties can end up being called on
> nil here. I agree it is unlikely, but I managed to trigger it with the
> `swiper' package, where an unconditional (require 'tramp) in the midst
> of code kept failing.
In that case (file-remote-p returns nil) the whole block doesn't make
sense. How did they manage to manipulate Tramp this way? Setting
tramp-mode to nil? Manipulating file-name-handler-alist?
Best regards, Michael.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-08-05 16:57 ` Michael Albinus
@ 2024-08-05 18:21 ` Michael Albinus
2024-08-06 2:41 ` Madhu
0 siblings, 1 reply; 8+ messages in thread
From: Michael Albinus @ 2024-08-05 18:21 UTC (permalink / raw)
To: Madhu; +Cc: emacs-devel
Michael Albinus <michael.albinus@gmx.de> writes:
Hi Madhu,
>>> ;;; Integration of shortdoc.el:
>>>
>>> (with-eval-after-load 'shortdoc
>>> - (dolist (elem '((file-remote-p
>>> + (dolist (elem `((file-remote-p
>>> :eval (file-remote-p "/ssh:user@host:/tmp/foo")
>>> - :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method))
>>> + :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method)
>>> + :eval (file-remote-p "/ssh:user@[::1]#1234:/tmp/foo" 'host)
>>> + ;; We don't want to see the text properties.
>>> + :no-eval (file-remote-p "/sudo::/tmp/foo" 'user)
>>> + :result ,(substring-no-properties
>>> + (file-remote-p "/sudo::/tmp/foo" 'user)))
>>
>> just a caveat that substring-no-properties can end up being called on
>> nil here. I agree it is unlikely, but I managed to trigger it with the
>> `swiper' package, where an unconditional (require 'tramp) in the midst
>> of code kept failing.
>
> In that case (file-remote-p returns nil) the whole block doesn't make
> sense. How did they manage to manipulate Tramp this way? Setting
> tramp-mode to nil? Manipulating file-name-handler-alist?
I've added a sanity check. Pushed to the emacs-30 branch.
Best regards, Michael.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-08-05 18:21 ` Michael Albinus
@ 2024-08-06 2:41 ` Madhu
2024-08-06 14:08 ` Michael Albinus
0 siblings, 1 reply; 8+ messages in thread
From: Madhu @ 2024-08-06 2:41 UTC (permalink / raw)
To: emacs-devel
* Michael Albinus <87cymmomol.fsf@gmx.de> :
Wrote on Mon, 05 Aug 2024 20:21:30 +0200:
> Michael Albinus <michael.albinus@gmx.de> writes:
>>>> + :result ,(substring-no-properties
>>>> + (file-remote-p "/sudo::/tmp/foo" 'user)))
>>>
>>> just a caveat that substring-no-properties can end up being called on
>>> nil here. I agree it is unlikely, but I managed to trigger it with the
>>> `swiper' package, where an unconditional (require 'tramp) in the midst
>>> of code kept failing.
>>
>> In that case (file-remote-p returns nil) the whole block doesn't make
>> sense. How did they manage to manipulate Tramp this way? Setting
>> tramp-mode to nil? Manipulating file-name-handler-alist?
It wasn't them, it was me, or I suspect it was some async (delayed
loading/reloading) glitch but I'm not sure how it happened. AFAIK i was
not using the hammer on file-name-handler-alist [1], all I did was set
tramp-completion-file-name-handler-alist to nil.
> I've added a sanity check. Pushed to the emacs-30 branch.
Thanks
[1] a decade ago I used to disable tramp with this hammer, but it too
was ineffective when tramp got (somehow) reloaded so I abandoned it. I'm
pretty sure I had not manipulated this explicitly to trigger this crash.
```
(setq file-name-handler-alist
(loop for x in file-name-handler-alist
for (pattern . symbol) = x
for name = (symbol-name symbol)
unless (string-match "tramp" name) collect x))
```
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-08-06 2:41 ` Madhu
@ 2024-08-06 14:08 ` Michael Albinus
2024-08-07 15:21 ` Madhu
0 siblings, 1 reply; 8+ messages in thread
From: Michael Albinus @ 2024-08-06 14:08 UTC (permalink / raw)
To: Madhu; +Cc: emacs-devel
Madhu <enometh@meer.net> writes:
Hi Madhu,
> It wasn't them, it was me, or I suspect it was some async (delayed
> loading/reloading) glitch but I'm not sure how it happened. AFAIK i was
> not using the hammer on file-name-handler-alist [1], all I did was set
> tramp-completion-file-name-handler-alist to nil.
Why that?
Best regards, Michael.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-08-06 14:08 ` Michael Albinus
@ 2024-08-07 15:21 ` Madhu
0 siblings, 0 replies; 8+ messages in thread
From: Madhu @ 2024-08-07 15:21 UTC (permalink / raw)
To: emacs-devel
* Michael Albinus <87r0b1n3qd.fsf@gmx.de> :
Wrote on Tue, 06 Aug 2024 16:08:26 +0200:
> Madhu <enometh@meer.net> writes:
>> It wasn't them, it was me, or I suspect it was some async (delayed
>> loading/reloading) glitch but I'm not sure how it happened. AFAIK i was
>> not using the hammer on file-name-handler-alist [1], all I did was set
>> tramp-completion-file-name-handler-alist to nil.
>
> Why that?
I had it in my init file because it solved a problem with some other
package at some point. I've not yet gotten around to determining what
problem it solved, but I verified that this variable was not changed
from the default in the emacs session where I encountered the failure I
reported (so it probably isn't relevant).
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
[not found] ` <20240722075709.1C23CC41F06@vcs2.savannah.gnu.org>
2024-08-05 14:30 ` emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests Madhu
@ 2024-09-25 16:08 ` Andreas Schwab
2024-09-25 17:47 ` Michael Albinus
1 sibling, 1 reply; 8+ messages in thread
From: Andreas Schwab @ 2024-09-25 16:08 UTC (permalink / raw)
To: emacs-devel; +Cc: Michael Albinus
On Jul 22 2024, Michael Albinus via Mailing list for Emacs changes wrote:
> diff --git a/lisp/net/tramp-integration.el b/lisp/net/tramp-integration.el
> index e1f0b2a3495..56deaf9066b 100644
> --- a/lisp/net/tramp-integration.el
> +++ b/lisp/net/tramp-integration.el
> @@ -275,9 +275,14 @@ NAME must be equal to `tramp-current-connection'."
> ;;; Integration of shortdoc.el:
>
> (with-eval-after-load 'shortdoc
> - (dolist (elem '((file-remote-p
> + (dolist (elem `((file-remote-p
> :eval (file-remote-p "/ssh:user@host:/tmp/foo")
> - :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method))
> + :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method)
> + :eval (file-remote-p "/ssh:user@[::1]#1234:/tmp/foo" 'host)
> + ;; We don't want to see the text properties.
> + :no-eval (file-remote-p "/sudo::/tmp/foo" 'user)
> + :result ,(substring-no-properties
> + (file-remote-p "/sudo::/tmp/foo" 'user)))
This throws "Wrong type argument: stringp, nil" when
(tramp-change-syntax 'simplified).
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests
2024-09-25 16:08 ` Andreas Schwab
@ 2024-09-25 17:47 ` Michael Albinus
0 siblings, 0 replies; 8+ messages in thread
From: Michael Albinus @ 2024-09-25 17:47 UTC (permalink / raw)
To: Andreas Schwab; +Cc: emacs-devel
Andreas Schwab <schwab@suse.de> writes:
Hi Andreas,
>> diff --git a/lisp/net/tramp-integration.el b/lisp/net/tramp-integration.el
>> index e1f0b2a3495..56deaf9066b 100644
>> --- a/lisp/net/tramp-integration.el
>> +++ b/lisp/net/tramp-integration.el
>> @@ -275,9 +275,14 @@ NAME must be equal to `tramp-current-connection'."
>> ;;; Integration of shortdoc.el:
>>
>> (with-eval-after-load 'shortdoc
>> - (dolist (elem '((file-remote-p
>> + (dolist (elem `((file-remote-p
>> :eval (file-remote-p "/ssh:user@host:/tmp/foo")
>> - :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method))
>> + :eval (file-remote-p "/ssh:user@host:/tmp/foo" 'method)
>> + :eval (file-remote-p "/ssh:user@[::1]#1234:/tmp/foo" 'host)
>> + ;; We don't want to see the text properties.
>> + :no-eval (file-remote-p "/sudo::/tmp/foo" 'user)
>> + :result ,(substring-no-properties
>> + (file-remote-p "/sudo::/tmp/foo" 'user)))
>
> This throws "Wrong type argument: stringp, nil" when
> (tramp-change-syntax 'simplified).
Thanks, I've fixed this in the emacs-30 branch.
Best regards, Michael.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-09-25 17:47 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <172163502862.25672.12565431460737995012@vcs2.savannah.gnu.org>
[not found] ` <20240722075709.1C23CC41F06@vcs2.savannah.gnu.org>
2024-08-05 14:30 ` emacs-30 f050b9c5033: Fix Tramp IPv6 handling in tests Madhu
2024-08-05 16:57 ` Michael Albinus
2024-08-05 18:21 ` Michael Albinus
2024-08-06 2:41 ` Madhu
2024-08-06 14:08 ` Michael Albinus
2024-08-07 15:21 ` Madhu
2024-09-25 16:08 ` Andreas Schwab
2024-09-25 17:47 ` Michael Albinus
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.