GNU logs - #72141, boring messages


Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Tue, 16 Jul 2024 14:44:02 +0000
Resent-Message-ID: <handler.72141.B.172114103510320 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: 72141 <at> debbugs.gnu.org
X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.172114103510320
          (code B ref -1); Tue, 16 Jul 2024 14:44:02 +0000
Received: (at submit) by debbugs.gnu.org; 16 Jul 2024 14:43:55 +0000
Received: from localhost ([127.0.0.1]:34222 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sTjPG-0002gM-Ck
	for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 10:43:55 -0400
Received: from lists.gnu.org ([209.51.188.17]:42676)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sTjPC-0002gB-1M
 for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 10:43:52 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <thievol@HIDDEN>)
 id 1sTjP8-0005Cp-1j
 for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 10:43:46 -0400
Received: from mout02.posteo.de ([185.67.36.66])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <thievol@HIDDEN>)
 id 1sTjOv-00030r-OM
 for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 10:43:45 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 4B264240103
 for <bug-gnu-emacs@HIDDEN>; Tue, 16 Jul 2024 16:43:28 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1721141008; bh=A84CN/ZI2YCyLz7bdjnsli1LSMTNiP0euQZQbDxXB9I=;
 h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Content-Transfer-Encoding:Autocrypt:OpenPGP:From;
 b=X6Xvtv/hxmts1XtRDFCpI/DbLTSx1b71jlGiaODjtGQ38zzE9myop/a/JwRNtol9G
 byXB7bg7UD/5zy2hkoE02kHDb7kS5CuWhRZZAbF2nwPQCTbr19oYaH6BWxVvmwCktO
 nEb+YyLTMAuxyMUqe5uqwGYt4vjFuQkSAmMSxMrL1aKLTIRtIGQevodnbldkl80vss
 wJP8wGd+YHEhUEnk05d5ExiGwZuctuFOpO78n/ESK+5nK2y2LAMua/LhFzXenOLNd9
 O05tv94/6hU95DDZtn6rBjVaND5jIl2BJ8GPWUJz5msTEV+P/vtMdgOa6BA85Q6kx8
 kat1mwmM/JC/A==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WNhdW3mZSz9rxV;
 Tue, 16 Jul 2024 16:43:27 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
Date: Tue, 16 Jul 2024 14:46:37 +0000
Message-ID: <87ikx5xulu.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
Received-SPF: pass client-ip=185.67.36.66; envelope-from=thievol@HIDDEN;
 helo=mout02.posteo.de
X-Spam_score_int: -43
X-Spam_score: -4.4
X-Spam_bar: ----
X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)


I think there is a bug here, but please verify with following recipe as
I don't use widely package installation, at least for myself.  When reading
the code I believe it is reproductible as well on emacs-30+.

1) Install package foo and bar.
2) Disable them in package-load-list ((foo nil) (bar nil) all).
3) Wait some time until foo and/or bar have new versions available.
4) Call package-upgrade-all.  It will call package-upgrade on foo
and bar (and possibly others).  When package-upgrade find foo
package it will (1) delete it and (2) call package-install which
will refuse to install (error) because foo is disabled.

As a result we have lost foo package, it is now uninstalled.
Same problem with M-x package-upgrade, foo and bar are listed in
completion and made available whereas they are going to fail to
upgrade.



In GNU Emacs 29.4 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.16.0, Xaw3d scroll bars) of 2024-06-23 built on IPad-S340
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Linux Mint 21.3

Configured using:
 'configure CFLAGS=3D-O8 --bindir=3D/usr/local/sbin/emacs-29.3 --with-cairo
 --with-x-toolkit=3Dlucid --with-modules --without-tree-sitter
 --without-native-compilation'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB

Important settings:
  value of $LANG: fr_FR.UTF-8
  locale-coding-system: utf-8-unix

Major mode: =EE=A4=88

Minor modes in effect:
  emms-mode-line-mode: t
  emms-playing-time-display-mode: t
  emms-playing-time-mode: t
  server-mode: t
  psession-mode: t
  psession-savehist-mode: t
  register-preview-mode: t
  global-git-gutter-mode: t
  display-time-mode: t
  winner-mode: t
  tv-save-place-mode: t
  helm-epa-mode: t
  helm-descbinds-mode: t
  helm-top-poll-mode: t
  helm-adaptive-mode: t
  helm-mode: t
  helm-minibuffer-history-mode: t
  helm-ff-icon-mode: t
  shell-dirtrack-mode: t
  helm-popup-tip-mode: t
  async-bytecomp-package-mode: t
  dired-async-mode: t
  minibuffer-depth-indicate-mode: t
  gcmh-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Features:
(shadow epa-mail face-remap helm-ring emacsbug ediff ediff-merg
ediff-mult ediff-wind ediff-diff ediff-help ediff-init ediff-util
gnus-cite smiley w3m-form w3m-symbol qp config-w3m w3m timezone w3m-hist
bookmark-w3m w3m-ems w3m-favicon w3m-image w3m-fb tab-line w3m-proc
w3m-util mail-extr textsec uni-scripts idna-mapping ucs-normalize
uni-confusable textsec-check addressbook-bookmark tv-mu4e-config
gnus-and-mu4e mu4e-patch mu4e-contrib eshell esh-cmd esh-ext esh-opt
esh-proc esh-io esh-arg esh-module esh-groups esh-util mu4e mu4e-org
mu4e-notification notifications mu4e-main smtpmail mu4e-view
mu4e-mime-parts mu4e-headers mu4e-thread mu4e-actions mu4e-compose
mu4e-draft gnus-msg mu4e-search mu4e-lists mu4e-bookmarks mu4e-mark
mu4e-message flow-fill hl-line mu4e-contacts mu4e-update mu4e-folders
mu4e-context mu4e-query-items mu4e-server mu4e-modeline mu4e-vars
mu4e-helpers mu4e-config mu4e-window ido mu4e-obsolete svg-lib color
epa-file dired-x image-file image-converter char-fold tramp-adb tramp-sh
ffap cl-indent cl-print helm-command helm-elisp helm-eval edebug debug
backtrace mm-archive network-stream url-cache url-http url-auth url-gw
nsm helm-packages async-package finder lisp-mnt tramp-archive tramp-gvfs
tramp-cache time-stamp zeroconf helm-x-files helm-for-files
helm-bookmark helm-info bookmark emms-config emms-idapi-browser
emms-idapi emms-idapi-musicbrainz emms-mpris emms-librefm-stream
emms-librefm-scrobbler emms-playlist-limit emms-i18n emms-history
emms-score emms-stream-info emms-metaplaylist-mode emms-bookmarks
emms-cue emms-mode-line-icon emms-browser sort emms-volume
emms-volume-sndioctl emms-volume-mixerctl emms-volume-pulse
emms-volume-amixer emms-playlist-sort emms-last-played emms-player-xine
emms-player-mpd tq emms-lyrics emms-url emms-streams emms-show-all
emms-tag-editor emms-tag-tracktag emms-mark emms-mode-line emms-cache
emms-info-native emms-info-native-spc emms-info-native-mp3
emms-info-native-ogg emms-info-native-opus emms-info-native-flac
emms-info-native-vorbis bindat emms-info-exiftool emms-info-tinytag
emms-info-metaflac emms-info-opusinfo emms-info-ogginfo
emms-info-mp3info emms-playlist-mode emms-player-vlc emms-player-mpv
emms-playing-time emms-info emms-later-do emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file locate
emms-setup emms emms-compat emms-auto helm-external helm-net helm-ls-git
vc-git diff-mode vc vc-dispatcher conf-mode flymake-shellcheck cus-start
flymake-proc flymake project warnings sh-script smie treesit executable
org-element org-persist org-id org-refile avl-tree generator oc-basic
cl-extra ol-eww eww url-queue thingatpt mm-url ol-rmail ol-mhe ol-irc
ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime
gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group
gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail
mail-source utf7 nnoo gnus-spec gnus-int gnus-range message sendmail
yank-media puny rfc822 mml mml-sec mm-decode mm-bodies mm-encode
mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils
mailheader gnus-win gnus nnheader gnus-util mail-utils range mm-util
mail-prsvr ol-docview doc-view jka-compr ol-bibtex bibtex ol-bbdb ol-w3m
ol-doi org-link-doi org-config ob-gnuplot org-crypt org-protocol org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint
org-pcomplete org-list org-footnote org-faces org-entities noutline
outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold
org-fold-core org-keys oc org-loaddefs find-func org-version org-compat
org-macs make-mode bug-reference naquadah-theme view solar cal-dst
holidays holiday-loaddefs appt diary-lib diary-loaddefs cal-menu
calendar cal-loaddefs server imenu psession frameset w3m-load
register-preview git-gutter mule-util dired-extension time winner
describe-variable help-fns radix-tree help-mode tv-utils
tv-save-place.el advice init-helm epa derived epg rfc6068 epg-config
helm-epa helm-descbinds cus-edit pp icons wid-edit helm-sys
helm-adaptive helm-mode helm-misc helm-files image-dired
image-dired-tags image-dired-external image-dired-util xdg image-mode
exif filenotify tramp tramp-loaddefs trampver tramp-integration files-x
tramp-compat rx shell pcomplete parse-time iso8601 time-date
helm-buffers all-the-icons all-the-icons-faces data-material
data-weathericons data-octicons data-fileicons data-faicons
data-alltheicons helm-occur helm-tags helm-locate helm-grep wgrep-helm
wgrep grep compile text-property-search comint ansi-osc ring helm-regexp
format-spec ansi-color helm-utils helm-help helm-types
helm-extensions-autoloads helm-autoloads helm helm-global-bindings
helm-easymenu edmacro kmacro helm-core async-bytecomp helm-source
helm-multi-match helm-lib dired-async async dired-aux dired
dired-loaddefs isl-autoloads mb-depth avoid cus-load gcmh easy-mmode
corfu-autoloads filechooser-autoloads ledger-mode-autoloads
magit-autoloads pcase git-commit-autoloads magit-section-autoloads
dash-autoloads markdown-mode-autoloads transient-autoloads finder-inf
with-editor-autoloads info compat-autoloads package browse-url 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 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/x-win x-win
term/common-win x-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 lcms2 dynamic-setting system-font-setting
font-render-setting cairo x-toolkit xinput2 x multi-tty
make-network-process emacs)

Memory information:
((conses 16 1126986 282642)
 (symbols 48 47791 7)
 (strings 32 329278 39126)
 (string-bytes 1 9084964)
 (vectors 16 119581)
 (vector-slots 8 2518384 196657)
 (floats 8 4123 3733)
 (intervals 56 15474 3437)
 (buffers 976 165))
<#secure method=3Dpgpmime mode=3Dsign>

--=20
Thierry




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.505 (Entity 5.505)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: Thierry Volpiatto <thievol@HIDDEN>
Subject: bug#72141: Acknowledgement (29.4; package-upgrade vs
 package-load-list)
Message-ID: <handler.72141.B.172114103510320.ack <at> debbugs.gnu.org>
References: <87ikx5xulu.fsf@HIDDEN>
X-Gnu-PR-Message: ack 72141
X-Gnu-PR-Package: emacs
Reply-To: 72141 <at> debbugs.gnu.org
Date: Tue, 16 Jul 2024 14:44:02 +0000

Thank you for filing a new bug report with debbugs.gnu.org.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

Your message has been sent to the package maintainer(s):
 bug-gnu-emacs@HIDDEN

If you wish to submit further information on this problem, please
send it to 72141 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
72141: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D72141
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Eli Zaretskii <eliz@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 27 Jul 2024 07:16:01 +0000
Resent-Message-ID: <handler.72141.B72141.172206452110556 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>
Cc: 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172206452110556
          (code B ref 72141); Sat, 27 Jul 2024 07:16:01 +0000
