GNU bug report logs -
#69712
Package author/maintainer printing fix
Previous Next
Reported by: Juri Linkov <juri <at> linkov.net>
Date: Sun, 10 Mar 2024 17:36:02 UTC
Severity: normal
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#69712: Package author/maintainer printing fix
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 69712 <at> debbugs.gnu.org.
--
69712: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=69712
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
>> I suggest the following fix instead.
>> Can you confirm that it fixes the problem for you as well?
>>
>> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
>> @@ -2941,7 +2941,7 @@ describe-package-1
>> (insert " "))
>> (insert "\n"))
>> (when maintainers
>> - (unless (proper-list-p maintainers)
>> + (when (stringp (car maintainers))
>> (setq maintainers (list maintainers)))
>
> I confirm this completely fixes the problem.
Thanks, pushed to `master`.
Stefan
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
There are many packages with non-dot author/maintainer format that fail with
Debugger entered--Lisp error: (wrong-type-argument listp "XXIV")
car("XXIV")
package--print-email-button("XXIV")
describe-package-1(#s(package-desc :name chaos-mode ((:authors ("XXIV")) (:maintainers ("XXIV")) (:maintainer "XXIV"))))
describe-package(#s(package-desc :name chaos-mode ((:authors ("XXIV")) (:maintainers ("XXIV")) (:maintainer "XXIV"))))
package-menu-describe-package(#<marker (moves after insertion) at 67389 in *Packages*>)
button-activate(#<marker (moves after insertion) at 67389 in *Packages*> nil)
push-button(67389)
funcall-interactively(push-button 67389)
command-execute(push-button)
Here is the fix:
[package--print-email-button.patch (text/x-diff, inline)]
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index fe7b10f569a..790860df2a7 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -3082,19 +3082,21 @@ package--print-email-button
"Insert a button whose action will send an email to RECIPIENT.
NAME should have the form (FULLNAME . EMAIL) where FULLNAME is
either a full name or nil, and EMAIL is a valid email address."
- (when (car recipient)
- (insert (car recipient)))
- (when (and (car recipient) (cdr recipient))
- (insert " "))
- (when (cdr recipient)
- (insert "<")
- (insert-text-button (cdr recipient)
- 'follow-link t
- 'action (lambda (_)
- (compose-mail
- (format "%s <%s>" (car recipient) (cdr recipient)))))
- (insert ">"))
- (insert "\n"))
+ (if (stringp recipient)
+ (insert recipient "\n")
+ (when (car recipient)
+ (insert (car recipient)))
+ (when (and (car recipient) (cdr recipient))
+ (insert " "))
+ (when (cdr recipient)
+ (insert "<")
+ (insert-text-button (cdr recipient)
+ 'follow-link t
+ 'action (lambda (_)
+ (compose-mail
+ (format "%s <%s>" (car recipient) (cdr recipient)))))
+ (insert ">"))
+ (insert "\n")))
;;;; Package menu mode.
This bug report was last modified 1 year and 6 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.