Subject: bug#76978: 31.0.50; Archive information not displayed for installed packages in *Packages* buffer

From: Philip Kaludercic <[email-masked]>
Date: Sun, 16 Mar 2025 13:30:17 +0000

david <[email-masked]> writes:

> Philip Kaludercic <[email-masked]> writes:
>
>> (Tip: When creating a bug report that you assume specific people are
>> interested in, adding a X-Debuggs-CC header will send the people a
>> message and add them directly to the CCs.)
>>
> Got it, thanks for the tip!
>
>> david <[email-masked]> writes:
>>
>>> When a package is installed or is a dependency, the "Archive" column in
>>> the *Packages* buffer does not display the archive information.  This
>>> happens because the function `describe-package-1` in `package.el` skips
>>> the Archive section for installed packages due to the following
>>> conditional check:
>>>
>>> (unless (and pkg-dir (not archive)) ; Installed pkgs don't have archive.
>>>   (package--print-help-section "Archive"
>>>     (or archive "n/a")))
>>>
>>> The expected behavior is that the "Archive" column should display the
>>> archive name (e.g., "gnu", "nongnu", "other unofficial archive") for
>>> packages in the installed or dependency status.  This would be helpful
>>> because:
>>>
>>> 1. Traceability: It would allow users to easily identify the source archive
>>>    of a package, which is useful for debugging, auditing, and understanding
>>>    the package's origin.
>>>
>>> 2. Security: It would provide users with additional context about the
>>>    package's source, helping them make informed decisions about the code
>>>    they use.
>>>
>>> 3. Consistency: Archive information is part of the package metadata, and
>>>    displaying it consistently would improve the user experience by making
>>>    this information readily available.
>>>
>>> Currently, the archive information is not displayed for installed or
>>> dependency packages, which makes it harder to track the source of these
>>> packages.  This behavior is implemented in the `describe-package-1`
>>> function in `package.el`, starting around line 2890.  A review of this
>>> behavior would be appreciated to ensure users have access to this helpful
>>> metadata.
>>
>> As mentioned in another thread, my suggestion to solve this issue is to
>> track the installation-source in the `package-desc-extras' plist.  This
>> seems to be the least invasive approach I can think of, which should be
>> simple to implement.
>>
>> The question then is how and where to display the installation-source?.
>>
> Agreed, storing the source in `package-desc-extras` is clean and
> practical.  Displaying it in the "Archive" column makes sense.  

As long as it doesn't get cramped, that should be fine.  Mentioning it
in the describe-package buffer would be useful as well.

>                                                                 Is there
> a development branch for `package.el`, or should I create a feature
> branch from `master`?

There is no special branch, master is fine.

Thanks!