Received: (at 72141) by debbugs.gnu.org; 27 Jul 2024 07:15:21 +0000
Received: from localhost ([127.0.0.1]:40441 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sXbeC-0002jq-V3
	for submit <at> debbugs.gnu.org; Sat, 27 Jul 2024 03:15:21 -0400
Received: from eggs.gnu.org ([209.51.188.92]:39282)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1sXbeA-0002iA-A4
 for 72141 <at> debbugs.gnu.org; Sat, 27 Jul 2024 03:15:18 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1sXbdu-0000Ux-N0; Sat, 27 Jul 2024 03:15:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=07o11Fcie2BvAizrhtsNuT0PR2cGQq4T0oCl1OPSidw=; b=dn3b7qhvghMV
 i+Mw9J6qh+X90yz5pooPxU5QHFUkA/4JT2/6T2cWYzQOaTtvD0Y7/YQU3tmKdCLckV5GnSRqGgyp3
 lL4uzxmxFrCDR4ayQF4aDW3QlwA9POW7+VYbR81BQo0iNgN9cYOq8wvdwuStPz2y2ygjTDLqhh528
 x7xb+B7IBu0DaJRNmBDaKw3b+rQYxyUBTYBRuta3/gmMrnSeUjruFUXb0jwYsKvcaHJiZKSVWboBx
 QdaMk8bBLEYt3w7fGuE/arpdo6Bbi+O0ZU2ZPBtTF8BPUa85gU8RRBjEXi7KXYthoLhAAEKTmdd9T
 PFN+l80Gvp0zAQY3Tyo5xA==;
Date: Sat, 27 Jul 2024 10:14:59 +0300
Message-Id: <865xsr2tn0.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
In-Reply-To: <87ikx5xulu.fsf@HIDDEN> (message from Thierry Volpiatto on
 Tue, 16 Jul 2024 14:46:37 +0000)
References: <87ikx5xulu.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Thierry Volpiatto <thievol@HIDDEN>
> Date: Tue, 16 Jul 2024 14:46:37 +0000
> 
> 
> I think there is a bug here, but please verify with following recipe as
> I don't use widely package installation, at least for myself.  When reading
> the code I believe it is reproductible as well on emacs-30+.
> 
> 1) Install package foo and bar.
> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
> 3) Wait some time until foo and/or bar have new versions available.
> 4) Call package-upgrade-all.  It will call package-upgrade on foo
> and bar (and possibly others).  When package-upgrade find foo
> package it will (1) delete it and (2) call package-install which
> will refuse to install (error) because foo is disabled.
> 
> As a result we have lost foo package, it is now uninstalled.
> Same problem with M-x package-upgrade, foo and bar are listed in
> completion and made available whereas they are going to fail to
> upgrade.

Philip, any comments or suggestions?




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 28 Jul 2024 11:49:02 +0000
Resent-Message-ID: <handler.72141.B72141.172216728924098 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Eli Zaretskii <eliz@HIDDEN>
Cc: Thierry Volpiatto <thievol@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172216728924098
          (code B ref 72141); Sun, 28 Jul 2024 11:49:02 +0000
Received: (at 72141) by debbugs.gnu.org; 28 Jul 2024 11:48:09 +0000
Received: from localhost ([127.0.0.1]:42747 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sY2Nk-0006Gc-KA
	for submit <at> debbugs.gnu.org; Sun, 28 Jul 2024 07:48:08 -0400
Received: from mout02.posteo.de ([185.67.36.66]:52845)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1sY2Ng-0006G6-Nx
 for 72141 <at> debbugs.gnu.org; Sun, 28 Jul 2024 07:48:06 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 8D6D1240103
 for <72141 <at> debbugs.gnu.org>; Sun, 28 Jul 2024 13:47:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722167266; bh=8Eb4T1ze77u9W+9XajDzyWoWjd0bdqDA20yGJ17FNMo=;
 h=From:To:Cc:Subject:Autocrypt:OpenPGP:Date:Message-ID:MIME-Version:
 Content-Type:From;
 b=D71Jwy2VS+nyBk+7XOus/0/6QHL6i0mbyoyJQDPOsMqXYhDMGWHcyxbk2pAbGK1U0
 nD1zxlUy3r6xeGhehwRmkUfdJBllJL8ULVpAtEzoT2FdSmy0CkgkrdfnwZQn1LO+mD
 25iaZE+9t0KADJ8cujBrkIfZsWNPeUheTrnQYFvpKWvZJpXDLhpqKV59WevsueNY4d
 uDoIQJ/di1aCipv8hLrmL5SIyiWW6mNDeQ45RZhhFYsHC3GHcbSZOTyo2PN2BbApC0
 +VEFPXQbdZm682h4ZL75XOIoP+gO4qsZdCFoXH6Yw/wpZQipcBQjhWfBFs/hDKPXS+
 HC50ERpRuzk6w==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WX09F3shzz6tw5;
 Sun, 28 Jul 2024 13:47:45 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <865xsr2tn0.fsf@HIDDEN> (Eli Zaretskii's message of "Sat, 27 Jul
 2024 10:14:59 +0300")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; keydata=
 mDMEZBBQQhYJKwYBBAHaRw8BAQdAHJuofBrfqFh12uQu0Yi7mrl525F28eTmwUDflFNmdui0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiWBBMWCAA+FiEEDg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwMFCQHhM4AFCwkI
 BwIGFQoJCAsCBBYCAwECHgECF4AACgkQ8xYDWXahwulikAEA77hloUiSrXgFkUVJhlKBpLCHUjA0
 mWZ9j9w5d08+jVwBAK6c4iGP7j+/PhbkxaEKa4V3MzIl7zJkcNNjHCXmvFcEuDgEZBBQQhIKKwYB
 BAGXVQEFAQEHQI5NLiLRjZy3OfSt1dhCmFyn+fN/QKELUYQetiaoe+MMAwEIB4h+BBgWCAAmFiEE
 Dg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwwFCQHhM4AACgkQ8xYDWXahwukm+wEA8cml4JpK
 NeAu65rg+auKrPOP6TP/4YWRCTIvuYDm0joBALw98AMz7/qMHvSCeU/hw9PL6u6R2EScxtpKnWof
 z4oM
OpenPGP: id=philipk@HIDDEN;
 url="https://keys.openpgp.org/vks/v1/by-email/philipk@HIDDEN";
 preference=signencrypt
Date: Sun, 28 Jul 2024 11:47:44 +0000
Message-ID: <871q3drb4v.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain

Eli Zaretskii <eliz@HIDDEN> writes:

>> From: Thierry Volpiatto <thievol@HIDDEN>
>> Date: Tue, 16 Jul 2024 14:46:37 +0000
>> 
>> 
>> I think there is a bug here, but please verify with following recipe as
>> I don't use widely package installation, at least for myself.  When reading
>> the code I believe it is reproductible as well on emacs-30+.
>> 
>> 1) Install package foo and bar.
>> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>> 3) Wait some time until foo and/or bar have new versions available.
>> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>> and bar (and possibly others).  When package-upgrade find foo
>> package it will (1) delete it and (2) call package-install which
>> will refuse to install (error) because foo is disabled.
>> 
>> As a result we have lost foo package, it is now uninstalled.
>> Same problem with M-x package-upgrade, foo and bar are listed in
>> completion and made available whereas they are going to fail to
>> upgrade.
>
> Philip, any comments or suggestions?

