/srv/irclogs.ubuntu.com/2008/05/07/#launchpad-meeting.txt

=== salgado-afk is now known as salgado
=== mrevell is now known as mrevell-lunch
=== mrevell-lunch is now known as mrevell
* gmb goes to get a brew pre-meeting14:48
barry#startmeeting15:00
barryha ha15:00
barryhello and welcome to this week's ameu launchpad reveiwer's meeting15:00
barrywho's here today?15:00
bigjoolsfail :)15:00
flacosteme15:00
bigjoolsme15:00
bacme15:00
gmbme15:00
bigjoolsmoo15:00
schwukme15:01
allenapme15:01
salgadome15:01
intellectronicaME15:01
intellectronicawhoops15:02
BjornTme15:02
barryallenap, danilos ping15:02
* gmb tries to persuade a rather persistently stupid wasp to leave the office15:02
allenapme15:02
EdwinGrubbsme15:02
barryEdwinGrubbs: welcome!15:02
EdwinGrubbsthanks15:02
statikme15:03
barrystatik: ping15:03
barry:)15:03
sinzu1me15:03
=== sinzu1 is now known as sinzui
sinzuime me15:03
barry== Agenda ==15:03
barry * Roll call15:03
barry * Next meeting15:03
barry * Action items15:03
barry * Queue status15:03
barry * Mentoring update15:03
barry * Review process15:03
barrynext meeting week += 1?15:03
barryanybody know you won't be here or will be sprinting?15:03
flacostesinzui and I will be sprinting15:04
flacostebut we should be able to attend15:04
barrycool, thanks15:04
barry * Action items15:04
* barry is teh suck this week15:05
barry * barry drive to decision about multiline sequences15:05
barry * barry to solicit ideas to better handle review scheduling and workload15:05
barrynot done, but i will do them this week15:05
barry * gmb to add lpreview to sourcecode and hack rf-setup to link it in15:05
gmbIt's in sourcecode.15:05
gmbThanks to mthaddon15:05
mthaddonde rien15:06
gmbI'll get the rf-setup change reviewed and landed today.15:06
barrygmb: excellent.  will that link in our ~/.bazaar/plugins directory?15:06
gmbYep.15:06
barryfantastic15:06
barrythanks!15:06
barry * gmb to prod mwh again about the 800-line limit patch15:07
gmbI emailed him last nigh15:07
gmbBut since he's sprinting I suspect we won't hear back until next week.15:07
gmbbarry: Let's leave this on the agenda for next week15:07
gmbLest I forget again :)15:07
barrygmb: cool.  will do.  we'll leave the lpreview one on too, until the rf link branch lands15:08
gmbSure.15:08
barrygmb: thanks15:08
barry * sinzui to update js style guide page with helpful resources15:08
sinzuiNot done15:08
* sinzui has time on Thursday to do it15:08
barrysinzui: we'll just continue this one then, right?15:08
flacostebarry: didn't you took a decision about multiline sequences?15:08
sinzuibarry: yes please15:08
statiksinzui: possibly relevent, there is a new douglas crockford book coming out called javascript: the good parts15:09
barryflacoste: oh, you're right.  i even updated the python style guide.  jeebus, where is my brain?15:09
bigjoolsthat won't be very big then15:09
intellectronicastatik: beware of crockford's advice, though. it's not always good15:09
sinzuistatik: I nice *small* book about modern and compatible ECMAScript would be nice.15:10
statikyeah, I hope this one is tiny15:10
barry * sinzui or flacoste to add sampledata check to lpreview or make lint15:11
flacostei suck15:11
flacostecompletely forgot about that15:11
flacostei can at least file a bug :-)15:11
barryflacoste: cool, that would be great15:11
barry * Queue status15:12
barryqueue looks pretty good to me.  the only pink branch is our old favorite bazillion year old stub branch15:13
barryany comments on the queue?15:13
gmbCan't that branch be made w-i-p?15:14
gmbI mean, it's ossifying there at the top of the queue.#15:14
barrygmb: i tried to do that once but jamesh didn't want me to15:14
barrygmb: but i will push for that again at the next asiapac15:14
gmbOkay.15:15
barry * Mentoring update15:15
barryany word from mentors or mentorees?15:15
barryEdwinGrubbs: how's it going?  getting some branches to review?15:15
EdwinGrubbsbarry: no, I haven't reviewed anything since salgado's oncall day15:16
gmbEdwinGrubbs: That's a Thursday, right?15:16
barryEdwinGrubbs: that's okay, i'm sure you'll get some tomorrow15:16
EdwinGrubbsof course, I haven't checked PendingReviews to see if anything is assigned to me15:16
barryEdwinGrubbs: that reminds me.  i've been using bac's cron script.  i highly recommend it15:17
barrywhen there's no change to my queue, it stays quiet, but i get the occasional email when there's an update to my queue.  it works really well. you should all check it out15:17
* barry thanks bac15:17
bacnp15:18
* sinzui ponders a dbus message from PR15:18
barry:)15:18
EdwinGrubbsbac: where is that cronscript? I just have your getreview.py script.15:18
bacthat would be cool15:18
bigjoolsXMPP message15:18
schwuktwitter!15:19
bigjoolseugh15:19
bacEdwinGrubbs:  bzr+ssh://devpad.canonical.com/code/bac/launchpad/pr_notify15:19
gmbsinzui: Put it through libnotify / notify-bin15:19
schwukbigjools: luddite15:20
barrybac: is there a link to that from TipsForReviewers?15:20
statikeasily integrated with intellectronica's twit.py15:20
sinzuigmb: yep15:20
bacbarry: no, but i'll add one15:20
barrybac: thanks15:20
schwukstatik: ?15:20
bigjoolsschwuk: communication junkie15:20
barryany other mentoring news?15:21
barry * Review process15:21
barrythere's just bac's proposed item...15:21
barry * Discourage use of 'hasattr' (bac)15:21
barrybac: the floor is yours15:22
flacostehasattr is evil because it catches exceptions15:22
baci wasn't aware of the problem with hasattr until the discussion today.15:22
* sinzui 'attr' in obj.__dict__:15:22
bacso should we put that on our check list or PSG15:22
flacostewe should define a safe_hasattr in lazr.utils and uses that instead15:22
bacflacoste: +115:22
intellectronicasinzui: that doesn't always work, does it?15:23
barryflacoste: i think people should just be trained to use getattr(foo, name, None) instead15:23
flacosteit doesn't with decoarators15:23
flacosteintellectronica: ^^15:23
sinzuiintellectronica: I was being sarcastic15:23
flacosteor any other descriptors15:23
flacostebarry: i think if safe_hasattr(obj, 'attr'):15:23
flacosteis easier to udnertsand15:24
baci did a quick look and we're using hasattr 24 times in our codebase15:24
flacostethan if getattr(obj, 'attr', None) is not None15:24
barryflacoste: yeah, but then i have to look up safe_hasattr() to see what it actually does ;)15:24
flacostebarry: c.'mon :-)15:24
barryotoh, if it's this instead, then i can get behind it:15:24
barrymissing = object()15:24
intellectronicamaybe you should call it can_getattr :)15:25
barryreturn getattr(obj, name, missing) is missing15:25
flacostebarry: yes, that was my plan15:25
barryer, is not missing15:25
* flacoste realized that he just got himself anothe action item15:25
allenapWhy not just catch the AttributeError explicitly ourselves, and ban hasattr?15:25
barryintellectronica: maybe i_can_haz_attr()15:25
flacostei should just shut-up15:25
intellectronicabarry: :)15:25
flacosteallenap: the problem is that it catches all exceptions15:25
barryi'd like to understand more why we're using hasattrs15:26
barrymaybe some of those 24 uses are bogus?15:26
intellectronicai think in many cases where we use ...attr methods we don't really have to, or could refactor the code so that we don't have to15:27
intellectronicajust today salgado found one place where we used setattr without having to and fixed it15:27
salgadointellectronica, it was jamesh who found it, btw. :)15:28
intellectronicamaybe the instruction should be more general, and include looking for ...attr in the code, check that it's really necessary, and iff it is, make sure that it's correct15:28
barryintellectronica: +115:28
barrywould someone like to update TipsForReviewers to be on the lookout, and question, uses of setattr()15:29
baci will15:29
barryand also update PythonStyleGuide to watch out for hasattr() because of the exception swallowing behavior15:29
barrybac: mind doing both?15:29
intellectronicabarry: why setattr specifically?15:30
bacyes i'll do both15:30
bacbarry: why shouldn't both place caution about hasattr and setattr?15:30
barryintellectronica, bac nope, you're right. sorry15:30
flacostewhat's the issue with setattr?15:31
intellectronicaflacoste: just that we sometimes use it without having to15:31
intellectronicaflacoste: and then we rely on strings, don't get lint errors, and unnecessarily complicate the code15:32
flacostehow often does it come up?15:32
flacostei mean, there is a lot of things we do that we don't need to15:32
intellectronicaflacoste: it came up today :)15:32
flacostelaunchpad is full of cargo cult15:32
sinzuitrue15:32
flacostelint doesn't catch unexisiting attributes15:32
flacostei don't think we should call out setattr specifically15:33
intellectronicaheh, true15:33
barryi can go either way on that.  we're all agreed about questioning and discouraging hasattr though15:34
barrythat's it from me.  anything else not on the agenda?15:36
bigjoolsa quick point15:37
bigjoolsmy email about cleaning PR up was not very effective15:37
bigjoolsso I think we should remind people in review replies15:37
barrybigjools: good idea15:38
* bigjools removed 6 old branches from his queue just yesterday15:38
sinzuican bac's script be adapted to send an email to offender?15:38
bacsinzui: no15:39
bacjamesh's would be a better candidate15:39
sinzuiI clear my queue when I start my on-call day15:39
bigjoolsyeah15:39
flacostesinzui: that could be considered spamming :-)15:39
bigjoolsyou can flog them some viagra while you're at it15:40
flacostelol15:40
sinzuiIt is spelt V|4gra15:40
bigjools:)15:41
barryi think we're done :)15:41
barry#endmeeting15:41
barryha ha15:41
barrythanks everyone!15:42
bigjools#fail15:42
=== salgado is now known as salgado-lunch
=== salgado-lunch is now known as salgado
=== salgado is now known as salgado-afk

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