commit 5877bee20c58fda9111f8ef09eaefa0c4c2bbf92
Author: Fabio Fantoni <fantonifabio@tiscali.it>
Date: Tue Sep 29 20:38:45 2026 +0200
Move string formatting out of _() calls
Three messages were formatted before being passed to _(), so gettext
looked up the already formatted string and never found a translation.
"Unable to parse %s." is translated in 12 languages, but was always
logged in English. The same mistake was pointed out in the review of
#415.
Checked in a Debian 13 container with LANGUAGE=de and an Origins-Pattern
with an invalid placeholder: the log now says
"Unattended-Upgrade::Origins-Pattern kann nicht ausgewertet werden."
instead of the English message.
Assisted-by: Claude Code:claude-opus-5-5
commit c5001e74f8344f3f89d05fcb93c89cf062f78c6d
Author: Fabio Fantoni <fantonifabio@tiscali.it>
Date: Mon Sep 28 20:25:45 2026 +0200
Fix --dry-run deleting the list of kept-back packages
In dry-run mode find_kept_packages() returns an empty list on purpose
("The list of kept packages can't be calculated in dry-run mode."), but
main() still hands that result to update_kept_pkgs_file(), which deletes
var/lib/unattended-upgrades/kept-back when the list is empty. A manual
"unattended-upgrade --dry-run" therefore wipes the list written by the
last real run.
That file feeds the motd snippet installed as
/etc/update-motd.d/92-unattended-upgrades, so after a dry-run the "N
updates could not be installed automatically" notice disappears until
the next real run. Dry-run is the usual way to check a configuration, so
this is easy to hit on a system where some updates are waiting for a
manual upgrade.
Skip the update in dry-run mode, as the summary mail and the plugins'
postrun() already are a few lines below.
The new test in test/test_motd.py runs main() in dry-run mode on the
root.untrusted tree with an existing kept-back file; without this fix
the file is gone afterwards.
Checked in a Debian 13 chroot with unattended-upgrades 2.12 from the
archive and one blacklisted package pending: after a real run kept-back
lists that package, the shipped version deletes the file on --dry-run,
the patched one leaves it in place, and a following real run writes the
same list again.
Assisted-by: Claude Code:claude-opus-5-5
Automatic checks made by the Debian l10n team found some issues with the translations contained in this package. You should check the l10n status report for more information.
Issues can be things such as missing translations, problematic translated strings, outdated PO files, unknown languages, etc.