[10:00] tomwardill: Have you had any further thoughts on https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/378828 ? [10:00] (tour-git) [10:01] looking [10:02] cjwatson: also can't think of an alternaitve, so have a +1 :) [10:23] heh, thanks [12:47] tomwardill, is the python3 port for turnip done? I saw we have a card for that on Trello, and you have a branch for it with some commits. Do you think I can continue from your branch? [12:47] pappacena: it's not done, feel free to pick it up from my branch! [12:48] I was hoping to get to it after OCI, but then that took longer than expected, so grab it :) [12:52] :-) I'll try to work a bit on that. Thanks! [14:58] one day, I will work on something twisted based without just randomly sticking defer.inlineCallbacks on everything [14:58] today is not that day [15:00] * SpecialK|Canon defers tomwardill [15:00] * tomwardill defernestrates [15:10] cjwatson: https://code.launchpad.net/~twom/launchpad/+git/launchpad/+merge/379201 ready for round... I've lost count... of reviews :) [16:13] "last edit was 14 years ago" [16:13] well. [16:19] heh what? [16:19] But it seems like yesterday... [16:23] login.py is old, apparently [16:24] also, thanks python-openid for burying/wrapping a certificate error 4 layers deep, that was a fun one to find [16:24] (why I can't login in the buildtheworld launchpad) [16:45] hopefully a relatively straightforward review to allow apache configs to be installed from not the development directory: https://code.launchpad.net/~twom/launchpad/+git/launchpad/+merge/379644 [16:48] tomwardill: How about doing copy-certificates too? [16:48] Hm, well, I guess there isn't necessarily a launchpad.{crt,key} anywhere else [16:48] Ignore me [16:48] well, there will be [16:48] so that's not a bad idea [16:48] tomwardill: r=me [16:48] (either way) [16:50] cjwatson, do you have time for a quick 4 lines review? It might fix a bug on turnip: https://code.launchpad.net/~pappacena/turnip/+git/turnip/+merge/379645 [16:50] (btw, thanks for the review on the HTTPS thing. I totally forgot about interface tests for Brody's changes...) [16:53] pappacena: It's very unlikely to make a difference to too-many-open-files bugs; I'm fairly sure TurnipConfig is only instantiated a few times at startup at most, except in the test suite. But that's fine anyway, r=me [16:54] It's actually instantiated at BaseApi's __init__... [16:54] pappacena: Oh, I guess that is instantiated per-request, fair enough [16:55] Should probably make that a singleton at some point too [16:55] Could just be "from turnip.config import config" or similar [16:56] We do not need "on the fly" configuration changes in any way, right? I'll add the singleton to this MP, then... [16:56] We don't [16:57] nice [16:57] ooh, I can login! [16:57] The charm restarts the service when it applies config changes [16:58] Great! I'll push a change in few minutes [16:59] Could anyone look at https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379618 for that GDPR handling thing I mentioned in the standup? [16:59] I can take a look. Give me 10 minutes [17:00] r=me [17:01] cjwatson: ^ (sorry pappacena didn't see your message!) [17:02] Pushed the TurnipConfig singleton implementation, cjwatson. Another round of review, pls? :) [17:03] pappacena: There are a bunch of other instantiations found by git grep [17:03] *.tac [17:03] doita [17:03] err [17:03] SpecialK|Canon: ta [17:04] Ha. Maybe my IDE is not searching the whole project. Let me double check. [17:04] cjwatson: heh sorry [17:04] vscode doesn't see .tac as a code file by default [17:04] yep... neither pycharm :-( [17:05] You lot and your IDEs ;-) [17:05] heh [17:05] hahahah [17:06] "git config --global alias.cp cherry-pick" is one of the better things I ever did [17:07] * doismellburning lurks for tab-completion porpoises [17:07] heh [17:09] cjwatson: I don't know how I feel about that alias...do you `git mv`?? ;P [17:10] I guess it is quite like a cp [17:10] I do. OTOH ... yes, that [17:10] And I'm doing it a lot at the moment [17:11] But that's the great thing about local aliases, nobody else has to like them [17:11] Hah absolutely! [17:11] Now the singleton thing should be fine... [17:12] LGTM, thanks [17:12] Thank you! [17:14] Ah, I don't have permission to top-approve on turnip. If you can do it, or give me permission... [17:17] SpecialK|Canon: ^- how come pappacena isn't in ~ols ? [17:17] ¯\_(ツ)_/¯ [17:17] I've also changed that reviewer team to ~launchpad-reviewers (which won't help with this MP, but will with the next one) [17:17] pappacena: I've top-approved that now [17:18] Thanks! [17:18] cjwatson: pappacena: process bug, sorry, fixing [17:18] actually hm where _is_ that process [17:19] Yeah I figured it was a missing checklist item somewhere [17:19] I think we don't actually have an explicit checklist for this because rate of change is probably a bit higher than rate of hiring [17:19] Point [17:20] It makes sense... [17:20] tehre was some element of it in the snapstore onboarding trello [17:20] I think there was a card along the lines of 'check you have the right permissions' [17:20] tomwardill: that rings a bell, yes! [17:20] I remember checking my list against glower's list [17:20] tomwardill: I didn't give that to pappacena because it's 99% Store/Snap [17:20] yeah [17:28] Python 3 reviews for today: https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379509 https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379648 https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379650 https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379654 ... [17:28] ... https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/379657 [17:31] If anyone's interested, my strategy here at the moment is that I have a very very rebasey branch with a bunch of smallish hacks to make it possible to build a py3 virtualenv at all, and then I'm repeatedly running "make", seeing the next error, identifying a common theme to fix across the codebase in a single logical commit (where feasible), committing that cold (since I can't run more than ... [17:31] ... trivial tests yet), and doing that several times over; then, separately, cherry-pick individual commits from that onto branches off master, test them, and file MPs [17:32] This makes it sort of vaguely practical to make progress [17:32] Nice [17:32] Several of the hacks are fundamentally unlandable at the moment because they're of the form of "rip out $dependency in the full knowledge that this breaks some subsystem" [17:33] Can you...right that [17:33] But doing it this way means that those hacks don't completely block doing other stuff [17:33] Yup yup makes sense [17:33] When it gets a bit more reasonable I'll probably push it as a py3-wip branch or something [17:34] I'm going to stop even half-typing questions for a bit here as I keep getting pre-empted ;P [17:34] Sounds great :) [17:34] ooi what are the main bits of hackery? [17:35] https://people.canonical.com/~cjwatson/tmp/py3-tig.png [17:35] Gives you an idea [17:35] Can we drop CVS codeimport functionality? [17:36] Better question, sorry [17:36] Do we have any feels/data as to the value of CVS codeimport functionality? [17:36] https://code.launchpad.net/+code-imports/?field.review_status=&field.review_status-empty-marker=1&field.rcs_type=CVS&field.rcs_type-empty-marker=1&field.target_rcs_type=BZR&field.target_rcs_type-empty-marker=1&submit=Submit+Query [17:36] Quite a lot of failed but there are some that are still used [17:37] It's an option [17:37] Main constituency that still inexplicably hasn't moved is some of the BSDs [17:38] So there's things like https://code.launchpad.net/~vcs-imports/pmake/main [17:38] https://code.launchpad.net/+code-imports/+index?field.review_status=REVIEWED&field.review_status-empty-marker=1&field.rcs_type=CVS&field.rcs_type-empty-marker=1&field.target_rcs_type=BZR&field.target_rcs_type-empty-marker=1&submit=Submit+Query is a more reasonable query, so not that many still working [17:39] https://code.launchpad.net/~mirabilos/mksh/MAIN is another one that's active [17:39] The other option there is that we probably want to separate codeimport anyway [17:40] So it doesn't have to block the rest of LP [17:41] Right, yup [17:43] Anyway, I've been making like 500% faster progress since adopting this sort of approach. I totally recommend it for anything where starting the project is kinda blocked on some dependencies but in fact if you temporarily rip stuff out you can find a lot of things behind it [17:50] Right. Coffee, finish reviewing Tom's stuff, and then probably weekend [17:50] * tomwardill is arguing with apache and ssl certificates, then weekend :) [17:50] turns out shouting 'but it's RIGHT THERE' at apache isn't all that effective [17:53] effective for getting results? sure [17:53] effective as an outlet for frustration? I bet it is... [17:54] er, make that first one a "not effective" sigh [17:54] When Kirsten was a TA she used to respond to the school computers producing "cannot access printer" errors by shouting "*I* CAN ACCESS PRINTER" at them [17:54] that seems entirely reasonable tbh [17:54] especially when printers are involved [18:02] aah, libxml2, we meet again [18:02] that's why my initial make takes forever [18:24] All right, EOW I think. Have a good weekend [18:27] Have a good weekend!