[00:00] <mwhudson> oh, i mangled the stacked on url it seems
[00:01] <jml> kfogel: so, from 'def prefer_recent_revs', you could instead write
[00:01] <kfogel> jml: ok, string extension all fixed
[00:01] <jml> s += ''.join(map(str, sorted(self._landings, key=lambda x: x.top_rev.revno)))
[00:02] <kfogel> jml: (blank line after class doc strings done)
[00:02] <kfogel> reading
[00:02] <kfogel> jml: nice
[00:02] <jml> kfogel: and that would replace the for loop & function.
[00:02] <jml> kfogel: if you prefer named functions (and We generally do, but I don't care), you can split out the lambda
[00:02] <jml> kfogel: using 'key' is almost always faster than a cmp-based sort.
[00:02] <kfogel> jml: wait, that's not really from prefer_recent_revs, right?
[00:03] <kfogel> jml: it's from the outer  func
[00:03] <kfogel> jml: IOW, def prefer_recent_revs() would just go away
[00:04] <jml> kfogel: I meant 'from' as in 'starting at'
[00:04] <kfogel> jml: nod
[00:04] <jml> kfogel: but yes, you are right.
[00:05] <kfogel> jml: hmm, doing that resulted in a difference
[00:05] <kfogel> jml: let me investigate
[00:06] <kfogel> jml: oh, it reversed the order of the sort
[00:06] <kfogel> jml: note the order of a and b in prefer_recent_revs
[00:07] <jml> kfogel: ahh, easy enough to add a negate to the key function.
[00:07] <kfogel> jml: beautiful
[00:07] <jml> unless they are strings
[00:08] <jml> in which case, umm...
[00:08]  * jml learns Python again
[00:08] <kfogel> jml: they're numbres
[00:08] <kfogel> jml: they should be, anyway
[00:08] <kfogel> wait
[00:08] <kfogel> hmmm
[00:08] <kfogel> er
[00:08] <jml> sorted(list, key=whatever, reverse=True)
[00:08] <jml> that's clearer anyway
[00:08] <jml> http://docs.python.org/library/functions.html#sorted
[00:08] <kfogel> jml: wow, never knew about reverse=True
[00:09] <kfogel> great
[00:09] <jml> kfogel: sometimes the stdlib is awesome :)
[00:09] <kfogel> jml: now there's no difference
[00:09] <jml> cool.
[00:09] <kfogel> jml: there's another sort function elsewhere
[00:09] <kfogel> I'll see if I can do the same thing.
[00:11] <jml> kfogel: when you're done with that can you commit & push the branch so I can take another look.
[00:11] <kfogel> jml: sure, one min
[00:13] <jml> cheers.
[00:17] <mwhudson> jml: in your branch that you sent to me, there are a bunch of XXXed questions in lib/devscripts/tests/test_sourcecode.py
[00:17] <mwhudson> jml: i'm sure some of them have answers now
[00:17] <mwhudson> (like "can we rely on twisted")
[00:17] <mwhudson> jml: can you run through and update them?
[00:18] <kfogel> jml: pushed.  UI doesn't show all revs yet, but presumably bzr has them.  r9384 is latest.
[00:20] <kfogel> jml: good advice on trivial bugs, btw (on ml)
[00:21] <jml> kfogel: thanks
[00:21] <jml> mwhudson, will do.
[00:21] <jml> ta :)
[00:21] <mwhudson> jml: thanks
[00:21] <mwhudson> gosh, i know bash too well
[00:21]  * jml is a little bit closer to my second cup of coffee
[00:23] <jml> kfogel: more stylistic stuff coming your way
[00:24] <jml> kfogel: # where "{X}" means "LogRevision for X" -- needs two more spaces of indent to align with the comment above
[00:24] <jml> and a blank line afterwards to sate the PEP 8 gods' thirst.
[00:24] <jml> kfogel: don't align '=', but rather keep one space on either side.
[00:24] <jml> kfogel: empty list is written like s = [], not s = [ ]
[00:25] <jml> similarly empty dict is {} not { }
[00:25] <kfogel> jml:  reading
[00:25] <jml> kfogel: indentation in get_ex_cons is still 2-space, should be 4-space.
[00:26] <sinzui> jml: I started writing a new linter. It uses pep9.py
[00:26] <kfogel> jml: ok, correcting, and dang it, I set the py-indent-offset var to 4, what the heck is up with that persistent 2 space then?
[00:26] <sinzui> jml: I started writing a new linter. It uses pep8.py
[00:26] <jml> sinzui, I actually have pep8.py wired up to my emacs
[00:26] <jml> sinzui, you don't think I _remember_ all this crap? :)
[00:26] <jml> kfogel: blame barry's non-standard python mode :P
[00:26] <sinzui> jml: mine is wired in to gedit. I am announcing the release in two days
[00:27] <jml> sinzui, cool.
[00:27] <sinzui> jml: I think we should abandon pylint. pyflakes + pep8 is good enough for me
[00:27] <jml> kfogel: get_ex_cons could probably be a classmethod, rather than a top-level function
[00:27] <kfogel> jml: when you say "don't align '=', you mean for example in ContainerRevision.__str__() ?
[00:27] <jml> sinzui, +1
[00:27] <kfogel> jml: (missing " above, sorry)
[00:27] <jml> kfogel: exactly so.
[00:27] <kfogel> jml: ok, fixing
[00:28] <kfogel> jml: but I don't have to like it :-)
[00:32] <jml> kfogel: heh heh.
[00:32] <jml> kfogel: in LogExCons.__init__, you assign to a local variable to no obvious effect (current_top_level_rev = None). A bug, perhaps?
[00:32] <jml> kfogel: page_intro is really wide. Is it possible to wrap it without breaking wiki formatting?
[00:33] <jml> kfogel: I dropped out, what was the last thing I said?
[00:33] <kfogel> jml: hunh, I made get_ex_cons() a class method, and now it produces an empty page
[00:33] <kfogel> one sec
[00:33] <kfogel> jml: last thing you said was:
[00:33] <kfogel> kfogel: page_intro is really wide. Is it possible to wrap it without breaking wiki formatting?
[00:34] <kfogel> jml: sure, I can use "\" at end of line in page_intro, right?
[00:34] <jml> kfogel: thanks.
[00:34] <jml> nothing got dropped the.
[00:34] <kfogel> jml: if a class method is to be used privately only, should I prefix its name with "_" ?
[00:35] <jml> kfogel: yes, in general.
[00:35] <jml> kfogel: but maybe I was mistaken about the classmethod thing...
[00:36] <kfogel> jml: ? no other class uses it, though it is sort of of general utility
[00:37] <jml> kfogel: well, if it looks better, do it :)
[00:37] <jml> kfogel: I just realized that I misinterpreted its purpose, and advised based on that bad interpretation
[00:37]  * jml almost always uses classmethod to make factories for the class.
[00:38] <kfogel> jml: the current_top_level_rev intialization question is a deep philosophical question, actually: do we believe in "init explicitly to an invalid value" or do we believe in "don't init it if the initial value shouldn't matter" ?
[00:38] <kfogel> jml: I don't care which the answer is; if it's 2, I'll do 2.
[00:39] <kfogel> jml: re the get_ex_cons() thing: I think on balance top-level method feels a bit more right, so I'm going to uncommit that.  Not that it's a big deal either way.
[00:40] <jml> kfogel: cool.
[00:40] <kfogel> jml: how about the init question?
[00:41] <jml> kfogel: it's a post-2nd-coffee question.
[00:41] <kfogel> jml: there I have consulted with dusty tomes in Greek and Latin, and still find no certain answer.  I rely on your wisdom.
[00:41] <jml> kfogel: I tend to prefer instantiating actual honest-to-goodness objects.
[00:42] <kfogel> jml: mmm, good point -- the initialization misleads as to the expected type
[00:42] <kfogel> jml: but I don't have an object yet
[00:43] <jml> sec.
[00:43]  * kfogel waits for the caffeine to reach jml's capillaries
[00:44] <jml> kfogel: this is how I would do the string building stuff: http://pastebin.ubuntu.com/268841/
[00:44]  * jml now turns to current_top_level_rev...
[00:45] <jml> kfogel: ahh, right.
[00:45] <jml> kfogel: set it to None.
[00:45] <kfogel> jml: thx, I didn't know about string.extend()
[00:45] <jml> kfogel: it's list.extend
[00:45] <jml> kfogel: what it's doing is building a list of lines.
[00:45] <kfogel> d'oh, sorry
[00:46] <jml> kfogel: and then joining those lines together with '\n' as a separator.
[00:46] <kfogel> jml: I think I'm going to rename that var from "s" so as not to confuse anymore
[00:46] <kfogel> jml: one sec while I make everyone do that
[00:46] <kfogel> jml: (I think it's worth it; good habits now == easier reviews later)
[00:46] <jml> kfogel: maybe even to something that actually means something about the problem domain? :)
[00:46] <jml> kfogel: ok, while you do that, I'll make a coffee. :)
[00:47] <kfogel> jml: fwiw, my natural emacs indentation does not put the first " four spaces after the column of the [ above it, in this new list/string universe.
[00:48] <kfogel> sorry
[00:48] <kfogel> I mean
[00:48] <kfogel> it does not put it right under the [, but instead under the =
[00:48] <kfogel> I wonder if that is due to some indentation var still set to 2
[00:48]  * kfogel looks
[00:48] <kfogel> yup
[00:48] <kfogel> py-indent-offset got reset to 2
[00:48] <kfogel> dunno what's up with that; I'm just going to fix it in the vars line for the file
[00:49] <kfogel> (and deal with my .emacs later -- it has to be compatible with many projects, not just lp)
[00:55] <jml> kfogel: emacs should be better at per-project configuration
[00:55] <jml> kfogel: ok, so... where are we.
[00:55] <kfogel> jml: I'm still transforming the list/string stuff
[00:56] <kfogel> jml: interesting; when I have only one elt, I can still use .extend()
[00:58] <jml> kfogel: yeah. it's just joining one list onto the end of another
[00:58] <kfogel> jml: yeah, just interesting that it will also join an elt -- i.e., won't create a terminal cdr, as (some) lisps might.
[00:59] <barry> bac: done to 10 failures
[00:59] <jml> kfogel: can you give an example?
[01:00] <mwhudson> kfogel: python lists are lisp vectors, not lisp lists
[01:00] <kfogel> mwhudson: thx
[01:00] <mwhudson> (gosh, brain fade, lisp does call 1-d arrays vectors, right?)
[01:00] <kfogel> mwhudson: I think so
[01:04] <jml> kfogel: btw, you should have your name and the date in XXX comments
[01:05] <kfogel> jml: "XXX: Karl Fogel 2009-09-10: ..." ?
[01:05] <kfogel> jml: (trying to make you a lisp example, but it's back-burner)
[01:05] <jml> kfogel: yeah. thanks.
[01:05] <jml> I guess you are supposed to use WikiName...
[01:05] <kfogel> jml: really?
[01:06] <kfogel> jml: ok
[01:06] <jml> but I couldn't possibly force someone else to do that, given I dislike it and there's no actual reason.
[01:06] <kfogel> jml: ok :-)
[01:07] <kfogel> jml: anything else?
[01:07] <kfogel> jml: branch pushed again, to r9388
[01:08] <jml> kfogel: alpha-sort imports, blank line between stdlib imports and bzr imports. barry has an elisp thingy to do this for you on EmacsTips
[01:09] <barry> kfogel: if you grab the latest python-mode.el, C-c C-f is bound to py-sort-imports
[01:11] <kfogel> barry:  it only works on multiline imports
[01:11] <jml> :(
[01:11] <kfogel> barry: gets an "unbalanced parentheses" error for me
[01:11] <kfogel> same from EmacsTips
[01:11] <kfogel> jml: is this right:
[01:11] <kfogel> import getopt
[01:11] <kfogel> import re
[01:11] <kfogel> import sys
[01:11] <kfogel> from bzrlib.branch import Branch
[01:11] <kfogel> from bzrlib import log
[01:11] <kfogel> from bzrlib.osutils import format_date
[01:11] <barry> kfogel: yeah, it looks for names inside parens
[01:11] <kfogel> or should bzrlib be first?
[01:12]  * mwhudson still needs to write something/figure out how to drive ropemacs to do the import statements automatically
[01:12] <jml> kfogel: bzrlib first
[01:12] <kfogel> and sorted within that?
[01:12] <jml> mwhudson, please please please.
[01:12] <jml> kfogel: I don't understand.
[01:12] <kfogel> jml: I can think about about three different ways that might be Right.
[01:12] <kfogel> want to just paste what the right way is?
[01:12] <mwhudson> jml: after filtering those questions, can you commit and push?
[01:12] <jml> yeah, ok.
[01:12] <jml> mwhudson, yes, I will.
[01:13] <mwhudson> thank you
[01:13] <kfogel> jml: there are 3 bzrlib lines; what order should they be in?  (granted that they come before the other imports)
[01:13] <jml> mwhudson, this review is consuming all of my mental bandwidth right now
[01:13] <kfogel> mwhudson: he's mine, don't touch him
[01:13] <mwhudson> jml: ok
[01:14] <jml> the slowness and unreliability of my internet connection is not helping...
[01:15] <jml> kfogel: http://paste.ubuntu.com/268852/
[01:15] <kfogel> jml: thx
[01:16] <jml> kfogel: don't use has_key
[01:16] <kfogel> jml: committed and pushed (r9389)
[01:16] <kfogel> dang it :-)
[01:16] <kfogel> jml: ok
[01:16] <jml> you want... umm...
[01:17] <kfogel> jml: 'in' ?
[01:17] <kfogel> jml: btw, why not use has_key()
[01:17] <kfogel> ?
[01:17] <jml> ec = all_ex_cons.get(a, None)
[01:17] <kfogel> jml: ok, wait a sec
[01:17] <kfogel> How is that better?
[01:17] <kfogel> IMHO it's worse, in terms of communicating what we're doing there.
[01:17] <jml> if ec is None:\n    ec = ExCon(a); all_ex_cons[a] = ec
[01:17] <jml> well, you can do the if a in all_ex_cons
[01:18] <jml> has_key is deprecated, and won't be in future versions of python
[01:18] <kfogel> ah
[01:18] <jml> either use 'get' or 'in'.
[01:19] <jml> I tend to lean to leap-before-you-look (hence the get), but both are appropriate here.
[01:19] <kfogel> jml: I'll wait for moer comments before pushing again
[01:19] <kfogel> (or for EOT)
[01:20] <jml> kfogel: last thing
[01:20] <kfogel> ?
[01:20] <jml> kfogel: dict colon alignment is kind of like = alignment
[01:20] <kfogel> ah
[01:20] <jml> kfogel: {a: b, c: d, ...}
[01:21] <kfogel> jml: in main(), right?
[01:21] <kfogel> jml: any other places?
[01:22] <jml> kfogel: no, just main
[01:22] <kfogel> jml: pushed to r9391
[01:22] <jml> kfogel: thanks.
[01:23] <jml> kfogel: please merge it.
[01:23] <kfogel> jml: thank you for the thorough review
[01:23] <jml> kfogel: np.
[01:24] <jml> kfogel: are we going to have that phone call?
[01:25] <kfogel> jml: bzr pqm-submit -m "[r=jml][ui=none] Add utilities/community-contributions.py script, for updating https://dev.launchpad.net/Contributions."
[01:25] <kfogel> ?
[01:25] <kfogel> jml: on second thought, leaving out the latter half, as the script already says that.
[01:25] <kfogel> (and if it ever changes, the script will change)
[01:26] <jml> heh
[01:26] <jml> sure.
[01:29] <kfogel> jml: submitted!
[01:33] <kfogel> jml: are you seeing my priv msgs?
[01:34] <jml> sorry
[01:34] <jml> I have dodgy internet
[01:36] <kfogel> np
[01:56] <kfogel> intellectronica: hey, what's diff btw a welcome msg and a topic?
[01:58] <intellectronica> kfogel: a welcome message is sent to you once and can have more than one line
[01:58] <intellectronica> i don't remember seeing them on freenode, though, so maybe you can't use them
[01:58] <kfogel> intellectronica: well, it's important that the msg be re-gettable anyway, which /topic is
[01:58] <kfogel> intellectronica: so i think maybe topic is better anyway?
[01:59] <kfogel> intellectronica: I type "/topic" all the time in here, and in other channels.
[01:59] <kfogel> intellectronica: (I mean to read the topic, not to change it)
[02:00] <intellectronica> kfogel: fair enough. i don't rely on it as much, but that's hardly statistically significant
[02:00] <kfogel> intellectronica: my use is not be statistically significant either; so hard to get real data, unless Freenode chooses to share with us :-).
[02:04] <intellectronica> indeed
[02:05] <intellectronica> anyway...
[02:05]  * intellectronica goes to dream in ascii art
[02:09]  * jml more coffee & more toast, then mwh-related branches.
[02:10]  * mwhudson lunches
[02:22] <jml> fwiw, my internet connection today is really crappy, so please forgive my occasional lapses.
[02:26] <jml> mwhudson, I've filtered those questions.
[02:38] <mwhudson> jml: thanks
[02:44] <jml> mwhudson, you aren't in #launchpad-reviews, I take it.
[05:37] <jml> internet hates me
[05:37] <jml> x hates me
[05:38] <jtv> jml: we don't hate you though
[05:39] <jtv> (Insert your favorite snide follow-up here)
[05:40] <jml> it's entirely possible that firefox hates me most of all
[05:40] <jtv> wouldn't put it past it
[05:41] <jtv> jml: is it perhaps time to get to the root cause of all this hatred?
[05:41] <jtv> face it, with all the variables, the only constant is you.
[06:03]  * jml bravely launches firefox again
[06:28] <jml> mwhudson, hi
[06:28] <mwhudson> jml: hello
[06:28] <jml> mwhudson, I've pushed up my changes to that branch
[06:28]  * mwhudson tests his ec2test-hackery branch on itself
[06:28] <jml> mwhudson, how have things gone with you?
[06:29] <jml> (sorry, it's been a very distracty day)
[06:29] <mwhudson> jml: i have moved some code around in ec2test
[06:29] <mwhudson> jml: yeah, no worries
[06:29] <jml> mwhudson, yay
[06:29] <jml> I guess I'll resubmit the mp or something
[06:29] <mwhudson> jml: specifically, the connect_as_user methods now return something rather than mutating instance state
[06:29] <mwhudson> jml: and the code to make a unix user is on instance now
[06:30] <jml> soooo happy
[06:30] <mwhudson> yeah, it's very much an improvement
[06:30] <mwhudson> oh heavens
[06:30] <jml> mwhudson, I really wanted to do that, but couldn't quite see how, at the time.
[06:30] <jml> mwhudson, https://code.edge.launchpad.net/~jml/launchpad/better-sourcecode-update/+merge/11580
[06:31]  * jml also wants to review all of maxb's recent branches.
[06:31] <jml> oh man.
[06:31] <jml> and my computer crashed / hanged before I could submit that other one, I think.
[06:32] <mwhudson> jml: boto seems to import hashlib
[06:32] <jml> mwhudson, why is this a problem?
[06:32] <mwhudson> jml: does ec2test work with python 2.4 at all?
[06:33] <jml> mwhudson, yeah, I think so.
[06:33] <jml> but maybe I'm wrong
[06:35]  * jml files https://bugs.edge.launchpad.net/launchpad-foundations/+bug/427703
[06:35] <ubot3> Malone bug 427703 in launchpad-foundations "Way to see which branches I'm testing with ec2test right now" [Undecided,New]
[06:48] <jml> ok
[06:49] <jml> let's see if my computer will stay up long enough for this to work.
[07:06] <jml> the ohloh import is up to phase 3!
[07:06] <jml> Step 3 of 3: Counting lines of source code (Running 4875/66451)
[07:09] <mwhudson> jml: cool
[07:31] <jml> mwhudson, were you planning on reviewing the better-sourcecode-update branch today?
[07:31] <jml> didrocks, wuuu.
[07:31] <didrocks> :)
[07:31] <didrocks> ok, I'm trying to checkout it in intrepid
[07:32] <jml> didrocks, the secret page is https://dev.launchpad.net/Getting
[07:32] <jml> didrocks, getting a Launchpad dev environment up and running is not as easy as it should be.
[07:32] <didrocks> yes, I already read this "secret" page :)
[07:32] <didrocks> ok, trying it right now
[07:32] <mwhudson> jml: yeah, i'll try
[07:33] <jml> mwhudson, cool. thanks.
[07:33] <didrocks> ok, bzr doesn't know the format, let me have a look at the bzr ppa for intrepid
[07:38] <mwhudson> jml: done
[07:39] <jml> mwhudson, hanks.
[07:40] <didrocks> jml: Hum, it will definitevely broke my intrepid server if I accept a "Score is -9863" :)
[07:40] <didrocks> jml: Well, I will be able to do it from home, can you drop me some instructions so that I can start on it?
[07:41] <jml> didrocks, ok. that sucks.
[07:41] <jml> didrocks, sure. have you filed a bug for it yet?
[07:41] <didrocks> no, I'm doing it right now
[07:41] <didrocks> jml: against launchpadlib, right?
[07:41] <jml> https://bugs.edge.launchpad.net/launchpad-registry/+bug/389872
[07:41] <ubot3> Malone bug 389872 in launchpad-registry "GPG keys not exposed in API" [Low,Triaged]
[07:42] <didrocks> ok, it already exist, great :)
[07:42] <jml> didrocks, I'll make some comments there.
[07:42] <didrocks> jml: thanks, and I try to assign it to myself :)
[07:42] <jml> :)
[07:59] <jml> didrocks, done
[08:02] <didrocks> jml: yes, I'm assigning the bug to myself. I hope it will be a little more clear when seeing the code. Thanks :)
[08:02] <jml> didrocks, np.
[08:02] <jml> didrocks, good luck!
[08:02] <didrocks> jml: thanks! I will certainly ping you :)
[08:03] <jml> didrocks, note that I'm in Australia for the next week and a bit, so you may find timezones to be a problem.
[08:03] <jml> didrocks, people in this channel will gladly help you though, if I'm not around.
[08:04] <didrocks> jml: ok, I'll just ask here. Enjoy Australia :)
[08:15]  * mwhudson eods
[08:16] <jml> mwhudson, have a good weekend.
[08:16] <mwhudson> jml: well i'm working tomorrow...
[08:16] <jml> mwhudson, oops
[08:16] <jml> mwhudson, have a good evening then :)
[08:18] <mwhudson> (swap day for later in the year, so i'm not that upset about it...)
[08:32] <adeuring> good morning
[09:19] <xaver> hi i have trouble with launchpad repo. the download start with 900-1200 kb/s and slow down to 1000-3000 B/s
[09:19] <xaver> hi
[09:20] <mrevell> Guten morgen
[09:20] <xaver> i have trouble with launchpad repo. the download start with 900-1200 kb/s and slow down to 1000-3000 B/s (kann auch deutsch schreiben)
[09:20] <xaver> ^^
[09:22] <mrevell> xaver: Sorry, that's the limit of my German :) What are you downloading? Launchpad itself or something from a PPA?
[09:22] <xaver> ppa
[09:22] <xaver> i have no idear why
[09:23] <xaver> at home everything run fine
[09:24] <noodles775> xaver: kommisch - ist es genau so für anderer PPAs?
[09:24] <xaver> is nur bei ppa -> andere sidn kein problem nur die paketquelle
[09:25] <xaver> nervig ist es bei großen files, keline da starte ich neu und shcon sind die da aber 30 mb aufwärts ist es müll
[09:25] <jml> mrevell hello :)
[09:26] <mrevell> hi jml
[09:26] <xaver> hi
[09:28] <noodles775> xaver: hmm.. Ich habe kein problem - Ich hab jetzt ein update gemacht mit 3 ppas.
[09:28] <xaver> is immer also nicht nur heute
[09:28] <xaver> zuhause läuft es
[09:28] <xaver> nur hier...
[09:28] <noodles775> bigjools: any idea why ppa's specifically would always slow down for xaver?
[09:29] <bigjools> local networking issues
[09:29] <noodles775> xaver: ah, so it's probably a network issue specifically ...
[09:29] <noodles775> Yes, sounds like it, if it's specific to one location.
[09:29] <xaver> ok thx
[09:29] <noodles775> np.
[09:29] <xaver> wir hängen direkt am RZ ;)
[09:29] <bigjools> is there a proxy in the way?
[09:29] <bigjools> etc.
[09:32] <xaver> no
[09:32] <xaver> we a direct likned ion the data center
[09:32] <xaver> on
[09:32] <xaver> frist 20 mb run with 900-1200kbs
[09:33] <xaver> next second down to 1000 b/s
[09:35] <xaver> another question, i pack a lot of packages at home, is a good docu how i can help with packages for launchpad.... -> problem at home is my connetion very bad, but now i can upload it at work
[09:37] <noodles775> xaver: help with packages for Ubuntu? http://www.ubuntu.com/community/processes/newdev or https://wiki.ubuntu.com/UbuntuDevelopment
[09:47] <xaver> is in linux a programm for M$ exchange 2007 beside from evolution mail
[09:59] <xaver> bye reboot ;)
[10:11] <wgrant> noodles775: Nice new archive views.
[10:12] <noodles775> wgrant: thanks! There are still a few changes to land - but it was in a landable state.
[10:12] <noodles775> wgrant: cprov is getting ready to land a simplified "Adding this PPA to your system" portlet which will mean the sources.list details are folded by default.
[10:12] <wgrant> noodles775: Great!
[10:13] <wgrant> noodles775: The multiple <dd>s in sequence on +packages look, IMO, much better if the non-final ones have a 'margin-bottom: 0' added.
[10:13] <wgrant> noodles775: Otherwise there are awkward gaps.
[10:16] <noodles775> wgrant: hmm... I can't see the awkward gap... do you mean, for example, between the last dd under 'Number of packages' and the 'repository size' dt?
[10:16] <wgrant> noodles775: The package filter on +index is set to the right distroseries by default, but the table contains packages for all seires. Is that known?
[10:16] <wgrant> noodles775: Between the binary and source counts/sizes is the main one.
[10:17] <wgrant> There's as much of a gap between those two and between the last and the following heading.
[10:17] <maxb> woo. I just got my first ec2test email :-)
[10:18]  * wgrant eats.
[10:20] <noodles775> wgrant: nope, first bug - (actually for me the package filter is *not* being set to the correct default even though the sources.list is... :/)
[10:48] <danilos> jtv: hey, around?
[11:03] <wgrant> noodles775: You're right about it not being set by default. Firefox was just doing bad cachy things.
[11:04] <noodles775> OK, I'll fix that today.
[11:09] <wgrant> Who is behind the new DSPR index?
[11:10] <noodles775> wgrant: bigjools initially, but I think cprov-afk ended up implementing it?
[11:10] <wgrant> noodles775: I see.
[11:11] <bigjools> mostly cprov in fact, the original mockup was discarded since we decided it was no good
[11:11] <wgrant> https://edge.launchpad.net/ubuntu/+source/empathy/2.27.92-1ubuntu1
[11:11] <wgrant> The '(New)' there looks very strange and it's somewhat unobvious what it means.
[11:13] <wgrant> maxb: Aha! Your branch was merged. Very nice.
[11:25] <jtv> Hmm... why is "bzr push" transferring a hundred MB again?
[11:26] <maxb> wgrant: 1 of 6 :-)
[11:27] <maxb> no, 2 of 6 :-)
[11:28]  * wgrant prepares the second part of PPA download counts.
[11:28] <noodles775> wgrant: great! I've left space in the PPA stats portlet for that exact reason :)
[11:28] <bigjools> ha
[11:29] <noodles775> danilos: did you have an issue where the last object of a traversal was being traversed but not being added to request.traversed_objects? If so, can you tell me more?
[11:30] <danilos> noodles775: yes
[11:30] <danilos> noodles775: you just need to provide an empty Navigation implementation for your interface; see the branch you reviewed (DistroSeriesLanguage adds navigation and registers it with browser:navigation)
[11:31] <noodles775> danilos: great, thanks!
[11:31] <danilos> noodles775: salgado has a bug about it (i.e. wants to fix it so we don't have to introduce empty, silly, navigation implementations), but I forgot the number :)
[11:32] <noodles775> danilos: np - I'm unstuck now so I'm happy :)
[11:32] <danilos> noodles775: heh, you should be, I spent entire day trying to figure that out (it was a public holiday in Brazil :)
[11:33] <noodles775> danilos: yeah, I just spent 45mins looking at it, and mentioned it to bigjools who remembered you'd had that issue - yay (I didn't take in the comment in the MP).
[11:33] <bigjools> for once I actually remembered something
[11:34] <noodles775> ;)
[11:34] <danilos> bigjools: good job, here's a candy! :P
[11:34]  * bigjools licks danilo's lollipop
[11:41]  * jtv tries to forget what he just read
[12:01] <mrevell> Launchpad community meet-up in London on the 28th Sept: http://blog.launchpad.net/general/launchpad-meet-up-28th-september-the-warwick-london
[12:14] <bigjools> mrevell: we should offer a pint to anyone who turns up!
[12:15] <mrevell> bigjools: heh, maxb would get a pint in that case :)
[12:16] <bigjools> mrevell: I think I'm taking my bike down on the train this time. Walking to and from county hall was a PITA
[12:26] <bigjools> mrevell: btw, I really think the location should be in the pub opposite the Warwick
[12:29] <intellectronica> pretty much anywhere will be better than the warwick
[12:29] <intellectronica> sorry, didn't mean to be bitchy. it's about the company, not the location
[17:23] <jtv> gah... why did stacking stop working in my rf!?
[17:25] <jtv> Far as I can tell, everything is in 2a.  But:
[17:25] <jtv> Source branch format does not support stacking, using format:
[17:25] <jtv>   Branch format 7
[17:27] <jtv> danilos: I don't think I can land that test fix for you.  For some reason some branches will push and some won't.  :(
[17:28] <jtv> ah, and as soon as I said that, this one suddenly came through...  Let's see if PQM still thinks it's a "different VCSystem."
[17:35] <intellectronica> barry: i've got a lovely patch for you to review. removals only
[17:48] <mrevell> I'm off for the weekend, byeeeee
[17:48] <jtv-afk> bye mrevell!
[18:05] <intellectronica> have a loveleee weekend everyone
[19:36] <salgado> rockstar, how can we get diffs for merge proposals on launchpadlib branches? (https://code.edge.launchpad.net/~gary/launchpadlib/lp-dev-utils/+merge/11607)
[19:36] <gary_poster> salgado: I think edge updates are broken.  I asked losas about it.
[19:39] <salgado> gary_poster, I don't understand what's the relation between these.  do you mean that the script which generates diffs on edge is not running?
[19:39] <gary_poster> salgado: yeah, that's my guess
[19:39] <rockstar> salgado, I'm not sure what you mean.
[19:40]  * rockstar thinks gary_poster might be telling lies
[19:40] <gary_poster> rockstar: unintentionally :-)
[19:40] <rockstar> gary_poster, that's a given.  :)
[19:41] <salgado> rockstar, I was thinking that the script were only configured to generate diffs for launchpad branches.  should it generate diffs for any branches?
[19:41] <gary_poster> rockstar: :-) what salgado is asking about is that my MP has been sitting around for over two hours, and I still don't have a diff.  Similarly...
[19:41] <rockstar> salgado, if you're talking about moving diffs, abentley and I are talking about an oops on edge that may be caused by trying to get these moving diffs generated.
[19:41] <gary_poster> oh, no, my "similarly" example is now ok
[19:41] <rockstar> gary_poster, ah, okay, that's unrelated to what we're talking about then.
[19:42] <gary_poster> well, I should say, "oh, yes! my "similarly" example is ok now!"
[19:43] <gary_poster> but anyway, rockstar, should that page have a diff?  If not, does it indicate that something is not running somewhere, maybe?  (That was my suspicion given the recent troubles)
[19:43] <rockstar> gary_poster, are the branches actually different?
[19:43] <gary_poster> rockstar: yeah, added a buncha files
[19:43] <gary_poster> rockstar: maybe adds are not noticed?
[19:44]  * gary_poster doublechecks he has not done something stupid...
[19:45] <abentley> gary_poster: The diff is not being generated because the branches are not different.
[19:45] <gary_poster> I also moved a directory
[19:45] <gary_poster> I just tried repushing
[19:45] <abentley> gary_poster: Sorry, typo on my part.
[19:45] <gary_poster> oh?
[19:46] <abentley> gary_poster: I mistyped the command to determine whether the  branches were different.
[19:46] <gary_poster> gotcha
[19:51] <rockstar> abentley, https://launchpad.net/bugs/427383
[19:51] <mup> Bug #427383: ValueError: No JSON object could be decoded in merge through the API <api> <oops> <Launchpad Bazaar Integration:Triaged> <https://launchpad.net/bugs/427383>
[19:51] <ubot3> Malone bug 427383 in launchpad-code "ValueError: No JSON object could be decoded in merge through the API" [Medium,Triaged]
[19:51] <mup> Bug #427383: ValueError: No JSON object could be decoded in merge through the API <api> <oops> <Launchpad Bazaar Integration:Triaged> <https://launchpad.net/bugs/427383>
[19:52] <rockstar> Can we get an admin to kick ubot3?
[20:58] <maxb> ubot3 has been kicked before and has come back. To get rid of it permanently, ask #ubuntu-bots
[20:58] <ubot3> maxb: Error: I am only a bot, please don't think I'm intelligent :)
[20:58] <maxb> ubot3 owner
[20:58] <ubot3> This bot is owned by jussi01 - Questions about ubottu should be asked in #ubuntu-bots
[21:15] <abentley> rockstar: I updated bzr+ssh://bazaar.launchpad.net/~abentley/launchpad/codeimport_api and it seems to be failing differently now: http://pastebin.ubuntu.com/269372/
[21:18] <rockstar> abentley, contents of the test?
[21:18] <rockstar> abentley, actually, I'll take a look at it, and send the email to the list.
[21:18] <abentley> rockstar: You mean text of the test file?
[21:19] <rockstar> abentley, I meant the text, but don't worry about it.  I'll do some sleuthing, and if I get stuck like last time, I'll email to the list.
[21:19] <abentley> rockstar: No point sending mail to the list if this is a trivial problem.
[21:19] <rockstar> abentley, yeah, I'm not sure what's going on.  If it isn't a trivial problem, than I'll deal with it.  You're running out of core hours.
[21:20] <abentley> rockstar: Cool.
[21:21] <rockstar> abentley, also, I'm having a hard time finding the diffstat field in the database.
[21:21] <abentley> rockstar: Are you looking at the Diff table?
[21:21] <rockstar> abentley, no, I didn't know there was a Diff table.  Looking now.
[21:22] <rockstar> abentley, thanks.
[21:22] <abentley> rockstar: np
[21:27] <mwhudson> good morning
[21:33] <abentley> mwhudson: good morning.  Forgot you were around today.
[21:34] <abentley> mwhudson: Was about to invite rockstar to stand-up.
[21:39] <Fly-Man-> And another one bites the dust ....
[21:39] <Fly-Man-> What is happening with GIT imports these days ?
[21:40] <didrocks> Hey guys, I'm trying to checkout LP on mmy updated karmic, but I have an issue: http://paste.ubuntu.com/269385/
[21:41] <rockstar> abentley, let's stand then.
[21:41] <abentley> mwhudson: skype?
[21:45] <rockstar> abentley, I couldn't hear you.
[21:45] <abentley> rockstar: So I heard.
[21:46] <mwhudson> abentley, rockstar: few minutes, i'm still eating toast?
[21:47] <rockstar> abentley, hm, try again.  We can chat before mwhudson can join.
[21:49] <salgado> sinzui, thanks a lot for the help in converting person-index
[21:50] <sinzui> salgado: send me the review if you do not want to break it up
[21:51] <salgado> sinzui, ok
[21:52] <salgado> sinzui, I think the email addresses in contact-details should have a whole row for itself
[21:52] <salgado> quite often people have email addresses that are too long for the space we have there, and they will overlap with the time zone there
[21:52] <sinzui> salgado: Maybe, it was until I tried putting timezone there
[21:53] <sinzui> salgado: if the address is long, timezone should fall below it. The overlap was cause by the odd contact markup that I put on the side
[21:53]  * sinzui now doubt what he said is true
[21:53] <salgado> and I'm thinking it might be a good idea to move the openid right below the email addresses, as it's only shown when the user is looking at their own page
[21:54] <salgado> let me test it
[21:54] <sinzui> oh, yes. I prefer that too
[21:55] <mwhudson> abentley, rockstar: invite me now?
[21:56] <mwhudson> i am online, whatever skype says
[21:56] <didrocks> well, reading the mailing-list, I tried to execute make schema && make, without success, unfortunately: http://paste.ubuntu.com/269395/ :/
[21:56] <salgado> sinzui, indeed, the timezone doesn't fall below emails when they're too long
[21:57] <sinzui> salgado: So I must have been sniffing glue for lunch. Oh well. Move it to where you like, or drop it since it is on the map already
[21:58] <salgado> sinzui, I'll move it inside the two-column div, together with the rest of the stuff there
[21:58] <salgado> the problem really is with the email address thing, that needs the whole row for itself
[21:59] <sinzui> irc is just as long
[22:00] <salgado> but irc, as rendered there, can be broken into multiple lines
[22:00] <salgado> sinzui, should all of our "see-all" links not have the 'Show' bit in their text anymore?
[22:01] <sinzui> No, I had to remove them from a lot of portlets last week per beuno and kiko
[22:02] <sinzui> salgado: you might fix bug 386163 by accident
[22:02] <ubot3> Malone bug 386163 in launchpad-registry "Inconsistencies in contact detail labels on person page" [Low,Triaged] https://launchpad.net/bugs/386163
[22:02] <mup> Bug #386163: Inconsistencies in contact detail labels on person page <Launchpad Registry:Triaged> <https://launchpad.net/bugs/386163>
[22:02] <mup> Bug #386163: Inconsistencies in contact detail labels on person page <Launchpad Registry:Triaged> <https://launchpad.net/bugs/386163>
[22:02] <mup> Bug #386163: Inconsistencies in contact detail labels on person page <Launchpad Registry:Triaged> <https://launchpad.net/bugs/386163>
[22:04] <salgado> sinzui, not really by accident, but I will
[22:05] <sinzui> I see edwin fixed the irc form by accident. I'll assign it for him to close
[22:14] <salgado> sinzui, jabberids will have the same problem, but this only happens when they don't have any character (e.g. a dash) that the browser considers when breaking words
[22:15] <salgado> maybe what we need is to output our email addresses using user-part<wbr>@host.domain?
[22:15] <sinzui> Maybe we should consider somethi....yes
[22:16]  * sinzui cannot remember the name of the formatter
[22:16] <salgado> oh, a formatter?
[22:16] <barry> sinzui: ping
[22:16] <sinzui> salgado: yes there is something in tales that makes long lines wrap
[22:16] <salgado> break_long_words!
[22:16] <sinzui> hi barry
[22:17] <barry> sinzui: hi.  let's talk base-layout.txt
[22:17] <sinzui> okay
[22:18] <barry> is there anything we can do other than print huge gobs of html?  it's just so fragile and very difficult to strip down the output
[22:18] <sinzui> how to you propose we verify each element that it is required to output?
[22:18] <rockstar> abentley, upon further inspection, it looks like that's a launchpadlib error.
[22:19] <rockstar> Like it's an error in marshalling an object to rest.
[22:19] <barry> sinzui: well, let's think about it.  i guess we don't have id's for the really essential bits do we?  and if not, should we?
[22:19] <barry> i have nothing against adding ids for testing purposes
[22:19] <barry> (we do that a lot)
[22:19] <sinzui> barry: in the case of base layout, we are relying on it to make sane pages. so ids are not relevant
[22:20] <barry> sinzui: ids for testing purposes could make sense though
[22:20] <sinzui> good luck putting an id in a comment
[22:21] <barry> sinzui: so then. we does base-layout.txt give us that other page tests don't give us indirectly?
[22:21] <sinzui> barry: ids, will get you most of the way. You need to put parse <html> to get the whole doc
[22:21] <rockstar> mwhudson, could you look at https://lp-oops.canonical.com/oops.py/?oopsid=1348EA292 for me?
[22:21] <rockstar> mwhudson, I just need a hypothesis sanity check.
[22:22] <sinzui> barry: ? title, scripts, styles, meta, body with classes, headers, footers, diagnostics
[22:22] <mwhudson> rockstar: ok
[22:22] <sinzui> barry: No test other than base layout verifies those, nor should they
[22:22] <mwhudson> rockstar: simplejson.loads('') explodes like this, btw...
[22:22] <barry> sinzui: indirectly some of them are tested, e.g. titles
[22:23] <barry> sinzui: i'm not saying that's good, i'm just trying to boil this test down to essentials
[22:23] <barry> sinzui: as a doctest, you gotta admit, it's not readable :)
[22:23] <rockstar> mwhudson, yea, it's obvious there's a JSON issue here.  I feel like this might actually be lazr.restful not handling the blank correctly.
[22:24] <sinzui> barry: I direct is not good enough in this case. that test is painful because base-layout is that important. add ids if you wish, and use BS to parse <html> you still need to verify doctype and comments
[22:25] <sinzui> barry: I do not agree, because diagnosing failures in the macros was not possible without the test. You can improve the test, but I think you made changes without that test, and that is a big no no
[22:25] <barry> sinzui: well, one simple way to fix this would be to just blow away the view.render() output and paste in whatever the template outputs now.  but i wouldn't say that's a good solution.  otoh, it's not clear to me it's any worse that what it's doing now
[22:26] <sinzui> barry: you proposed ids, I said fine, why are you backtrackin?
[22:26] <barry> i'm not.  i'm looking for options
[22:27] <mwhudson> rockstar: hmm
[22:28] <sinzui> I think ids are best because we do not really care about the element, except for title. In all other cases, I think we care about the atts (class, src, href, style) so...
[22:28] <barry> ok.  i agree, let's go with ids
[22:28] <barry> thanks
[22:29] <sinzui> barry:
[22:29] <sinzui> >>> print find_tag_by_id(page, 'body-tag')['class']
[22:29] <sinzui> budy overview ponies
[22:29] <barry> yes, that's the idea
[22:30] <sinzui> barry: I think the end comment is testing using a split, so that test will continue to work
[22:31] <sinzui> barry: the doctype could be tested as a split on <html
[22:31] <rockstar> mwhudson, got time for a quick pre-imp call?
[22:32] <barry> sinzui: i'm not too worried about the doctype because ellipsis can ignore everything following.  ellipsis work less well the farther deep you go in the output
[22:32] <mwhudson> rockstar: i will have after i've refilled my coffee cup, one sec
[22:32] <barry> sinzui: is it really that important to test end comments?
[22:32] <rockstar> mwhudson, that's fine.  I need you caffeinated anyway.
[22:33] <sinzui> barry: yes, for the diagnostics at the end of the page
[22:34] <barry> sinzui: oh yes, those, but the <!-- yui-d0 --> comments?  or maybe i misunderstood what you meant
[22:35] <sinzui> barry: and as you might guess from the the use of
[22:35] <sinzui>     >>> print content[content.index('</html>') + 7:]
[22:35] <sinzui> I was desperate to isolate the one part I needed to fix at a late hour
[22:35] <mwhudson> rockstar: ok
[22:35] <barry> sinzui: yep
[22:35] <sinzui> barry: If you are using  BS you wont care because you can test containership
[22:35] <rockstar> mwhudson, "User Not Found"
[22:36] <barry> sinzui: right, that's what i think we really care about
[22:36] <mwhudson> stupid skype
[22:36] <sinzui> barry: agreed
[22:36] <barry> sinzui: cool, thanks.  will you be around for a while?  i may ping you to review this last change when it's ready
[22:37] <sinzui> barry: I think I will be in an out for the next 8 hours
[22:37]  * sinzui tries to change 38 pages before Monday
[22:37] <barry> sinzui: okay, that's cool.  if you're here and want to look, that's fine.  if not, i'm jfdi.  i'm tired of this branch and it needs to LAND! :)
[22:38]  * barry will not sleep until this is in the tree
[22:38] <didrocks> well, my launchpad dev setup try on jaunty fails as well :/
[22:38] <sinzui> barry: I agree. We can fix bugs next week, but we wont know about bugs if you don't land it
[22:39] <barry> sinzui: so right you are
[22:39]  * barry hacks
[22:43] <mwhudson> rockstar: http://pastebin.ubuntu.com/269419/
[22:43] <mwhudson> (gee thanks, postgres!)
[22:52] <wgrant> buildbot is sad.
[22:53] <rockstar> wgrant, yeah, mwhudson said he was going to fix it, but I have a read lock on him right now.
[22:53] <wgrant> Ah.
[23:13] <mwhudson> hooray for test runs with 9 landings :/
[23:14] <wgrant> Yes. It wasn't mine?
[23:16] <mwhudson> wgrant: no
[23:16] <mwhudson> it's a rosetta thing
[23:16] <mwhudson> lib/lp/translations/browser/tests/translationmessage-views.txt
[23:17] <wgrant> mwhudson: Ah, great.
[23:20] <mwhudson> seems a bit of the test that should have been deleted
[23:39] <maxb> When I make minor followup changes to a branch proposed for merging after comments from reviewers, should I resubmit the MP ?
[23:39]  * mwhudson finally defeats pqm-submit for his '[testfix]
[23:40] <wgrant> maxb: No.
[23:40] <mwhudson> maxb: if the changes are small, paste the diff between what was reviewed and the current state of the branch into a comment
[23:40] <wgrant> maxb: Just reply saying that you've done it, and give the diff.
[23:40] <mwhudson> maxb: (we'll be fixing the workflow around this sort of thing soonish)