Fix deprecated modules not passing on their flags
Also fixes redundant deprecated-module warnings from 'bin/doom refresh'.
This commit is contained in:
parent
cce55db6ed
commit
03b76e1789
1 changed files with 15 additions and 5 deletions
|
@ -11,6 +11,9 @@
|
||||||
doom-modules-dir)
|
doom-modules-dir)
|
||||||
"A list of module root directories. Order determines priority.")
|
"A list of module root directories. Order determines priority.")
|
||||||
|
|
||||||
|
(defvar doom-inhibit-module-warnings (not noninteractive)
|
||||||
|
"If non-nil, don't emit deprecated or missing module warnings at startup.")
|
||||||
|
|
||||||
(defconst doom-obsolete-modules
|
(defconst doom-obsolete-modules
|
||||||
'((:feature (version-control (:emacs vc) (:ui vc-gutter))
|
'((:feature (version-control (:emacs vc) (:ui vc-gutter))
|
||||||
(spellcheck (:tools flyspell))
|
(spellcheck (:tools flyspell))
|
||||||
|
@ -309,7 +312,8 @@ to least)."
|
||||||
(make-hash-table :test 'equal
|
(make-hash-table :test 'equal
|
||||||
:size (if modules (length modules) 150)
|
:size (if modules (length modules) 150)
|
||||||
:rehash-threshold 1.0)))
|
:rehash-threshold 1.0)))
|
||||||
(let (category m)
|
(let ((inhibit-message doom-inhibit-module-warnings)
|
||||||
|
category m)
|
||||||
(while modules
|
(while modules
|
||||||
(setq m (pop modules))
|
(setq m (pop modules))
|
||||||
(cond ((keywordp m) (setq category m))
|
(cond ((keywordp m) (setq category m))
|
||||||
|
@ -321,16 +325,22 @@ to least)."
|
||||||
(new (assq module obsolete)))
|
(new (assq module obsolete)))
|
||||||
(let ((newkeys (cdr new)))
|
(let ((newkeys (cdr new)))
|
||||||
(if (null newkeys)
|
(if (null newkeys)
|
||||||
(message "Warning: the %s module is deprecated" key)
|
(message "WARNING %s is deprecated" key)
|
||||||
(message "Warning: the %s module is deprecated. Use %s instead."
|
(message "WARNING %s is deprecated, enabling %s instead"
|
||||||
(list category module) newkeys)
|
(list category module) newkeys)
|
||||||
(push category modules)
|
(push category modules)
|
||||||
(dolist (key newkeys)
|
(dolist (key newkeys)
|
||||||
(setq modules (append key modules)))
|
(push (if flags
|
||||||
|
(nconc (cdr key) flags)
|
||||||
|
(cdr key))
|
||||||
|
modules)
|
||||||
|
(push (car key) modules))
|
||||||
(throw 'doom-modules t))))
|
(throw 'doom-modules t))))
|
||||||
(if-let* ((path (doom-module-locate-path category module)))
|
(if-let* ((path (doom-module-locate-path category module)))
|
||||||
(doom-module-set category module :flags flags :path path)
|
(doom-module-set category module :flags flags :path path)
|
||||||
(message "Warning: couldn't find the %s %s module" category module))))))))
|
(message "WARNING Couldn't find the %s %s module" category module))))))))
|
||||||
|
(when noninteractive
|
||||||
|
(setq doom-inhibit-module-warnings t))
|
||||||
`(setq doom-modules ',doom-modules))
|
`(setq doom-modules ',doom-modules))
|
||||||
|
|
||||||
(defvar doom-disabled-packages)
|
(defvar doom-disabled-packages)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue