First part of Daniel Hackney's patch to package.el.
commitf56be016d5d2d550f98c83a9d4e61468c71738c2
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 12 Jun 2013 00:49:33 +0000 (11 20:49 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Wed, 12 Jun 2013 00:49:33 +0000 (11 20:49 -0400)
tree7e37ec6b2c0eb68ce91478405400f172c813e39c
parent931a2762fd1e43706684f113f4e69ba95f9b3c0d
First part of Daniel Hackney's patch to package.el.
* lisp/emacs-lisp/package.el: Use defstruct.
(package-desc): New, main struct.
(package--bi-desc, package--ac-desc): New structs, used to describe the
format in external files.
(package-desc-vers): Replace with package-desc-version accessor.
(package-desc-doc): Replace with package-desc-summary accessor.
(package-activate-1): Remove `package' arg since the pkg-vec now
includes the name.
(define-package): Use package-desc-from-define.
(package-unpack-single): Change file-name arg to be a symbol.
(package--add-to-archive-contents): Use package-desc-create and new
accessor functions to package--ac-desc.
(package-buffer-info, package-tar-file-info): Return a package-desc.
(package-install-from-buffer): Remove `type' argument.  Change pkg-info
arg to be a package-desc.
(package-install-file): Adjust accordingly.  Use \' to match EOS.
(package--from-builtin): New function.
(describe-package-1, package-menu--generate): Use it.
(package--make-autoloads-and-compile): Change name arg to be a symbol.
(package-generate-autoloads): Idem and return the name of the file.
* lisp/emacs-lisp/package-x.el (package-upload-buffer-internal):
Change pkg-info arg to be a package-desc.
Use package-make-ac-desc.
(package-upload-file): Use \' to match EOS.
* lisp/finder.el (finder-compile-keywords): Use package-make-builtin.
lisp/ChangeLog
lisp/emacs-lisp/package-x.el
lisp/emacs-lisp/package.el
lisp/finder.el