taking screenshots with mirscreencast fails if env locale does not exist
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Mir |
New
|
Undecided
|
Unassigned | |
| | autopkgtest (Ubuntu) |
Low
|
Martin Pitt | ||
| | mir (Ubuntu) |
Undecided
|
Unassigned | ||
Bug Description
From autopilot we see this when there is a failed test.
21:40:25.138 ERROR testcase:387 - Taking screenshot failed: Command '['mirscreencast', '-m', '/run/mir_socket', '-n', '1', '-f', '/tmp/ap-
I tried setting the LC_ALL env var to C, and it works.
| Leo Arias (elopio) wrote : | #1 |
| Martin Pitt (pitti) wrote : | #2 |
autopkgtest defaults to setting LANG=C.UTF-8, unless you use --leave-lang or --set-lang. What is the particular error message from mirscreencast, and why is it specific to the locale? That sounds like a bug in mirscreencast.
| Changed in autopkgtest (Ubuntu): | |
| status: | New → Incomplete |
| Martin Pitt (pitti) wrote : | #3 |
BTW, setting LC_ALL to "C" is a wontfix. If something doesn't work with UTF-8 it is just plain broken. In Ubuntu we have never supported any encoding other than UTF-8, and "C" is not an appropriate locale for any user/session.
| Leo Arias (elopio) wrote : | #4 |
Well, setting LC_ALL to UTF-8 works too. Is that a better option?
Here is the error without the env var:
phablet@
[1424364638.640752] Loader: Loading modules from: /usr/lib/
Failed to connect to server. Error was :locale:
It doesn't take the screenshot.
With the env var it also shows errors, but it takes the screenshot.
phablet@
[1424364644.571105] Loader: Loading modules from: /usr/lib/
[1424364644.574196] Loader: Loading module: /usr/lib/
[1424364644.576286] Loader: Loading module: /usr/lib/
[1424364644.577963] Loader: Loading module: /usr/lib/
[1424364644.631667] <ERROR> mircommon: Caught exception at Mir/EGL driver boundary (in setSwapInterval): /build/
Dynamic exception type: N5boost16except
std::exception:
phablet@
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=
LC_NUMERIC=eo.UTF-8
LC_TIME=eo.UTF-8
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=eo.UTF-8
LC_NAME=eo.UTF-8
LC_ADDRESS=eo.UTF-8
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATI
LC_ALL=
| Changed in autopkgtest (Ubuntu): | |
| status: | Incomplete → New |
| Martin Pitt (pitti) wrote : | #5 |
Ah, this is our old friend https:/
We can work around that in adt-run by pruning the locale settings more aggressively.
| Changed in autopkgtest (Ubuntu): | |
| status: | New → Triaged |
| Martin Pitt (pitti) wrote : | #6 |
Adding Mir task, mirscreencast shouldn't completely fail on an invalid locale.
| Changed in mir (Ubuntu): | |
| status: | New → Triaged |
| Changed in autopkgtest (Ubuntu): | |
| importance: | Undecided → Low |
| assignee: | nobody → Martin Pitt (pitti) |
| tags: | added: screencast |
| Changed in autopkgtest (Ubuntu): | |
| status: | Triaged → Fix Committed |
| Launchpad Janitor (janitor) wrote : | #7 |
This bug was fixed in the package autopkgtest - 3.9.7
---------------
autopkgtest (3.9.7) unstable; urgency=medium
* Include "Package-Type: deb" marked packages for testing. Fixes regression
with testing paramiko.
* adt-virt-qemu: Robustify setupup of shared /autopkgtest directory.
* VirtSubProc.
* adt-virt-qemu: Add --show-boot option to show boot messages from serial
console.
* adt-setup-vm: Configure "console=ttyS0" boot option in grub on non-i386
architectures too, to fix serial consoles with systemd images. Create
/etc/
* adt-setup-vm: Only configure grub if update-grub is available.
(Closes: #778907)
* adt-virt-qemu: Increase reboot and dpkg-reconfigure timeouts; on loaded
machines these might take longer than 5s.
* adt-run: Unless --leave-lang is given, unset $LANGUAGE and all $LC_* for
tests, to avoid clobbering the testbed locale with the host's.
(LP: #1423359)
-- Martin Pitt <email address hidden> Sun, 22 Feb 2015 13:30:35 +0100
| Changed in autopkgtest (Ubuntu): | |
| status: | Fix Committed → Fix Released |
| tags: | added: qa-manual-testing |
| summary: |
- taking screenshots with mirscreencast fails + taking screenshots with mirscreencast fails if locale is not C. |
| summary: |
- taking screenshots with mirscreencast fails if locale is not C. + taking screenshots with mirscreencast fails if env locale does not exist |
| Daniel van Vugt (vanvugt) wrote : | #8 |
Related to this at all??
https:/


Is there a reason adt-run is not setting that env var?
We can work this around in our tests, so I'm not sure if this is an autopkgteste bug.