[12:08] (bac out) benji frankban (gmb sprinting) https://plus.google.com/hangouts/_/af560291cc6180166d05d115d54a449ab5dab277?authuser=1&hl=en-US [13:02] gary_poster or benji___ : could you please review https://code.launchpad.net/~frankban/lpsetup/commands-unittests/+merge/112094 ? === benji___ is now known as benji [13:04] frankban: I can in a few minutes. [13:05] thanks benji [13:05] * benji wonders how his nick got to be "benji__", but enjoyed kicking the imposter "benji" off freenode anyway. [13:12] :-) [13:19] tarmac should be working now. frankban please let it merge your MP after review. [13:19] gary_poster: i'm back home but can't really see. will go sit in a dark room for a little while [13:19] ok bac [13:19] ok bac, relax [13:20] gary_poster: good news though. no visible problems. told me to go home and not come back for a year [13:20] excellent, bac [14:22] bac, when you return, let's get those goals take care of in allhands [14:22] gmb, when you see this, please let me know how allhands is going for you [14:25] gary_poster, Haven't tried today, will do so in the next half hour or so [14:25] great gmb, thanks [14:31] frankban: I have commented on https://code.launchpad.net/~frankban/lpsetup/commands-unittests/+merge/112094 [14:32] thanks benji: reading [14:40] benji: thanks for the comments, I will change the branch as you suggested. Only a question: how do you suggest to implement the get_arguments in the subcommand tests? Actually I am reusing arguments (e.g. test_install calls test_inithost.get_arguments)... so, class/static methods? Testcase subclasses? [14:40] frankban: I figured it would just be the body of the module-level get_arguments, but as a method instead. Did I miss something? [14:46] benji: we can have TestCase.get_arguments(self), but then we should continue supporting the story of another testcase reusing the arguments returned by the first testcase (e.g. InstallTest.get_arguments(self) should call and extend Inithost.get_arguments(self)). If I am not wrong, we can 2 this in 2 ways (that I can think now): 1) having one testcase as a subclass of another (so, use super and then extend) [14:46] or 2) use class methods, so we can call AnotherTestCase.get_arguments() [14:47] frankban: ah, I think I see why you went with the original solution then. I agree that leaving it as-is is best. [14:49] cool benji [15:11] benji: branch updated following your suggestions. [15:12] cool; looking [15:13] frankban: looks great, approved [15:15] thanks benji, I will approve the mp and wait for tarmac to do the rest. [15:16] I, for one, welcome our new branch-landing overlords. [15:23] frankban and gary_poster: I have the smoketest branch up for review at https://code.launchpad.net/~benji/lpsetup/bug-1017973-add-smoke-tests/+merge/112141 [15:23] benji: looking [15:23] thanks [15:24] thanks [15:28] hum...still waiting for tarmac... [15:36] bac, is tarmac alive? [15:46] I want to start adding the workaround to bug 1014916 and bug 1013921 to lpsetup. I think it is kinda safe because Graham is out this week, and because I ought to be able to get people to help me if I slow down, and I think it ought to be fast. [15:46] <_mup_> Bug #1014916: simultaneously started lucid containers pause while starting after the first seven < https://launchpad.net/bugs/1014916 > [15:46] <_mup_> Bug #1013921: our zope.testing fork needs to emit subunit time immediately before test start and immediately before test completion < https://launchpad.net/bugs/1013921 > [15:46] It goes against the rules... [15:47] I'm gonna do it, and ask Brad to work with me on it when he returns [15:47] gary_poster: cool. tarmac is not merging my branch, maybe this is because rhere wasn't a commit message at the time I approved it? [15:48] frankban, maybe not. I dunno. Can I do anything to help? You could try adding the commit message and then unapproving and then reapproving, maybe? [15:48] gary_poster: trying [15:50] frankban, if that fails, merge manually. we can iron out the wrinkles later when someone has access to the tarmac machine [15:51] gary_poster: yes, I will wait for 2 minutes and then merge manually [15:51] ok cool [15:54] gary_poster: maybe I should have asked this before: when I review lpsetup branches, should I follow the usual steps for a mentored reviewer (i.e. request Raphael review) [15:55] frankban, um. :-D Can I pretend you didn't ask me that? ;-) The thought had quietly occurred to me before, and I thought that it would be nicer and easier and quite reasonable if we did not go through the mentoring for this project. That said... [15:56] I suspect the proper thing to do is to go through the mentoring process. [15:56] If I pretended the question didn't exist then I didn't have to do the proper thing :-P [15:57] I know! Let's ask Brad when he returns. he's the reviewer god. or was, once. [15:57] So meanwhile frankban, continue reviewing lpsetup without mentor. We'll ask Brad for his judgement later. [15:59] hum... ok gary_poster, and we could still forget to ask him... [15:59] :-) [16:00] frankban, what was that? did you say something? Were we talking about something? [16:01] about the weather I guess... [16:02] and tarmac merge my branch. [16:02] merged [16:03] :-) cool [16:07] benji: approved, I've added just a comment. [16:21] gary_poster: I am looking at the card "rename validators to handlers". we already have a handle() method in the subcommands that can generate confusion, do you agree in also renaming handle() to run()? [16:21] frankban, lemme look at code, one sec [16:23] frankban, so handle->run and handler->runner? [16:24] (in argparser) [16:24] no, handle -> run, validate -> handle_namespace (or similar), handler remains handler [16:25] and, validators -> handlers [16:25] ok, trying to get my head around that [16:27] right, ok. So handlers.py contains (validators -> ) handlers...and [16:27] gary_poster: currently the handlers are called validators in argparse: we have a validators class attribute, a get_validators() method, a validate method that actually runs the handlers. we should rename all these attrs and methods. [16:28] but... [16:29] right, validate becomes handle_namespace or prepare_namespace, and is fir handler in self.get_handlers(namespace): try: handler(namespace); except ValidationError as err: parser.error(err) [16:29] (IOW, ValidationError remains, and handlers raise it) [16:29] yes [16:30] I was suggesting to rename handle() to run() to avoid confusion, because handle() does a different thing: it runs the steps. [16:32] frankban, right, I agree with that, but then why should handler (in register_subcommand and BaseSubCommand) remain handler? It is either the "run" method or something else designed to run the subcommand's steps, right? Calling that a handler seems another very similar confusion [16:33] BaseSubCommand.__init__ in particular, I mean [16:33] I don't love "runner" [16:33] but I like it better in that context than "handler" I think [16:34] gary_poster: ah! I see, yes... what about "callback"? [16:35] frankban, I like that, yeah [16:35] frankban, and all the rest you said makes sense to me now too, fwiw, so +1 [16:35] cool [16:39] * benji returns from lunch and looks at the MP review. [16:51] Laura Czajkowski's change of the smoke test bug importance from Undecided to High confuses me. Was that a bot, perhaps? [16:54] hum... [16:54] benji, no, she is responsible for triaging, just as we were when we had community rotation or whatever it was called. We are not allowed to have untriaged bugs in the LP project and lpsetup is an LP project. [16:55] "high" is the correct triage in fact: it is not critical, but we intend to do it now. [16:55] ah, that makes sense [16:55] correct at least according to our LP definitions of course [16:55] yeah, my main confusion was to why she was doing anything, but since it is part of LP, it makes sense [16:56] confusion relieved, tragedy averted [16:58] :-) [16:58] frankban, are you quitting now? I have a question for you but I don't want to keep you [16:59] gary_poster: no problem, please ask [17:02] ok thanks. So, I want to add a --lxc option to inithost. When you use that option, it will run a separate step that installs things specific to the host only if it is an lxc container. (Then lxcinstall will include that option.) I intend to do this by adding an lxc step, and then adding an lxc argument and then adding a call_lxc that only calls the step if the argument is included [17:02] what do you think of that? [17:02] frankban, ^^ [17:03] I'll be right back [17:05] gary_poster: I think it's right. FWIW I've used the dynamic dispatcher in the same way for create_scripts in lxcinstall [17:07] frankban, ok cool thank you! [17:08] welcome, have a nice evening! [17:10] you too :-) [17:24] well, that was fun. I had to restart my machine to get networking to work again [17:44] hi gary_poster, i'm looking at your suggestion about piotr's method. i don't really see that it buys that much and adds an unexpected command line option. i'd vote for not doing it. [17:44] hey bac [17:44] cool [17:45] and you've got to remove it from sys.argv before calling setup() or it gets angry [17:45] minor [17:45] bac, what it buys, apparently, is that you can use the system's setuptools if it is installed [17:45] as it usually is [17:45] on Ubuntu [17:46] (where setuptools == distribute) [17:46] oic [17:47] so, isn't that something of value? Note that another way to approach this is to run screaming to barry, who IME will make you feel better at the very least, even if there aren't any options ATM. He write that email not very long ago though [17:47] aren't any good/approved/official options, I should say [17:48] he's probably doing something reasonable for his flufl things [17:48] let's see... [17:49] bac, :-/ http://bazaar.launchpad.net/~barry/flufl.i18n/devel/view/head:/setup.py [17:50] so your point being barry has punted like us mortals? [17:50] bac, precisely [18:08] bac: are we in all tarmac, all the time land now? In other words, do I have to manually land my lpsetup branch or will tarmac do it for me? [18:08] benji: don't land. i have it running as a cron job but am having some problems with gpg-agent [18:08] benji: either it will land via the cronjob or i'll do it by manually running tarmac [18:16] k [18:16] * benji laments that his beeper still needs AC power to work [18:20] * gary_poster goes to have lunch, a bit late. [18:35] I really like having tarmac. It has already saved me from comitting with failing tests. [18:57] yay! [19:04] benji: yeah, i saw that. cool. yours is committed now. [19:14] benji: distribute_setup.py is dirty too [19:15] Is that distribute's version of ez_setup.py? Do we need either of them? [19:24] benji, yes; and it depends. I added a "pain" topic for bac to talk about the packaging annoyances on Friday. [19:24] cool [19:31] benji: hey, tarmac makes me look busy: https://code.launchpad.net/~benji/lpsetup/bug-1017973-add-smoke-tests/+merge/112141 [19:31] * bac needs to make a new LP user for tarmac [19:31] :) [19:31] * bac ponders --swedish-chef option for tarmac [19:51] heh [20:00] gary_poster: it is time for me to switch to a 'bot user in LP for tarmac to use. can you think of an appropriate one to re-use or just create 'yellow-tarmac', 'yellow-robot', etc? [20:00] actually it should not be yellow-specific, of course [20:03] um [20:03] bac, lp-tarmac? [20:03] bac, I wonder who diogo is using [20:04] on call with flacoste [20:04] were he not off stuffing his face with crepes and red wine i would ask him. (diogo, not francis) [20:04] lol [20:04] * bac [20:05] ok, i'll suffer with my user id until tomorrow [21:07] gary_poster: damn homonyms [21:08] * bac intrigued that "skillz" got by your spellchecker [21:09] :-) [21:09] heh [21:09] skillz seemed humorous [21:09] vain seemed unintentional [21:15] yes, quite. [21:15] i remember in grade school the teacher was talking about homonyms. she had the hardest time convincing us that "pin" and "pen" were not pronounced the same.