GNU bug report logs - #79981
The user-lisp directory feature is not compatible with load-path-filter-cache-directory-files

Previous Next

Package: emacs;

Reported by: Haoyuan Wang <pRoMMMModE <at> outlook.com>

Date: Wed, 10 Dec 2025 13:59:02 UTC

Severity: normal

Fixed in version 31.1

Done: Sean Whitton <spwhitton <at> spwhitton.name>

To reply to this bug, email your comments to 79981 AT debbugs.gnu.org.
There is no need to reopen the bug first.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Wed, 10 Dec 2025 13:59:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Haoyuan Wang <pRoMMMModE <at> outlook.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 10 Dec 2025 13:59:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Haoyuan Wang <pRoMMMModE <at> outlook.com>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>
Subject: The user-lisp directory feature is not compatible with
 load-path-filter-cache-directory-files
Date: Wed, 10 Dec 2025 13:53:08 +0000
To reproduce:

1. Have these lines in the early-init.el
    (when (boundp 'load-path-filter-function)
      (setq load-path-filter-function #'load-path-filter-cache-directory-files))
    (setq user-lisp-auto-scrape t)

2. Have a clean user-lisp directory, that means no autoload files or elc files.

3. Run Emacs and it will crash, in my case the output messages in terminal looks
   like these:

   $ emacs --debug-init
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
   Error while compiling: (void-function byte-recompile-file)
     INFO     Scraping 9 files for loaddefs...
   loaddefs-gen: loading file fakecursor (for cl-defmacro)
   Loading c:/home/.config/emacs/user-lisp/fakecursor.el (source)...
   Wrong type argument: stringp, nil

For context I have only have 8 elisp scripts and 0 sub folders in user-lisp and
fakecursor.el has a `(eval-when-compile (require 'cl-macs))` line in it.



Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Wed, 10 Dec 2025 14:45:02 GMT) Full text and rfc822 format available.

Message #8 received at 79981 <at> debbugs.gnu.org (full text, mbox):

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Haoyuan Wang <pRoMMMModE <at> outlook.com>, Philip Kaludercic
 <philipk <at> posteo.net>
Cc: 79981 <at> debbugs.gnu.org
Subject: Re: bug#79981: The user-lisp directory feature is not compatible
 with load-path-filter-cache-directory-files
Date: Wed, 10 Dec 2025 14:44:14 +0000
Hello,

On Wed 10 Dec 2025 at 01:53pm GMT, Haoyuan Wang wrote:

> To reproduce:
>
> 1. Have these lines in the early-init.el
>     (when (boundp 'load-path-filter-function)
>       (setq load-path-filter-function #'load-path-filter-cache-directory-files))
>     (setq user-lisp-auto-scrape t)
>
> 2. Have a clean user-lisp directory, that means no autoload files or elc files.
>
> 3. Run Emacs and it will crash, in my case the output messages in terminal looks
>    like these:
>
>    $ emacs --debug-init
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>    Error while compiling: (void-function byte-recompile-file)
>      INFO     Scraping 9 files for loaddefs...
>    loaddefs-gen: loading file fakecursor (for cl-defmacro)
>    Loading c:/home/.config/emacs/user-lisp/fakecursor.el (source)...
>    Wrong type argument: stringp, nil
>
> For context I have only have 8 elisp scripts and 0 sub folders in user-lisp and
> fakecursor.el has a `(eval-when-compile (require 'cl-macs))` line in it.

Thanks for the report.  Adding Philip.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Thu, 11 Dec 2025 02:41:01 GMT) Full text and rfc822 format available.

Message #11 received at 79981 <at> debbugs.gnu.org (full text, mbox):

From: Haoyuan Wang <pRoMMMModE <at> outlook.com>
To: "79981 <at> debbugs.gnu.org" <79981 <at> debbugs.gnu.org>
Subject: Re: bug#79981: The user-lisp directory feature is not compatible with
 load-path-filter-cache-directory-files
Date: Thu, 11 Dec 2025 02:39:52 +0000
I should also mention that there are two ways to get around this for now:

1. Remove the  load-path-filter-function related config, then Emacs will run but
somehow scripts in user-lisp are not byte compiled, only autoload files are
generated.

2. (setq user-lisp-auto-scrape nil), then invoke prepare-user-lisp manually.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Fri, 12 Dec 2025 05:50:02 GMT) Full text and rfc822 format available.

Message #14 received at 79981 <at> debbugs.gnu.org (full text, mbox):

From: Haoyuan Wang <pRoMMMModE <at> outlook.com>
To: Sean Whitton <spwhitton <at> spwhitton.name>, Philip Kaludercic
 <philipk <at> posteo.net>
Cc: "79981 <at> debbugs.gnu.org" <79981 <at> debbugs.gnu.org>
Subject: Re: bug#79981: The user-lisp directory feature is not compatible with
 load-path-filter-cache-directory-files
Date: Fri, 12 Dec 2025 05:49:23 +0000
OK I did some test after commit
cc4f23302c9616b3a0ef5f5f3340befbb62cb583, but this commit does not
resolve all of my problem, now emacs will crash with slightly
different output message:

$ emacs --debug-init
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
Error while compiling: (void-function byte-recompile-file)
  INFO     Scraping 8 files for loaddefs...
loaddefs-gen: loading file fakecursor (for cl-defmacro)
Loading c:/home/.config/emacs/user-lisp/fakecursor.el (source)...
Wrong type argument: stringp, nil

Now the INFO message correctly output 8 files instead of 9, but Emacs
still can't launch.

Turns out that the real problem here is that in fakecursor.el there is
a macro defined with cl-defmacro, and I put a magic autoload comment
above it, remove that magic comment and emacs will run again. However
the (void-function byte-recompile-file) error still persist, but that
seems to be unharmful.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Mon, 15 Dec 2025 05:43:01 GMT) Full text and rfc822 format available.

Message #17 received at 79981 <at> debbugs.gnu.org (full text, mbox):

From: Haoyuan Wang <pRoMMMModE <at> outlook.com>
To: Sean Whitton <spwhitton <at> spwhitton.name>,
 Philip Kaludercic <philipk <at> posteo.net>
Cc: 79981 <at> debbugs.gnu.org
Subject: Re: bug#79981: The user-lisp directory feature is not compatible with
 load-path-filter-cache-directory-files
Date: Mon, 15 Dec 2025 13:42:31 +0800
Hi, I just pulled the latest master branch and I think my issue is now 
completely resolved.

Thanks Philip for the fixes, and I think this issue can be closed now.





Reply sent to Sean Whitton <spwhitton <at> spwhitton.name>:
You have taken responsibility. (Mon, 15 Dec 2025 11:22:02 GMT) Full text and rfc822 format available.

Notification sent to Haoyuan Wang <pRoMMMModE <at> outlook.com>:
bug acknowledged by developer. (Mon, 15 Dec 2025 11:22:02 GMT) Full text and rfc822 format available.

Message #22 received at 79981-done <at> debbugs.gnu.org (full text, mbox):

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Haoyuan Wang <pRoMMMModE <at> outlook.com>
Cc: Philip Kaludercic <philipk <at> posteo.net>, 79981-done <at> debbugs.gnu.org
Subject: Re: bug#79981: The user-lisp directory feature is not compatible
 with load-path-filter-cache-directory-files
Date: Mon, 15 Dec 2025 11:21:15 +0000
Version: 31.1

Hello,

On Mon 15 Dec 2025 at 01:42pm +08, Haoyuan Wang wrote:

> Hi, I just pulled the latest master branch and I think my issue is now
> completely resolved.
>
> Thanks Philip for the fixes, and I think this issue can be closed now.

Thanks for reporting back.  Closing.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79981; Package emacs. (Mon, 15 Dec 2025 17:42:02 GMT) Full text and rfc822 format available.

Message #25 received at 79981-done <at> debbugs.gnu.org (full text, mbox):

From: Philip Kaludercic <philipk <at> posteo.net>
To: Haoyuan Wang <pRoMMMModE <at> outlook.com>
Cc: 79981-done <at> debbugs.gnu.org, Sean Whitton <spwhitton <at> spwhitton.name>
Subject: Re: bug#79981: The user-lisp directory feature is not compatible
 with load-path-filter-cache-directory-files
Date: Mon, 15 Dec 2025 17:40:58 +0000
Haoyuan Wang <pRoMMMModE <at> outlook.com> writes:

> Hi, I just pulled the latest master branch and I think my issue is now
> completely resolved.
>
> Thanks Philip for the fixes, and I think this issue can be closed now.

Great, thank you for confirming, closing the report then!  Thanks for
helping out with testing :)




This bug report was last modified 1 day ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.