GNU bug report logs - #71050
Tramp's direct-async-process makes remote IRB be missing prompt and duplicate input

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dmitry <at> gutov.dev>

Date: Sun, 19 May 2024 00:47:02 UTC

Severity: normal

Done: Dmitry Gutov <dmitry <at> gutov.dev>

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 71050 in the body.
You can then email your comments to 71050 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


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#71050; Package emacs. (Sun, 19 May 2024 00:47:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dmitry Gutov <dmitry <at> gutov.dev>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 19 May 2024 00:47:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dmitry <at> gutov.dev>
To: bug-gnu-emacs <at> gnu.org
Subject: Tramp's direct-async-process makes remote IRB be missing prompt and
 duplicate input
Date: Sun, 19 May 2024 03:46:30 +0300
It's not 100% clear to me that the bug is in Tramp and not IRB 
(run-python doesn't seem to exhibit the same problems), but it's easy 
enough to reproduce, so maybe the cause can be identified and fixed 
without too much trouble. It's probably something like the TERM variable 
or "is a tty" detection.

Steps:

1. Install inf-ruby from somewhere (e.g. NonGNU ELPA).
2. Connect to a server that has "direct-async-process" configured and 
which also has Ruby installed. fencepost has Ruby installed, FWIW.
3. Evaluate this: (run-ruby "irb").
4. The REPL buffer will be created called *ruby* where you can send 
input and receive output, but there is no prompt there, and whatever 
input you send is first duplicated in the output. Also, the buffer 
starts with "Switch to inspect mode", which seems to be related to the 
latter (input duplication) but not the former.

If the connection is not "direct-async-process", the REPL functions 
normally (prompt visible, no input duplication).

There is also an intermediate situation (with "direct-async-process" 
enabled) that happens if you simply run 'M-x inf-ruby' - that calls 
'irb' with a certain set of arguments for maximum compatibility. The 
result is that the prompt *is* visible, but the input duplication still 
happens.

It would be great to fix the bare (run-ruby "irb"), though - because 
there are contexts where passing the aforementioned extra arguments is 
more difficult. But I'll take any improvements as a win.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#71050; Package emacs. (Mon, 03 Jun 2024 11:37:01 GMT) Full text and rfc822 format available.

Message #8 received at 71050 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Dmitry Gutov <dmitry <at> gutov.dev>
Cc: 71050 <at> debbugs.gnu.org
Subject: Re: bug#71050: Tramp's direct-async-process makes remote IRB be
 missing prompt and duplicate input
Date: Mon, 03 Jun 2024 13:23:38 +0200
Dmitry Gutov <dmitry <at> gutov.dev> writes:

Hi Dmitry,

> It's not 100% clear to me that the bug is in Tramp and not IRB
> (run-python doesn't seem to exhibit the same problems), but it's easy
> enough to reproduce, so maybe the cause can be identified and fixed
> without too much trouble. It's probably something like the TERM
> variable or "is a tty" detection.

Due to bug#71259, handling of tty in direct async processes has been
improved. Could you pls check, whether this helps also in your case?

Best regards, Michael.




Reply sent to Dmitry Gutov <dmitry <at> gutov.dev>:
You have taken responsibility. (Mon, 03 Jun 2024 11:37:02 GMT) Full text and rfc822 format available.

Notification sent to Dmitry Gutov <dmitry <at> gutov.dev>:
bug acknowledged by developer. (Mon, 03 Jun 2024 11:37:03 GMT) Full text and rfc822 format available.

Message #13 received at 71050-done <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dmitry <at> gutov.dev>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 71050-done <at> debbugs.gnu.org
Subject: Re: bug#71050: Tramp's direct-async-process makes remote IRB be
 missing prompt and duplicate input
Date: Mon, 3 Jun 2024 14:35:52 +0300
Hi Michael,

On 03/06/2024 14:23, Michael Albinus wrote:
>> It's not 100% clear to me that the bug is in Tramp and not IRB
>> (run-python doesn't seem to exhibit the same problems), but it's easy
>> enough to reproduce, so maybe the cause can be identified and fixed
>> without too much trouble. It's probably something like the TERM
>> variable or "is a tty" detection.
> Due to bug#71259, handling of tty in direct async processes has been
> improved. Could you pls check, whether this helps also in your case?

It does look fixed. This is great, thank you!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#71050; Package emacs. (Mon, 03 Jun 2024 13:41:02 GMT) Full text and rfc822 format available.

Message #16 received at 71050 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Dmitry Gutov <dmitry <at> gutov.dev>
Cc: 71050 <at> debbugs.gnu.org
Subject: Re: bug#71050: Tramp's direct-async-process makes remote IRB be
 missing prompt and duplicate input
Date: Mon, 03 Jun 2024 15:35:23 +0200
Dmitry Gutov <dmitry <at> gutov.dev> writes:

> Hi Michael,

Hi Dmitry,

>> Due to bug#71259, handling of tty in direct async processes has been
>> improved. Could you pls check, whether this helps also in your case?
>
> It does look fixed. This is great, thank you!

Thanks. I'll merge both bugs.

Best regards, Michael.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 02 Jul 2024 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 80 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.