Ensure that package menu respects 'package-install-upgrade-built-in'

* lisp/emacs-lisp/package.el (package-menu--find-upgrades): Check if
built-in packages can be upgraded if
'package-install-upgrade-built-in' is non-nil.
This commit is contained in:
Philip Kaludercic 2023-05-10 08:58:34 +02:00
parent 6fa9332e7c
commit ba2c76fa2b

View file

@ -3731,7 +3731,7 @@ corresponding to the newer version."
;; ENTRY is (PKG-DESC [NAME VERSION STATUS DOC]) ;; ENTRY is (PKG-DESC [NAME VERSION STATUS DOC])
(let ((pkg-desc (car entry)) (let ((pkg-desc (car entry))
(status (aref (cadr entry) 2))) (status (aref (cadr entry) 2)))
(cond ((member status '("installed" "dependency" "unsigned" "external")) (cond ((member status '("installed" "dependency" "unsigned" "external" "built-in"))
(push pkg-desc installed)) (push pkg-desc installed))
((member status '("available" "new")) ((member status '("available" "new"))
(setq available (package--append-to-alist pkg-desc available)))))) (setq available (package--append-to-alist pkg-desc available))))))
@ -3742,6 +3742,8 @@ corresponding to the newer version."
(and avail-pkg (and avail-pkg
(version-list-< (package-desc-priority-version pkg-desc) (version-list-< (package-desc-priority-version pkg-desc)
(package-desc-priority-version avail-pkg)) (package-desc-priority-version avail-pkg))
(xor (not package-install-upgrade-built-in)
(package--active-built-in-p pkg-desc))
(push (cons name avail-pkg) upgrades)))) (push (cons name avail-pkg) upgrades))))
upgrades)) upgrades))