• Dmitry Gutov's avatar
    * lisp/emacs-lisp/package-x.el (package-upload-buffer-internal): Pass · 056453c6
    Dmitry Gutov authored
    `extras' slot from `package-desc' to `package-make-ac-desc'.
    
    * lisp/emacs-lisp/package.el (package-desc-from-define): Accept
    additional arguments as plist, convert it to an alist and store it
    in the `extras' slot.
    (package-generate-description-file): Convert extras alist back to
    plist and append to the `define-package' form arguments.
    (package--alist-to-plist): New function.
    (package--ac-desc): Add `extras' slot.
    (package--add-to-archive-contents): Check if the archive-contents
    vector is long enough, and if it is, pass its `extras' slot value
    to `package-desc-create'.
    (package-buffer-info): Call `lm-homepage', pass the returned value
    to `package-desc-from-define'.
    (describe-package-1): Render the homepage button.
    
    * test/automated/package-test.el (simple-single-desc-1-4): Remove, it
    was unused.
    (simple-single-desc): Expect :homepage property.
    (multi-file-desc): Same.
    (with-package-test): Do not save previous `default-directory'
    value, let-bind the var instead.
    (package-test-install-single): Expect :homepage property in the
    generated pkg file.
    (package-test-describe-package): Expect Homepage button.
    (package-test-describe-non-installed-package)
    (package-test-describe-non-installed-multi-file-package): Same.
    (package-test-describe-not-installed-package): Remove, it was a
    duplicate.
    
    * test/automated/package-x-test.el
    (package-x-test--single-archive-entry-1-3): Expect :homepage
    property.
    (package-x-test--single-archive-entry-1-4): Expect nil extras slot.
    
    * test/automated/data/package/archive-contents: Add :homepage
    properties to `simple-single' and `multi-file'.
    
    * test/automated/data/package/simple-single-1.3.el: Add URL header.
    
    Fixes: debbugs:13291
    056453c6
archive-contents 456 Bytes