From a80477572b267d2fbf1684d2ef4b34bdb560cfc3 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Wed, 22 Apr 2026 00:22:23 -0500 Subject: fix: load freshness, wttrin path, compile-time package init Set load-prefer-newer in early-init.el. Emacs was loading the older .elc files even when the .el source was newer, warning on every load but still using the stale byte code. Point weather-config.el's wttrin :load-path at /home/cjennings/code/emacs-wttrin. The previous value was /home/cjennings/code/wttrin, which does not exist, so use-package could not load the package. Add (package-initialize) to the Makefile compile target. Without it, batch byte-compile cannot see ELPA packages like git-gutter, git-timemachine, forge, and difftastic, which produced "Cannot load" warnings on every run. --- Makefile | 1 + early-init.el | 8 ++++++++ modules/weather-config.el | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index d85a290b..1ee30d4a 100644 --- a/Makefile +++ b/Makefile @@ -263,6 +263,7 @@ compile: @echo "Byte-compiling all modules..." @$(EMACS_BATCH) -L $(MODULE_DIR) \ --eval "(progn \ + (package-initialize) \ (setq byte-compile-error-on-warn nil) \ (batch-byte-compile))" $(MODULE_FILES) @echo "✓ Compilation complete" diff --git a/early-init.el b/early-init.el index c1cd54c8..9f90f292 100644 --- a/early-init.el +++ b/early-init.el @@ -65,6 +65,14 @@ (setq native-comp-deferred-compilation nil) ;; Disable async/deferred compilation (setq native-comp-async-report-warnings-errors nil) ;; Silence async warnings +;; ------------------------------- Load Freshness ------------------------------ +;; Prefer newer .el source over stale .elc byte-compiled files. Without this, +;; Emacs loads the .elc even when the .el has been modified more recently and +;; only emits a warning. Setting this in early-init.el ensures init.el itself +;; also benefits. + +(setq load-prefer-newer t) + ;; --------------------------- Warning Notifications --------------------------- ;; skip warnings but notify me about errors diff --git a/modules/weather-config.el b/modules/weather-config.el index bf71ef9c..0b15021b 100644 --- a/modules/weather-config.el +++ b/modules/weather-config.el @@ -14,7 +14,7 @@ ;; Uncomment the next line to use vc-install instead of local directory: ;; :vc (:url "https://github.com/cjennings/emacs-wttrin" :rev :newest) :demand t ;; REQUIRED: mode-line must start at Emacs startup - :load-path "/home/cjennings/code/wttrin" + :load-path "/home/cjennings/code/emacs-wttrin" :preface ;; Change this to t to enable debug logging ;; (setq wttrin-debug t) -- cgit v1.2.3