Function: package--removable-packages

package--removable-packages is a byte-compiled function defined in package.el.gz.

Signature

(package--removable-packages)

Documentation

Return a list of names of packages no longer needed.

These are packages which are neither contained in package-selected-packages nor a dependency of one that is.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/package.el.gz
(defun package--removable-packages ()
  "Return a list of names of packages no longer needed.
These are packages which are neither contained in
`package-selected-packages' nor a dependency of one that is."
  (let ((needed (package--get-deps package-selected-packages)))
    (cl-loop for p in (mapcar #'car package-alist)
             unless (or (memq p needed)
                        ;; Do not auto-remove external packages.
                        (not (package--user-installed-p p)))
             collect p)))