Subject: Re: bug#79124: emacs -Q doesn't give me a clean slate

From: Eli Zaretskii <[email-masked]>
Date: Wed, 06 Aug 2025 17:55:45 +0300

> Date: Wed, 6 Aug 2025 06:49:45 -0700
> Cc: [email-masked], [email-masked], [email-masked]
> From: Paul Eggert <[email-masked]>
> 
> On 2025-08-06 05:34, Eli Zaretskii wrote:
> 
> > The other part of the puzzle is that it is not always
> > possible to predict in advance what Lisp files will be automatically
> > loaded at startup because they are needed by the startup code, so they
> > couldn't all be natively-compiled in advance.
> 
> That part of the puzzle does not apply, since -Q means "don't run 
> startup code".

No, it doesn't.  startup.el's code is run in "emacs -Q" as well
(although some parts of it, like loading the user init file, are
omitted).

> > I'm not interested in adding yet another way of
> > avoiding native-compilation
> 
> But I'm not asking for another way to avoid native compilation. Native 
> compilation is fine. Just don't trust what's already in .emacs.d, that's 
> all.

The way JIT native compilation works, it writes the *.eln files under
the user home directory, and looks there for *.eln files that were
already compiled.  So yes, you are asking to either avoid this or
significantly change how it works.

>  > The solution we use in the test suite is to set HOME to a non-existent
>  > directory, so that's what I can suggest in your case.
> 
> That suggestion is inadequate, as it leads to bogus diagnostics and/or 
> detritus after the test. However you are unwilling to change your mind 
> even to add a simple flag, and you are a maintainer whereas I am not.

My problem is not with adding a flag, it's with modifying code to
support that flag.