Do not regard selected packages as removable

* lisp/emacs-lisp/package.el (package--removable-packages):
Handle the fact that 'package--dependencies' doesn't return the
package itself as a dependency, so we have to check
'package-selected-packages' separately.  Also fix the way we
check the return value of 'package--dependencies', keeping in
mind that the value is an alist.  (Bug#80907)
This commit is contained in:
Philip Kaludercic 2026-04-26 23:13:41 +02:00
parent 89c6b632c4
commit 475bb02345
No known key found for this signature in database

View file

@ -1869,7 +1869,8 @@ These are packages which are neither contained in
`package-selected-packages' nor a dependency of one that is."
(let ((needed (package--dependencies package-selected-packages)))
(cl-loop for (name . descs) in (package--alist)
unless (or (memq name needed)
unless (or (assq name needed)
(memq name package-selected-packages)
;; Do not auto-remove external packages.
(not (package--user-installed-p name)))
append descs)))