[10:29] <CIA-62> ubiquity: cjwatson * r5410 trunk/ (debian/changelog tests/run): Add a --python3 option to tests/run to run the tests under Python 3.
[10:35] <CIA-62> ubiquity: cjwatson * r5411 trunk/ (5 files in 2 dirs): Handle renaming of __builtin__ to builtins in Python 3.
[10:40] <CIA-62> ubiquity: cjwatson * r5412 trunk/ (debian/changelog ubiquity/frontend/gtk_ui.py): Only pass unicode=1 to gettext.install in Python 2.
[11:12] <CIA-62> ubiquity: cjwatson * r5413 trunk/ (debian/changelog ubiquity/auto_update.py): Port ubiquity.auto_update to python-apt 0.8 progress classes.
[11:20] <CIA-62> ubiquity: cjwatson * r5414 trunk/ (debian/changelog ubiquity/plugins/ubi-language.py):
[11:20] <CIA-62> ubiquity: Avoid locking failures when clicking on the "update this installer" link
[11:20] <CIA-62> ubiquity: more than once.
[11:37] <CIA-62> ubiquity: cjwatson * r5415 trunk/ (debian/changelog tests/test_ubi_partman.py):
[11:37] <CIA-62> ubiquity: Use Python 3 names for itertools.izip and itertools.izip_longest if
[11:37] <CIA-62> ubiquity: available.
[11:42] <CIA-62> ubiquity: cjwatson * r5416 trunk/ (5 files in 3 dirs):
[11:42] <CIA-62> ubiquity: Use helpers from the six module to deal with some bytes/unicode
[11:42] <CIA-62> ubiquity: differences.
[11:45] <CIA-62> ubiquity: cjwatson * r5417 trunk/tests/run: no need to be specific about the encoding here
[12:26] <CIA-62> ubiquity: cjwatson * r5418 trunk/ (19 files in 8 dirs): (log message trimmed)
[12:26] <CIA-62> ubiquity: As a general rule, open subprocesses with universal_newlines=True when
[12:26] <CIA-62> ubiquity: expecting to read text from them. This has no effect on Python 2
[12:26] <CIA-62> ubiquity: (aside from \r\n conversion and the like, which is mostly a no-op for
[12:26] <CIA-62> ubiquity: us), but causes Python 3 to read str rather than bytes. The
[12:26] <CIA-62> ubiquity: exceptions at the moment are debconf-communicator subprocesses, where
[12:26] <CIA-62> ubiquity: debconf expects to read binary data and deal with encoding itself, and
[12:28] <CIA-62> ubiquity: cjwatson * r5419 trunk/ (debian/changelog tests/test_gtkwidgets.py): Use six.reraise rather than the three-argument form of raise.
[12:31] <CIA-62> ubiquity: cjwatson * r5420 trunk/ (debian/changelog tests/test_filteredcommand.py): Adjust test_filteredcommand for Python 3 text handling.
[12:35] <CIA-62> ubiquity: cjwatson * r5421 trunk/ (debian/changelog tests/test_ubi_partman.py):
[12:35] <CIA-62> ubiquity: Use misc.utf8 in test_ubi_partman.TestPage.test_description rather
[12:35] <CIA-62> ubiquity: than using unicode directly.
[12:38] <CIA-62> ubiquity: cjwatson * r5422 trunk/ (debian/changelog tests/test_ubi_partman.py):
[12:38] <CIA-62> ubiquity: Fix test_ubi_partman.question_has_variables to handle templates files
[12:38] <CIA-62> ubiquity: as binary data, since they're mixed-encoding.
[12:43] <CIA-62> ubiquity: cjwatson * r5423 trunk/ (debian/changelog tests/test_ubi_partman.py):
[12:43] <CIA-62> ubiquity: Cope with assertItemsEqual/assertCountEqual naming difference between
[12:43] <CIA-62> ubiquity: Python 2.7 and 3.2.
[12:44] <cjwatson> Almost down to a reasonably-sized patch set ... now, I wonder why test_gtkwidgets just segfaults
[12:50] <cjwatson> urgh, stack trace is truncated and is somewhere within libffi
[13:02] <cjwatson> and pyicu is mysteriously segfaulting in its tests ...
[13:33] <cjwatson> aha, pyicu bug fixed upstream, I think ...
[14:38]  * cjwatson rolls up sleeves and tries to fix ubiquity/i18n.py's text modelling, urgh
[14:52] <CIA-62> ubiquity: cjwatson * r5424 trunk/ (debian/changelog ubiquity/i18n.py):
[14:52] <CIA-62> ubiquity: Rearrange ubiquity.i18n.get_translations to treat debconf-copydb
[14:52] <CIA-62> ubiquity: output as binary data and do field-dependent decoding.
[15:08] <CIA-62> ubiquity: cjwatson * r5425 trunk/ (4 files in 2 dirs):
[15:08] <CIA-62> ubiquity: Adjust test_misc and test_upower to cope with file type changes in
[15:08] <CIA-62> ubiquity: Python 3.
[15:32] <cjwatson> hah, not only is ElementTree built into Python (hence lower footprint), but I think it's also faster than libxml2 and arguably easier to read
[15:32] <cjwatson> not often you get all of those
[15:32] <cjwatson> oh and it works with Python 3 which is why I care just now
[15:33] <cjwatson> well, faster for the single use ubiquity makes of it, anyway
[15:38] <cjwatson> ElementTree itself is much slower, but that's OK because cElementTree isn't
[15:46] <CIA-62> ubiquity: cjwatson * r5426 trunk/ (4 files in 3 dirs):
[15:46] <CIA-62> ubiquity: Use xml.etree.cElementTree instead of libxml2; it's faster, has a
[15:46] <CIA-62> ubiquity: smaller footprint by virtue of being built into the standard library,
[15:46] <CIA-62> ubiquity: arguably easier to read, and works with Python 3.
[16:29] <CIA-62> ubiquity: cjwatson * r5427 trunk/ (25 files in 8 dirs):
[16:29] <CIA-62> ubiquity: Fix a slew of file handle leaks, including making much more liberal
[16:29] <CIA-62> ubiquity: use of context managers.
[16:33] <CIA-62> ubiquity: cjwatson * r5428 trunk/tests/test_misc.py: Fix test_misc.test_is_swap to handle context management.
[16:36] <bdmurray> in bug 989266 I see a filesystem error but no hardware errors
[16:36] <ubot2> Launchpad bug 989266 in ubiquity "Installation crashed!" [Undecided,Confirmed] https://launchpad.net/bugs/989266
[16:48] <CIA-62> ubiquity: cjwatson * r5429 trunk/ (4 files in 3 dirs):
[16:48] <CIA-62> ubiquity: Move a bit more code into ubiquity.install_misc, including a new
[16:48] <CIA-62> ubiquity: target_file helper method.
[16:48] <cjwatson> bdmurray: if you believe it's a bug in the filesystem implementation, reassign to the kernel
[16:48] <cjwatson> of course there is the possibility of hardware-induced corruption that didn't get logged for whatever reason ...
[16:48] <cjwatson> but arguably the kernel should spot that anyway, yes
[16:50] <cjwatson> that said, I don't know where you're seeing that log message; I don't see it in the files attached to the bug
[16:57] <infinity> I don't quite understand why that log shows it trying to remove... Everything.
[16:58] <cjwatson> haha, yes, that would be a slight problem
[16:58] <infinity> Empty pre-live manifest?
[16:58] <cjwatson> um, undetected failure to read manifest.desktop maybe?
[16:58] <infinity> So live - (pre-live) = *
[16:59] <infinity> Yeah.
[16:59] <infinity> It's a fun log, though.
[16:59] <bdmurray> Hmm, I certainly saw that error in some bug
[17:00] <cjwatson> er, except nowadays we explicitly list the packages to remove, I think
[17:00] <cjwatson> filesystem.manifest-remove
[17:01] <cjwatson> confused
[17:42] <cjwatson> well, most of the UI now manages to display with Python 3
[17:43] <cjwatson> (with some uncommitted bytes/unicode fixups)
[17:43] <cjwatson> there's still some bizarre problem somewhere inside StateBox (I think) that's causing a segfault with a trashed stac
[17:43] <cjwatson> k
[18:00] <cjwatson> but, I think it's pub time rather than fighting with python3 any more
[18:01] <stgraber> :)