The issue is that we don't install a package if it is disabled.  So
either we allow installing (but don't activate) disabled packages, or we
ignore disabled packages during upgrades.  That might just need this
change:


--=-=-=
Content-Type: text/plain
Content-Disposition: inline

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index 7cae8d68bc0..eb77d99fad2 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -2286,6 +2286,9 @@ package--upgradeable-packages
       (or (let ((available
                  (assq (car elt) package-archive-contents)))
             (and available
+                 (package-disabled-p
+                  (cadr elt)
+                  (package-desc-version (cadr elt)))
                  (or (and
                       include-builtins
                       (not (package-desc-version (cadr elt))))

--=-=-=
Content-Type: text/plain


-- 
	Philip Kaludercic on peregrine

--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 28 Jul 2024 12:25:02 +0000
Resent-Message-ID: <handler.72141.B72141.172216944727669 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: Thierry Volpiatto <thievol@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172216944727669
          (code B ref 72141); Sun, 28 Jul 2024 12:25:02 +0000
Received: (at 72141) by debbugs.gnu.org; 28 Jul 2024 12:24:07 +0000
Received: from localhost ([127.0.0.1]:42798 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sY2wY-0007CD-F4
	for submit <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:24:06 -0400
Received: from mout02.posteo.de ([185.67.36.66]:46033)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sY2wW-0007Bh-22
 for 72141 <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:24:05 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id A1440240103
 for <72141 <at> debbugs.gnu.org>; Sun, 28 Jul 2024 14:23:45 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722169425; bh=dZV12uHvLZLhSjquVTeqwPqTHxHMQlu80SiH4wjTsYE=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=I3VFRtsUXtoC/gVvZvlC8jW0J53UgJ8rU/nhHbC4G8EI0/WMHc7AbZ6zL4tX+JxP8
 SLNB7YbZAVGad0tNsopAHb1b5rpuj7qP8tf2Fas1V7xkmXh9/99gVXh0+al5SYzqky
 rLzNngwDUSbOC5ZorS/Mj1pAPyQ+HRSVKz9o8ZUqs8yQ7IMdvX0E3xTMXdwdiHtslq
 +jjQEUMGkfS2YCBNI31yEjQR6akz96R1aqpUd71q07qPP/SzK1fXRTmm6zX9uX0wfX
 7G3CBYaHdmP//tRuxmDR3aS8EyCGqFpBoco38yW2QOk+y+FeL2x1QrN5IA6YDqkHU0
 EW4i/A0u5ca4w==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WX0yk6mxjz9rxL;
 Sun, 28 Jul 2024 14:23:42 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <871q3drb4v.fsf@HIDDEN> (Philip Kaludercic's message of "Sun, 
 28 Jul 2024 11:47:44 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN>
Date: Sun, 28 Jul 2024 12:27:10 +0000
Message-ID: <87ttg9bt29.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Philip Kaludercic <philipk@HIDDEN> writes:

> Eli Zaretskii <eliz@HIDDEN> writes:
>
>>> From: Thierry Volpiatto <thievol@HIDDEN>
>>> Date: Tue, 16 Jul 2024 14:46:37 +0000
>>>=20
>>>=20
>>> I think there is a bug here, but please verify with following recipe as
>>> I don't use widely package installation, at least for myself.  When rea=
ding
>>> the code I believe it is reproductible as well on emacs-30+.
>>>=20
>>> 1) Install package foo and bar.
>>> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>>> 3) Wait some time until foo and/or bar have new versions available.
>>> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>>> and bar (and possibly others).  When package-upgrade find foo
>>> package it will (1) delete it and (2) call package-install which
>>> will refuse to install (error) because foo is disabled.
>>>=20
>>> As a result we have lost foo package, it is now uninstalled.
>>> Same problem with M-x package-upgrade, foo and bar are listed in
>>> completion and made available whereas they are going to fail to
>>> upgrade.
>>
>> Philip, any comments or suggestions?
>
> The issue is that we don't install a package if it is disabled.  So
> either we allow installing (but don't activate) disabled packages, or we
> ignore disabled packages during upgrades.  That might just need this
> change:
>
> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
> index 7cae8d68bc0..eb77d99fad2 100644
> --- a/lisp/emacs-lisp/package.el
> +++ b/lisp/emacs-lisp/package.el
> @@ -2286,6 +2286,9 @@ package--upgradeable-packages
>        (or (let ((available
>                   (assq (car elt) package-archive-contents)))
>              (and available
> +                 (package-disabled-p
> +                  (cadr elt)
> +                  (package-desc-version (cadr elt)))
>                   (or (and
>                        include-builtins
>                        (not (package-desc-version (cadr elt))))

If nothing in package.el or elsewhere relay on the fact that
package--upgradeable-packages returns the disabled packages
that looks good.
Also why in this function you are using (mapcar 'car (seq-filter ...))?
Perhaps one loop could be avoided here? (just asking, I am not familiar
with seq, I don't use it).

Thanks.

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmamOR4THHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk7a/C/0e0lP4+V50PmWKp9wjmCgeF1cz/CPS
cRlx37WyczfLHrH1IB3k/PvBRPIKzkY3LJZrR9MiiHVFB5/pqDUYdmznXBIMcbiU
yhBYB7aZG/FAHJn/P8dIzLHIC4EI9QOdEKf91lbrWbLDjXl6PApJw9rSgAcoJgS2
mYuQlj9NcKPzB+xxJ8NbtgGvmYZwgnnf1o1A9xLqYvHhcJG/MlvbUm/Cz+wImgoX
sngAihiVg+dh48GJZLwStzPpb7IrUPvfKt8lD6DSu/1+LPG37FpGp2/kUbn9G1gW
cl145ZgEaLsfRh0PrY+oA5VsnkAfyxeSP4ZIB9h033cnT2dBGL2gbN5Gn4eLcTgG
AH0IM0cHh13BNpJrEF3iYcd624rAgfvU9fzc36XJqMJsTDslpQOm6VH3wisDjO29
4p836UH8p3aJkrNUSqUMrf9pJd/k+VO//FVJzYJFZI0zJLxj/0WRG74A2s5LVpPj
UKC2vbwqq4dDqk5BgXGEVs857VGENdwnV9Y=
=N6tq
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Eli Zaretskii <eliz@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 28 Jul 2024 12:31:01 +0000
Resent-Message-ID: <handler.72141.B72141.172216981928357 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: thievol@HIDDEN, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172216981928357
          (code B ref 72141); Sun, 28 Jul 2024 12:31:01 +0000
Received: (at 72141) by debbugs.gnu.org; 28 Jul 2024 12:30:19 +0000
Received: from localhost ([127.0.0.1]:42804 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sY32Z-0007NJ-DJ
	for submit <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:30:19 -0400
Received: from eggs.gnu.org ([209.51.188.92]:59776)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1sY32W-0007N4-Nq
 for 72141 <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:30:18 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1sY309-0007jl-6o; Sun, 28 Jul 2024 08:27:49 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=RHTUHq0N+V5EuKFcYZdEWsZJEJjPhVSdGNY5Oj52zJ8=; b=QV2ioAcG62SW
 FgOoJA4pW2X+97nGqQGniRGa61kZViQzCm+9Yq2aDvPGkrROsiHnAE2NRpQlUJiFv63AtazkHEEri
 xO4vTYMIapgkEPBHqT7ohKkZLBdpm5vTuNR2CBvC28XAHR2zbXVMNCFAkoOtlkVBSpqB6kEjjys/x
 yeSDpAI3OfXiA3z84vGDVQVP2pDr1BXZpwNgmgmuz7BOAuiUZZ4BEuwxg+VCoSRuQ38nRlunbmvEi
 aMIWJ9ObLlj1SOm4MGUob6c9JQ/W8Fq64joccbs4OmfR2nvlfcOxW0zUoaJocImjWuXNTdW0KcgJs
 n3bgaz45bOTCPVUiyWJOmw==;
Date: Sun, 28 Jul 2024 15:27:31 +0300
Message-Id: <8634nt1z2k.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
In-Reply-To: <871q3drb4v.fsf@HIDDEN> (message from Philip Kaludercic on
 Sun, 28 Jul 2024 11:47:44 +0000)
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Philip Kaludercic <philipk@HIDDEN>
> Cc: Thierry Volpiatto <thievol@HIDDEN>,  72141 <at> debbugs.gnu.org
> Date: Sun, 28 Jul 2024 11:47:44 +0000
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> 
> >> From: Thierry Volpiatto <thievol@HIDDEN>
> >> Date: Tue, 16 Jul 2024 14:46:37 +0000
> >> 
> >> 
> >> I think there is a bug here, but please verify with following recipe as
> >> I don't use widely package installation, at least for myself.  When reading
> >> the code I believe it is reproductible as well on emacs-30+.
> >> 
> >> 1) Install package foo and bar.
> >> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
> >> 3) Wait some time until foo and/or bar have new versions available.
> >> 4) Call package-upgrade-all.  It will call package-upgrade on foo
> >> and bar (and possibly others).  When package-upgrade find foo
> >> package it will (1) delete it and (2) call package-install which
> >> will refuse to install (error) because foo is disabled.
> >> 
> >> As a result we have lost foo package, it is now uninstalled.
> >> Same problem with M-x package-upgrade, foo and bar are listed in
> >> completion and made available whereas they are going to fail to
> >> upgrade.
> >
> > Philip, any comments or suggestions?
> 
> The issue is that we don't install a package if it is disabled.  So
> either we allow installing (but don't activate) disabled packages, or we
> ignore disabled packages during upgrades.

The latter, I'd say.  It makes little sense to upgrade disabled
packages.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 28 Jul 2024 12:37:01 +0000
Resent-Message-ID: <handler.72141.B72141.172217020728969 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Eli Zaretskii <eliz@HIDDEN>
Cc: thievol@HIDDEN, Philip Kaludercic <philipk@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172217020728969
          (code B ref 72141); Sun, 28 Jul 2024 12:37:01 +0000
Received: (at 72141) by debbugs.gnu.org; 28 Jul 2024 12:36:47 +0000
Received: from localhost ([127.0.0.1]:42820 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sY38o-0007XA-Hi
	for submit <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:36:46 -0400
Received: from mout01.posteo.de ([185.67.36.65]:35837)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sY38m-0007Ww-1K
 for 72141 <at> debbugs.gnu.org; Sun, 28 Jul 2024 08:36:45 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id 787D4240029
 for <72141 <at> debbugs.gnu.org>; Sun, 28 Jul 2024 14:36:26 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722170186; bh=R9rlwal69rhYH0716WE8LTmOEd+D4PHIrI3LJZc5hk0=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=YkudMQnxQxfQ7vkS0hUQdRp0cRgoZrQu5hfosnZak0+gVYDVZvtaMseLn8Kepc3Zk
 vbUkb1LXOwKOl5b/XFurBa01TcaG6jL2WbgLC+4RoOxPr5vLDt5WmXNXLhHBlhKo34
 nxD79s/4ti0n0TUmcXHVM65NalH/th1kNrhJQ72rKHmspyubJMd2QcVkswWYeUPX1Z
 0VkTBffAcMmdf2ejUWdpIbLvSAmRU9G8ouPjCVMpgIxJOUnQKfYiLwA3GcX85aHR4n
 JRgRb9xPzIfESdAB8reSwsZEh663D9FmDbMqZSsKw8VaUUBhti46UJZMW5ZuBdEcw7
 kZY+4TabUP8vw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WX1FN1Vmyz9rxK;
 Sun, 28 Jul 2024 14:36:24 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <8634nt1z2k.fsf@HIDDEN> (Eli Zaretskii's message of "Sun, 28 Jul
 2024 15:27:31 +0300")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
Date: Sun, 28 Jul 2024 12:39:51 +0000
Message-ID: <87plqxbsh4.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Eli Zaretskii <eliz@HIDDEN> writes:

>> From: Philip Kaludercic <philipk@HIDDEN>
>> Cc: Thierry Volpiatto <thievol@HIDDEN>,  72141 <at> debbugs.gnu.org
>> Date: Sun, 28 Jul 2024 11:47:44 +0000
>>=20
>> Eli Zaretskii <eliz@HIDDEN> writes:
>>=20
>> >> From: Thierry Volpiatto <thievol@HIDDEN>
>> >> Date: Tue, 16 Jul 2024 14:46:37 +0000
>> >>=20
>> >>=20
>> >> I think there is a bug here, but please verify with following recipe =
as
>> >> I don't use widely package installation, at least for myself.  When r=
eading
>> >> the code I believe it is reproductible as well on emacs-30+.
>> >>=20
>> >> 1) Install package foo and bar.
>> >> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>> >> 3) Wait some time until foo and/or bar have new versions available.
>> >> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>> >> and bar (and possibly others).  When package-upgrade find foo
>> >> package it will (1) delete it and (2) call package-install which
>> >> will refuse to install (error) because foo is disabled.
>> >>=20
>> >> As a result we have lost foo package, it is now uninstalled.
>> >> Same problem with M-x package-upgrade, foo and bar are listed in
>> >> completion and made available whereas they are going to fail to
>> >> upgrade.
>> >
>> > Philip, any comments or suggestions?
>>=20
>> The issue is that we don't install a package if it is disabled.  So
>> either we allow installing (but don't activate) disabled packages, or we
>> ignore disabled packages during upgrades.
>
> The latter, I'd say.  It makes little sense to upgrade disabled
> packages.

When I posted initially this bugreport I wrote this (fully not tested):

    (defun package--upgradeable-packages (&optional include-builtins filter=
-load-list)
      ;; Initialize the package system to get the list of package
      ;; symbols for completion.
      (package--archives-initialize)
      (let ((pkgs (if include-builtins
                      (append package-alist
                              (mapcan
                               (lambda (elt)
                                 (when (not (assq (car elt) package-alist))
                                   (list (list (car elt) (package--from-bui=
ltin elt)))))
                               package--builtins))
                    package-alist)))=20
        (cl-loop for (sym desc) in pkgs
                 for available =3D (assq sym package-archive-contents)
                 when (or (and available
                               (or (and
                                    include-builtins
                                    (not (package-desc-version desc)))
                                   (version-list-<
                                    (package-desc-version desc)
                                    (package-desc-version (cadr available)))
                                   (and filter-load-list
                                        (pcase (assq p package-load-list)
                                          (`(,sym ,val) (or (not (eq val ni=
l))
                                                            (not (stringp v=
al))))))))
                          (package-vc-p desc))
                 collect sym)))

Perhaps package-disabled-p can be used instead of the pcase (I didn't
know its existence).

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmamPBcTHHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk2hsDAC+We85ZbKp70UjCFMDVhqbj5NK+jNC
/F7mEr8fTNog3lJuwfbY/kSLnhdfUa7tDr4pQJ9QExJ/1UJCuDBKqVSaMjC7sBZJ
PSD6xNvYsL+D182Lzp8w+Rar9L9gW1lPuwa1yZKugMxxVKKMnHg3KzlypF//OyHt
b+Gn9hgeM4ylTDBckPAj18QaSMJ2lwfq6yz3jkUIlUGQ5fkakO6gvX5hCF5hu9Z6
Vz4u/uHBdEnnEts1j6Oe5YhZvwWskdzG/BdmccPQIzw4PlKvSw8KmJ45LIpB1lKX
jkbilGNhfdkNuyXqBRAL6FhP1IVPHZ0Z9pOn4vvtETgGYSpOO+BaCJ3lK7unJRWf
2eIWVWRb4lv1F288doDLC6oczFbX15Ckkn08LoO7XE4tLjGNNI+LKZqIuG9g+sfw
qH51uhHwzxusfe1JH/vqyjLIeO89PkPA1Q4pyOjqcz+vDhhWN8Irs0xucJiPVU6+
//oXz7ose3gScwIMFWwpA+s4sMc4NbT2wms=
=xAbF
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 01 Aug 2024 06:46:01 +0000
Resent-Message-ID: <handler.72141.B72141.17224947137059 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>
Cc: Eli Zaretskii <eliz@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.17224947137059
          (code B ref 72141); Thu, 01 Aug 2024 06:46:01 +0000
Received: (at 72141) by debbugs.gnu.org; 1 Aug 2024 06:45:13 +0000
Received: from localhost ([127.0.0.1]:50715 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sZPYm-0001pl-Sh
	for submit <at> debbugs.gnu.org; Thu, 01 Aug 2024 02:45:13 -0400
Received: from mout02.posteo.de ([185.67.36.66]:36791)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sZPYj-0001pS-E3
 for 72141 <at> debbugs.gnu.org; Thu, 01 Aug 2024 02:45:11 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 503DF240104
 for <72141 <at> debbugs.gnu.org>; Thu,  1 Aug 2024 08:44:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722494686; bh=uxsou6Q0xPTxmFokeb5yKsloxUn8camewyMURKZFPHk=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=GBUFj7CPRjg5j8ruqcp3GF4BxEcnhQb1XQyIMQj61KgKhJYw2L4xU9Lwir1Jws6zC
 au/HqyPi+4hxC0CVav3gXVgm9k1+pcT9Dr8WNEe80Njt540m4WCqUXmUD1UYtKesUx
 94Oi4M7nFy9dr8sYhUZ5OM2r7YNYrc45wWOpSqNnwAgDRLKEJNAKJek8tXFZeQo2Go
 kNppYB1/fa7LRKzEJceVlCKEnGCiNLbF80xDKvBiC7La4dQc4xtdpzECet7aitMiRT
 2SMJBDReqDju4l5pfmlQ2azEACOcYg8o7FfWX0qz7GFzI9aGMujlEwpvIE26TtAXKz
 FHkaGa4GUWdEg==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WZKFm1589z6tn4;
 Thu,  1 Aug 2024 08:44:44 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <87plqxbsh4.fsf@HIDDEN> (Thierry Volpiatto's message of "Sun, 
 28 Jul 2024 12:39:51 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN>
Date: Thu, 01 Aug 2024 06:48:13 +0000
Message-ID: <87o76c3fiq.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Thierry Volpiatto <thievol@HIDDEN> writes:

> Eli Zaretskii <eliz@HIDDEN> writes:
>
>>> From: Philip Kaludercic <philipk@HIDDEN>
>>> Cc: Thierry Volpiatto <thievol@HIDDEN>,  72141 <at> debbugs.gnu.org
>>> Date: Sun, 28 Jul 2024 11:47:44 +0000
>>>=20
>>> Eli Zaretskii <eliz@HIDDEN> writes:
>>>=20
>>> >> From: Thierry Volpiatto <thievol@HIDDEN>
>>> >> Date: Tue, 16 Jul 2024 14:46:37 +0000
>>> >>=20
>>> >>=20
>>> >> I think there is a bug here, but please verify with following recipe=
 as
>>> >> I don't use widely package installation, at least for myself.  When =
reading
>>> >> the code I believe it is reproductible as well on emacs-30+.
>>> >>=20
>>> >> 1) Install package foo and bar.
>>> >> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>>> >> 3) Wait some time until foo and/or bar have new versions available.
>>> >> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>>> >> and bar (and possibly others).  When package-upgrade find foo
>>> >> package it will (1) delete it and (2) call package-install which
>>> >> will refuse to install (error) because foo is disabled.
>>> >>=20
>>> >> As a result we have lost foo package, it is now uninstalled.
>>> >> Same problem with M-x package-upgrade, foo and bar are listed in
>>> >> completion and made available whereas they are going to fail to
>>> >> upgrade.
>>> >
>>> > Philip, any comments or suggestions?
>>>=20
>>> The issue is that we don't install a package if it is disabled.  So
>>> either we allow installing (but don't activate) disabled packages, or we
>>> ignore disabled packages during upgrades.
>>
>> The latter, I'd say.  It makes little sense to upgrade disabled
>> packages.
>
> When I posted initially this bugreport I wrote this (fully not tested):
>
>     (defun package--upgradeable-packages (&optional include-builtins filt=
er-load-list)
>       ;; Initialize the package system to get the list of package
>       ;; symbols for completion.
>       (package--archives-initialize)
>       (let ((pkgs (if include-builtins
>                       (append package-alist
>                               (mapcan
>                                (lambda (elt)
>                                  (when (not (assq (car elt) package-alist=
))
>                                    (list (list (car elt) (package--from-b=
uiltin elt)))))
>                                package--builtins))
>                     package-alist)))=20
>         (cl-loop for (sym desc) in pkgs
>                  for available =3D (assq sym package-archive-contents)
>                  when (or (and available
>                                (or (and
>                                     include-builtins
>                                     (not (package-desc-version desc)))
>                                    (version-list-<
>                                     (package-desc-version desc)
>                                     (package-desc-version (cadr available=
)))
>                                    (and filter-load-list
>                                         (pcase (assq p package-load-list)
>                                           (`(,sym ,val) (or (not (eq val =
nil))
>                                                             (not (stringp=
 val))))))))
>                           (package-vc-p desc))
>                  collect sym)))
>
> Perhaps package-disabled-p can be used instead of the pcase (I didn't
> know its existence).

Here a version fixing typo and using package-disabled-p (same, still
fully untested)
Note the extra optional arg filter-load-list that allow preserving the init=
ial behavior
if needed (better name?).

(defun package--upgradeable-packages (&optional include-builtins filter-loa=
d-list)
  ;; Initialize the package system to get the list of package
  ;; symbols for completion.
  (package--archives-initialize)
  (let ((pkgs (if include-builtins
                  (append package-alist
                          (mapcan
                           (lambda (elt)
                             (when (not (assq (car elt) package-alist))
                               (list (list (car elt) (package--from-builtin=
 elt)))))
                           package--builtins))
                package-alist)))=20
    (cl-loop for (sym desc) in pkgs
             for available =3D (assq sym package-archive-contents)
             for cversion =3D (and available (package-desc-version desc))
             when (or (and available
                           (or (and
                                include-builtins
                                (not (package-desc-version desc)))
                               (version-list-<
                                cversion
                                (package-desc-version (cadr available)))
                               (and filter-load-list
                                    (package-disabled-p sym cversion))))
                      (package-vc-p desc))
             collect sym)))

Also there is IMO another inconsistency in package-upgrade where the
completion is done inconditionally on packages+builtins and later
package-install-upgrade-built-in is let bounded to prevent
package-install to upgrade built-in in case user chose a built-in!

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmarL60THHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk+zgDACh+SgLc/h4pZuwRohTLa6t7lEQ7uVL
3W7XJm/lik1WC6xlLw+WmtctILVFTIz8cd99GBmQujnMx0TkSOOSRUNtY7sJpi6h
bZ7HlamSFZR5PbsZ4HKFD3vFI8s0aF6URd6H/n/ODeYESwkINNQ6dILwb07z2kZU
nDou8VySbcpKM7yzpQPUoJC74VvrmOMbvKpnRQxHeTFAVi3CRkXzA5QTg9saaFLI
hHMp4X5OdPe3uk/m+JueliCI4P/gHpTlXPgjK8hoAt6zX4GzFfEn/KaymfGTGnSl
7CqJTbLXPlOCMBVIgDYI80NlYkSR7rBTCRV/yf/X0cayWauGYXrGNtXOzRSpwm7R
Dnug5mOcWTo/JOTRz60Fs+V/QnKmXJKxQWSh2IrjJ8pI2MtcTfoSY5qe/biaWEHJ
V4006NRmFdd3B8U8/HdVzC8/1e5m0m1rwr2w3ewBLdRANt5zNCIAUpZb1FAtPAFx
X9ymRnZwPjDC/Hv6O8AFZXOPSNLjnk85LOc=
=RgA7
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 03 Aug 2024 03:20:01 +0000
Resent-Message-ID: <handler.72141.B72141.172265517822740 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>
Cc: Eli Zaretskii <eliz@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172265517822740
          (code B ref 72141); Sat, 03 Aug 2024 03:20:01 +0000
Received: (at 72141) by debbugs.gnu.org; 3 Aug 2024 03:19:38 +0000
Received: from localhost ([127.0.0.1]:53939 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sa5Iv-0005ui-Vc
	for submit <at> debbugs.gnu.org; Fri, 02 Aug 2024 23:19:38 -0400
Received: from mout02.posteo.de ([185.67.36.66]:43205)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sa5Is-0005uT-5c
 for 72141 <at> debbugs.gnu.org; Fri, 02 Aug 2024 23:19:35 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id C4AFC240101
 for <72141 <at> debbugs.gnu.org>; Sat,  3 Aug 2024 05:19:08 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722655148; bh=1gMr/TmVAN1XI/bpqraWsw/VscJUZFEC7vHAXEBMxlU=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=IYH9jn5O2uAF3r5wIf5n8iK7GoSIw1aEjGwenNxSM7h9EBFlKVWrPq6tGq/JCgaGk
 LmiBlzkTcs6i2z8xyfTvJ8X2nqmSPHS3xu8dQZscyvY0AfYzzIYxZ03G6W4aXn3Dc5
 H26vwU3q7gRcqUu8C3c7GC3TRquDM9hyLWNsibwayBO+fINyUVV5TVD9mdTJ8cWhGd
 a8A3/YIVo9xnhnM7DZr1A5Rgb/qSMNLUPw6LqTuS/I26dGQ1/HnGerod7gcEx5fGu9
 OECBP8/FpegWCIXCSh06L4SDrxuS5V00wOF3BgPOUTxej29yKisZT1LsgUwN5AEiRa
 sObFPw3TsiJ4A==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WbSbZ0FB5z6twx;
 Sat,  3 Aug 2024 05:19:05 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <87o76c3fiq.fsf@HIDDEN> (Thierry Volpiatto's message of "Thu, 
 01 Aug 2024 06:48:13 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
Date: Sat, 03 Aug 2024 03:22:37 +0000
Message-ID: <8734nmguiq.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Thierry Volpiatto <thievol@HIDDEN> writes:

> Thierry Volpiatto <thievol@HIDDEN> writes:
>
>> Eli Zaretskii <eliz@HIDDEN> writes:
>>
>>>> From: Philip Kaludercic <philipk@HIDDEN>
>>>> Cc: Thierry Volpiatto <thievol@HIDDEN>,  72141 <at> debbugs.gnu.org
>>>> Date: Sun, 28 Jul 2024 11:47:44 +0000
>>>>=20
>>>> Eli Zaretskii <eliz@HIDDEN> writes:
>>>>=20
>>>> >> From: Thierry Volpiatto <thievol@HIDDEN>
>>>> >> Date: Tue, 16 Jul 2024 14:46:37 +0000
>>>> >>=20
>>>> >>=20
>>>> >> I think there is a bug here, but please verify with following recip=
e as
>>>> >> I don't use widely package installation, at least for myself.  When=
 reading
>>>> >> the code I believe it is reproductible as well on emacs-30+.
>>>> >>=20
>>>> >> 1) Install package foo and bar.
>>>> >> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>>>> >> 3) Wait some time until foo and/or bar have new versions available.
>>>> >> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>>>> >> and bar (and possibly others).  When package-upgrade find foo
>>>> >> package it will (1) delete it and (2) call package-install which
>>>> >> will refuse to install (error) because foo is disabled.
>>>> >>=20
>>>> >> As a result we have lost foo package, it is now uninstalled.
>>>> >> Same problem with M-x package-upgrade, foo and bar are listed in
>>>> >> completion and made available whereas they are going to fail to
>>>> >> upgrade.
>>>> >
>>>> > Philip, any comments or suggestions?
>>>>=20
>>>> The issue is that we don't install a package if it is disabled.  So
>>>> either we allow installing (but don't activate) disabled packages, or =
we
>>>> ignore disabled packages during upgrades.
>>>
>>> The latter, I'd say.  It makes little sense to upgrade disabled
>>> packages.
>>
>> When I posted initially this bugreport I wrote this (fully not tested):
>>
>>     (defun package--upgradeable-packages (&optional include-builtins fil=
ter-load-list)
>>       ;; Initialize the package system to get the list of package
>>       ;; symbols for completion.
>>       (package--archives-initialize)
>>       (let ((pkgs (if include-builtins
>>                       (append package-alist
>>                               (mapcan
>>                                (lambda (elt)
>>                                  (when (not (assq (car elt) package-alis=
t))
>>                                    (list (list (car elt) (package--from-=
builtin elt)))))
>>                                package--builtins))
>>                     package-alist)))=20
>>         (cl-loop for (sym desc) in pkgs
>>                  for available =3D (assq sym package-archive-contents)
>>                  when (or (and available
>>                                (or (and
>>                                     include-builtins
>>                                     (not (package-desc-version desc)))
>>                                    (version-list-<
>>                                     (package-desc-version desc)
>>                                     (package-desc-version (cadr availabl=
e)))
>>                                    (and filter-load-list
>>                                         (pcase (assq p package-load-list)
>>                                           (`(,sym ,val) (or (not (eq val=
 nil))
>>                                                             (not (string=
p val))))))))
>>                           (package-vc-p desc))
>>                  collect sym)))
>>
>> Perhaps package-disabled-p can be used instead of the pcase (I didn't
>> know its existence).
>
> Here a version fixing typo and using package-disabled-p (same, still
> fully untested)
> Note the extra optional arg filter-load-list that allow preserving the in=
itial behavior
> if needed (better name?).
>
> (defun package--upgradeable-packages (&optional include-builtins filter-l=
oad-list)
>   ;; Initialize the package system to get the list of package
>   ;; symbols for completion.
>   (package--archives-initialize)
>   (let ((pkgs (if include-builtins
>                   (append package-alist
>                           (mapcan
>                            (lambda (elt)
>                              (when (not (assq (car elt) package-alist))
>                                (list (list (car elt) (package--from-built=
in elt)))))
>                            package--builtins))
>                 package-alist)))=20
>     (cl-loop for (sym desc) in pkgs
>              for available =3D (assq sym package-archive-contents)
>              for cversion =3D (and available (package-desc-version desc))
>              when (or (and available
>                            (or (and
>                                 include-builtins
>                                 (not (package-desc-version desc)))
>                                (version-list-<
>                                 cversion
>                                 (package-desc-version (cadr available)))
>                                (and filter-load-list
>                                     (package-disabled-p sym cversion))))
>                       (package-vc-p desc))
>              collect sym)))
>
> Also there is IMO another inconsistency in package-upgrade where the
> completion is done inconditionally on packages+builtins and later
> package-install-upgrade-built-in is let bounded to prevent
> package-install to upgrade built-in in case user chose a built-in!

I finally rewrited a `package--upgradeable-packages` for helm and could test
it (versions I sent previously haven't been tested and are wrong), it is
working fine.  I can send a patch if you want let me know.

Thanks.

https://github.com/emacs-helm/helm/blob/master/helm-packages.el#L266

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmaton0THHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk3i4DACDXPfCGI2ASE9O/O3RoyMByqbSF4qF
yd5/z+W+UJcOryCozGKUFdMYwjBRIYfQHlv1ZmQr/XTEmdvCf3BG71TLNOqs+Km+
fYfSy6zyv2xBIbSxMCkerZWGlATEe2qc54hJN1V/GpKzwOnZjCVsQnolIu1MJJkI
d3NCPpqVKkFQLvktj0NRYyYxD1YdcL2wnk/Qy7qnlJXDtkjLZ2I9TqCvVe8+uSMe
Nz17fqYPg82z04FXgZISX4Oc3BSW3kG4Hmzac414t+hSnc9K38UyCW+0/SeZoHq7
0DsSxWFRUBdfoZfE1KlKLd4OsTiqVtW2zYbhvt6mDuE5x90Tubznju4C4SxL/NaG
VXZxtpWm1+sPZ5v9KUGWs3QfJbLdspQGqEuphKykv7TaF43Y5R+IKY/IO91gbeg4
6aOc8e1FCkArO/ga5RjYIMyKBIdgasw4LIZkI4iOpKp3xkTg2KNmyPpaVCol51G9
/hNgcmKluoOCDvtf2PVHX0QbKeY5wy3NGhI=
=rQ36
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 04 Aug 2024 14:58:02 +0000
Resent-Message-ID: <handler.72141.B72141.17227834749075 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>
Cc: Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.17227834749075
          (code B ref 72141); Sun, 04 Aug 2024 14:58:02 +0000
Received: (at 72141) by debbugs.gnu.org; 4 Aug 2024 14:57:54 +0000
Received: from localhost ([127.0.0.1]:56969 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sacgD-0002MI-Cy
	for submit <at> debbugs.gnu.org; Sun, 04 Aug 2024 10:57:53 -0400
Received: from mout01.posteo.de ([185.67.36.65]:54089)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1sacgB-0002Lq-Qs
 for 72141 <at> debbugs.gnu.org; Sun, 04 Aug 2024 10:57:52 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id EFE59240028
 for <72141 <at> debbugs.gnu.org>; Sun,  4 Aug 2024 16:57:24 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722783445; bh=OIs4o86u0MyH/NI1W1anGVg2l+eBXyJnc6imu4AFIqE=;
 h=From:To:Cc:Subject:Autocrypt:OpenPGP:Date:Message-ID:MIME-Version:
 Content-Type:From;
 b=jOm6e9sjRwsvdbmKb0BXNvOEbsWb0F32u//7XvajZjEn6JOaTaXY24vV5elMxKfQX
 XnC9LI6O+P8b5dKwI8wKBFDwBVQ7rj6jn+Zn5M0I/cYRVW4LGzuaG8uXladRvdXEa4
 QUGK4kAea14nBZKNdkISF2AMEtTnTDGvKURFmJdFwLjWXByJA1UDIsOkhs4VNg5N6X
 VgE4oRURBoIx706gO0To+BTQs6vKmCYmpU5vlRF3lmoTgiaH9PGyjiSQpHRUO1wVkM
 0XDMCBHb4wGvw+WdAwvQP0Vr1aklksnMsjhx7XG6shna/Q3PD46aLGDAvLE5rtOTEz
 KHbl2R3QCoCIQ==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WcN2r1MtSz6tsb;
 Sun,  4 Aug 2024 16:57:24 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <8734nmguiq.fsf@HIDDEN> (Thierry Volpiatto's message of "Sat, 
 03 Aug 2024 03:22:37 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; keydata=
 mDMEZBBQQhYJKwYBBAHaRw8BAQdAHJuofBrfqFh12uQu0Yi7mrl525F28eTmwUDflFNmdui0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiWBBMWCAA+FiEEDg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwMFCQHhM4AFCwkI
 BwIGFQoJCAsCBBYCAwECHgECF4AACgkQ8xYDWXahwulikAEA77hloUiSrXgFkUVJhlKBpLCHUjA0
 mWZ9j9w5d08+jVwBAK6c4iGP7j+/PhbkxaEKa4V3MzIl7zJkcNNjHCXmvFcEuDgEZBBQQhIKKwYB
 BAGXVQEFAQEHQI5NLiLRjZy3OfSt1dhCmFyn+fN/QKELUYQetiaoe+MMAwEIB4h+BBgWCAAmFiEE
 Dg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwwFCQHhM4AACgkQ8xYDWXahwukm+wEA8cml4JpK
 NeAu65rg+auKrPOP6TP/4YWRCTIvuYDm0joBALw98AMz7/qMHvSCeU/hw9PL6u6R2EScxtpKnWof
 z4oM
OpenPGP: id=philipk@HIDDEN;
 url="https://keys.openpgp.org/vks/v1/by-email/philipk@HIDDEN";
 preference=signencrypt
Date: Sun, 04 Aug 2024 14:57:23 +0000
Message-ID: <8734nkz67g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thierry Volpiatto <thievol@HIDDEN> writes:

> Thierry Volpiatto <thievol@HIDDEN> writes:
>
>> Thierry Volpiatto <thievol@HIDDEN> writes:
>>
>>> Eli Zaretskii <eliz@HIDDEN> writes:
>>>
>>>>> From: Philip Kaludercic <philipk@HIDDEN>
>>>>> Cc: Thierry Volpiatto <thievol@HIDDEN>,  72141 <at> debbugs.gnu.org
>>>>> Date: Sun, 28 Jul 2024 11:47:44 +0000
>>>>> 
>>>>> Eli Zaretskii <eliz@HIDDEN> writes:
>>>>> 
>>>>> >> From: Thierry Volpiatto <thievol@HIDDEN>
>>>>> >> Date: Tue, 16 Jul 2024 14:46:37 +0000
>>>>> >> 
>>>>> >> 
>>>>> >> I think there is a bug here, but please verify with following recipe as
>>>>> >> I don't use widely package installation, at least for myself.
>>>>> >> When reading
>>>>> >> the code I believe it is reproductible as well on emacs-30+.
>>>>> >> 
>>>>> >> 1) Install package foo and bar.
>>>>> >> 2) Disable them in package-load-list ((foo nil) (bar nil) all).
>>>>> >> 3) Wait some time until foo and/or bar have new versions available.
>>>>> >> 4) Call package-upgrade-all.  It will call package-upgrade on foo
>>>>> >> and bar (and possibly others).  When package-upgrade find foo
>>>>> >> package it will (1) delete it and (2) call package-install which
>>>>> >> will refuse to install (error) because foo is disabled.
>>>>> >> 
>>>>> >> As a result we have lost foo package, it is now uninstalled.
>>>>> >> Same problem with M-x package-upgrade, foo and bar are listed in
>>>>> >> completion and made available whereas they are going to fail to
>>>>> >> upgrade.
>>>>> >
>>>>> > Philip, any comments or suggestions?
>>>>> 
>>>>> The issue is that we don't install a package if it is disabled.  So
>>>>> either we allow installing (but don't activate) disabled packages, or we
>>>>> ignore disabled packages during upgrades.
>>>>
>>>> The latter, I'd say.  It makes little sense to upgrade disabled
>>>> packages.
>>>
>>> When I posted initially this bugreport I wrote this (fully not tested):
>>>
>>>     (defun package--upgradeable-packages (&optional include-builtins filter-load-list)
>>>       ;; Initialize the package system to get the list of package
>>>       ;; symbols for completion.
>>>       (package--archives-initialize)
>>>       (let ((pkgs (if include-builtins
>>>                       (append package-alist
>>>                               (mapcan
>>>                                (lambda (elt)
>>>                                  (when (not (assq (car elt) package-alist))
>>>                                    (list (list (car elt) (package--from-builtin elt)))))
>>>                                package--builtins))
>>>                     package-alist))) 
>>>         (cl-loop for (sym desc) in pkgs
>>>                  for available = (assq sym package-archive-contents)
>>>                  when (or (and available
>>>                                (or (and
>>>                                     include-builtins
>>>                                     (not (package-desc-version desc)))
>>>                                    (version-list-<
>>>                                     (package-desc-version desc)
>>>                                     (package-desc-version (cadr available)))
>>>                                    (and filter-load-list
>>>                                         (pcase (assq p package-load-list)
>>>                                           (`(,sym ,val) (or (not (eq val nil))
>>>                                                             (not (stringp val))))))))
>>>                           (package-vc-p desc))
>>>                  collect sym)))
>>>
>>> Perhaps package-disabled-p can be used instead of the pcase (I didn't
>>> know its existence).
>>
>> Here a version fixing typo and using package-disabled-p (same, still
>> fully untested)
>> Note the extra optional arg filter-load-list that allow preserving the initial behavior
>> if needed (better name?).
>>
>> (defun package--upgradeable-packages (&optional include-builtins filter-load-list)
>>   ;; Initialize the package system to get the list of package
>>   ;; symbols for completion.
>>   (package--archives-initialize)
>>   (let ((pkgs (if include-builtins
>>                   (append package-alist
>>                           (mapcan
>>                            (lambda (elt)
>>                              (when (not (assq (car elt) package-alist))
>>                                (list (list (car elt) (package--from-builtin elt)))))
>>                            package--builtins))
>>                 package-alist))) 
>>     (cl-loop for (sym desc) in pkgs
>>              for available = (assq sym package-archive-contents)
>>              for cversion = (and available (package-desc-version desc))
>>              when (or (and available
>>                            (or (and
>>                                 include-builtins
>>                                 (not (package-desc-version desc)))
>>                                (version-list-<
>>                                 cversion
>>                                 (package-desc-version (cadr available)))
>>                                (and filter-load-list
>>                                     (package-disabled-p sym cversion))))
>>                       (package-vc-p desc))
>>              collect sym)))
>>
>> Also there is IMO another inconsistency in package-upgrade where the
>> completion is done inconditionally on packages+builtins and later
>> package-install-upgrade-built-in is let bounded to prevent
>> package-install to upgrade built-in in case user chose a built-in!
>
> I finally rewrited a `package--upgradeable-packages` for helm and could test
> it (versions I sent previously haven't been tested and are wrong), it is
> working fine.  I can send a patch if you want let me know.

Gladly, then I'd like to try it out it and perhaps write a ERT test.

> Thanks.
>
> https://github.com/emacs-helm/helm/blob/master/helm-packages.el#L266

-- 
	Philip Kaludercic on peregrine




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 04 Aug 2024 17:13:02 +0000
Resent-Message-ID: <handler.72141.B72141.17227915255172 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: Thierry Volpiatto <thievol@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.17227915255172
          (code B ref 72141); Sun, 04 Aug 2024 17:13:02 +0000
Received: (at 72141) by debbugs.gnu.org; 4 Aug 2024 17:12:05 +0000
Received: from localhost ([127.0.0.1]:57118 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1saem4-0001LL-Fd
	for submit <at> debbugs.gnu.org; Sun, 04 Aug 2024 13:12:04 -0400
Received: from mout01.posteo.de ([185.67.36.65]:38557)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1saem2-0001Ka-KR
 for 72141 <at> debbugs.gnu.org; Sun, 04 Aug 2024 13:12:03 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id 0A1A0240027
 for <72141 <at> debbugs.gnu.org>; Sun,  4 Aug 2024 19:11:34 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1722791495; bh=eTae1Yo9/IHJogrPJSRHuA0C1AEAeITx1t3P08bRpzc=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=KGXAaA0uvWxUipIEu45u6MXl+9kdWWUCt9aZpmtjlvkRC56gekbh93ebBOJKuNxJh
 UfsUzQpk+zOksEm9QlgtWI3QQtAdDj0fBuNSfL7jx1lLzFQDVmU0vItkXHBJm9l5+3
 RkQoEu3ZRr1hkSorXazt+tp7EKTpPIMK3nBSAx3Rayjg7UFm7FPCpWrL3cjCCS6y0Y
 z2FyH6co8edkjY/0csonBHEWfuLj/uYHnVnGo9zkggi+p8cL84JNenWDB0lbCs0aNF
 Vf3t21iDWTZZd57cpPzNgZQom5tt24ERuN7osx6vFYkzruGpmy0gSAAs+zVEKQtvkj
 KOAIqkF7QY9qw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WcR1Z6MhTz9rxB;
 Sun,  4 Aug 2024 19:11:30 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <8734nkz67g.fsf@HIDDEN> (Philip Kaludercic's message of "Sun, 
 04 Aug 2024 14:57:23 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN> <8734nkz67g.fsf@HIDDEN>
Date: Sun, 04 Aug 2024 17:15:04 +0000
Message-ID: <87ikwgjjl3.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable


Hello Philip,

Philip Kaludercic <philipk@HIDDEN> writes:

> Gladly, then I'd like to try it out it and perhaps write a ERT test.

Patch attached, please review and test it before merging ;-)

Thanks.

=2D-=20
Thierry

--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment;
 filename=0001-Fix-bug-72141-package-upgrade-should-not-include-dis.patch
Content-Transfer-Encoding: quoted-printable

From=20292e251a383c1fb53cc377cd32f71705e6742f85 Mon Sep 17 00:00:00 2001
From: Thierry Volpiatto <thievol@HIDDEN>
Date: Sat, 3 Aug 2024 06:07:28 +0200
Subject: [PATCH] Fix bug#72141, package-upgrade should not include disabled
 packages

* lisp/emacs-lisp/package.el (package--upgradeable-packages):
Rewrite with a new optional arg to filter out disabled packages from
output.
(package-upgrade, package-upgrade-all): Use it and filter out built-in
packages from completion according package-install-upgrade-built-in
value.
=2D--
 lisp/emacs-lisp/package.el | 60 ++++++++++++++++++++++----------------
 1 file changed, 35 insertions(+), 25 deletions(-)

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index 7cae8d68bc0..83996c9d6de 100644
=2D-- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -2259,11 +2259,15 @@ had been enabled."
   "Upgrade package NAME if a newer version exists."
   (interactive
    (list (completing-read
=2D          "Upgrade package: " (package--upgradeable-packages t) nil t)))
+          "Upgrade package: " (package--upgradeable-packages
+                               package-install-upgrade-built-in
+                               'ignore-disabled)
+          nil t)))
   (let* ((package (if (symbolp name)
                       name
                     (intern name)))
          (pkg-desc (cadr (assq package package-alist)))
+         ;; Keep this binding for non-interactive use.
          (package-install-upgrade-built-in (not pkg-desc)))
     ;; `pkg-desc' will be nil when the package is an "active built-in".
     (if (and pkg-desc (package-vc-p pkg-desc))
@@ -2275,32 +2279,37 @@ had been enabled."
                        ;; before.  Mark it as installed explicitly.
                        (and pkg-desc 'dont-select)))))
=20
=2D(defun package--upgradeable-packages (&optional include-builtins)
+(defun package--upgradeable-packages (&optional
+                                        include-builtins ignore-disabled)
   ;; Initialize the package system to get the list of package
   ;; symbols for completion.
   (package--archives-initialize)
=2D  (mapcar
=2D   #'car
=2D   (seq-filter
=2D    (lambda (elt)
=2D      (or (let ((available
=2D                 (assq (car elt) package-archive-contents)))
=2D            (and available
=2D                 (or (and
=2D                      include-builtins
=2D                      (not (package-desc-version (cadr elt))))
=2D                     (version-list-<
=2D                      (package-desc-version (cadr elt))
=2D                      (package-desc-version (cadr available))))))
=2D          (package-vc-p (cadr elt))))
=2D    (if include-builtins
=2D        (append package-alist
=2D                (mapcan
=2D                 (lambda (elt)
=2D                   (when (not (assq (car elt) package-alist))
=2D                     (list (list (car elt) (package--from-builtin elt)))=
))
=2D                 package--builtins))
=2D      package-alist))))
+  (let ((pkgs (if include-builtins
+                  (append package-alist
+                          (append package-alist
+                                  (mapcan
+                                   (lambda (elt)
+                                     (when (not (assq (car elt) package-al=
ist))
+                                       (list
+                                        (list
+                                         (car elt)
+                                         (package--from-builtin elt)))))
+                                   package--builtins)))
+                package-alist)))
+    (cl-loop for (sym desc) in pkgs
+             for available =3D
+             (if-let ((av (assq sym package-archive-contents)))
+                 (if ignore-disabled
+                     (and (not (package-disabled-p sym cversion)) av) av))
+             for cversion =3D (and available (package-desc-version desc))
+             when (or (and available
+                           (or (and include-builtins (not cversion))
+                               (and cversion
+                                    (version-list-<
+                                     cversion
+                                     (package-desc-version (cadr available=
))))))
+                      (package-vc-p desc))
+             collect sym)))
=20
 ;;;###autoload
 (defun package-upgrade-all (&optional query)
@@ -2315,7 +2324,8 @@ from ELPA by either using `\\[package-upgrade]' or
 `\\<package-menu-mode-map>\\[package-menu-mark-install]' after `\\[list-pa=
ckages]'."
   (interactive (list (not noninteractive)))
   (package-refresh-contents)
=2D  (let ((upgradeable (package--upgradeable-packages)))
+  (let ((upgradeable (package--upgradeable-packages
+                      package-install-upgrade-built-in 'ignore-disabled)))
     (if (not upgradeable)
         (message "No packages to upgrade")
       (when (and query
=2D-=20
2.34.1


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAmavtxgTHHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk8MoC/0T9AyUFatUVhOL2hD9L8m4ZAQrVMRL
h3Rgl/iya7/nHxl11Ie0b/NbiwLRodfQF5Sy2nQZnGycGoa94gpPRL9pojuxVB32
YvRT/esXwIGPN5tDo+e6ivMT2xJsM0KfFqGYR+1oitqRtRERHpH/laRIPke6plk1
6pMIUpI1gkB9kr62isZcpIGVwaFFZadvSQmXv8VT5xSRIB/G1mitUJeKmslxMk5a
cRAPRpQc7K+3IOw2Y472IADJSxfCymH4mHexQQ3b7kt58qXhkgH/G2hP7IOv0Ggj
mhSwltxqPUFKeSDY1d5z+lI69CkMLX3N9/rv2B+IrX1XGnQvTxSnEC3vR3m61iMZ
buKbxlQ7nf6+70erDpkGT+wZJgyGKrWSbAD0RmH7WUF0O/P3RRovwyP+z6Z6t8He
VTtmiipAme5PV+rN79e6/zG7jn7tPyKqPNAyPZKM2h0I877sVAX8Ahm62AhMwYBz
VjLba3kZRRe5js0LKg4mkKbqjZxjdqn2OoA=
=aoar
-----END PGP SIGNATURE-----
--==-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 10 Aug 2024 17:14:01 +0000
Resent-Message-ID: <handler.72141.B72141.172331003617634 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>
Cc: Philip Kaludercic <philipk@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172331003617634
          (code B ref 72141); Sat, 10 Aug 2024 17:14:01 +0000
Received: (at 72141) by debbugs.gnu.org; 10 Aug 2024 17:13:56 +0000
Received: from localhost ([127.0.0.1]:40367 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1scpf9-0004aM-Og
	for submit <at> debbugs.gnu.org; Sat, 10 Aug 2024 13:13:56 -0400
Received: from mout02.posteo.de ([185.67.36.66]:42517)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1scpf6-0004a7-LR
 for 72141 <at> debbugs.gnu.org; Sat, 10 Aug 2024 13:13:54 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 0E47B240104
 for <72141 <at> debbugs.gnu.org>; Sat, 10 Aug 2024 19:13:16 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1723309997; bh=D5f6ezIcS2cXvN9Y0+ook/5x5uov/+4q/wYaUtWVz3E=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=XjXeFqQDoGb4Eqb5DZy8Zw0pU3g0895ZqtR3SK8sWB1UJfze0JqYFSxivrFHIChA5
 CMYRb5SoOmJiYNGCKMHRNhKggH06v1n6UZ4sa9ZnSkoB57EASOt66NMB5i1BnYkQUT
 yWlO8po8dMdkX9fQQ8CZoH2U8/UwMWIJRb0YoMqQwPujNZh/9YH6CibJJj+J9wjVnn
 h1YyLgAZG4XI3XKDUz2AS3b89enmKKAEPnR3ZH6rceS5N2Y+wZsrv6LzyOyf8LWNRc
 QFN433sbT66eyiMGQ5w8DWBMTEE/CUppLRrtgkGRnD527bC5iwL6K1F/vkWJZVUJFw
 uBzRuo/8lG/Qw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4Wh6mq0NDtz6tlh;
 Sat, 10 Aug 2024 19:13:14 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <87ikwgjjl3.fsf@HIDDEN> (Thierry Volpiatto's message of "Sun, 
 04 Aug 2024 17:15:04 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN> <8734nkz67g.fsf@HIDDEN>
 <87ikwgjjl3.fsf@HIDDEN>
Date: Sat, 10 Aug 2024 17:16:54 +0000
Message-ID: <87zfpkqovt.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Thierry Volpiatto <thievol@HIDDEN> writes:

> Hello Philip,
>
> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> Gladly, then I'd like to try it out it and perhaps write a ERT test.
>
> Patch attached, please review and test it before merging ;-)
>
> Thanks.

Also, I recently had to read package.el code and I found many loops are
too complex and/or too difficult to read, here are some:

=2D-8<---------------cut here---------------start------------->8---
(equal
 ;; old
 (mapcar #'symbol-name (mapcar #'car package-alist))
 ;; new
 (mapcar (lambda (pkg) (symbol-name (car pkg))) package-alist))

(equal
 ;; old
 (mapcar
  (lambda (p) (cons (package-desc-full-name p) p))
  (delq nil
        (mapcar (lambda (p) (unless (package-built-in-p p) p))
                (apply #'append (mapcar #'cdr (package--alist))))))
 ;; new
 (cl-loop for (p desc) in package-alist
          unless (package-built-in-p p)
          collect (cons (package-desc-full-name desc) desc)))

;; Change w3m to an installed package in your Emacs.
(let ((alist (package-desc-extras (cadr (assq 'w3m package-alist)))))
  (equal
   ;; old
   (mapcar #'macroexp-quote
           (apply #'nconc
                  (mapcar (lambda (pair) (list (car pair) (cdr pair))) alis=
t)))
   ;; new
   (cl-loop for lst in alist
            nconc `(,(car lst) ,(macroexp-quote (cdr lst))))))

(equal
 ;; old
 (mapcar #'file-truename
         (cl-remove-if-not #'stringp
                           (mapcar #'car load-history)))
 ;; new
 (cl-loop for (name _rest) in load-history
          when (stringp name)
          collect (file-truename name)))
=2D-8<---------------cut here---------------end--------------->8---

I have a patch for this, let me know if interested, or perhaps I should
open a new bug report ?

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAma3oIYTHHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvky1qDAC5EkeYYfaJPJe0HVulUBedVSMst645
JHzGRaZ+svS0GmQ143Pk7V6PpE1m8IhtpysFXhdVSlWc0efPKDzWKctcBd2b8Hq/
dqnYcfUfWv0uUUJH7XDYpF94hMxzZLuGzsDFpv1PT2jN1aemIV7hCdskGLCHPlcB
nAFHnCoNnTt4eqbyNVJoU4nX91mbRMBuiTy1eldl3p+1Y4smT2Y3jEbuV4P5zvya
T+phwDVUB3lLQsxZdeMSHL5FNJ62iko0FdlkbTqCmlgloqfxYdp+jXwTOG+lYX4W
3foRG7OhMSuBKzIavLtrZwwCNH5CzQdgS8SY3guxYL8QC581GSjbEHwaYkttoaat
bTfH6AEvqCRtJOtYShPbTNjTeXk2JfrtsSO7HtAi9BVnsD4l4wrGypWIFt9hF7KU
O5Onzv8twS16/C/8B/2AiU+4nlCaX4dTII0xoNBhoOKl2ouw3VL1WPi1oj1yeZEc
2f9vNlLAjAcBmLBgJrtTHKwP2T9H3Wlq/P8=
=2C1S
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 12 Aug 2024 16:38:02 +0000
Resent-Message-ID: <handler.72141.B72141.172348065412072 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Thierry Volpiatto <thievol@HIDDEN>
Cc: Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172348065412072
          (code B ref 72141); Mon, 12 Aug 2024 16:38:02 +0000
Received: (at 72141) by debbugs.gnu.org; 12 Aug 2024 16:37:34 +0000
Received: from localhost ([127.0.0.1]:43690 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sdY34-00038d-2K
	for submit <at> debbugs.gnu.org; Mon, 12 Aug 2024 12:37:34 -0400
Received: from mout02.posteo.de ([185.67.36.66]:58423)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1sdY2y-00038H-So
 for 72141 <at> debbugs.gnu.org; Mon, 12 Aug 2024 12:37:32 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id CE46024010A
 for <72141 <at> debbugs.gnu.org>; Mon, 12 Aug 2024 18:36:50 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1723480610; bh=d+MN9hsyYo8zpm7gLCci84R6Rkl4NLEHk2xmCujV99E=;
 h=From:To:Cc:Subject:Autocrypt:OpenPGP:Date:Message-ID:MIME-Version:
 Content-Type:From;
 b=Ttb1egAgMxqqTV75cl7acEJJfY9yOUptowg88vwiuF6YZvq+yuYJdIHsnZmlTYdDc
 2ONyDQpYpae5vvtDHeN30Pb3qnyACJLO8HxzaWWb79cW03CdqVkLBix/e3uQsSv1Gl
 ADy+OwFZWs8+Jt7GymWgDjqyPHDdNSYqIY+hbUt/Uf8nwc1n8VwKHqwBDbF4JYB87I
 vZVybb+1Z3VqNWsgyo3qu2ztyKSwlLVbwKC/Fv5gMJReHNif8DNL0T3KA4ETiAc7wV
 D+Bv3pnfNx/kXfYqjQw1xJgz9NetEh5uUwGjabX5atkEq9JKN7NxhsyBqLx8Wzl7zm
 0LVf/YbiV2Kcw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WjKsm0VZ0z9rxD;
 Mon, 12 Aug 2024 18:36:43 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <87ikwgjjl3.fsf@HIDDEN> (Thierry Volpiatto's message of "Sun, 
 04 Aug 2024 17:15:04 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN> <8734nkz67g.fsf@HIDDEN>
 <87ikwgjjl3.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; keydata=
 mDMEZBBQQhYJKwYBBAHaRw8BAQdAHJuofBrfqFh12uQu0Yi7mrl525F28eTmwUDflFNmdui0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiWBBMWCAA+FiEEDg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwMFCQHhM4AFCwkI
 BwIGFQoJCAsCBBYCAwECHgECF4AACgkQ8xYDWXahwulikAEA77hloUiSrXgFkUVJhlKBpLCHUjA0
 mWZ9j9w5d08+jVwBAK6c4iGP7j+/PhbkxaEKa4V3MzIl7zJkcNNjHCXmvFcEuDgEZBBQQhIKKwYB
 BAGXVQEFAQEHQI5NLiLRjZy3OfSt1dhCmFyn+fN/QKELUYQetiaoe+MMAwEIB4h+BBgWCAAmFiEE
 Dg7HY17ghYlni8XN8xYDWXahwukFAmQQUEICGwwFCQHhM4AACgkQ8xYDWXahwukm+wEA8cml4JpK
 NeAu65rg+auKrPOP6TP/4YWRCTIvuYDm0joBALw98AMz7/qMHvSCeU/hw9PL6u6R2EScxtpKnWof
 z4oM
OpenPGP: id=philipk@HIDDEN;
 url="https://keys.openpgp.org/vks/v1/by-email/philipk@HIDDEN";
 preference=signencrypt
Date: Mon, 12 Aug 2024 16:36:43 +0000
Message-ID: <877ccl8zqc.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thierry Volpiatto <thievol@HIDDEN> writes:

> Hello Philip,
>
> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> Gladly, then I'd like to try it out it and perhaps write a ERT test.
>
> Patch attached, please review and test it before merging ;-)

Sorry for the delay.

> Thanks.
>
> -- 
> Thierry
>
> From 292e251a383c1fb53cc377cd32f71705e6742f85 Mon Sep 17 00:00:00 2001
> From: Thierry Volpiatto <thievol@HIDDEN>
> Date: Sat, 3 Aug 2024 06:07:28 +0200
> Subject: [PATCH] Fix bug#72141, package-upgrade should not include disabled
>  packages
>
> * lisp/emacs-lisp/package.el (package--upgradeable-packages):
> Rewrite with a new optional arg to filter out disabled packages from
> output.
> (package-upgrade, package-upgrade-all): Use it and filter out built-in
> packages from completion according package-install-upgrade-built-in
> value.
> ---
>  lisp/emacs-lisp/package.el | 60 ++++++++++++++++++++++----------------
>  1 file changed, 35 insertions(+), 25 deletions(-)
>
> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
> index 7cae8d68bc0..83996c9d6de 100644
> --- a/lisp/emacs-lisp/package.el
> +++ b/lisp/emacs-lisp/package.el
> @@ -2259,11 +2259,15 @@ had been enabled."
>    "Upgrade package NAME if a newer version exists."
>    (interactive
>     (list (completing-read
> -          "Upgrade package: " (package--upgradeable-packages t) nil t)))
> +          "Upgrade package: " (package--upgradeable-packages
> +                               package-install-upgrade-built-in
> +                               'ignore-disabled)
> +          nil t)))
>    (let* ((package (if (symbolp name)
>                        name
>                      (intern name)))
>           (pkg-desc (cadr (assq package package-alist)))
> +         ;; Keep this binding for non-interactive use.
>           (package-install-upgrade-built-in (not pkg-desc)))
>      ;; `pkg-desc' will be nil when the package is an "active built-in".
>      (if (and pkg-desc (package-vc-p pkg-desc))
> @@ -2275,32 +2279,37 @@ had been enabled."
>                         ;; before.  Mark it as installed explicitly.
>                         (and pkg-desc 'dont-select)))))
>  
> -(defun package--upgradeable-packages (&optional include-builtins)
> +(defun package--upgradeable-packages (&optional
> +                                        include-builtins ignore-disabled)
>    ;; Initialize the package system to get the list of package
>    ;; symbols for completion.
>    (package--archives-initialize)
> -  (mapcar
> -   #'car
> -   (seq-filter
> -    (lambda (elt)
> -      (or (let ((available
> -                 (assq (car elt) package-archive-contents)))
> -            (and available
> -                 (or (and
> -                      include-builtins
> -                      (not (package-desc-version (cadr elt))))
> -                     (version-list-<
> -                      (package-desc-version (cadr elt))
> -                      (package-desc-version (cadr available))))))
> -          (package-vc-p (cadr elt))))
> -    (if include-builtins
> -        (append package-alist
> -                (mapcan
> -                 (lambda (elt)
> -                   (when (not (assq (car elt) package-alist))
> -                     (list (list (car elt) (package--from-builtin elt)))))
> -                 package--builtins))
> -      package-alist))))
> +  (let ((pkgs (if include-builtins
> +                  (append package-alist
> +                          (append package-alist
> +                                  (mapcan
> +                                   (lambda (elt)
> +                                     (when (not (assq (car elt) package-alist))
> +                                       (list
> +                                        (list
> +                                         (car elt)
> +                                         (package--from-builtin elt)))))
> +                                   package--builtins)))
> +                package-alist)))
> +    (cl-loop for (sym desc) in pkgs
> +             for available =
> +             (if-let ((av (assq sym package-archive-contents)))
> +                 (if ignore-disabled
> +                     (and (not (package-disabled-p sym cversion)) av) av))
                                                          ^
This loop really confused me.  Specifically               here
If I am not mistaken, cversion might be set by the last iteration, no?
In that case, we are passing some version string unrelated to sym?

I am leaning towards keeping the existing loop, i.e. not rewriting
anything while fixing a bug.  It is probably easier for me to do that.
Do you have any comments on tricks or traps that I should keep in mind?

> +             for cversion = (and available (package-desc-version desc))
> +             when (or (and available
> +                           (or (and include-builtins (not cversion))
> +                               (and cversion
> +                                    (version-list-<
> +                                     cversion
> +                                     (package-desc-version (cadr available))))))
> +                      (package-vc-p desc))
> +             collect sym)))
>  
>  ;;;###autoload
>  (defun package-upgrade-all (&optional query)
> @@ -2315,7 +2324,8 @@ from ELPA by either using `\\[package-upgrade]' or
>  `\\<package-menu-mode-map>\\[package-menu-mark-install]' after `\\[list-packages]'."
>    (interactive (list (not noninteractive)))
>    (package-refresh-contents)
> -  (let ((upgradeable (package--upgradeable-packages)))
> +  (let ((upgradeable (package--upgradeable-packages
> +                      package-install-upgrade-built-in 'ignore-disabled)))
>      (if (not upgradeable)
>          (message "No packages to upgrade")
>        (when (and query

Thierry Volpiatto <thievol@HIDDEN> writes:

> Thierry Volpiatto <thievol@HIDDEN> writes:
>
>> Hello Philip,
>>
>> Philip Kaludercic <philipk@HIDDEN> writes:
>>
>>> Gladly, then I'd like to try it out it and perhaps write a ERT test.
>>
>> Patch attached, please review and test it before merging ;-)
>>
>> Thanks.
>
> Also, I recently had to read package.el code and I found many loops are
> too complex and/or too difficult to read, here are some:
>

[...]

>
> I have a patch for this, let me know if interested, or perhaps I should
> open a new bug report ?

I have some spare time now, and if I also find some spare energy, I plan
to clean up a number of things in package.el, mainly removing duplicate
logic and making the code more flexible.  I'll start work on a separate
branch, and that's why I am not too enthusiastic about these kinds of
changes on master (for now).

-- 
	Philip Kaludercic on peregrine




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 12 Aug 2024 17:34:02 +0000
Resent-Message-ID: <handler.72141.B72141.172348400619617 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: Thierry Volpiatto <thievol@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172348400619617
          (code B ref 72141); Mon, 12 Aug 2024 17:34:02 +0000
Received: (at 72141) by debbugs.gnu.org; 12 Aug 2024 17:33:26 +0000
Received: from localhost ([127.0.0.1]:43767 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sdYv7-00056J-Ng
	for submit <at> debbugs.gnu.org; Mon, 12 Aug 2024 13:33:26 -0400
Received: from mout02.posteo.de ([185.67.36.66]:45997)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sdYv4-000562-Ob
 for 72141 <at> debbugs.gnu.org; Mon, 12 Aug 2024 13:33:23 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 30484240101
 for <72141 <at> debbugs.gnu.org>; Mon, 12 Aug 2024 19:32:43 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1723483964; bh=NHyrtvC4Z/biX9dDMXMpviB8nz2njpujS7lnk/QRcAM=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=TvSooBOlz7bQHR/F7HnhYPKhjVUPu0zt0mQ3zcOAdKMv8UilTc86h/mOOu8KOZjQu
 ykbEwsFhNmruQw5sk74E+shWh3QC1AugLa6W/LDxxJvmWUTEVesIc/vxhlERwDeDeQ
 tBxzWNqIBKvv5SZcKjXXPxbjYGHXkkETNhHRJ/h0AHlJWiPVy/Mir9z+Qbnj9rMvKu
 7QHzjZ4ZqY991HA7vitjE6kDBR7fmRoIChuYaAb7nzJanVQjw9vkxJaDQnjnBX8UA/
 wRE7vwf3TZqmjKStEG2tzFArOwIWglThk5YI0cLF9U6CaesR49fD881USfSjsPUf6Z
 JNFuIUQF0jANg==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WjM6K2BYhz9rxB;
 Mon, 12 Aug 2024 19:32:41 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <877ccl8zqc.fsf@HIDDEN> (Philip Kaludercic's message of "Mon, 
 12 Aug 2024 16:36:43 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN> <8734nkz67g.fsf@HIDDEN>
 <87ikwgjjl3.fsf@HIDDEN> <877ccl8zqc.fsf@HIDDEN>
Date: Mon, 12 Aug 2024 17:36:21 +0000
Message-ID: <87jzgl3ap6.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Philip Kaludercic <philipk@HIDDEN> writes:

> Thierry Volpiatto <thievol@HIDDEN> writes:
>
>> Hello Philip,
>>
>> Philip Kaludercic <philipk@HIDDEN> writes:
>>
>>> Gladly, then I'd like to try it out it and perhaps write a ERT test.
>>
>> Patch attached, please review and test it before merging ;-)
>
> Sorry for the delay.
>
>> Thanks.
>>
>> --=20
>> Thierry
>>
>> From 292e251a383c1fb53cc377cd32f71705e6742f85 Mon Sep 17 00:00:00 2001
>> From: Thierry Volpiatto <thievol@HIDDEN>
>> Date: Sat, 3 Aug 2024 06:07:28 +0200
>> Subject: [PATCH] Fix bug#72141, package-upgrade should not include disab=
led
>>  packages
>>
>> * lisp/emacs-lisp/package.el (package--upgradeable-packages):
>> Rewrite with a new optional arg to filter out disabled packages from
>> output.
>> (package-upgrade, package-upgrade-all): Use it and filter out built-in
>> packages from completion according package-install-upgrade-built-in
>> value.
>> ---
>>  lisp/emacs-lisp/package.el | 60 ++++++++++++++++++++++----------------
>>  1 file changed, 35 insertions(+), 25 deletions(-)
>>
>> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
>> index 7cae8d68bc0..83996c9d6de 100644
>> --- a/lisp/emacs-lisp/package.el
>> +++ b/lisp/emacs-lisp/package.el
>> @@ -2259,11 +2259,15 @@ had been enabled."
>>    "Upgrade package NAME if a newer version exists."
>>    (interactive
>>     (list (completing-read
>> -          "Upgrade package: " (package--upgradeable-packages t) nil t)))
>> +          "Upgrade package: " (package--upgradeable-packages
>> +                               package-install-upgrade-built-in
>> +                               'ignore-disabled)
>> +          nil t)))
>>    (let* ((package (if (symbolp name)
>>                        name
>>                      (intern name)))
>>           (pkg-desc (cadr (assq package package-alist)))
>> +         ;; Keep this binding for non-interactive use.
>>           (package-install-upgrade-built-in (not pkg-desc)))
>>      ;; `pkg-desc' will be nil when the package is an "active built-in".
>>      (if (and pkg-desc (package-vc-p pkg-desc))
>> @@ -2275,32 +2279,37 @@ had been enabled."
>>                         ;; before.  Mark it as installed explicitly.
>>                         (and pkg-desc 'dont-select)))))
>>=20=20
>> -(defun package--upgradeable-packages (&optional include-builtins)
>> +(defun package--upgradeable-packages (&optional
>> +                                        include-builtins ignore-disable=
d)
>>    ;; Initialize the package system to get the list of package
>>    ;; symbols for completion.
>>    (package--archives-initialize)
>> -  (mapcar
>> -   #'car
>> -   (seq-filter
>> -    (lambda (elt)
>> -      (or (let ((available
>> -                 (assq (car elt) package-archive-contents)))
>> -            (and available
>> -                 (or (and
>> -                      include-builtins
>> -                      (not (package-desc-version (cadr elt))))
>> -                     (version-list-<
>> -                      (package-desc-version (cadr elt))
>> -                      (package-desc-version (cadr available))))))
>> -          (package-vc-p (cadr elt))))
>> -    (if include-builtins
>> -        (append package-alist
>> -                (mapcan
>> -                 (lambda (elt)
>> -                   (when (not (assq (car elt) package-alist))
>> -                     (list (list (car elt) (package--from-builtin elt))=
)))
>> -                 package--builtins))
>> -      package-alist))))
>> +  (let ((pkgs (if include-builtins
>> +                  (append package-alist
>> +                          (append package-alist
>> +                                  (mapcan
>> +                                   (lambda (elt)
>> +                                     (when (not (assq (car elt) package=
-alist))
>> +                                       (list
>> +                                        (list
>> +                                         (car elt)
>> +                                         (package--from-builtin elt)))))
>> +                                   package--builtins)))
>> +                package-alist)))
>> +    (cl-loop for (sym desc) in pkgs
>> +             for available =3D
>> +             (if-let ((av (assq sym package-archive-contents)))
>> +                 (if ignore-disabled
>> +                     (and (not (package-disabled-p sym cversion)) av) a=
v))
>                                                           ^
> This loop really confused me.  Specifically               here
> If I am not mistaken, cversion might be set by the last iteration, no?
> In that case, we are passing some version string unrelated to sym?

Yes, indeed, this is an error, thanks to catch it.

> I am leaning towards keeping the existing loop, i.e. not rewriting
> anything while fixing a bug.  It is probably easier for me to do that.

No problem, it is probably better to not introduce a new bug for now.

> Do you have any comments on tricks or traps that I should keep in
> mind?

Yes the other changes are about built-in packages that are shown in
completion, and refused later by package-install.

>>  (defun package-upgrade-all (&optional query)
>> @@ -2315,7 +2324,8 @@ from ELPA by either using `\\[package-upgrade]' or
>>  `\\<package-menu-mode-map>\\[package-menu-mark-install]' after `\\[list=
-packages]'."
>>    (interactive (list (not noninteractive)))
>>    (package-refresh-contents)
>> -  (let ((upgradeable (package--upgradeable-packages)))
>> +  (let ((upgradeable (package--upgradeable-packages
>> +                      package-install-upgrade-built-in

Here.

>> I have a patch for this, let me know if interested, or perhaps I should
>> open a new bug report ?
>
> I have some spare time now, and if I also find some spare energy, I plan
> to clean up a number of things in package.el, mainly removing duplicate
> logic and making the code more flexible.  I'll start work on a separate
> branch, and that's why I am not too enthusiastic about these kinds of
> changes on master (for now).

Great, no problem, as long as it is cleaned up that's good ;-)

Thanks.

=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAma6SBYTHHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvkwKIDACUJegcbx9bWL5eayhuP3VIB8rJxQoU
XV+wer+GUBQDMYUPeZ1ivtfxoCay7Fnxq5jWPq29zmoNgK5WuylIe5f5I4/PNT4O
4ciiEEPGEnfX2LW8rthOB5OZKg16L/9Vp5chVHPKvP0XOW+odFLebDh5VKQ1JiGf
qE6qqyfKlMIXiLRDVPGY88JU0CIlp0/4qeL/Q2pkpijeEcWlGXGhKvPqxsOozzs/
r6nLXtABlbNhVbNy59fyt7nR37YUdjurdc4Gf3HLhgB2g6mC/EQpGPlRKgQ9btvZ
x9LPgMKvzJ0ujrZQ/YGDr1/ly4zjJX7Vto73OfajAmoy+7U9OKrogJNke/SqP5xv
kTCcJrW5LfxsaI/qmqj4R1JQVfHQna2D/TP3PhGtaH9zQiMKgtMyHXpJjQwJkZ07
baQ0mbcpVajqvo5cgg8NOVVjxfmgT59ClObevH0U0uxn98hRDKtz1QcW75/QFSrE
tTuBJw5/T/Bcden+r+fYPYBQoNKd/d9XyKA=
=tKjr
-----END PGP SIGNATURE-----
--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#72141: 29.4; package-upgrade vs package-load-list
Resent-From: Thierry Volpiatto <thievol@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 12 Aug 2024 18:14:02 +0000
Resent-Message-ID: <handler.72141.B72141.172348641224734 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 72141
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: Thierry Volpiatto <thievol@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, 72141 <at> debbugs.gnu.org
Received: via spool by 72141-submit <at> debbugs.gnu.org id=B72141.172348641224734
          (code B ref 72141); Mon, 12 Aug 2024 18:14:02 +0000
Received: (at 72141) by debbugs.gnu.org; 12 Aug 2024 18:13:32 +0000
Received: from localhost ([127.0.0.1]:43818 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1sdZXw-0006Qr-26
	for submit <at> debbugs.gnu.org; Mon, 12 Aug 2024 14:13:32 -0400
Received: from mout02.posteo.de ([185.67.36.66]:51865)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thievol@HIDDEN>) id 1sdZXt-0006QQ-3g
 for 72141 <at> debbugs.gnu.org; Mon, 12 Aug 2024 14:13:30 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 8D787240104
 for <72141 <at> debbugs.gnu.org>; Mon, 12 Aug 2024 20:12:50 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1723486370; bh=lNT6nLj5zM2F+e+8zJnLuzlCKbqS+6ciyeozZGHNFPk=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 Autocrypt:OpenPGP:From;
 b=AY06QF5PMLB9Kz+OBYZeh16emmyt7g5yHa5IkT3dPKD/yP6zNteqcvQ/McsEBT7Vv
 e1p3M54a7qrN2wKXQlIHZOGSAifIgJFiTq4gGI/N6jdS3YLiBkLrVsrcNNP20fThAz
 Y4Ob77UY/EzdySBVaUHdxOossDZQ8AISPvjBp6gIoxuOgfzzUaAo6EtZ2cpgkJfCOB
 UcTSuHD5zvDBSP8rnreSFHCBr7TaZrZkZ2RwkKSphzIurT7Ze+j+Y2hWKkyWh7ZUzI
 5AVFBLlGXllWRK42aXbug5BkRchC0pSuYlKucx4OcVm5tM3fBjdqyyygobXoCnB6SU
 bDRx1ilONB0cw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4WjN0c2BJ4z6tmv;
 Mon, 12 Aug 2024 20:12:48 +0200 (CEST)
From: Thierry Volpiatto <thievol@HIDDEN>
In-Reply-To: <877ccl8zqc.fsf@HIDDEN> (Philip Kaludercic's message of "Mon, 
 12 Aug 2024 16:36:43 +0000")
References: <87ikx5xulu.fsf@HIDDEN> <865xsr2tn0.fsf@HIDDEN>
 <871q3drb4v.fsf@HIDDEN> <8634nt1z2k.fsf@HIDDEN>
 <87plqxbsh4.fsf@HIDDEN> <87o76c3fiq.fsf@HIDDEN>
 <8734nmguiq.fsf@HIDDEN> <8734nkz67g.fsf@HIDDEN>
 <87ikwgjjl3.fsf@HIDDEN> <877ccl8zqc.fsf@HIDDEN>
Date: Mon, 12 Aug 2024 18:16:29 +0000
Message-ID: <87plqdli82.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual;
 keydata=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
 TgUq5UmBc7YZ0JYWQgPTbQ==
OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Philip Kaludercic <philipk@HIDDEN> writes:

> This loop really confused me.  Specifically               here
> If I am not mistaken, cversion might be set by the last iteration, no?
> In that case, we are passing some version string unrelated to sym?

For the record:


[...]

    (cl-loop for (sym desc) in pkgs
             for pkg =3D (assq sym package-archive-contents)
             for cversion =3D (and pkg (package-desc-version desc))
             for available =3D (when pkg
                               (if ignore-disabled
                                   (and (not (package-disabled-p
                                              sym cversion))
                                        pkg)
                                 pkg))

[...]



=2D-=20
Thierry

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQHHBAEBCgAxFiEEI9twfRN7r3nig/xwDsVtFB0W75MFAma6UX4THHRoaWV2b2xA
cG9zdGVvLm5ldAAKCRAOxW0UHRbvk2BBDACLkIjZSY0TG2EGaPSWHkBp2Yj2fJST
Cc5aI7wnT5uSwYlfRJfcQxbgdgf7iy7OuIakpc6FcnSCCTZWuuxKHnG3vT3E54z8
Re8R2ww+ksrvWkg6lgLpDSXICYKIIl4E+P9ZR5xMYOu83z+D4mFsg2PhHYLOhsuD
hTgd65h/pbkK9kVDAz6WvFGV26PktPFzNaCmMDrwE5NAWKhTiYLni3xE+6NJ4OVd
VSfvG9hyy2Y08RGQ3PBM09YiEsnaAsceJczMoVFy+tkP40tPlwPR9X9xwOtl37KE
vLBJL2qk2tJNO325UhFfFdJJqFkq5355q77Gh+nTYbSeA1g9JoJ2vsHrDKybWQJ1
xLhmIvsLqkG00disUu+HEp2IDqGFWu2V4MKAitk1Yp4+t8+GduNyKq+P42/nzUe3
W5s61a/0f5hSYcFHUnkVwOavyKegffuQrtF/gviy6B35MZYsWst5YrMiH1V90ew8
6YV90ipamZJBsD27llc411xX8gsWDiQozek=
=ZB/N
-----END PGP SIGNATURE-----
--=-=-=--





Last modified: Sun, 12 Jan 2025 05:45:02 UTC

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