Subject: bug#61350: Eglot over Tramp freezes with large project

From: João Távora <[email-masked]>
Date: Sat, 11 Mar 2023 11:47:28 +0000

Thomas Koch <[email-masked]> writes:

> I'm sorry, I didn't test your patch yet. I didn't have the focus time
> to do so. But mainly it does not look good to me.

> Even if our tests would indicate no problem, we couldn't possibly test
> for all side effects to all elisp code that works with processes. For
> me the conservative approach is to remove the JUST-THIS-ONE argument.

I agree that JUST-THIS-ONE would be cleaner, but I disagree that it
would be more conservative.

I can't speak for Michael, but in my view, "conservative" is a measure
of the amplitude of the change.  The change that Michael and I are
proposing, despite being objectively ugly when compared to removing
JUST-THIS-ONE, is _less_ removed from the current Tramp mechanisms than
your idea.  Thus, it is safer.

> I digged into the history of the JUST-THIS-ONE argument. etc/NEWS.22 says, emphasis from me:
>
> [...]
> integer, also inhibit running timers.  THIS FEATURE IS GENERALLY NOT
> RECOMMENDED, but may be necessary for specific applications, such as
> speech synthesis.
> """
> [...]
> Because there is no such library in Emacs, people either write their
> own code for continuations (eglot?) or do too much work in a process
> filter function (speechd-el in 2004 which led to JUST-THIS-ONE).

I think this analysis is very interesting and valid.  Not necessarily
for fixing this particular bug. You should send it to
[email-masked] so it becomes more visible to people who may not be
following the bug tracker.

João