/usr/lib/update-notifier/package-data-downloader:KeyError:/usr/lib/update-notifier/package-data-downloader@351:process_download_requests:trigger_update_notifier:substitute:convert
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
update-notifier (Ubuntu) |
Fix Released
|
High
|
Sebastien Bacher | ||
Xenial |
Fix Released
|
High
|
Lucas Albuquerque Medeiros de Moura | ||
Bionic |
Fix Released
|
High
|
Lucas Albuquerque Medeiros de Moura | ||
Focal |
Fix Released
|
High
|
Lucas Albuquerque Medeiros de Moura | ||
Jammy |
Fix Released
|
High
|
Lucas Albuquerque Medeiros de Moura | ||
Kinetic |
Fix Released
|
High
|
Lucas Albuquerque Medeiros de Moura |
Bug Description
[Original Description]
The Ubuntu Error Tracker has been receiving reports about a problem regarding update-notifier. This problem was most recently seen with package version 3.192.60, the problem page at https:/
If you do not have access to the Ubuntu Error Tracker and are a software developer, you can request it at http://
[Impact]
If there is an error on the package-
[Test Case]
You can replicate this issue by running the following script:
-------
#!/bin/bash
set -e
series=$1
name=$series-dev
cleanup () {
lxc delete $name --force
}
on_err () {
echo -e "Test Failed"
cleanup
exit 1
}
trap on_err ERR
lxc launch ubuntu-
sleep 10
echo "######
echo "Installing latest version of update-notifier"
lxc exec $name -- apt-get update > /dev/null
lxc exec $name -- sudo apt-get install update-
lxc exec $name -- apt-cache policy update-
echo -e "######
echo "######
echo "Change locales to welsh"
lxc exec $name -- sh -c "DEBIAN_
lxc exec $name -- sudo update-locale LANG=cy_GB.UTF-8
lxc exec $name -- sudo reboot
sleep 5
lxc config set $name environment.
echo -e "######
echo "######
echo "Installing fonts package (verify stacktrace)"
lxc exec $name -- apt-get update > /dev/null
lxc exec $name -- apt-get -y --download-only install ttf-mscorefonts
lxc config device add $name eth0 none
pkg_name=$(lxc exec $name -- ls /var/cache/
lxc exec $name -- sh -c "cd /var/cache/
lxc exec $name -- sh -c "dpkg -i /var/cache/
lxc exec $name -- apt purge ttf-mscorefonts
echo -e "######
lxc config device remove $name eth0
lxc exec $name -- sudo reboot
sleep 5
echo "######
echo "Update update-notifier package to proposed version"
lxc exec $name -- sh -c "echo \"deb http://
lxc exec $name -- sudo apt-get update > /dev/null
lxc exec $name -- sudo apt-get install update-
lxc exec $name -- apt-cache policy update-
echo -e "######
echo "######
echo "Installing fonts package (verify no error)"
lxc config device add $name eth0 none
lxc exec $name -- sh -c "cd /var/cache/
lxc exec $name -- sh -c "dpkg -i /var/cache/
echo -e "######
echo "######
echo "Verify that file created by package-
if lxc exec $name -- grep -Fq "\$package" /var/lib/
echo "FAILURE: \$package variable found"
else
echo "SUCCESS: No \$package variable found"
fi
if lxc exec $name -- grep -Fq "ttf-mscorefont
echo "SUCCESS: ttf-mscorefonts
else
echo "FAILURE: ttf-mscorefonts
fi
echo -e "######
cleanup
-------
Once the new package is in proposed, we can re-use this script to verify that the traceback is no longer appearing.
[Discussion]
This error is being caused by an incorrectly translated variable in a template file. This template file is being used by the package-
package. If the user is using one of the affected locales (i.e. cy_GB.UTF-8) and the user installs a package that triggers it (i.e. ttf-mscorefonts
The fix for this is to simply not translate the variable name in the template file.
[Changelog]
* po/*.po: do not translate template variable needed for
package-
Related branches
- Sebastien Bacher (community): Approve
- git-ubuntu import: Pending requested
-
Diff: 171 lines (+19/-12)13 files modifieddebian/changelog (+7/-0)
po/ar.po (+1/-1)
po/cy.po (+1/-1)
po/fr.po (+1/-1)
po/hr.po (+1/-1)
po/ia.po (+1/-1)
po/kab.po (+1/-1)
po/ku.po (+1/-1)
po/mnw.po (+1/-1)
po/mr.po (+1/-1)
po/tr.po (+1/-1)
po/tt.po (+1/-1)
po/uk.po (+1/-1)
- Sebastien Bacher: Approve
- Andreas Hasenack: Needs Fixing
-
Diff: 19557 lines (+19271/-19)31 files modified.gitignore (+0/-7)
Makefile.in (+808/-0)
aclocal.m4 (+2290/-0)
compile (+347/-0)
configure (+9127/-0)
data/Makefile.in (+649/-0)
debian/changelog (+7/-0)
depcomp (+791/-0)
install-sh (+508/-0)
missing (+215/-0)
pixmaps/16x16/Makefile.in (+494/-0)
pixmaps/22x22/Makefile.in (+494/-0)
pixmaps/24x24/Makefile.in (+494/-0)
pixmaps/48x48/Makefile.in (+494/-0)
pixmaps/Makefile.in (+617/-0)
pixmaps/scalable/Makefile.in (+494/-0)
po/Makefile.in.in (+221/-0)
po/ar.po (+1/-1)
po/cy.po (+1/-1)
po/fr.po (+1/-1)
po/hr.po (+1/-1)
po/ia.po (+1/-1)
po/kab.po (+1/-1)
po/ku.po (+1/-1)
po/mnw.po (+1/-1)
po/mr.po (+1/-1)
po/tr.po (+1/-1)
po/tt.po (+1/-1)
po/uk.po (+1/-1)
src/Makefile.in (+715/-0)
ui/Makefile.in (+494/-0)
- Sebastien Bacher: Approve
-
Diff: 171 lines (+19/-12)13 files modifieddebian/changelog (+7/-0)
po/ar.po (+1/-1)
po/cy.po (+1/-1)
po/fr.po (+1/-1)
po/hr.po (+1/-1)
po/ia.po (+1/-1)
po/kab.po (+1/-1)
po/ku.po (+1/-1)
po/mnw.po (+1/-1)
po/mr.po (+1/-1)
po/tr.po (+1/-1)
po/tt.po (+1/-1)
po/uk.po (+1/-1)
- Sebastien Bacher: Approve
-
Diff: 171 lines (+19/-12)13 files modifieddebian/changelog (+7/-0)
po/ar.po (+1/-1)
po/cy.po (+1/-1)
po/fr.po (+1/-1)
po/hr.po (+1/-1)
po/ia.po (+1/-1)
po/kab.po (+1/-1)
po/ku.po (+1/-1)
po/mnw.po (+1/-1)
po/mr.po (+1/-1)
po/tr.po (+1/-1)
po/tt.po (+1/-1)
po/uk.po (+1/-1)
- Sebastien Bacher: Approve
-
Diff: 171 lines (+19/-12)13 files modifieddebian/changelog (+7/-0)
po/ar.po (+1/-1)
po/cy.po (+1/-1)
po/fr.po (+1/-1)
po/hr.po (+1/-1)
po/ia.po (+1/-1)
po/kab.po (+1/-1)
po/ku.po (+1/-1)
po/mnw.po (+1/-1)
po/mr.po (+1/-1)
po/tr.po (+1/-1)
po/tt.po (+1/-1)
po/uk.po (+1/-1)
description: | updated |
Changed in update-notifier (Ubuntu Xenial): | |
importance: | Undecided → High |
Changed in update-notifier (Ubuntu Bionic): | |
importance: | Undecided → High |
Changed in update-notifier (Ubuntu Focal): | |
importance: | Undecided → High |
Changed in update-notifier (Ubuntu Jammy): | |
importance: | Undecided → High |
Changed in update-notifier (Ubuntu Kinetic): | |
importance: | Undecided → High |
Changed in update-notifier (Ubuntu Xenial): | |
status: | Confirmed → Fix Committed |
Changed in update-notifier (Ubuntu Bionic): | |
status: | Confirmed → Fix Committed |
Changed in update-notifier (Ubuntu Focal): | |
status: | Confirmed → Fix Committed |
Changed in update-notifier (Ubuntu Jammy): | |
status: | Confirmed → Fix Committed |
Changed in update-notifier (Ubuntu Kinetic): | |
status: | Confirmed → Fix Committed |
Changed in update-notifier (Ubuntu Xenial): | |
assignee: | nobody → Lucas Albuquerque Medeiros de Moura (lamoura) |
Changed in update-notifier (Ubuntu Bionic): | |
assignee: | nobody → Lucas Albuquerque Medeiros de Moura (lamoura) |
Changed in update-notifier (Ubuntu Focal): | |
assignee: | nobody → Lucas Albuquerque Medeiros de Moura (lamoura) |
Changed in update-notifier (Ubuntu Jammy): | |
assignee: | nobody → Lucas Albuquerque Medeiros de Moura (lamoura) |
Changed in update-notifier (Ubuntu Kinetic): | |
assignee: | nobody → Lucas Albuquerque Medeiros de Moura (lamoura) |
Changed in update-notifier (Ubuntu): | |
status: | Confirmed → Fix Committed |
importance: | Undecided → High |
assignee: | nobody → Sebastien Bacher (seb128) |
description: | updated |
description: | updated |
The traceback seems to suggests that a string that shouldn't have been translated, was:
Traceback (most recent call last): update- notifier/ package- data-downloader ", line 351, in <module> download_ requests( ) update- notifier/ package- data-downloader ", line 345, in process_ download_ requests update_ notifier( our_failures) update- notifier/ package- data-downloader ", line 156, in trigger_ update_ notifier Template( input). substitute( python3. 10/string. py", line 121, in substitute sub(convert, self.template) python3. 10/string. py", line 114, in convert
File "/usr/lib/
process_
File "/usr/lib/
trigger_
File "/usr/lib/
string.
File "/usr/lib/
return self.pattern.
File "/usr/lib/
return str(mapping[named])
KeyError: 'pecynnau'