Subject: bug#27253: 25.2; Suggestion: On startup after Emacs version change, package should offer to correct invalid bytecode

From: Lars Ingebrigtsen <[email-masked]>
Date: Thu, 16 Jun 2022 13:50:48 +0200

Stefan Monnier <[email-masked]> writes:

> There should be a command/function to recompile an installed package,
> and maybe another to do the same for all packages, yes.

OK; I've now added two commands for that to Emacs 29.

> I don't think the OP's situation would be best served by recompiling
> everything, because usually recompilation is only needed for those few
> packages that were compiled a *long* time ago ( where I'd expect most
> packages have probably been recompiled since then because of
> package updates).
>
> But there's definitely room for improvement along the path of:
> detecting the presence of a file that's too old, figuring out which
> package needs to be recompiled, and then recompiling it.

I'm not sure there's any way of doing that that would be reliable enough
not to be annoying?  That is, we can determine if an .elc file is
readable, but we can't really detect if it's using a macro that has
changed so much that the .elc file should be rebuilt...

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no