emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#60318: closed (29.0.60; loaddefs: missing results with relative outp


From: GNU bug Tracking System
Subject: bug#60318: closed (29.0.60; loaddefs: missing results with relative output file)
Date: Mon, 26 Dec 2022 12:58:02 +0000

Your message dated Mon, 26 Dec 2022 14:57:44 +0200
with message-id <838riu2ugn.fsf@gnu.org>
and subject line Re: bug#60318: 29.0.60; loaddefs: missing results with 
relative output file
has caused the debbugs.gnu.org bug report #60318,
regarding 29.0.60; loaddefs: missing results with relative output file
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
60318: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60318
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 29.0.60; loaddefs: missing results with relative output file Date: Sun, 25 Dec 2022 15:38:40 -0500
loaddefs-generate misses some autoloads in the following case:

 * output-file argument is a relative path

 * some (but not all) of the Lisp files contains a
   generated-autoload-file pointing to the same path as output-file

Here's a concrete example.

--8<---------------cut here---------------start------------->8---
;;; foo-bar.el --- foo bar                           -*- lexical-binding: t; -*-

;;;###autoload
(defun foo-bar ())

(provide 'foo-bar)

;; Local variables:
;; generated-autoload-file: "foo-loaddefs.el"
;; End:

;;; foo-bar.el ends here
--8<---------------cut here---------------end--------------->8---

--8<---------------cut here---------------start------------->8---
;;; foo-baz.el --- foo baz                           -*- lexical-binding: t; -*-

;;;###autoload
(defun foo-baz ())

(provide 'foo-baz)
;;; foo-baz.el ends here
--8<---------------cut here---------------end--------------->8---

With these files in default-directory, calling

  (loaddefs-generate default-directory "foo-loaddefs.el")

will generate output that is missing the autoload for foo-baz:

--8<---------------cut here---------------start------------->8---
;;; foo-loaddefs.el --- automatically extracted autoloads (do not edit)   -*- 
lexical-binding: t -*-
;; Generated by the `loaddefs-generate' function.

;; This file is part of GNU Emacs.

;;; Code:



;;; Generated autoloads from foo-bar.el

(autoload 'foo-bar "foo-bar")

;;; End of scraped data

(provide 'foo-loaddefs)

;; Local Variables:
;; version-control: never
;; no-byte-compile: t
;; no-update-autoloads: t
;; no-native-compile: t
;; coding: utf-8-emacs-unix
;; End:

;;; foo-loaddefs.el ends here
--8<---------------cut here---------------end--------------->8---

I've attached a suggested fix.

Attachment: 0001-loaddefs-gen-Group-results-by-absolute-file-name.patch
Description: Text Data


--- End Message ---
--- Begin Message --- Subject: Re: bug#60318: 29.0.60; loaddefs: missing results with relative output file Date: Mon, 26 Dec 2022 14:57:44 +0200
> From: Kyle Meyer <kyle@kyleam.com>
> Date: Sun, 25 Dec 2022 15:38:40 -0500
> 
> loaddefs-generate misses some autoloads in the following case:
> 
>  * output-file argument is a relative path
> 
>  * some (but not all) of the Lisp files contains a
>    generated-autoload-file pointing to the same path as output-file

Thanks, I installed your changes on the emacs-29 branch, and I'm
therefore closing the bug.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]