ReviewerMeeting20090429

Not logged in - Log In / Register

ReviewerMeeting20090429

summary

logs

AMEU

Apr 29 10:01:10 <barry> #startmeeting
Apr 29 10:01:11 <MootBot>       Meeting started at 09:01. The chair is barry.
Apr 29 10:01:11 <MootBot>       Commands Available: [TOPIC], [IDEA], [ACTION], [AGREED], [LINK], [VOTE]
Apr 29 10:01:29 <barry> hello and welcome to this week's ameu reviewer's meeting.  who's here today?
Apr 29 10:01:31 <bac>   me
Apr 29 10:01:32 <abentley>      me
Apr 29 10:01:32 <gary_poster>   me
Apr 29 10:01:35 <rockstar>      me
Apr 29 10:01:35 <mars>  me
Apr 29 10:01:37 <al-maisan>     me
Apr 29 10:01:37 <adeuring>      me
Apr 29 10:01:39 <BjornT>        me
Apr 29 10:01:41 <henninge>      me
Apr 29 10:01:49 <noodles775>    me
Apr 29 10:01:54 <bigjools>      me
Apr 29 10:02:06 <gmb>   me
Apr 29 10:02:41 <barry> cprov: ping
Apr 29 10:02:47 <barry> danilos: ping
Apr 29 10:02:55 <danilos>       me
Apr 29 10:02:56 <barry> EdwinGrubbs: ping
Apr 29 10:02:58 <cprov> me
Apr 29 10:03:05 <EdwinGrubbs>   me
Apr 29 10:03:07 <barry> intellectronica: ping
Apr 29 10:03:13 <intellectronica>       me
Apr 29 10:03:28 <barry> salgado: ping
Apr 29 10:03:43 <barry> [TOPIC] agenda
Apr 29 10:03:44 <MootBot>       New Topic:  agenda
Apr 29 10:03:47 <salgado>       me
Apr 29 10:03:52 <barry>  * Roll call
Apr 29 10:03:52 <barry>  * Don't forget your OCR slot
Apr 29 10:03:52 <barry>  * Action items
Apr 29 10:03:52 <barry>  * Mentoring update
Apr 29 10:03:52 <barry>    * need a volunteer to mentor noodles
Apr 29 10:03:52 <barry>  * Peanut gallery (anything not on the agenda)
Apr 29 10:03:52 <barry>    * JS coding guidelines (mars, intellectronica)
Apr 29 10:03:52 <barry>    * ampersands-in-urls (abentley)
Apr 29 10:04:06 <barry> [TOPIC]  * Don't forget your OCR slot
Apr 29 10:04:07 <MootBot>       New Topic:   * Don't forget your OCR slot
Apr 29 10:05:01 <barry> i've heard some rumors that folks sometimes miss their ocr slot.  just wanted to ask that you please try to fill them.  we all count on each other to get branches reivewed and landed
Apr 29 10:05:14 <barry> i know we're all busy, but think of the team!
Apr 29 10:05:36 *       flacoste (n=francis@canonical/launchpad/flacoste) has joined #launchpad-meeting
Apr 29 10:05:47 <barry> if you really can't fill your slot for some reason, please let me or your fellow reviewers know, and try to find a backup if possible
Apr 29 10:06:09 <barry> and remember, we have sabbaticals if you're burned out for a while
Apr 29 10:06:25 <barry> that's it from me!  any thoughts?
Apr 29 10:06:44 <cprov> yeah, I feel guilty.
Apr 29 10:07:11 <al-maisan>     I will be on secondment to the foundations team for the next 3 months
Apr 29 10:07:14 *       fjlacoste (n=francis@modemcable045.83-202-24.mc.videotron.ca) has joined #launchpad-meeting
Apr 29 10:07:17 <abentley>      barry: Perhaps, let everyone know if you
Apr 29 10:07:26 <fjlacoste>     me
Apr 29 10:07:26 <abentley>      're sick and can't find a replacement.
Apr 29 10:07:31 <bigjools>      al-maisan: Ubuntu Foundations, to be precise
Apr 29 10:07:41 <barry> abentley: +1
Apr 29 10:07:44 <al-maisan>     ..and hence not in a position to review on Tuesdays
Apr 29 10:07:49 <abentley>      (rather than just reviewers)
Apr 29 10:07:52 <barry> a quick email to the ml would help
Apr 29 10:07:55 <al-maisan>     bigjools: thanks for the correction :)
Apr 29 10:08:10 <cprov> fjlacoste: is this nick the dutch version for 'flacoste' ?
Apr 29 10:08:21 <barry> al-maisan: cool, we'll need to shuffle ocr schedule around
Apr 29 10:08:31 <al-maisan>     barry: thanks!
Apr 29 10:09:01 <barry> al-maisan: i'll mark up ReviewerSchedule.  tuesdays aren't too bad, with gmb in euro and bac & rockstar in west
Apr 29 10:09:17 <al-maisan>     OK .. that's good.
Apr 29 10:09:36 <danilos>       I am off this Thursday (swap day)
Apr 29 10:09:46 <danilos>       which means, no euro coverage tomorrow unless someone wants to take over
Apr 29 10:09:59 <cprov> danilos: err, me too, I was counting on you ...
Apr 29 10:10:04 *       bigjools has a 10k branch coming soon as well, what a shame
Apr 29 10:10:13 <danilos>       any candidate willing to take Thursday out of my hands is welcome to
Apr 29 10:10:14 <bigjools>      10k LOC, that is
Apr 29 10:10:20 <barry> danilos: ouch!  no coverage for tomorrow?
Apr 29 10:10:27 <rockstar>      This meeting probably isn't a good venue to share when you'll miss OCR
Apr 29 10:10:43 <cprov> barry: it's already bad now that I'm on EU timezone.
Apr 29 10:10:44 <danilos>       rockstar: well, if we are reminded how we need to find a replacement, it might be a good place to find one
Apr 29 10:11:03 <danilos>       cprov, barry: ok, let's take this outside the meeting
Apr 29 10:11:03 <gmb>   bigjools: Good luck with that ;)
Apr 29 10:11:06 <rockstar>      danilos: at the expense of the other things on the agenda?
Apr 29 10:11:14 *       cprov nods
Apr 29 10:11:16 <bigjools>      r=gmb!
Apr 29 10:11:26 <al-maisan>     :)
Apr 29 10:11:26 <gmb>   AHAHAAHAHANo.
Apr 29 10:11:36 <danilos>       rockstar: if it's easy, yes... since nobody has volunteered, it's not, so let's move on
Apr 29 10:11:43 <barry> cprov: we can move you to euro slot and we can split up bac/rockstar or salgado/barry
Apr 29 10:12:00 <barry> i will now skip around
Apr 29 10:12:04 <barry> [TOPIC] mentoring update
Apr 29 10:12:05 <MootBot>       New Topic:  mentoring update
Apr 29 10:12:12 <barry>    * need a volunteer to mentor noodles
Apr 29 10:12:30 <barry> we need a mentor for noodles, preferrably in euro timeslot
Apr 29 10:12:56 <cprov> I can do it.
Apr 29 10:13:03 <noodles775>    Thanks cprov :)
Apr 29 10:13:09 <barry> cprov: awesome thanks
Apr 29 10:13:28 <cprov> It's my pleasure.
Apr 29 10:13:32 <barry> cprov, noodles775 we'll discuss off line where we can slot you guys in
Apr 29 10:13:42 <noodles775>    Yup
Apr 29 10:13:53 <cprov> okay
Apr 29 10:13:57 <henninge>      off-line? like writing letters?
Apr 29 10:14:08 <henninge>      ;)
Apr 29 10:14:12 <rockstar>      henninge: yes.  Support your local post.
Apr 29 10:14:25 <barry> henninge: pigeon (not pidgin :)
Apr 29 10:14:42 <barry> henninge: any word on your mentoring?  how's it going?
Apr 29 10:14:42 <abentley>      rockstar: In soviet canada, posts support you.
Apr 29 10:15:00 *       Disconnected (Connection reset by peer).
**** ENDING LOGGING AT Wed Apr 29 10:15:00 2009

