GNU bug report logs - #68660
29.2; ELPA: Wrong type argument w. multiple maintainers in package-menu-mode

Previous Next

Package: emacs;

Reported by: "J.P." <jp <at> neverwas.me>

Date: Mon, 22 Jan 2024 14:58:02 UTC

Severity: normal

Found in versions 29.4, 29.2

Full log


Message #41 received at 68660 <at> debbugs.gnu.org (full text, mbox):

From: "J.P." <jp <at> neverwas.me>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: emacs-erc <at> gnu.org, Amin Bandali <bandali <at> gnu.org>, 68660 <at> debbugs.gnu.org
Subject: Re: bug#68660: 29.2; ELPA: Wrong type argument w. multiple
 maintainers in package-menu-mode
Date: Wed, 31 Jan 2024 18:52:43 -0800
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>> Yes, what you describe definitely seems preferable. So, I guess
>> `:maintainer' (singular) will always be populated no matter what, for
>> the benefit of legacy clients who only speak the one. And newer clients
>> will be taught to always first check `:maintainers' (plural).
>
> I'd rather have only one of the two (either `:maintainer` or
> `:maintainers`) but not both at the same time.  The downside for those
> few multi-maintainer packages is fairly small (its only impact is that
> `describe-package` will not show the maintainers, which is what we've
> had for many years).

If we're only to choose one and also preserve compatibility, wouldn't it
have to be `:maintainers' (plural)? Trying this out on Emacs 28 with
package menu item

  _erc_ 5.6snapshot0.20240124.205832 available devel An Emacs ...

(specifically, by swapping out the `:maintainer' item in the extras slot
of ERC's `package-archive-contents' entry with an otherwise identical
`:maintainers' item), I'm able to successfully advance to the next
screen:

  Package erc is available.

       Status: Available from devel -- Install
      Archive: devel
      Version: 5.6snapshot0.20240124.205832
       Commit: b5d36efa5777e4cc6db1067d58224d676cedbdd3
      Summary: An Emacs Internet Relay Chat client
     Requires: emacs-27.1, compat-29.1.4.4
      Website: https://www.gnu.org/software/emacs/erc.html
     Keywords: irc chat client internet 
       Author: Alexander L. Belikoff <alexander <at> belikoff.net>
  Other versions: 5.5 (gnu), 5.5.0.29.1 (builtin).

I can only assume doing the same with the contents of erc-pkg.el in the
downloaded tarball would additionally allow me to view the refreshed
help-mode buffer after installation. I've tried simulating this by
updating ERC's entry in `package-alist'. (IIUC, instead of passing along
the `package-desc' object from `package-archive-contents',
`package-install-button-action' elects to have `describe-package-1' look
up the associated value anew in `package-alist', perhaps because it's
seen as more recent or more authoritative, having just been read in by
`package-load-descriptor' from erc-pkg.el.) In any case, this gives me:

  Package erc is installed.

       Status: Installed in ‘erc-5.6snapshot0.20240124.205832/’,
               shadowing a built-in package. Delete

If I haven't overlooked anything, then perhaps changing `:maintainer' to
`:maintainers' (plural) presents an agreeable solution.

>> Please let me know if anything is required from ERC to make this a
>> reality. And, of course, I very much appreciate your taking the time.
>
> Nothing specific on ERC's side, no.
> But patches for `elpa-admin.el` and for Emacs would be welcome
> (tho extra time would be welcome as well :-)

As far as patches go, I unfortunately remain rather uninitiated to the
mysteries of this package system and doubt I can up my game sufficiently
enough to amount to anything more than a sad annoyance. However, I can
try harassing other package.el folk to see if any among them might bend.
Thanks.




This bug report was last modified 308 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.