[05:15] Having the test suite rewind the database is best done by not using the system PostgreSQL service, but having it run the postgres executable on a DATADIR itself. It is easy then to kill it and reset the DATADIR. [05:16] We didn't do it *at the time* because it was slower than keeping the process running a creating a new database from a template. [05:16] But those timings change every release. [05:17] It's still slower [05:17] Well, it was ~2y ago when I last tested [05:17] Startup isn't quick. [05:18] IMO the most likely way to optimise further is to have another thread/process keeping a pool of fresh DBs available that can just be renamed across. [05:21] There are also possibilities around causing the librarian to run in the same snapshot as the main testrunner (and testrunner-appserver, where applicable), so the commit after librarian adds can be optimised out in the test suite. [09:22] cjwatson: nice! [11:47] ilasc: go ahead and top-approve https://code.launchpad.net/~ilasc/launchpad/+git/launchpad/+merge/377875 when you're ready [11:48] cjwatson thanks! done [11:50] Could I have reviews of https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378126 and https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378131 ? Simple-ish dependency upgrades [11:51] on it now [12:00] Thanks [14:21] More py3 reviews wanted: https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378430 (dep upgrade), https://code.launchpad.net/~cjwatson/lazr.restful/wsgiref-py2/+merge/378432 (setup.py tweak), https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378459 (dependency adjustments), https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378460 (large, ... [14:21] ... bulk conversion to six.moves.urllib.*) [14:25] Other than the above, FWIW, all it takes to get the virtualenv building on py3 is: (1) PYTHON := python3 (2) remove bzr, mailman, meliae, Paste*, subvertpy (3) upgrade wsgi-intercept and FormEncode [14:27] subvertpy needs non-trivial work to unblock removing bzr properly, as previously discussed, but everything else is in progress [14:29] Then there's a lot to do before the rest of the build will work, because building API documentation tends to import basically everything. And running very much of the test suite before lazr.restful at least sort of works is going to be hard. [14:32] That's awesome [14:32] Nice work [15:35] https://github.com/cdent/wsgi-intercept/pull/61 so many yaks, and some of them are camped out in other people's houses [15:59] I'd say 'networks, not even once', but it appears that my computer agrees [17:25] It's installing things into the build LXD, while the firewall is active! [17:26] shame that's as far as it gets, but still... it did a thing! [22:09] https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378477 another py3 improvement, gradually disentangling stuff [22:19] Done! [22:45] cheers