]> git.eshelyaron.com Git - emacs.git/commitdiff
Ensure that package menu respects 'package-install-upgrade-built-in'
authorPhilip Kaludercic <philipk@posteo.net>
Wed, 10 May 2023 06:58:34 +0000 (08:58 +0200)
committerPhilip Kaludercic <philipk@posteo.net>
Fri, 12 May 2023 07:41:55 +0000 (09:41 +0200)
* 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.

lisp/emacs-lisp/package.el

index bbe2b8bb4afe458273db6f37159c1a61cc219b2d..c684840ab7ece8eadc838404380c787eb73534cb 100644 (file)
@@ -3731,7 +3731,7 @@ corresponding to the newer version."
       ;; ENTRY is (PKG-DESC [NAME VERSION STATUS DOC])
       (let ((pkg-desc (car entry))
             (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))
               ((member status '("available" "new"))
                (setq available (package--append-to-alist pkg-desc available))))))
@@ -3742,6 +3742,8 @@ corresponding to the newer version."
         (and avail-pkg
              (version-list-< (package-desc-priority-version pkg-desc)
                              (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))))
     upgrades))