Description of problem:
I bet this is the first time someone ran a translated installer in Live!
Version-Release number of selected component:
The following was filed automatically by anaconda:
anaconda 22.20.11-1 exception report
Traceback (most recent call first):
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/storage.py", line 336, in _doExecute
StorageChecker.errors = str(e).split("\n")
File "/usr/lib64/python2.7/threading.py", line 766, in run
File "/usr/lib64/python2.7/site-packages/pyanaconda/threads.py", line 244, in run
threading.Thread.run(self, *args, **kwargs)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 9: ordinal not in range(128)
cmdline: /usr/bin/python2 /sbin/anaconda --liveinst --method=livecd:///dev/mapper/live-base
cmdline_file: BOOT_IMAGE=vmlinuz0 initrd=initrd0.img root=live:CDLABEL=Fedora-Live-WS-x86_64-22-T1 rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0
other involved packages: python-libs-2.7.9-6.fc22.x86_64, anaconda-gui-22.20.11-1.fc22.x86_64
release: Fedora release 22 (Twenty Two)
Created attachment 1020596 [details]
Created attachment 1020597 [details]
Created attachment 1020598 [details]
Created attachment 1020600 [details]
Created attachment 1020601 [details]
Created attachment 1020602 [details]
Created attachment 1020603 [details]
Created attachment 1020604 [details]
Created attachment 1020605 [details]
Created attachment 1020606 [details]
Proposed as a Blocker for 22-final by Fedora user dshea using the blocker tracking app because:
Anything non-ASCII in a storage warning will crash the installer in a live environment.
As far as reproducer, I was running in German and left the storage spoke without selecting any disks.
Well, the first since Beta - this will only have started breaking since we made translations unicodes rather than strs (which we did between Beta and Final TC1). The str(e) forces an encode of the unicode object, and we hit the good ol' 'with objects from other modules(?) the default encoding is ascii' problem (which is most extensively discussed at https://bugzilla.redhat.com/show_bug.cgi?id=1169019 ).
We could make it something like:
which would still work when it's not translated, because you can do "foobar".encode('utf-8') and it just gives you "foobar" back. But as mentioned in IRC today we're probably going to find crap like this all over the place, and I still think we want the 'force the default encoding to be utf-8 on lives as well as non-lives' hammer as the least worst choice here.
Using the convention of 'e' as an error, I find 30 instances of str(e) in current f22-branch; not all of those will necessarily be problematic as it seems like in *some* cases python somehow uses utf-8 when a utf-8 locale is set, it seems to be something like 'it uses ascii for objects imported from other libs' or something like that. See the note in https://bugzilla.redhat.com/show_bug.cgi?id=1169019#c35 - sgallagh and I started poking down that avenue at some point, but didn't get all the way. I'm guessing it's something like "modules / objects that get imported before we call setup_locale() in pyanaconda/ui/gui/spokes/welcome.py".
Discussed at the 2015-05-04 blocker review meeting. Voted as AcceptedBlocker.
AcceptedBlocker - violates "When using the guided partitioning flow, the installer must be able to: ... Reject or disallow invalid disk and volume configurations without crashing." in the case of a non-English live install.
*** Bug 1217411 has been marked as a duplicate of this bug. ***
*** Bug 1217610 has been marked as a duplicate of this bug. ***
anaconda-22.20.12-1.fc22 has been submitted as an update for Fedora 22.
I verified the 'encryption passphrase' case at least with TC3, will also check the 'reclaim space in German/Russian' case.
"reclaim space in German" ok with TC3.
For me works.
python-blivet-1.0.9-1.fc22, anaconda-22.20.12-1.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.
*** Bug 1222333 has been marked as a duplicate of this bug. ***