unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Jim Porter <jporterbugs@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 58877@debbugs.gnu.org
Subject: bug#58877: 29.0.50; [PATCH] When killing Emacs from a client frame with no other frames, Emacs shows a useless error prompt
Date: Sat, 26 Nov 2022 12:17:59 -0800	[thread overview]
Message-ID: <2be2d630-f4da-16f9-5afc-9f6561a9995a@gmail.com> (raw)
In-Reply-To: <83v8n1qz3k.fsf@gnu.org>

On 11/26/2022 11:45 AM, Eli Zaretskii wrote:
>> Date: Sat, 26 Nov 2022 11:04:48 -0800
>> Cc: 58877@debbugs.gnu.org
>> From: Jim Porter <jporterbugs@gmail.com>
>>
>>> I think you need to modify the tests to ensure the server file is created in
>>> a temporary directory.  And keep in mind that the variable which affects
>>> that is different depending on whether server-use-tcp is or isn't non-nil.
>>
>> Hm, I'm surprised the tests failed again for you then. Both of the
>> patches I posted to fix the tests set the 'server-name' to a (hopefully)
>> unique value.
>>
>> Still, I think it's a good idea to use a temporary directory to hold the
>> server file, so here's a patch that does that. I've tried this patch
>> with a production Emacs server running at the same time in several
>> different configurations (with 'server-use-tcp' on and off, and with
>> --daemon), and the tests all pass locally for me on GNU/Linux.
> 
> Still fails, and here's why:
> 
>      Client output: d:\gnu\git\emacs\trunk\lib-src\emacsclient.exe: unrecognized option '--socket-name'
>                     Try 'd:\gnu\git\emacs\trunk\lib-src\emacsclient.exe --help' for more information
> 
>                     Process d:/gnu/git/emacs/trunk/lib-src/emacsclient exited abnormally with code 1
> 
> There's no --socket-name switch on MS-Windows; you need to use --server-file
> instead.

Ah ha, that explains it. I didn't realize that distinction.

> If I change server-tests/start-client to use --server-file, the next problem
> rears its ugly head:
> 
>      Client output: *ERROR*: Not using an ASCII terminal now; cannot make a new ASCII frame
> 
>                     Process d:/gnu/git/emacs/trunk/lib-src/emacsclient exited abnormally with code 1
> 
> This is because emacsclient on Windows cannot create new terminal frames,
> only new GUI frames, unless Emacs was started as "emacs -nw".
> 
> Why do these tests need TTY frames?

The test code just calls "emacsclient -c", and they should be happy with 
any kind of frame, TTY or GUI. I guess that by running in batch mode, 
Emacs will try to create TTY frames, but that fails on MS Windows?

> Btw, with the above changes, only 3 tests fail:
> 
>    3 unexpected results:
>       FAILED  server-tests/emacsclient/create-frame
>       FAILED  server-tests/server-force-stop/keeps-frames
>       FAILED  server-tests/server-start/stop-prompt-with-client
> 
> So this is progress, thanks.

All these tests involve creating client frames, so that makes sense. I'm 
not sure how to coax Emacs into creating GUI frames on MS Windows for 
these tests though. Still, I don't think these failures are a sign of 
anything broken exactly; it's just the combination of MS Windows' 
limitations with trying to create frames in an Emacs batch session.

Unless you have an idea for how to fix that (I've got no clue, 
unfortunately), how about just skipping these tests on MS Windows, with 
a comment explaining what the limitation is?





  reply	other threads:[~2022-11-26 20:17 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-29 21:33 bug#58877: 29.0.50; [PATCH] When killing Emacs from a client frame with no other frames, Emacs shows a useless error prompt Jim Porter
2022-10-30  6:14 ` Eli Zaretskii
2022-10-30 21:14   ` Jim Porter
2022-11-22  5:06     ` Jim Porter
2022-11-24 11:51       ` Eli Zaretskii
2022-11-25  1:36         ` Jim Porter
2022-11-25 13:25           ` Eli Zaretskii
2022-11-25 19:31             ` Jim Porter
2022-11-25 20:18               ` Eli Zaretskii
2022-11-25 20:57                 ` Jim Porter
2022-11-26 14:43                   ` Eli Zaretskii
2022-11-26 19:04                     ` Jim Porter
2022-11-26 19:45                       ` Eli Zaretskii
2022-11-26 20:17                         ` Jim Porter [this message]
2022-11-26 20:35                           ` Eli Zaretskii
2022-11-26 21:44                             ` Jim Porter
2022-11-28  1:28                               ` Jim Porter
2022-11-28  3:31                                 ` Eli Zaretskii
2022-11-28  6:27                                   ` Jim Porter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2be2d630-f4da-16f9-5afc-9f6561a9995a@gmail.com \
    --to=jporterbugs@gmail.com \
    --cc=58877@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).