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