From: John Wiegley Date: Fri, 1 Dec 2017 08:44:49 +0000 (-0800) Subject: Sort keywords at the appropriate time X-Git-Tag: emacs-29.0.90~1306^2~15^2~207 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=669e8527fb;p=emacs.git Sort keywords at the appropriate time --- diff --git a/lisp/use-package/use-package.el b/lisp/use-package/use-package.el index 0983500e3a9..2ab0135e753 100644 --- a/lisp/use-package/use-package.el +++ b/lisp/use-package/use-package.el @@ -1741,11 +1741,10 @@ this file. Usage: (orig-args args) (args (use-package-normalize-plist name args))) (dolist (spec use-package-defaults) - (setq args (use-package-sort-keywords - (if (eval (nth 2 spec)) - (use-package-plist-maybe-put - args (nth 0 spec) (eval (nth 1 spec))) - args)))) + (setq args (if (eval (nth 2 spec)) + (use-package-plist-maybe-put + args (nth 0 spec) (eval (nth 1 spec))) + args))) ;; When byte-compiling, pre-load the package so all its symbols are in ;; scope. @@ -1769,10 +1768,12 @@ this file. Usage: (let ((body (macroexp-progn (use-package-process-keywords name - (let ((args* (if (and use-package-always-demand - (not (memq :defer args))) - (append args '(:demand t)) - args))) + (let ((args* + (use-package-sort-keywords + (if (and use-package-always-demand + (not (memq :defer args))) + (plist-put args :demand t) + args)))) (when (and use-package-always-ensure (plist-member args* :load-path) (not (plist-member orig-args :ensure)))