]> git.eshelyaron.com Git - emacs.git/commit
* lisp/emacs-lisp/package.el: Load package-quickstart without package.el
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 5 Jan 2021 17:28:37 +0000 (12:28 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 5 Jan 2021 17:28:37 +0000 (12:28 -0500)
commit9973019764250ac1f4d77a6b426cdd9c241151c5
tree13483c7315e03db43b65a661a206f09903b6c990
parent1433a1201447f6f8b610f4d7f78a4b8a739c6572
* lisp/emacs-lisp/package.el: Load package-quickstart without package.el

Speed up startup when `package-quickstart` is in use by making it possible
to load the quickstart file without having to load `package.el` at all.

(package-user-dir, package-directory-list, package-quickstart-file):
Preload those variables.
(package--get-activatable-pkg): New fun, extracted from `package-activate`.
(package-activate): Use it.
(package--activate-all): New function, extracted from
`package-activate-all`.
(package-activate-all): Use it and make the function preloaded.
(package--archives-initialize): New function.
(package-install): Use it.
(list-packages): Avoid `switch-to-buffer`.
(package-get-descriptor): New function.

* lisp/startup.el (command-line): Simplify the code now that
package-user-dir and package-directory-list are preloaded.

* lisp/emacs-lisp/autoload.el (make-autoload): Add support for
`:initialize #'custom-initialize-delay` in `defcustom`.
lisp/emacs-lisp/autoload.el
lisp/emacs-lisp/package.el
lisp/startup.el