Subject: bug#50849: 28.0.50; Proposal for Emacs daemon to signal when being busy

From: Robert Pluim <[email-masked]>
Date: Tue, 06 Sep 2022 16:02:01 +0200

>>>>> On Tue, 06 Sep 2022 15:22:27 +0300, Eli Zaretskii <[email-masked]> said:

    Eli> Looking at the code, I don't understand how this was supposed to
    Eli> work.  After sending the request to the server, we call recv in a
    Eli> loop, waiting for a response.  But in a normal session, the server
    Eli> will only respond when the user is done with editing the file, which
    Eli> could be after a very long time.  So this _must_ time out.

Doesnʼt the server send its pid to the client? Youʼd want to
recv+timeout just for that initial response, no?

    Eli> I think to make this work, the client-server protocol should be
    Eli> changed so that the server responds with some kind of positive
    Eli> response right after it receives the initial request.  And that would
    Eli> make the protocol backward-incompatible, unfortunately.

Both emacsclient.c and server.el error out on unknown commands, so
thatʼs inevitable.

Robert
--