Subject: bug#63260: 29.0.90; Regression installing/activating packages without autoloads

From: Eli Zaretskii <[email-masked]>
Date: Sun, 07 May 2023 15:54:28 +0300

> From: Philip Kaludercic <[email-masked]>
> Cc: Basil Contovounesios <[email-masked]>,  [email-masked],
>   [email-masked]
> Date: Sun, 07 May 2023 12:39:48 +0000
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > AFAIU, in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62734 I asked
> > Philip what would happen in this case, and he replied that the changes
> > he proposed did TRT in that case?  So what is different here?  Philip?
> 
> No, that appears to have been my mistake.  The issue is that
> `loaddefs-generate' generates the autoload file while looping over all
> definitions to autoload, but if there are no files, Basil is right that
> nothing happens.  This is fine in general, but `loaddefs-generate' has
> the extra task of modifying load-path (which has been the root of the
> issue in bug#62734).  Perhaps it is best to revert the commit, and come
> up with a alternative solution.  I have an idea, but I'll have to test
> it again before I forget something like this.

If we revert that commit, we will bring back bug#62734, which to me
sounds like a similarly serious, perhaps even more serious, issue,
don't you agree?  So I think maybe we need to amend that commit with
something that takes care of the particular situation reported here.
Specifically, it seems we need to detect the situation where a package
has no autoloads at all, and then produce the minimal autoloads file
that such packages expect.