GNU bug report logs - #76772
29.4; Emacsclient doesn't display warnings emitted during daemon startup

Previous Next

Package: emacs;

Reported by: Artiom Balan <artiombalan331 <at> gmail.com>

Date: Thu, 6 Mar 2025 04:48:04 UTC

Severity: wishlist

Tags: confirmed

Found in version 29.4

Full log


View this message in rfc822 format

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 76772 <at> debbugs.gnu.org, artiombalan331 <at> gmail.com
Subject: bug#76772: 29.4; Emacsclient doesn't display warnings emitted during daemon startup
Date: Fri, 7 Mar 2025 01:28:34 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Stefan Kangas <stefankangas <at> gmail.com>
>> Date: Thu, 6 Mar 2025 01:25:37 -0800
>> Cc: 76772 <at> debbugs.gnu.org
>>
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>>
>> > tags 76772 notabug
>> > thanks
>> >
>> >> From: Artiom Balan <artiombalan331 <at> gmail.com>
>> >> Date: Wed, 5 Mar 2025 23:47:26 +0200
>> >>
>> >> Steps to reproduce:
>> >> 1. Run emacs: emacs -Q --eval "(display-warning 'type \"message\"))"
>> >> 2. Notice the warning is displayed
>> >> 3. Start emacs server: emacs -Q --fg-daemon --eval "(display-warning 'type \"message\"))"
>> >> 4. Open a client: emacsclient -c
>> >> 5. Notice the warning is not displayed
>> >>
>> >> I expected that the warnings buffer would be displayed in the exact
>> >> same way in the emacsclient as in the first scenario.
>> >
>> > Thanks.
>> >
>> > The *Warnings* buffer is there, it's just that the client frame
>> > doesn't show it.  Why should it? how should it know you want that
>> > particular buffer displayed without any indication from you?
>>
>> We show it unconditionally in regular Emacs sessions, so it is at the
>> very least surprising that it is not displayed in the scenario described
>> above.
>
> When emacsclient connects, the new frame that it starts shows what
> emacsclient tells the server to display, and if it doesn't, then the
> default is the current buffer.  The server never displays anything
> without being told, and emacsclient cannot know what were the
> command-line arguments with which the daemon was invoked.
>
> In general, the client frame shows what emacsclient tells it to show,
> not something from the time the daemon started.
>
> So I think the analogy cannot work, at least due to technical reasons
> if not in principle.

AFAIU, some people start emacs-server from, for example, systemd, and
only ever pop up an Emacs frame with emacsclient.  They might never see
the warnings.

If we expect people to manually check the *Warnings* buffer, this sounds
to me as the same as saying either
1. warnings are not important to display, or
2. warnings are not important to display to users that use
   emacs-server+emacsclient

If our reply is (2), which sounds more plausible, then I think that must
be justified somehow.




This bug report was last modified 103 days ago.

Previous Next


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