Unattended-upgrades does not print to stdout by default thus it can
operate properly in the environments triggering the bug, but
apt.systemd.daily executes u-u --help that may crash.

To avoid the crash apt could set LC_ALL=C.UTF8 when running unattended-
upgrades --help as proposed in the MR below:

https://salsa.debian.org/apt-team/apt/merge_requests/34

** Description changed:

+ [Test Case]
+ 
+ rbalint@yogi:~$ lxc launch ubuntu:18.04 bb-lp-1806076
+ Creating bb-lp-1806076
+ Starting bb-lp-1806076
+ rbalint@yogi:~$ lxc shell bb-lp-1806076 
+ mesg: ttyname failed: No such device
+ root@bb-lp-1806076:~# apt install -yqq language-pack-ru-base
+ The following package was automatically installed and is no longer required:
+   libfreetype6
+ Use 'apt autoremove' to remove it.
+ The following additional packages will be installed:
+   language-pack-ru
+ The following NEW packages will be installed:
+   language-pack-ru language-pack-ru-base
+ 0 upgraded, 2 newly installed, 0 to remove and 7 not upgraded.
+ Need to get 2310 kB of archives.
+ After this operation, 11.8 MB of additional disk space will be used.
+ Selecting previously unselected package language-pack-ru-base.
+ (Reading database ... 28536 files and directories currently installed.)
+ Preparing to unpack .../language-pack-ru-base_1%3a18.04+20180712_all.deb ...
+ Unpacking language-pack-ru-base (1:18.04+20180712) ...
+ Selecting previously unselected package language-pack-ru.
+ Preparing to unpack .../language-pack-ru_1%3a18.04+20180712_all.deb ...
+ Unpacking language-pack-ru (1:18.04+20180712) ...
+ Setting up language-pack-ru (1:18.04+20180712) ...
+ Setting up language-pack-ru-base (1:18.04+20180712) ...
+ Generating locales (this might take a while)...
+   ru_RU.UTF-8... done
+   ru_UA.UTF-8... done
+ Generation complete.
+ root@bb-lp-1806076:~# env LANG=ru_RU unattended-upgrade --help | cat
+ Traceback (most recent call last):
+   File "/usr/bin/unattended-upgrade", line 1983, in <module>
+     (options, args) = parser.parse_args()  # type: ignore
+   File "/usr/lib/python3.6/optparse.py", line 1387, in parse_args
+     stop = self._process_args(largs, rargs, values)
+   File "/usr/lib/python3.6/optparse.py", line 1427, in _process_args
+     self._process_long_opt(rargs, values)
+   File "/usr/lib/python3.6/optparse.py", line 1501, in _process_long_opt
+     option.process(opt, value, values, self)
+   File "/usr/lib/python3.6/optparse.py", line 785, in process
+     self.action, self.dest, opt, value, values, parser)
+   File "/usr/lib/python3.6/optparse.py", line 807, in take_action
+     parser.print_help()
+   File "/usr/lib/python3.6/optparse.py", line 1647, in print_help
+     file.write(self.format_help())
+ UnicodeEncodeError: 'ascii' codec can't encode characters in position 
126-133: ordinal not in range(128)
+ 
+ root@bb-lp-1806076:~# env LANG=ru_RU.UTF-8 unattended-upgrade --help | cat
+ Usage: unattended-upgrade [options]
+ 
+ Options:
+   -h, --help            show this help message and exit
+   -d, --debug           print debug messages
+   --apt-debug           make apt/libapt print verbose debug messages
+   -v, --verbose         print info messages
+   --dry-run             Simulation, download but do not install
+   --download-only       Only download, do not even try to install.
+   --minimal-upgrade-steps
+                         Upgrade in minimal steps (and allow interrupting with
+                         SIGTERM
+ 
+ 
+ [Original Bug Text]
+ 
  The Ubuntu Error Tracker has been receiving reports about a problem regarding 
unattended-upgrades.  This problem was most recently seen with package version 
1.1ubuntu1.18.04.6, the problem page at 
https://errors.ubuntu.com/problem/b3e3265e302351558260f54ae37c7b4c193dfc95 
contains more details, including versions of packages affected, stacktrace or 
traceback, and individual crash reports.
  If you do not have access to the Ubuntu Error Tracker and are a software 
developer, you can request it at http://forms.canonical.com/reports/.

** Also affects: apt (Ubuntu)
   Importance: Undecided
       Status: New

** Tags added: patch-forwarded-debian

** Tags added: patch

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1806076

Title:
  unattended-upgrade --help raises UnicodeEncodeError when stdout
  encoding is ascii

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1806076/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to