**** BEGIN LOGGING AT Wed Apr 29 10:15:12 2009

Apr 29 10:15:12 *       Now talking on #launchpad-meeting
Apr 29 10:15:12 *       Topic for #launchpad-meeting is:  Launchpad Meeting Grounds | Channel logs: http://irclogs.ubuntu.com/ | Meeting Logs: http://www.novarata.net/mootbot/ | https://dev.launchpad.net/MeetingAgenda
Apr 29 10:15:12 *       Topic for #launchpad-meeting set by Rinchen at Tue Dec 16 14:28:48 2008
Apr 29 10:15:13 *       #launchpad-meeting :https://launchpad.net
Apr 29 10:15:19 <henninge>      barry: very well, thank you
Apr 29 10:15:30 <henninge>      barry: adeuring is doing a good job
Apr 29 10:15:34 *       Received a CTCP VERSION from freenode-connect
Apr 29 10:15:45 <barry> i knew he would!  good to hear, thanks
Apr 29 10:16:01 <barry> any other mentoring issues?
Apr 29 10:16:03 <adeuring>      well, I'd say, no complaints with henninge's work :)
Apr 29 10:16:55 <henninge>      adeuring: ;)
Apr 29 10:17:15 <barry> adeuring: i hope you're cracking the whip!
Apr 29 10:17:19 <barry> :)
Apr 29 10:17:43 <adeuring>      barry: from time to time ;)
Apr 29 10:17:48 <barry> :-D
Apr 29 10:17:55 <barry> [TOPIC] action items
Apr 29 10:17:55 <MootBot>       New Topic:  action items
Apr 29 10:18:03 <barry>  * gary_poster to take importfascist and rSP() discussion to ml
Apr 29 10:18:16 <gary_poster>   h'ain't done it.  Intend to do it today.
Apr 29 10:18:59 <barry> gary_poster: cool
Apr 29 10:19:06 <barry>  * allenap to look into storm/sqlobject result set compatibility
Apr 29 10:19:16 <barry> oops, he's not here
Apr 29 10:19:20 <gmb>   allenap's away this week
Apr 29 10:19:25 <barry>  * flacoste to work on API reviewer cheat sheet
Apr 29 10:19:27 <gmb>   I suspect he didn't get very far though
Apr 29 10:19:35 <fjlacoste>     i didn't
Apr 29 10:19:36 <barry> gmb: nod
Apr 29 10:19:56 <barry> fjlacoste: keep it on the list? :)
Apr 29 10:20:02 <bigjools>      he changed his nick this week out of embarassment maybe
Apr 29 10:20:02 <fjlacoste>     sure
Apr 29 10:20:06 <fjlacoste>     lol
Apr 29 10:20:16 <barry> cool
Apr 29 10:20:27 <barry> [TOPIC]  * Peanut gallery (anything not on the agenda)
Apr 29 10:20:28 <MootBot>       New Topic:   * Peanut gallery (anything not on the agenda)
Apr 29 10:20:37 <barry> actually, there were two items we didn't get to from last week
Apr 29 10:20:55 <barry>    * JS coding guidelines (mars, intellectronica)
Apr 29 10:20:56 <fjlacoste>     mthaddon: can we close merge to devel?
Apr 29 10:21:12 <barry> mars, intellectronica can either of you talk about this today?
Apr 29 10:21:17 <gary_poster>   fjlacoste: wrong room :-)
Apr 29 10:21:18 <intellectronica>       i don't remember raising this. mars?
Apr 29 10:21:21 <mars>  barry, yep
Apr 29 10:21:33 <barry> mars: the floor is yours
Apr 29 10:21:36 <intellectronica>       perhaps just to remind about testing with devmode off as part of the review
Apr 29 10:21:37 <mars>  so this is a question to the JavaScript coders in the room
Apr 29 10:22:05 <mars>  in Python, we are always explicit in comparisons: if x is not None
Apr 29 10:22:31 *       flacoste has quit (Read error: 113 (No route to host))
Apr 29 10:22:31 <mars>  instead of: if !x
Apr 29 10:22:41 *       fjlacoste is now known as flacoste
Apr 29 10:23:22 <barry> mars: does js have the same expanded notion of trueness/falseness as python, or is it more strict like java?
Apr 29 10:23:26 <mars>  so Tom and I were debating doing the same in JavaScript.  I prefer the coercive form, he prefers explicit
Apr 29 10:23:36 <mars>  barry, the types aren't as clean
Apr 29 10:23:41 <intellectronica>       barry: it's even more lax, and very confusing, with coercing to boolean
Apr 29 10:23:52 <rockstar>      I prefer the explicit, but it's not always possible.
Apr 29 10:23:57 <mars>  barry, in JavaScript, null == undefined == 0 == false
Apr 29 10:24:02 <rockstar>      Er, not always clean.
Apr 29 10:24:05 <intellectronica>       my position was that i like the explicit version, having learned to appreciate it coding (and reading) python
Apr 29 10:24:14 <mars>  right
Apr 29 10:24:19 <rockstar>      intellectronica: I tend to agree with you.
Apr 29 10:24:22 <barry> rockstar: why is it not always possible?
Apr 29 10:24:31 <mars>  and mine was that because JavaScript can throw 'undefined' at you, you need the coercive form
Apr 29 10:24:33 <intellectronica>       rockstar: both options are possible technically. it's just a matter of style
Apr 29 10:24:47 <gary_poster>   mochikit has a whole equivalence framework in part because of the JS bool mess (but there are other nastinesses as well)
Apr 29 10:24:59 <mars>  gary_poster, yech
Apr 29 10:25:06 <mars>  didn't know that
Apr 29 10:25:12 <rockstar>      barry: intellectronica: I've been bitten by bugs in cases of empty strings evaluating to true.
Apr 29 10:25:20 <barry> ew
Apr 29 10:25:22 <EdwinGrubbs>   I just worry about all tests having to be (x === null or x === undefined) which is unweildy.
Apr 29 10:25:22 <bigjools>      oof
Apr 29 10:25:31 <mars>  barry, and [] and {} are also true
Apr 29 10:25:37 <intellectronica>       rockstar: well, that's exactly why you'd want to compare explicitly
Apr 29 10:25:37 <barry> ew ew
Apr 29 10:25:40 <rockstar>      I feel like === means we're back to php land.
Apr 29 10:26:03 <rockstar>      intellectronica: so you're saying I should have used if x != ''
Apr 29 10:26:15 <intellectronica>       rockstar: yup
Apr 29 10:26:17 <barry> remember that in our python style guide, we're allowed to use "if not foo:" when foo can be of several types (e.g. None or [] for example)
Apr 29 10:26:31 <intellectronica>       rockstar: or use foo.length
Apr 29 10:26:35 <barry> we just require a comment explaining that the simpler choice was deliberate
Apr 29 10:26:44 <rockstar>      We kinda lose the loose typing at that point.  :/
Apr 29 10:26:47 <intellectronica>       explicit comparison is an easy rule to follow. just compare explicitly to anything you might expect be in the value
Apr 29 10:26:57 <flacoste>      rockstar: if x !== ''
Apr 29 10:27:00 <mars>  barry, ok, in JavaScript, you sometimes still want explicit comparison, if null is a flag value
Apr 29 10:27:10 <rockstar>      flacoste: yea, I know.  Was in a hurry.
Apr 29 10:27:26 <barry> mars: yep
Apr 29 10:27:39 <abentley>      barry: Even so, I find "if foo == [] or foo is None" shorter than "if not foo" plus a comment.
Apr 29 10:27:59 <mars>  barry, so in my mind the question more revolves around the 'wandering undefineds' problem
Apr 29 10:28:04 <rockstar>      Okay, I think we should be explicit, and anywhere we aren't requires some serious 'splainin.
Apr 29 10:28:07 <intellectronica>       rockstar: loose typing is sometimes great, and sometimes it makes the code hard to read. if you have loose typing it's up to you to protect against getting values you don't expect
Apr 29 10:28:24 <barry> abentley: well, if len(foo) == 0 or foo is None, but it /is/ more explicit
Apr 29 10:28:31 <rockstar>      intellectronica: yes, this is true.  Python really is awesome at its typing.
Apr 29 10:29:10 <barry> aren't unexpected undefineds a sign of buggy code?
Apr 29 10:29:15 <mars>  so, is "if (!config) {}" hard to read?
Apr 29 10:30:04 <barry> mars: not hard to read, hard to know the intent
Apr 29 10:30:05 <mars>  intellectronica, rockstar, because 'config' could be null, if the user explicity said "I don't want this parameter", or "undefined", if the user just passed in some_config_obj.some_attr
Apr 29 10:30:19 <intellectronica>       mars: it is, yes, harder than if (config !== null && config !== undefined)
Apr 29 10:30:33 <rockstar>      mars: yeah, I agree with intellectronica
Apr 29 10:31:15 <mars>  ok.  I should ask what you guys thing of trinary operators too, because that is the other place where I use coercion
Apr 29 10:31:51 <intellectronica>       trinary operators? as in condition ? then-expr : else-expr ?
Apr 29 10:31:52 <mars>  var bar = cfg ? cfg.foo : 0;
Apr 29 10:32:02 *       barry looks at his own first pathetic attempt at js and realizes he needs to fix his code ;)
Apr 29 10:32:14 <mars>  but I guess the intent there is clear
Apr 29 10:32:21 <mars>  and it's idiomatic, so no issue?
Apr 29 10:32:25 <intellectronica>       mars: thses should be used sparingly, but when you do, there's no reason why you can't use the verbose version
Apr 29 10:32:35 <intellectronica>       the case above is quite idiomatic
Apr 29 10:32:35 <barry> mars: i would love to see parentheses after the = and before the ;
Apr 29 10:32:40 <rockstar>      mars: let us avoid them.  Clarity in code, and optimization when the javascript is "compiled"
Apr 29 10:33:06 <intellectronica>       but following a simple rule is so much easier than making exceptions for idioms or whatever
Apr 29 10:33:16 <rockstar>      intellectronica: +1
Apr 29 10:33:27 <barry> intellectronica: +1
Apr 29 10:33:40 <gmb>   +1
Apr 29 10:34:03 <noodles775>    +1
Apr 29 10:34:07 <barry> do we need to vote?  mars?
Apr 29 10:34:08 <mars>  you guys would have a great time browsing the jquery source code then :)
Apr 29 10:34:15 <intellectronica>       :D
Apr 29 10:34:21 <mars>  barry, ^ that looks like a vote to me
Apr 29 10:34:26 <rockstar>      mars: :)
Apr 29 10:34:35 <mars>  a majority vote, rather
Apr 29 10:34:44 <barry> yep
Apr 29 10:35:01 <rockstar>      DONE!
Apr 29 10:35:08 <barry> [AGREED] explicit is better than implicit in javascript comparisons
Apr 29 10:35:09 <MootBot>       AGREED received:  explicit is better than implicit in javascript comparisons
Apr 29 10:35:21 <barry>    * ampersands-in-urls (abentley)
Apr 29 10:35:31 <barry> abentley: i don't remember the details on this, do you?
Apr 29 10:35:48 <abentley>      barry: We didn't talk much.
Apr 29 10:36:03 <barry> abentley: the floor is yours
Apr 29 10:36:33 <abentley>      Everyone knows that ampersands must be provided as entity references in HTML, right?
Apr 29 10:36:38 <abentley>      e.g. &amp;
Apr 29 10:37:03 <abentley>      Everyone knows that this applies when the ampersand is part of a URL in an attribute, right?
Apr 29 10:37:09 <mars>  yes :)
Apr 29 10:37:22 <abentley>      e.g. <a href="example.ort?a=b&amp;c=d">
Apr 29 10:37:42 <mars>  no, I didn't know that
Apr 29 10:38:06 <abentley>      mars: It is very common to do otherwise, but it's not valid HTML.
Apr 29 10:38:23 <mars>  would the w3c validator catch that?  Or our linter?
Apr 29 10:38:31 <intellectronica>       abentley: i think the nest solution for that is to build your URL in python, using a formatter
Apr 29 10:38:56 <intellectronica>       it's quite rare that you'll have a fixed URL with GET parameters you can include in a template directly
Apr 29 10:38:59 <abentley>      mars: I think the wc3 validator would.  I can report back if you like.
Apr 29 10:39:50 <barry> abentley: wouldn't that be example.ort?a=b%26b&b=c ?
Apr 29 10:39:51 <abentley>      intellectronica: That's kinda where I'm going to.  Should we be calling "escape" on URLs that we provide to TAL as part of a structure?
Apr 29 10:40:06 <mars>  abentley, we first need to answer a larger question - it is valid HTML, but do we actually feel the need to adhere to it strictly?
Apr 29 10:40:06 <rockstar>      barry: yea, that is right.
Apr 29 10:40:24 <mars>  abentley, I ask because I don't know if we absolutely ensure we have valid markup throughout Launchpad
Apr 29 10:40:33 <mars>  abentley, or if it is a "nice to have"
Apr 29 10:40:39 <rockstar>      mars: it's a goal we should aspire to.
Apr 29 10:40:42 <abentley>      barry: No, that would make the value of a "b&"
Apr 29 10:40:49 <abentley>      barry: I think.
Apr 29 10:40:53 <intellectronica>       abentley: i think we need to go further, and have a function that builds the url for us from base url and a two-tuple of query parameters
Apr 29 10:41:01 <mars>  rockstar, agreed
Apr 29 10:41:14 <barry> th evalue would be 'b&b'
Apr 29 10:41:24 <barry> was that not the intent?
Apr 29 10:41:33 <abentley>      barry: no.
Apr 29 10:41:41 <barry> er, sorry, 'b&'
Apr 29 10:41:48 <abentley>      The intent was a=b, c=d
Apr 29 10:42:01 <rockstar>      Well, in the case that brought this up, I was just using canonical_url, so maybe canonical_url would be good to escape these things.
Apr 29 10:42:51 <BjornT>        rockstar: canonical_url is used in other places than html templates
Apr 29 10:43:00 <abentley>      rockstar: If canonical_url html-escaped the URLs, they would not be valid URLs.  They would be the HTML-escaped forms of valid URLs.
Apr 29 10:43:12 <barry> intellectronica: well, urlllib.urlencode() is more or less what we should be using i think
Apr 29 10:43:16 <rockstar>      BjornT: okay,  I was just throwing it out there.
Apr 29 10:43:54 <barry> and we may already be using it
Apr 29 10:44:28 <abentley>      barry: The unescaped URL is "example.ort?a=b&c=d" and the escaped version is "example.ort?a=b&amp;c=d"
Apr 29 10:44:29 <intellectronica>       but if canonical_url would accept query parameters, all we need is for fmt:url to escape the result
Apr 29 10:45:02 <intellectronica>       or maybe i'm talking nonsense, because how would you pass the parameters to fmt:url :-/
Apr 29 10:45:17 <barry> abentley: how does a url parser know that your second example doesn't map to {'a':'b', 'amp;c':'d'} ?
Apr 29 10:45:20 <abentley>      intellectronica: Right.  TAL can DTRT if we let it.  But if we pass it as a structure, we have to take care of it ourselves.
Apr 29 10:46:03 <abentley>      barry: A URL parser should not see the escaped version, because the HTML parser should have already decoded it.
Apr 29 10:46:11 <intellectronica>       abentley: so i guess just 1. make canonical_url accept query_parameters. 2. add a wrapper around it that escapes the result
Apr 29 10:46:22 <rockstar>      intellectronica: +1
Apr 29 10:46:30 <barry> well, the html parser then.  seems ambiguous syntax to me
Apr 29 10:46:58 <abentley>      barry: & always introduces an entity reference.  Where's the ambiguity?
Apr 29 10:47:35 <flacoste>      abentley: you are saying that all urls containing & to separate query parameters in HTML should be escaped?
Apr 29 10:47:37 <BjornT>        intellectronica: why do we need a wrapper, instead of using escape() on the result?
Apr 29 10:47:47 <barry> well not always.  it doesn't in the a=b&c=d case (even if that's not standard, its widespread common practice)
Apr 29 10:47:59 <intellectronica>       BjornT: one less function to call. but i agree, it doesn't matter that much
Apr 29 10:47:59 <abentley>      flacoste: Yes.
Apr 29 10:48:06 <flacoste>      <a href="?param1=value1&amp;param2=value2">?
Apr 29 10:48:21 <flacoste>      the above would be correct?
Apr 29 10:48:22 <BjornT>        flacoste: you could simplify that by saying that all urls in html should be escaped
Apr 29 10:48:30 <flacoste>      but nobody does that!
Apr 29 10:48:33 <abentley>      barry: The spec is unambiguous.  Browsers have to be more careful.
Apr 29 10:48:34 <flacoste>      that's non-sense
Apr 29 10:48:42 <flacoste>      all of the web is broken
Apr 29 10:48:52 <flacoste>      i mean even gmail doesn't escape it's URLs
Apr 29 10:48:56 <abentley>      flacoste: Okay, so your vote is to ignore the parts of HTML that we don't like?
Apr 29 10:49:00 <flacoste>      yes
Apr 29 10:49:05 <barry> abentley: maybe, but in that case, it's all guesswork
Apr 29 10:49:12 <flacoste>      especially if it's a part that nobody cares about
Apr 29 10:49:23 <BjornT>        intellectronica: well, using escape means one less function to maintain. it also seems that passing query parameters to canonical_url is quite rare; usually we have specific views we pass the parameters to
Apr 29 10:49:26 <mars>  flacoste, yes, same goes for CSS IE hacks - it generates invalid CSS, but pragmatism justifies it
Apr 29 10:49:33 <rockstar>      flacoste: that sounds very Microsoft of you.  :)
Apr 29 10:49:35 <abentley>      barry: That's right.  Wouldn't it be nice if more sites provided valid HTML so they didn't have to?
Apr 29 10:49:51 <barry> abentley: sure.  but it'll never happen :)
Apr 29 10:49:52 <flacoste>      abentley: did you try HTML escaping a URL in an href?
Apr 29 10:50:26 <barry> abentley: can you tell me, are you trying to solve a real problem (i.e. is there an open bug)?
Apr 29 10:50:36 <abentley>      flacoste: I've done it in the past.  I didn't do it specifically for this meeting.
Apr 29 10:50:55 <flacoste>      abentley: and the browser submitted the right thing?
Apr 29 10:50:59 <barry> abentley: i'm not being facetious.  i'm really curious if we have users who are affected by this
Apr 29 10:51:04 <abentley>      barry: It's not related to a bug.  It's something that came up in a review.
Apr 29 10:51:13 <barry> abentley: ah, ok, thx
Apr 29 10:51:14 <abentley>      flacoste: Yes.
Apr 29 10:51:46 <barry> abentley: i'm sorry, we've run out of time again.  and apologies for going late today.  perhaps we can take this to the ml?
Apr 29 10:51:50 <BjornT>        flacoste: gmail's front page does escape &. at least the links i looked at
Apr 29 10:52:38 <flacoste>      really!
Apr 29 10:53:08 <BjornT>        flacoste: also, we usually do it in launchpad as well, because tal does it for us
Apr 29 10:53:19 <abentley>      flacoste: On this page, the "wish I were an asshole" link is escaped: http://aaronbentley.com/music/news/myspaced-11-09-2006
Apr 29 10:53:38 <flacoste>      and amazon too, look at that!
Apr 29 10:54:02 <flacoste>      you learn something new everyday!
Apr 29 10:54:12 <abentley>      barry: No worries.  I'm not sure it's worth ML discussion, even.
Apr 29 10:54:39 <barry> we should do this by not doing this <wink>.  iow, whatever code we use to inject these urls into html pages should do it for us
Apr 29 10:55:11 <barry> abentley: ok.  let's cut this off then, since we're 10 minutes over
Apr 29 10:55:15 <BjornT>        barry: that's how it works today, except that you can turn it off by using structure
Apr 29 10:55:33 <barry> BjornT: so structure should dtrt!
Apr 29 10:56:04 <barry> anyway, we can take this up again next week or go to the ml
Apr 29 10:56:07 <abentley>      barry: I think that would involve AI...
Apr 29 10:56:21 <barry> #endmeeting

