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

From: david <[email-masked]>
Date: Wed, 12 Mar 2025 09:23:32 -0400

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.

In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.43, cairo version 1.18.2) of 2025-02-26 built on fedora
Repository revision: 8c165834913bb0dca214acc4b82ba1d9d4ac0a82
Repository branch: master
System Description: Fedora Linux 41 (Workstation Edition)

Configured using:
 'configure --with-imagemagick --with-pgtk --with-tree-sitter
 --with-mailutils --with-sound=yes --with-pdumper=yes
 --with-dumping=pdumper --with-file-notification=yes'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ
IMAGEMAGICK JPEG LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3
THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug lisp-mnt mm-archive message sendmail
yank-media dired dired-loaddefs rfc822 mml mml-sec epa derived gnus-util
time-date mailabbrev gmm-utils mailheader mm-decode mm-bodies mm-encode
mail-utils mule-util cus-edit pp cus-start cus-load wid-edit gnutls
network-stream url-cache url-http url-auth mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm puny compile
text-property-search comint ansi-osc ansi-color ring comp-run
comp-common rx epg rfc6068 epg-config display-line-numbers finder-inf
package browse-url xdg url url-proxy url-privacy url-expand url-methods
url-history url-cookie generate-lisp-file url-domsuf url-util mailcap
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons
password-cache json subr-x map byte-opt gv bytecomp byte-compile
url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify
dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
multi-tty move-toolbar make-network-process tty-child-frames
native-compile emacs)

Memory information:
((conses 16 309513 44932) (symbols 48 11458 0) (strings 32 55510 3235)
 (string-bytes 1 1431141) (vectors 16 20605)
 (vector-slots 8 250601 12665) (floats 8 225 47)
 (intervals 56 25047 0) (buffers 992 12))

-- 
David