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

From: Eli Zaretskii <[email-masked]>
Date: Tue, 05 Aug 2025 14:19:09 +0300

> Date: Mon, 4 Aug 2025 13:09:00 -0700
> Cc: [email-masked], [email-masked], [email-masked]
> From: Paul Eggert <[email-masked]>
> 
> On 2025-08-04 11:14, Eli Zaretskii wrote:
> > none of the *.eln files
> > are user-specific configuration
> 
> They are if the *.eln files are incorrect, which they may be for various 
> reasons.

Please give examples for such reasons.  AFAIR, you accepted the AOT
build as a workaround for this problem, in which case I don't
understand how the *.eln files compiled from the *.el files in the
Emacs source tree are "kosher" when they are in the installation tree,
but not if they are under ~/.emacs.c/eln-cache/.  I also don't
understand how are they different from *.elc files produced on the
user's machine as part of the build and installed in the installation
tree.

> A reproducible test should not be disrupted merely because the 
> user's ~/.emacs.d/...macroexpand_0.eln is corrupt.

Why would it be corrupt, but the same file under /usr/lib/emacs cannot
be?

> > precisely like the *.elc files on the
> > user's machine aren't.
> 
> Are you talking about *.elc files under ~/.emacs.d? In that case, yes, 
> it should be just like *.eln files under ~/.emacs.d: neither kind of 
> file should be read on startup in a reproducible test. I observed this 
> issue only with *.eln files, and that is why I've been talking about 
> *.eln files.

The directory where these files live is not important.  What's
important is that they are produced from the stock Lisp sources of the
Emacs distribution, which is what you presumably want to test.