davecheneyaxw: ping01:47
axwdavecheney: ahoy01:47
_mup_Bug #1210328: cloudinit: switch apt-add-repository to use ppa:juju/stable <juju-core:New> <https://launchpad.net/bugs/1210328>01:47
davecheney^ once I cut 1.13.101:47
davecheneydo you want to have a look at this ?01:47
davecheneyit's a one line change environs/cloudinit/something01:47
davecheneyand a fixup for the test which is expecting the old string01:48
davecheneythen we can update all the docs to say 'get juju from ppa:juju/stable'01:48
davecheneywhich also has the golang dependency and the mongodb dependency for their local provider01:48
davecheneyactually, let me try to tag 1.13.1 now01:49
axwokey dokey01:49
bigjoolslooks like Wally needs surgery ...01:52
davecheneybloody hell01:52
axwwhat's happened?01:53
davecheneyaxw: i'll wait for this to land, The proposal to merge lp:~axwalk/juju-core/lp1027876-uniter-use-loggo into lp:juju-core has been updated.01:54
axwdavecheney: sounds good01:55
davecheneyaxw: anything else you want to land ?01:55
davecheneyor I can review so you can ?01:55
davecheneythere is no seriousl hurry on cutting 1.13.101:55
axwabout to land another one: https://bugs.launchpad.net/juju-core/+bug/116744101:56
axwjust addressing comments01:56
bigjoolsaxw: not seen him in person yet but he got headbutted when playing football01:57
axwbigjools: ooh :(01:57
axwI used to play indoor soccer, it got pretty rough sometimes01:57
bigjoolsand king hit (I had to look that up)01:58
axweh.. shit, not just jostling then01:58
bigjoolsyeah I am trying to find out what he did to get that kind of whack01:59
axwdavecheney: do you just tag trunk, or is there a special branch that you pull changes into for releases?02:29
davecheneyaxw: at the moment we're just tagging trunk02:30
davecheney1.12 is it's own branch02:30
davecheneyi don't expect that will receive any updates02:30
axwthere's another change here, https://bugs.launchpad.net/juju-core/+bug/1121914, I'll add to the release notes02:31
_mup_Bug #1121914: destroy-environment does not request confirmation <cmdline> <juju-core:Fix Committed by axwalk> <https://launchpad.net/bugs/1121914>02:31
davecheneyaxw: nice02:31
* davecheney goes to check leankit02:31
* axw didn't do anything in leankit02:32
davecheneyaxw: s'ok02:33
* davecheney is not axw's boss02:34
axwheh :)  no, but I want to do what's helpful. you use leankit to see what's in the release?02:34
axwI thought you'd see which bugs are committed but not released02:35
davecheneyaxw: i try to scrape up whatever I can02:35
davecheneywe used to use lp for planning what we were going to do02:35
davecheneybut it didn't give mramm the reportability he needed02:36
* axw saw a task about bridging them02:36
axwthat would be handy02:36
axwanyway, what's the process with leankit? when I start working on a bug, enter it in there?02:37
davecheneyaxw: ideally there should be a card for what you're working on02:37
davecheneyif it's a bug, you can link it to LP02:38
davecheneythere is an optoin on the right client menu02:38
davecheneywhich makes them red and puts it on the top of the card02:38
axwok, ta02:38
jtvHi wallyworld!02:39
wallyworldhi there02:39
jtvQuestion: imagemetadata documentation says that the Stream on a constraint can be "", but not what that actually *means*.02:39
jtvWhat does it mean?02:40
wallyworldi think stream is release vs daily etc. it forms part of the product id that is generated02:40
wallyworldso if stream is "", then it is not inserted into the product id02:41
wallyworldwell that's what i figured from reverse engineering the format02:41
jtvThen how do we select the "released" stream?02:41
wallyworldpass in ""02:41
jtvAh, so back to lack of documentation as the root problem.  :(02:41
wallyworldas far as i recall, for ec2 etc, released product ids have ""02:42
wallyworldthere may be doco on the lp:simplestreams project, not sure02:42
wallyworldi sorta just figured out what i needed to make stuff work for ec2 and openstack02:42
jtvThat was where I started.  :)02:42
wallyworldyou should just need the glue code, and let the generic functionality take care of the rest02:43
jtvOkay, I've been trying to get this to work with a "released" stream but it didn't work.02:43
jtvI don't have any excuse for not finding out, because I can't pass on the job of guessing the meaning to the end-user.02:44
wallyworldfrom memory, i think right now, the stream is just used to create the ids02:44
jtvProduct IDs, yes.02:45
wallyworldso you need to ensure the ids that are being generated are in the json02:45
jtvWhat confused me was that the released stream had "released" in a few places.02:45
wallyworldwhich is why :azure broke stuff02:45
jtvYes...  I added some debug logging to help with these things, so as of today, breaking tests are a lot more helpful.02:45
wallyworldhopefully doco will catch up to code :-)02:45
davecheneyaxw: it's the 'external card id' on the advanced tab02:46
davecheneyjust put the lp # there02:46
davecheneywithout adornment02:46
axwah crap03:01
axwgoose needs updating on the bot for my test to pass03:02
axwmight just leave this one till later03:02
axwdavecheney: do you know if the bot is using rog's godeps stuff?03:03
axwactually, never mind, I'm thinking of goamz...03:05
jtvwallyworld: ahhh, the documentation in imagemetadata actually says Stream may be "", or "released", "daily" etc.  I guess it shouldn't actually be "released" -- can I replace that with "Use empty string for released stream"?03:05
wallyworldsure. it seems to be the right thing to do at the moment doesnt it03:06
axwdavecheney: the bot needs updating for #1167441. It's not important, so tag at will and I'll land it later03:07
_mup_Bug #1167441: environs/providers must report instance state, like py-juju <juju-core:In Progress by axwalk> <https://launchpad.net/bugs/1167441>03:07
axwjtv: what do you do when you need to get gwacl updated on the bot?03:10
jtvaxw: we ask Dimiter or John or one of the others.  :)03:11
axwjtv: rats :) thanks03:12
jtvDon't call them rats.  They might refuse to update the bot.  :-P03:13
davecheneyaxw: understood03:19
davecheneyre the bot03:19
davecheneyi think we'll figure out how to fix the deps problem in BNE03:20
axwdavecheney: cool03:20
axwdavecheney: heard any updates on that btw?03:20
davecheneyaxw: only that you should book flights03:21
axworly? I didn't get that message03:21
davecheneyaxw: ffs03:21
axwyeah I got the email from Antonio, but he said to wait for another email before booking03:22
bigjoolswallyworld: hey Rocky03:46
wallyworldhi bigjools04:22
bigjoolswallyworld: afternoon04:23
=== tasdomas_afk is now known as tasdomas
davecheneyok, goose and juju are tagged for 1.13.104:49
davecheneyfeel free to wreck the build04:49
axwdavecheney: so ppa:juju/stable has mongodb-server now?05:23
axwI'm adding prereq verification into the local provider, and I need to tell people where to get mongodb from05:24
davecheneyaxw: that is correct05:24
davecheneyaxw: pls hold05:25
davecheneyexpand the mongo ones05:25
davecheneyP and Q are listed05:25
davecheneyR and S ship with the right version of mongo05:25
axwugh, I suppose I'll have to detect the series then05:26
davecheneyaxw: I think we already do that05:26
davecheneyfrom memory05:26
axwdavecheney: yeah it just complicates the code. no drama05:26
davecheneyalthogu lots of environs/* has been chagned since I 13.0405:26
* davecheney goes to look05:26
davecheneyaxw: worst case, you can always add the ppa05:26
davecheneybut there will be nohting in it that matches for R and above05:26
davecheneyso it will be a no op05:26
axwyeah ok, I'll just add it in and say that it's only for P/Q05:27
axwthis is for an error message05:27
davecheneyaxw: there is already a helper05:27
davecheneyin environs/cloudinit/cloudinit.gop05:27
davecheneyall you need to do is change the ppa name, and it's finger print05:28
davecheneyoh, and fix the tests which are expecting the old string05:28
jtvIs the buildbot in trouble?05:37
davecheneyjtv: you mean it got the police chief's daughter pregnant ?05:50
davecheneythat sort of trouble ?05:50
jtvCould be, could be.05:50
jtvBut I'm mostly thinking of weird spurious test failures such as problems creating temporary directories.05:50
jtvFile exists... don't tell me we just added randomized directories, but with an unseeded randomizer?  :)05:50
jtvI'll paste some examples of failurse:05:51
jtvActually that's all I have.  :)05:52
davecheneysidnei: ping06:14
davecheneysidnei: never mind, sorted it06:17
davecheneyis tom haddon in the house ?06:17
davecheneyjuju destroy-environment is confused06:31
axwwill have a look in a sec06:32
axwah, not my stuff being confused, just destroy-environment being generally confused06:35
davecheney     ├─mongod───11*[{mongod}]06:39
davecheney     ├─mongod───3*[{mongod}]06:39
davecheney^ what is wrong with this picture06:39
davecheneythis is a regression06:40
davecheneythis bug _was_ fixed06:40
_mup_Bug #1210407: environs/cloudinit: bootstrap machine has two mongodb proceses <juju-core:New> <https://launchpad.net/bugs/1210407>06:42
axwdavecheney: I'm just curious, why does it matter?06:44
davecheneyaxw: mongo is a pig06:44
davecheney200 interrutps per second06:44
axweven if it's not serving anyone?06:44
davecheneyif you want to know why your laptop is burning your nads06:45
davecheneycheck if that upstart job is active06:45
axwheh, it has been getting quite warm06:45
davecheneystatus is getting verbose these days06:46
davecheneynot to mention confusing06:46
axwdavecheney: https://codereview.appspot.com/1258304407:03
davecheneyaxw: thanks07:03
axwdavecheney: the signing key hasn't changed AFAICT07:05
davecheneyaxw: protip: lbox propose -bug 121032807:07
_mup_Bug #1210328: cloudinit: switch apt-add-repository to use ppa:juju/stable <juju-core:In Progress by axwalk> <https://launchpad.net/bugs/1210328>07:07
axwapart from linking the bug to the MP (which I normally do manually), does that do anything else?07:07
axwapart from setting the milestone to the wrong thing ;)07:07
davecheneyaxw: it does both of those things07:08
axwyeah I got tired of the spam. maybe I'll just hack my lbox to not set the milestone07:08
axwit would seem that the bot is rooted07:11
axwI'm getting the same errors as you jtv07:12
* davecheney bursts into tears07:16
axwdavecheney: reviewed07:21
=== ChanServ changed the topic of #juju-dev to: https://juju.ubuntu.com | On-call reviewer: - | Bugs: 4 Critical, 81 High - https://bugs.launchpad.net/juju-core/
axwdimitern: hey, do you have access to the machine the bot is on?08:34
axwits /tmp is full of gocheck temp dirs, so now gocheck is making the bot unhappy08:35
pavelis here anybody who can explain me how could I use juju set from external script inside of deployed instance?08:35
pavelfor example I do smth like juju deploy my_service, and there on service I have a daemon which could run juju set08:36
dimiternaxw: yes I have, let me check08:36
axwdimitern: thanks. also, could you please update goamz?08:37
dimiternaxw: done and done08:38
axwdimitern: thanks!08:38
jtvThanks from me as well, dimitern08:50
dimiternjtv: you're welcome :) i wasn't too late, right?08:52
jtvNo, it's not weekend for me yet.  :)08:53
jtvHappily landing branches.08:53
jtvdimitern: oh, we're also importing the checkers as jc?08:53
dimiternjtv: yes, and definitely now as .08:54
jamespagedavecheney, np08:54
jtvHow a single-character typo can lead to disaster.  :)08:54
* jtv should have been fast and said "OK I changed that throughout the project"08:57
jtvAny other reviewers available for https://codereview.appspot.com/12682045/ ?09:30
dimiternjtv: looking09:40
jtvThanks once more09:40
=== tasdomas is now known as tasdomas_afk
dimiternjtv: you've got a review09:52
utlemminggz,jam, wallyworld: I just pushed simple streams for HPCloud09:54
utlemminggz, jam, wallyworld: any chance I could get one of you to smoke test it?09:54
jtvThanks again dimitern10:01
hazmatdoes an uncaught panic take down the goroutine or the whole process?10:42
hazmattrying to refactor status into the api server and noticing it tosses quite a few panics on bad inputs10:43
thumperhazmat: everything I think10:44
nate-finchhazmat: everything10:45
thumperhi nate-finch10:45
nate-finchthumper: morning :)10:45
thumpernate-finch: how are you settleing in?10:46
nate-finchthumper: Pretty well. The european guys are a great help.10:47
nate-finchthumper: how's it going at IOM?10:47
thumperwell, this week has gone pretty well10:47
thumperno real surprises10:47
thumperand no big changes of direction10:48
nate-finchalways a good thing10:48
thumperso, all in all, pretty good10:48
dimiternnate-finch: that's us, europeans, nice guys :)10:48
thumpera few minor things that we've agreed to track10:48
nate-finchdimitern: ha, yep :)10:48
dimiternthumper: how about api progress?10:48
thumperbut on the whole, I'm pretty happy with the meetings and things gone on here10:48
nate-finchnice nice10:48
thumperdimitern: less screaming than I expected10:49
dimiternthumper: oh, cool!10:49
dimiternthumper: well, considering it's only me and roger on it for the pas 2-3 weeks10:49
thumperdimitern: don't stress, no names were brought up at all10:50
thumperjust, it has taken longer than we estimated10:50
dimiternthumper: good to know :)10:50
thumperwe screwed up10:50
thumperthings are coming along10:50
thumperthat's pretty much how it was communicated10:50
thumperand accepted10:51
dimiternoh yes, they are - we're a week or so away from finishing the uniter api10:51
dimiternthen the cli is the next biggest chunk10:51
thumperwe are trying to get some help for that too10:51
thumperwe do need to do the provisioner though10:51
thumperas there are provisioner tasks on every machine10:51
dimiternbut the priority still is to finish non-state-machine workers' api first, right?10:53
thumperyes, but what I'm saying is that the provisioner IS a non-state-machine worker10:53
dimiternyeah - and that's already done and using state10:54
thumperah... wat?10:54
thumperwhat do you mean done AND using state?10:55
dimiterni mean the refactoring of the provisioner into environ and lxc ones10:57
thumpersure, I did that10:57
thumperwhat I'm trying to make sure we understand is that to have a non-state machine agent only using the API, we need to fix he provisioner10:58
nate-finchdimitern: by the way, was there a team meeting yesterday morning? I realized as I was going to bed last night that I totally forgot about it.11:11
dimiternnate-finch: it got cancelled11:11
nate-finchdimitern: cool. I hoped as much with everyone at IOM.11:11
dimiternnate-finch: there was a thread on juju-dev about it11:12
nate-finchdimitern: a mailing list? maybe I'm not on that...11:15
dimiternnate-finch: oh, you should subscribe to juju@lists.ubuntu.com (general and user-focused discussions) and juju-dev@lists.ubuntu.com (dev-focused, announcements, etc.)11:17
mgzthere are a bunch of others as well11:20
nate-finchdimitern: I just joined those two.11:20
mgznate-finch: see MailingLists on the internal wiki if you've not done that already11:22
nate-finchmgz: thanks, I'll take a look11:22
mgz...I'll add a juju section there11:23
=== tasdomas_afk is now known as tasdomas
nate-finchmgz: yeah, I'd been there and subscribed to the main few that are suggested.11:25
mgzso there's one more juju list, which I've now linked from that page, whoch you should subscribe to11:27
nate-finchmgz: thanks. I was on canonical juju, just not the other two.11:29
sidneinoodles775: https://bugs.launchpad.net/juju-core/+bug/121048411:30
_mup_Bug #1210484: upgrade-charm --repository doesn't expand ~ to $HOME <juju-core:New> <https://launchpad.net/bugs/1210484>11:30
* noodles775 looks11:30
nate-finchdimitern, mgz: standup?11:32
noodles775sidnei: oh - it's not fallout from one of the changes I landed, just something easy to go on with? (just finished bug 1183159, so can grab it)11:33
_mup_Bug #1183159: juju ssh no longer passes parameters after unit/machine to ssh <bitesize> <cmdline> <juju-core:In Progress by michael.nelson> <https://launchpad.net/bugs/1183159>11:33
sidneinoodles775: yup, indeed11:33
dimiternmgz: ?11:34
mgzneary there...11:35
=== ChanServ changed the topic of #juju-dev to: https://juju.ubuntu.com | On-call reviewer: mgz | Bugs: 4 Critical, 81 High - https://bugs.launchpad.net/juju-core/
dimiternnate-finch, mgz: https://codereview.appspot.com/1269604312:05
dimiternmgz, nate-finch: any progress?13:01
mgzdimitern: will return to it...13:05
=== tasdomas is now known as tasdomas_afk
nate-finchdimitern: almost done. Had to help my wife with toddler for a bit :)13:07
dimiternno worries :)13:10
dimiternI have 2 more incoming13:10
nate-finchthere ya go13:11
nate-finchdimitern: ^13:11
dimiternnate-finch: cheers13:11
dimiternnate-finch, mgz: responded to https://codereview.appspot.com/12696043/13:50
mgzdimitern: ta13:50
dimiternnate-finch, mgz: and this is the next one: https://codereview.appspot.com/12698043 (reproposing, due to diff issue)13:51
* dimitern gtg for that contract, bbiab13:51
mgzdimitern: as you hopefully gathered, my comments were misc thoughts rather than must-fix-this things13:52
=== tasdomas_afk is now known as tasdomas
* dimitern is back14:28
nate-finchdimitern: I just posted a response to your response... maybe I'm misunderstanding something, but it seems like my code is doing what your code was doing.14:29
dimiternnate-finch: I did replace my code with yours and the results were different14:29
dimiternnate-finch: (after tweaking it a but to compile)14:30
nate-finchdimitern: hmm... weird.14:30
dimiternnate-finch: the main issue is for unit-foo-42 it returned err=nil14:30
dimiternnate-finch: you can try it out, pull my branch locally14:33
nate-finchdimitern: yeah, was about to.  It's not like it's a big deal either way, I'm just curious where my code went wrong14:33
dimiternnate-finch: there's one more thing - the code, as written is common across a lot of the other apiserver methods14:33
dimiternnate-finch: well, for starters, r := result.Results[i] gives you a copy of the result, so it won't set anything back, unless you do result.Result[i] = r at the end of the loop; also it has to be r.Result, r.Ok = unit.PrivateAddress() (no := )14:34
nate-finchdimitern: right right...  coming from a reference-based language always screws me up14:36
dimiternmgz, nate-finch: updated https://codereview.appspot.com/12698043/ after william's "not a review" :)14:51
dimiternactually, i missed some stuff that should be gone, reproposing now14:53
nate-finchdimitern: ok14:53
nate-finchdimitern: sounds like william had the same problem with the error handling that I did - it's not hiding errors from getUnit, it just passes them on to result.Results[i].Error = common.ServerError(err)14:56
henningeI am trying to run the test suite but I get panics.14:57
henningeI think it is because it can't find the MongoDb server.14:57
henningeDo I need to configure/start/... MongoDb to be able to run the test suite?14:58
dimiternhenninge: yeah, you'll need mongodb + ssl, the mentioned in the docs14:58
dimiternjust a sec14:58
henningeOh yeah, a doc pointer would be great ;-)14:59
dimiternhenninge: ^^ it's in the README14:59
henningeOh, I have it installed14:59
henningeI am working with it on my other project, too.15:00
henningeit's 2.4, though15:00
dimiternhenninge: that won't work15:00
dimiternhenninge: there are known issues with 2.415:00
henningeI see15:01
dimiternhenninge: what series are you running?15:01
henningeThis is my workstation, so it's raring.15:02
dimiternhenninge: ok, so replace 'precise' with 'raring' in the link above15:02
henningeBut the instances in the cloud run precise15:02
dimiternhenninge: that doesn't matter, for tests run locally, your machine series matters only15:03
dimitern henninge: also, sice you have another mongo installed, make sure the one frm the tarball gets picked15:04
henningeYeah, I was just wondering about that. You mean PATH-wise?15:05
dimiternhenninge: just a sec, i think not..15:05
henningeI can stop the other server but I cannot uninstall it.15:05
dimiternhenninge: it searches for it in /usr/bin/mongod15:07
dimiternhenninge: so either try linking the tarball version there and link the other one somewhere else, or use a vm15:07
dimiternhenninge: or, alternatively, first try PATH hacking15:08
henningeI'll look into those, thanks ;-)15:08
dimiternhenninge: export PATH=/path/to/tarball/mongo/bin:$PATH15:08
dimiternhenninge: hope it helps15:09
henningedimitern: Changing the PATH is totally enough. Cool ;)15:11
dimiternhenninge: cool! nice to know :)15:11
henningeAlso, it uses non-standard ports, so the other instance can keep running15:12
dimiternhenninge: oh yeah, and it starts/stops it as needed15:12
dimiternnate-finch, mgz: I decided to update the last CL with 2 more methods: Destroy and SubordinateNames(), becasue I removed GetServiceEntity and SetResolved per william's request15:21
dimiternso i'll be reproposing with the changes and update description very soon15:21
henningedimitern: Can you give me an example of how to run a single test suite?15:30
henningeI guess I don't understand the line in CONTRIBUTING15:31
henningego test -gocheck.f '$REGEX'15:31
henningeOr rather, a single test or whatever15:31
dimiternhenninge: cd inside the dir, then run "go test -gocheck.v -gocheck.f MySuite" or -gocheck.f TestSomething15:31
henningeOh, inside the dir15:31
dimiternhenninge: the -gocheck.f takes any subset of a suite.method match15:32
=== marcoceppi is now known as marcoceppi|away
=== nate-finch is now known as natefinch
dimiternmgz, natefinch: finally updated https://codereview.appspot.com/12698043/ - please take a look, won't change it anymore :)15:45
natefinchdimitern: ok, looking15:48
dimiternmgz: ping15:49
natefinchdimitern: I don't know the code well enough, but is this correct?  canModify, err := u.getCanRead()  canRead qualifies you for modification as well?15:51
dimiternnatefinch: it should be called getCanModifyOrRead, but it checks the same thing15:52
natefinchdimitern: ok, just checking15:52
dimiternnatefinch: i.e. only the owning unit agent for that particular unit is allowed to read and/or modify it's data15:53
dimiternnatefinch: and that's determined at API login time by the authenticating entity's tag15:53
natefinchdimitern: fair enough.  Just wanted to make sure there wasn't another canModify method that should have been called.15:53
dimiternnatefinch: nope15:54
natefinchdimitern: man, that is some boilerplate, huh?  Did you mention that this stuff was going to go away, or was that something else?15:54
dimiternnatefinch: take a look at the other apiserver modules, it's pretty much all like that, and it unavoidable for now15:59
dimiternnatefinch: the whole point it to support bulk ops on the API level, and some time in the near future we'll gut out the insides and write them properly with some concurrent mongo bulk ops or something, keeping the interface intact16:00
=== tasdomas is now known as tasdomas_afk
natefinchdimitern: I think I figured out why your tests are passing, but the code can still return errors that aren't masked by ErrPerm - your unit-foo-42 test returns false from canRead because it's an invalid tag.... but if it was a valid tag, and u.getUnit() returned an error, then that error would propagate up.  I'm not sure how to put that in the tests, though.16:17
dimiternnatefinch: just by adding an extra line?16:18
dimiternnatefinch: well, unit-mysql-0 is both valid and exists, but still returns errPerm16:19
dimiternnatefinch: that's because you never get to getUnit - canRead filters that out16:19
natefinchdimitern: so should it be impossible that getUnit returns an error when canRead returns true?16:20
dimiternnatefinch: basically yes, unless you consider things like when the state connection drops or your unit just got deleted from someone else16:21
natefinchdimitern: basically != exactly :)  Those errors could get propagated up from this method. It might be rare, but it's possible right now.  If that's ok, then that's ok.16:22
dimiternnatefinch: there are several tiers of security/authorization - login level (valid user), facade level (agents only), method level (owners only)16:23
dimiternnatefinch: if we get errors after we checked for permissions, it's ok to propagate them i think16:23
dimiternnatefinch: at least by then we know the user is who he claims he is16:24
natefinchdimitern: Yep.  That's cool.  Just wanted to make sure16:24
dimiternnatefinch: sure, security ramifications are always tricky and worth a discussion16:25
dimiternanyone else willing to review https://codereview.appspot.com/12698043/ ?16:26
natefinchmgz: ^ ?  (my turn to ping ;)16:27
dimiternnatefinch: yep, I gave up :)16:27
dimiternyou can't be productive like that.. :/16:30
dimiternI need a bunch of reviewers to throw stuff at them :)16:31
dimiternlet's hope next week'll be better16:31
natefinchyep. Should be a lot more populous next week.  Is Frank back, or does he have next week off too?  I forget16:32
dimiternfrank's off next week I think16:33
dimiternI have this cute sidebar calendar in thunderbird16:33
dimiternnatefinch: you know I'm really itching to get rid of all that duplicated code, and especially boilerplate code in tests16:34
natefinchdimitern: yuup16:35
dimiternnatefinch: I'll think of a way to optimize it, but all attempts so far resulted in less readable code :/16:35
natefinchdimitern: yeah, it's tricky16:40
natefinchlunch time for me16:40
=== natefinch is now known as natefinch-lunch
dimiternsidnei: hey16:41
dimiternlast call before I head off - anyone willing to review a simple branch? https://codereview.appspot.com/12698043/16:44
=== abentley is now known as abentley-lunch
mgzsorry guys, had to run out last minute16:54
mgzwill catch up with reviews now16:54
dimiternmgz: yay!\16:55
=== natefinch-lunch is now known as natefinch
=== abentley-lunch is now known as abentley

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!