diff options
author | Yuuki Harano <masm+github@masm11.me> | 2020-12-14 01:52:10 +0900 |
---|---|---|
committer | Yuuki Harano <masm+github@masm11.me> | 2020-12-14 01:52:10 +0900 |
commit | 3e30047ce3a81dd0879973012abbf570d3215dfd (patch) | |
tree | c7c10e82f2ff37705356a0c25b98d92c603c7983 /lisp/emacs-lisp/package.el | |
parent | aea5dbec2514811fb2e1cc44b2347a976a5b7de8 (diff) | |
parent | fe50a8b9ba79b4ac14a3a352d8bf84eaee4f2122 (diff) | |
download | emacs-3e30047ce3a81dd0879973012abbf570d3215dfd.tar.gz emacs-3e30047ce3a81dd0879973012abbf570d3215dfd.tar.bz2 emacs-3e30047ce3a81dd0879973012abbf570d3215dfd.zip |
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs into feature/pgtk
Diffstat (limited to 'lisp/emacs-lisp/package.el')
-rw-r--r-- | lisp/emacs-lisp/package.el | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 9c37ce429a7..b7c48dfd3f5 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -1115,14 +1115,15 @@ boundaries." ;; Use some headers we've invented to drive the process. (let* (;; Prefer Package-Version; if defined, the package author ;; probably wants us to use it. Otherwise try Version. - (pkg-version - (or (package-strip-rcs-id (lm-header "package-version")) - (package-strip-rcs-id (lm-header "version")))) + (version-info + (or (lm-header "package-version") (lm-header "version"))) + (pkg-version (package-strip-rcs-id version-info)) (keywords (lm-keywords-list)) (homepage (lm-homepage))) (unless pkg-version - (error - "Package lacks a \"Version\" or \"Package-Version\" header")) + (if version-info + (error "Unrecognized package version: %s" version-info) + (error "Package lacks a \"Version\" or \"Package-Version\" header"))) (package-desc-from-define file-name pkg-version desc (and-let* ((require-lines (lm-header-multiline "package-requires"))) @@ -2112,7 +2113,10 @@ Otherwise return nil." (when str (when (string-match "\\`[ \t]*[$]Revision:[ \t]+" str) (setq str (substring str (match-end 0)))) - (if (version-to-list str) str))) + (let ((l (version-to-list str))) + ;; Don't return `str' but (package-version-join (version-to-list str)) + ;; to make sure we use a "canonical name"! + (if l (package-version-join l))))) (declare-function lm-homepage "lisp-mnt" (&optional file)) |