]> code.delx.au - gnu-emacs/commit
* lisp/emacs-lisp/package.el: Use tar-mode rather than tar executable.
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 21 Jun 2013 03:08:47 +0000 (23:08 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 21 Jun 2013 03:08:47 +0000 (23:08 -0400)
commitfd846ab406e00ac85b6ed01a6715e795a549c02f
tree4134d89eb45a3a63fce8902d7d07f1f5ffd49e34
parentd1f7f5a0d927a5a51c989fcf97688e57916bf9d9
* lisp/emacs-lisp/package.el: Use tar-mode rather than tar executable.
Consolidate the single-file vs tarball code.
(package-desc-suffix): New function.
(package-desc-full-name): Don't bother inlining it.
(package-load-descriptor): Return the new package-desc.
(package-mark-obsolete): Remove unused arg `package'.
(package-unpack): Make it work for single files as well.
Make it update package-alist.
(package--make-autoloads-and-stuff): Rename from
package--make-autoloads-and-compile.  Don't compile any more.
(package--compile): New function.
(package-generate-description-file): New function, extracted from
package-unpack-single.
(package-unpack-single): Remove.
(package--with-work-buffer): Add indentation and debugging info.
(package-download-single): Remove.
(package-install-from-archive): Rename from package-download-tar, make
it take a pkg-desc, and make it work for single files as well.
(package-download-transaction): Simplify.
(package-tar-file-info): Remove `file' arg.  Rewrite not to use an
external tar program.
(package-install-from-buffer): Remove `pkg-desc' argument.
Use package-tar-file-info for tar-mode buffers.
(package-install-file): Simplify accordingly.
(package-archive-base): Change to take a pkg-desc.
* lisp/tar-mode.el (tar--check-descriptor): New function, extracted from
tar-get-descriptor.
(tar-get-descriptor): Use it.
(tar-get-file-descriptor): New function.
(tar--extract): New function, extracted from tar-extract.
(tar--extract): Use it.
* lisp/emacs-lisp/package-x.el (package-upload-file): Decode the file, in
case the summary uses non-ascii.  Adjust to new calling convention of
package-tar-file-info.
lisp/ChangeLog
lisp/emacs-lisp/package-x.el
lisp/emacs-lisp/package.el
lisp/tar-mode.el