[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables a
From: |
Eli Zaretskii |
Subject: |
bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package |
Date: |
Mon, 17 Apr 2023 20:25:43 +0300 |
> From: lin Sun <sunlin7@yahoo.com>
> Date: Mon, 17 Apr 2023 15:27:09 +0000
> Cc: Eli Zaretskii <eliz@gnu.org>, 62767@debbugs.gnu.org,
> Stefan Monnier <monnier@iro.umontreal.ca>
>
> --- a/lisp/emacs-lisp/package.el
> +++ b/lisp/emacs-lisp/package.el
> @@ -892,10 +892,9 @@ package-activate-1
> (add-to-list 'load-path (directory-file-name pkg-dir)))
> ;; Add info node.
> (when (file-exists-p (expand-file-name "dir" pkg-dir))
> - ;; FIXME: not the friendliest, but simple.
> - (require 'info)
> - (info-initialize)
> - (add-to-list 'Info-directory-list pkg-dir))
> + (with-eval-after-load 'info
> + (info-initialize)
> + (add-to-list 'Info-directory-list pkg-dir)))
> (push name package-activated-list)
> ;; Don't return nil.
> t)))
> @@ -4427,7 +4426,7 @@ package-quickstart-refresh
> "(Re)Generate the `package-quickstart-file'."
> (interactive)
> (package-initialize 'no-activate)
> - (require 'info)
> + (require 'info) ; ensure Info-directory-list available for package-activate
> (let ((package--quickstart-pkgs ())
> ;; Pretend we haven't activated anything yet!
> (package-activated-list ())
> @@ -4472,10 +4471,10 @@ package-quickstart-refresh
> (current-buffer))
> (let ((info-dirs (butlast Info-directory-list)))
> (when info-dirs
> - (pp `(progn (require 'info)
> - (info-initialize)
> - (setq Info-directory-list
> - (append ',info-dirs Info-directory-list)))
> + (pp `(with-eval-after-load 'info
> + (info-initialize)
> + (setq Info-directory-list
> + (append ',info-dirs Info-directory-list)))
> (current-buffer))))
> ;; Use `\s' instead of a space character, so this code chunk is not
> ;; mistaken for an actual file-local section of package.el.
> --
> 2.20.5
I don't know yet whether I'm okay with this change, but if this does
go in, this tricky/unusual code must have comments explaining why on
Earth we do it this way, and only with info.el.
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, (continued)
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, lin Sun, 2023/04/14
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Eli Zaretskii, 2023/04/15
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Philip Kaludercic, 2023/04/15
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Eli Zaretskii, 2023/04/15
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, lin Sun, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Ruijie Yu, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Ruijie Yu, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Philip Kaludercic, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, lin Sun, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Philip Kaludercic, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package,
Eli Zaretskii <=
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Stefan Monnier, 2023/04/17
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, lin Sun, 2023/04/19
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, Eli Zaretskii, 2023/04/20
- bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package, lin Sun, 2023/04/20