From adf9b7d26fef19ca87e6a60d5846c75127aa3b8a Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 19 Jun 2018 20:54:09 +0200 Subject: [PATCH] Log & error-handle in :after-call hooks A load error no longer leaves Emacs in a broken state, but will report errors. These errors can still be investigated with debug-on-error on. --- core/core-modules.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/core-modules.el b/core/core-modules.el index 7e09f8822..8ec2a7710 100644 --- a/core/core-modules.el +++ b/core/core-modules.el @@ -194,7 +194,11 @@ non-nil, return paths of possible modules, activated or otherwise." (use-package-concat `((fset ',fn (lambda (&rest _) - (require ',name) + (when doom-debug-mode + (message "Loading deferred package %s from %s" ',name ',fn)) + (condition-case e (require ',name) + ((debug error) + (message "Failed to load deferred package %s: %s" ',name e))) (dolist (hook (cdr (assq ',name doom--deferred-packages-alist))) (if (functionp hook) (advice-remove hook #',fn)