From 9ec046116221bd51223373bc51e43e81332e2534 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 12 Jun 2018 01:58:06 +0200 Subject: [PATCH] Revert "Refactor def-package!" This reverts commit f7a86ae281a0a59c3e14231009ca98ffad53b483. Turns out it's still needed when byte-compiling! --- core/core-modules.el | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/core-modules.el b/core/core-modules.el index 5e16a4fd0..0d67b3e23 100644 --- a/core/core-modules.el +++ b/core/core-modules.el @@ -265,7 +265,13 @@ to least)." (when (and (memq name (bound-and-true-p doom-disabled-packages)) (not (memq :disabled plist))) (setq plist `(:disabled t ,@plist))) - `(use-package ,name ,@plist)) + ;; If byte-compiling, ignore this package if it doesn't meet the condition. + ;; This avoids false-positive load errors. + (unless (and (bound-and-true-p byte-compile-current-file) + (or (and (plist-member plist :if) (not (eval (plist-get plist :if) t))) + (and (plist-member plist :when) (not (eval (plist-get plist :when) t))) + (and (plist-member plist :unless) (eval (plist-get plist :unless) t)))) + `(use-package ,name ,@plist))) (defmacro def-package-hook! (package when &rest body) "Reconfigures a package's `def-package!' block.