AsiaPac

Apr 29 18:32:04 <barry> #startmeeting
Apr 29 18:32:05 <MootBot>       Meeting started at 17:32. The chair is barry.
Apr 29 18:32:05 <MootBot>       Commands Available: [TOPIC], [IDEA], [ACTION], [AGREED], [LINK], [VOTE]
Apr 29 18:32:08 <barry> mwhudson: hi
Apr 29 18:32:10 <barry> jml: hi
Apr 29 18:32:12 <barry> thumper: hi
Apr 29 18:32:52 <barry> jml, thumper ping?
Apr 29 18:32:57 <jml>   hi
Apr 29 18:33:25 <barry> [TOPIC] agenda
Apr 29 18:33:26 <MootBot>       New Topic:  agenda
Apr 29 18:33:32 <barry>  * Roll call
Apr 29 18:33:32 <barry>  * Action items
Apr 29 18:33:32 <barry>  * Peanut gallery (anything not on the agenda)
Apr 29 18:33:32 <barry>    * JS coding guidelines (mars, intellectronica)
Apr 29 18:33:32 <barry>    * ampersands-in-urls (abentley)
Apr 29 18:33:40 <barry> any word from thumper?
Apr 29 18:34:16 <jml>   he said he was going to attend.
Apr 29 18:34:31 <mwhudson>      i'm sure he'll read this eventually :)
Apr 29 18:34:37 <barry> ok, we'll just start anyway :)
Apr 29 18:34:51 <thumper>       hereish
Apr 29 18:34:58 <barry> [TOPIC] update from ameu
Apr 29 18:34:58 <MootBot>       New Topic:  update from ameu
Apr 29 18:35:10 <barry> so a couple of things from the ameu meeting...
Apr 29 18:35:29 <barry> al-maisan will be on load to ubuntu foundations for the next 3 months so won't be doing reviews
Apr 29 18:35:44 <barry> cprov moved to euro timezone and will be mentoring noodles
Apr 29 18:35:49 <mwhudson>      ubuntu foundations ?
Apr 29 18:35:59 <barry> i'll need to juggle the ocr schedule a bit
Apr 29 18:36:02 <barry> mwhudson: apparently so!
Apr 29 18:36:28 <mwhudson>      which team is that again? cjwatson's?
Apr 29 18:36:42 <jml>   well, Robbie's the manager, but yes.
Apr 29 18:36:43 <barry> danilo_ and cprov are off tomorrow, lots of people are off on friday (not us nose-to-the-grindstone americans tho)
Apr 29 18:36:52 <barry> dunno what he'll be working on
Apr 29 18:37:24 <mwhudson>      ok
Apr 29 18:37:56 <barry> we talked about javascript coding guidelines for true/false comparisons and decided that our js code should follow python's eibti rules
Apr 29 18:38:13 <barry> i.e. if (foo === undefined) over if (!foo)
Apr 29 18:38:45 <mwhudson>      okay
Apr 29 18:38:51 <jml>   sure. as long as it works.
Apr 29 18:38:51 *       thumper hopes if (!foo)
Apr 29 18:38:51 <barry> we also had a long discussion about escaping & in url query strings, without any resolution
Apr 29 18:38:59 <barry> thumper: sorry, nope
Apr 29 18:39:08 <mwhudson>      are our javascript coding guidelines written down anywhere?
Apr 29 18:39:08 <thumper>       :(
Apr 29 18:39:13 <barry> thumper: mars was the lone holdout
Apr 29 18:39:47 <jml>   I can't spot the question being responded to
Apr 29 18:39:48 <mars>  mwhudson, http://dev.launchpad.net/JavaScriptReviewNotes
Apr 29 18:39:48 <barry> mwhudson: such as they are: https://dev.launchpad.net/JavaScriptReviewNotes
Apr 29 18:40:09 <barry> mars: hi!  this reminds me: can you capture this decision on that page?
Apr 29 18:40:20 <mars>  sure
Apr 29 18:40:23 <mwhudson>      mars, barry: thanks
Apr 29 18:40:24 <barry> mars: thanks
Apr 29 18:40:39 <barry> that's it from ameu
Apr 29 18:40:58 <barry> [TOPIC] action items
Apr 29 18:40:58 <MootBot>       New Topic:  action items
Apr 29 18:41:03 <barry> no action items for asiapac
Apr 29 18:41:16 <barry> [TOPIC] mentoring update
Apr 29 18:41:16 <MootBot>       New Topic:  mentoring update
Apr 29 18:41:20 <barry> none for you guys ;)
Apr 29 18:41:50 <barry> that's really all i have, so...
Apr 29 18:42:04 <barry> [TOPIC] peanut gallery
Apr 29 18:42:05 <MootBot>       New Topic:  peanut gallery
Apr 29 18:42:11 <barry> do you guys have anything you want to bring up?
Apr 29 18:42:17 <jml>   nothing from me. there's not been any code to review :)
Apr 29 18:42:28 <mwhudson>      heh yeah
Apr 29 18:42:31 <mwhudson>      integration iz us
Apr 29 18:42:32 *       leonardr has quit ("Leaving")
Apr 29 18:42:40 <barry> you guys are welcome to join me friday america time :)
Apr 29 18:43:52 <barry> well, if there's nothing else...
Apr 29 18:44:26 <jml>   still no.
Apr 29 18:44:33 <barry> okay!
Apr 29 18:44:35 <barry> #endmeeting

ReviewerMeeting20090429 (last edited 2009-04-29 22:47:05 by barry)