From: Erik Fastermann <e.fastermann@proxmox.com>
To: pbs-devel@lists.proxmox.com, pdm-devel@lists.proxmox.com
Cc: Erik Fastermann <e.fastermann@proxmox.com>
Subject: [PATCH proxmox-backup 1/2] fix #7746: cli: manager: show installed instead of candidate version
Date: Mon, 27 Jul 2026 15:59:39 +0200 [thread overview]
Message-ID: <20260727135940.267321-2-e.fastermann@proxmox.com> (raw)
In-Reply-To: <20260727135940.267321-1-e.fastermann@proxmox.com>
The 'versions' command printed 'Version' from the API result, which
carries the version apt would upgrade to, not the one that is
installed. Whenever the apt cache knows a newer version, the command
therefore reported a version that is not installed at all, and the
output changed after a plain 'apt update'. This also affects the
'report' command, which runs 'versions --verbose'.
The installed version is available as 'OldVersion', which is what the
GUI reads as well. The name is unfortunate for a listing of installed
packages, but as far as I can tell every other consumer uses it
correctly. The only exceptions were this command and its equivalent in
Proxmox Datacenter Manager, which is fixed in a separate patch.
Use a renderer for the column, as 'OldVersion' is not set for packages
that are not installed, where the table would otherwise show an empty
cell instead of 'unknown', matching the previous behavior. As the
header is not shown with 'noborder' set to true, renaming the field has
no user-visible effect.
The naming is inherited from PVE, where the same record is used for
both the available updates and the installed package listing. Giving
the versions endpoint its own type would avoid the trap for future
callers, but that is a more complex API change and can be done in a
future commit.
Signed-off-by: Erik Fastermann <e.fastermann@proxmox.com>
---
src/bin/proxmox-backup-manager.rs | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/bin/proxmox-backup-manager.rs b/src/bin/proxmox-backup-manager.rs
index 86bfae44f..e42567d39 100644
--- a/src/bin/proxmox-backup-manager.rs
+++ b/src/bin/proxmox-backup-manager.rs
@@ -649,7 +649,11 @@ async fn get_versions(verbose: bool, param: Value) -> Result<Value, Error> {
.disable_sort()
.noborder(true) // just not helpful for version info which gets copy pasted often
.column(ColumnConfig::new("Package"))
- .column(ColumnConfig::new("Version"))
+ .column(
+ ColumnConfig::new("OldVersion")
+ .header("Old Version")
+ .renderer(|value, _record| Ok(value.as_str().unwrap_or("unknown").to_string())),
+ )
.column(ColumnConfig::new("ExtraInfo").header("Extra Info"));
let return_type = &crate::api2::node::apt::API_METHOD_GET_VERSIONS.returns;
--
2.47.3
next prev parent reply other threads:[~2026-07-27 14:00 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-27 13:59 [PATCH proxmox{-backup,-datacenter-manager} 0/2] fix #7746: cli: show installed instead of candidate version Erik Fastermann
2026-07-27 13:59 ` Erik Fastermann [this message]
2026-07-27 13:59 ` [PATCH proxmox-datacenter-manager 2/2] fix #7746: cli: admin: " Erik Fastermann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260727135940.267321-2-e.fastermann@proxmox.com \
--to=e.fastermann@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
--cc=pdm-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox