Merge from origin/emacs-29
a40f181623
Fix two crashes upon startup44ebd9cbd5
Eglot: explain how to update Eglot in manual (bug#62720)941ef044f2
Eglot: fix edge case when deleting inlay hint overlaysa365984d9e
package-upgrade[-all]: Expand docstrings to note the curr...f965f35b33
Rename all functions called package-*-update-* to package...31b58161bb
Fix FOR_EACH_TAIL in c-ts-mode (bug#62951)0cf6e0998b
* Makefile.in (distclean): Remove the 'native-lisp' direc...933705d61e
Improve greek-ibycus4 input method # Conflicts: # etc/NEWS
This commit is contained in:
commit
a97c382682
11 changed files with 220 additions and 50 deletions
|
@ -24,7 +24,7 @@
|
|||
|
||||
;; While packages managed by package.el use tarballs for distributing
|
||||
;; the source code, this extension allows for packages to be fetched
|
||||
;; and updated directly from a version control system.
|
||||
;; and upgraded directly from a version control system.
|
||||
;;
|
||||
;; To install a package from source use `package-vc-install'. If you
|
||||
;; aren't interested in activating a package, you can use
|
||||
|
@ -672,19 +672,19 @@ installed package."
|
|||
#'string=)))
|
||||
|
||||
;;;###autoload
|
||||
(defun package-vc-update-all ()
|
||||
"Attempt to update all installed VC packages."
|
||||
(defun package-vc-upgrade-all ()
|
||||
"Attempt to upgrade all installed VC packages."
|
||||
(interactive)
|
||||
(dolist (package package-alist)
|
||||
(dolist (pkg-desc (cdr package))
|
||||
(when (package-vc-p pkg-desc)
|
||||
(package-vc-update pkg-desc))))
|
||||
(message "Done updating packages."))
|
||||
(package-vc-upgrade pkg-desc))))
|
||||
(message "Done upgrading packages."))
|
||||
|
||||
;;;###autoload
|
||||
(defun package-vc-update (pkg-desc)
|
||||
"Attempt to update the package PKG-DESC."
|
||||
(interactive (list (package-vc--read-package-desc "Update VC package: " t)))
|
||||
(defun package-vc-upgrade (pkg-desc)
|
||||
"Attempt to upgrade the package PKG-DESC."
|
||||
(interactive (list (package-vc--read-package-desc "Upgrade VC package: " t)))
|
||||
;; HACK: To run `package-vc--unpack-1' after checking out the new
|
||||
;; revision, we insert a hook into `vc-post-command-functions', and
|
||||
;; remove it right after it ran. To avoid running the hook multiple
|
||||
|
@ -882,7 +882,7 @@ Rebuilding an installation means scraping for new autoload
|
|||
cookies, re-compiling Emacs Lisp files, building and installing
|
||||
any documentation, downloading any missing dependencies. This
|
||||
command does not fetch new revisions from a remote server. That
|
||||
is the responsibility of `package-vc-update'. Interactively,
|
||||
is the responsibility of `package-vc-upgrade'. Interactively,
|
||||
prompt for the name of the package to rebuild."
|
||||
(interactive (list (package-vc--read-package-desc "Rebuild package: " t)))
|
||||
(package-vc--unpack-1 pkg-desc (package-desc-dir pkg-desc)))
|
||||
|
|
|
@ -2259,24 +2259,28 @@ had been enabled."
|
|||
(message "Package `%s' installed." name))
|
||||
(message "`%s' is already installed" name))))
|
||||
|
||||
(declare-function package-vc-update "package-vc" (pkg))
|
||||
(declare-function package-vc-upgrade "package-vc" (pkg))
|
||||
|
||||
;;;###autoload
|
||||
(defun package-update (name)
|
||||
"Update package NAME if a newer version exists."
|
||||
(defun package-upgrade (name)
|
||||
"Upgrade package NAME if a newer version exists.
|
||||
|
||||
Currently, packages which are part of the Emacs distribution
|
||||
cannot be upgraded that way. Use `i' after `M-x list-packages' to
|
||||
upgrade to an ELPA version first."
|
||||
(interactive
|
||||
(list (completing-read
|
||||
"Update package: " (package--updateable-packages) nil t)))
|
||||
"Upgrade package: " (package--upgradeable-packages) nil t)))
|
||||
(let* ((package (if (symbolp name)
|
||||
name
|
||||
(intern name)))
|
||||
(pkg-desc (cadr (assq package package-alist))))
|
||||
(if (package-vc-p pkg-desc)
|
||||
(package-vc-update pkg-desc)
|
||||
(package-vc-upgrade pkg-desc)
|
||||
(package-delete pkg-desc 'force)
|
||||
(package-install package 'dont-select))))
|
||||
|
||||
(defun package--updateable-packages ()
|
||||
(defun package--upgradeable-packages ()
|
||||
;; Initialize the package system to get the list of package
|
||||
;; symbols for completion.
|
||||
(package--archives-initialize)
|
||||
|
@ -2294,23 +2298,27 @@ had been enabled."
|
|||
package-alist)))
|
||||
|
||||
;;;###autoload
|
||||
(defun package-update-all (&optional query)
|
||||
(defun package-upgrade-all (&optional query)
|
||||
"Refresh package list and upgrade all packages.
|
||||
If QUERY, ask the user before updating packages. When called
|
||||
interactively, QUERY is always true."
|
||||
If QUERY, ask the user before upgrading packages. When called
|
||||
interactively, QUERY is always true.
|
||||
|
||||
Currently, packages which are part of the Emacs distribution are
|
||||
not upgraded that way. Use `i' after `M-x list-packages' to
|
||||
upgrade to an ELPA version first."
|
||||
(interactive (list (not noninteractive)))
|
||||
(package-refresh-contents)
|
||||
(let ((updateable (package--updateable-packages)))
|
||||
(if (not updateable)
|
||||
(message "No packages to update")
|
||||
(let ((upgradeable (package--upgradeable-packages)))
|
||||
(if (not upgradeable)
|
||||
(message "No packages to upgrade")
|
||||
(when (and query
|
||||
(not (yes-or-no-p
|
||||
(if (length= updateable 1)
|
||||
"One package to update. Do it? "
|
||||
(format "%s packages to update. Do it?"
|
||||
(length updateable))))))
|
||||
(user-error "Updating aborted"))
|
||||
(mapc #'package-update updateable))))
|
||||
(if (length= upgradeable 1)
|
||||
"One package to upgrade. Do it? "
|
||||
(format "%s packages to upgrade. Do it?"
|
||||
(length upgradeable))))))
|
||||
(user-error "Upgrade aborted"))
|
||||
(mapc #'package-upgrade upgradeable))))
|
||||
|
||||
(defun package--dependencies (pkg)
|
||||
"Return a list of all dependencies PKG has.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue