[01:17] wgrant, i kinda hoped for a +1 on my process-one-mail announcement [01:17] not all that externally exciting but i found it much more comfortable [01:17] maybe someone will use it in future [01:17] and, traditional email is kind of lacking a cheap non-noisy +1 [01:17] poolie: Sorry, meant to +1 that last night, but was very busy. [01:17] np [01:18] And then had far too much mail this morning. [01:18] not really fishing :) [01:18] It is a really handy helper. [01:18] Often I avoid testing mail stuff because it's just so awkward :/ [01:18] But not any more! [01:18] Thanks for JFDI. [01:18] yeah, for me it was a minor mental breakthrough [01:18] "this is so hard to test.... oh, but it doesn't actually inherently have to be" [01:47] hello losa? i'd like some help testing email on staging [01:48] poolie: What are you wanting to test? staging processes mail automatically. [01:48] oh does it now? [01:49] and qas does too? [01:49] for some reason i thought it needed to be manually prodded [01:49] Ah, qas, true. It used to do it less frequently than staging, and may no longer do it at all.. [01:49] That's a good point. [01:50] hloeung, spm? [01:50] poolie: hi, how can I help you? [01:50] also i'm a bit curious what software ends up delivering the mail to lp's mailbox [01:50] hloeung, does qas automatically receive and process mail or do i need to get you to thump it [01:51] wgrant, re bug 813349, are you reopening it because it's flaky? [01:51] <_mup_> Bug #813349: hard to get from mp to per-revision diffs < https://launchpad.net/bugs/813349 > [01:51] i see the point about it not being done done [01:51] poolie: I'm not too sure [01:51] poolie: It's not done-done, needs more work, and was one of two bugs that were cluttering up my queue. [01:51] poolie: I decided to finally get rid of it. [01:51] it would be easier if i just try it [01:51] Now that the queue can be otherwise clear. [01:52] lifeless: https://lp-oops.canonical.com/oops.py/?oopsid=OOPS-2084H53 [01:52] lifeless: timeouts now break lazr.restful :/ [01:53] I guess we want to capture sys.exc_info and use that. [01:53] Rather than assuming __traceback__ [01:53] Isn't that new in 2.7/3.0? [01:53] wallyworld_: http://paste.ubuntu.com/690450/ [01:53] wallyworld_: is what I recommend [01:53] did ec2 land change so that it no longer detaches from the vm? [01:53] poolie: No. [01:54] *intentionally? [01:54] because it does seem to be not detaching now [01:54] What's it said? [01:54] it's running 'python .... ec2test-remote.py', just printed some bzr hpss counts and now it's just sitting there connected [01:54] wallyworld_: that query will do unstacked branches first [01:54] i can see the tests are running [01:54] lifeless: so the change is you added "ORDER BY stacked_on ASC NULLS FIRST" ? [01:54] when this happened yesterday, it did eventually complete [01:55] poolie: Ah. It should detach right after ec2test-remote.py [01:55] poolie: I haven't seen that happen in months. [01:55] But when it does you can normally just ctrl+c [01:55] that's two out of two so far [01:55] After it starts ec2test-remote.py [01:55] wallyworld_: and then in increasing branch id, which will (except where folk have restacked) keep the depth of recursion low [01:56] wallyworld_: I think thats all I did yes [01:56] lifeless: that change somehow helps the optimiser ? [01:57] sinzui: There is something you can help me with, in fact. [01:57] lifeless: how did you know that's what you needed to do? [01:57] wallyworld_: it doesn't help the optimiser [01:57] StevenK, yes? [01:57] wallyworld_: but it will stop us looping 6 times through [01:57] ah ok. i'll look at the explains in more detail [01:58] they're still a bit hard for me to read [01:58] so we have a branch A->B->C->D->E->F [01:58] sinzui: I'd like a header and prose for the pop-up when the user wants to unsubscribe themselves. [01:58] and grok [01:58] until we update F, anything stacked on any of B,C,D,E,F, will recurse all the way to F [01:59] this tweak makes it be more likely to calculate F before A, as F will be unstacked, E will have a lower branch id than D, in the usual course of htings. [01:59] StevenK, I writing job? I am on it. Header: Hey, I see you are shooting yourself in the foot. I can help [01:59] there is one more step we can take [01:59] Hahaha [01:59] which is to use transitively_private and short circuit when it is set. [01:59] lifeless: but we don't limit the recursive query to take that into account [02:00] yes, so we add the short circuit [02:00] that's a nice optimisation [02:00] stevek prose: By unsubscribing from this bug you are trading lots of exciting spam for 404's Click Oops to stop this. [02:01] hloeung, wgrant, it's not obviously responding to my mail, so i think i do need process-mail run by hand [02:01] i'm pretty sure this was needed last time too [02:01] robert said something abotu it creating too much load to run it automatically [02:01] poolie: We should set up a regular cron job, and bump staging's frequency. [02:01] poolie: Since as of like 12 hours ago we have a new staging scripts server. [02:02] wgrant: file an RT to have that done. In the meantime, I'll run process-mail by hand [02:02] so should you file an rt for that or something? [02:02] thanks [02:03] * wgrant RTs [02:04] #47933 [02:04] <_mup_> Bug #47933: [Feisty] system requires acpi=off noapic nolapic < https://launchpad.net/bugs/47933 > [02:05] poolie: ok, done [02:05] wgrant: ta [02:05] woo hoo [02:06] that's so awesome [02:06] thanks [02:06] poolie: Oh, it worked? :/ [02:06] only a wry face? [02:06] poolie: gandwana doesn't seem to be able to talk to the mailserver. [02:06] File "/srv/staging.launchpad.net/staging/launchpad/lib/lp/services/mail/mailbox.py", line 119, in open [02:06] raise MailBoxError(str(e)) [02:06] MailBoxError: [Errno 111] Connection refused [02:06] it did work [02:06] https://bugs.qastaging.launchpad.net/launchpad/+bug/800275 [02:06] <_mup_> Bug #800275: boot splash not branded < https://launchpad.net/bugs/800275 > [02:06] hloeung: Did you run it on asuka? [02:07] hloeung, can it ever send outgoing mail? [02:07] wgrant: yeah, I ran it on asuka [02:07] also, can you tell me what software is involved in delivering the message to lp? [02:08] poolie: We can run send-bug-notifications.py (on asuka, not gandwana yet, or we will be in big trouble) and it will end up in the staging mailbox. [02:08] lifeless: btw, thanks for all the xecellent input on getting that query optimised. i'm really pleased with the result [02:08] does it really (as that traceback suggests) read it over pop/imap? [02:08] Yup. POP3. [02:08] Really we should have a handler in the MTA which sticks it in rabbitmq or something. [02:09] Where it's picked up by a daemon. [02:09] Rather than being a */3 cronjob. [02:09] wallyworld_: http://paste.ubuntu.com/690457/ [02:09] wallyworld_: this is more of a rewrite [02:09] wallyworld_: it implements the recursion short circuit when you encounter a calculated transitively private [02:09] wallyworld_: it can do 800 a loop [02:09] in < 2 seconds [02:10] lifeless: i was in the middle of writing something similar myself :-) but you beat me to it [02:10] can't predict behaviour once you're 30/40K in trivially. [02:10] wallyworld_: happy to help [02:11] wallyworld_: I'm satisfied this will do reasonably well; I'm going to leave it here until/unless you ping me again [02:12] lifeless: np. it's all good. i'll check the unit test passes and then do a db-devel branch with the index [02:12] hloeung, process-mail again please? [02:12] poolie: sure [02:15] and once more? [02:16] poolie: done [02:16] super [02:16] looks like it all works [02:17] thanks very much [02:17] np [02:20] StevenK, http://pastebin.ubuntu.com/690460/ [02:21] hloeung: at some stage, no hurry, there's a new feature flag to go on production documented on LaunchpadProductionStatus [02:21] sinzui: Thank you, that is excellent. [02:23] wallyworld_: added [02:23] ok now some more real work [02:24] hloeung: legend! thanks! [02:54] what does 'orphaned' mean in the deployment report? that there's another branch for that bug? [03:10] poolie: There is no open bug related to the landing. [03:11] poolie: This could be because it was landed as testfix or a rollback, so has no bug, or the associated bug(s) are closed. [03:18] mwhudson: branch tokens - I think we need to talk about them :) [03:19] mwhudson: I have some fears [03:19] mwhudson: if you can make some time next week, that would be great [03:19] lifeless: yeah sure [03:19] lifeless: can you articulate your fears at all? [03:19] i.e. conceptual problems, security problems, performance...? [03:19] performance impact, user model impact, bzr ui impact [03:20] auditability too [03:20] and long term interaction with oauth/openid for bzr [03:20] (I want to ditch ssh keys altogether in some ways) [03:21] really? [03:21] tell me more? [03:21] poolie: we've spoken about this before [03:21] i have an awful memory [03:21] can you prompt it [03:21] poolie: I haven't advanced any plans, but ssh key management is a real headache for new users [03:21] doing an API style login once on the client would be much nicer. [03:22] i would certainly agree with making them a lot less manually maintained [03:22] right [03:22] lifeless: would you be less concerned if i just targeted removing the puller? [03:22] mwhudson: I think jelmer will have that done soon anyway :) [03:22] mwhudson: won't he ? [03:22] lifeless: no [03:22] Still needed for imports. [03:22] the import puller will still be required [03:22] mwhudson: so, we should talk :) [03:22] ok [03:23] lifeless: i suspect your diary is massively more cluttered than mine, feel free to do something involving calendaring applications and michael.hudson@linaro.org [03:25] mwhudson: i'll ping you monday :) [03:25] lifeless: ok [03:25] lowtek ftw [03:28] relying on memory << * in my case though :) [03:28] kk lunch biab [03:37] is there a private xml-rpc server method to check for a feature flag? [03:37] No. [03:38] It's not quite trivial, since you'd need some way to work out scopes. [03:40] what are scopes again? things like projects and teams? [03:40] https://launchpad.net/+feature-info [03:40] " [03:40] Scopes" section [03:40] ah nice [03:42] well, as nice as it would be to restrict anonymous ssh logins to members of a team ... :) [04:33] wallyworld_: \o/ landed that branch last evening :-) [04:37] wgrant: mwhudson: pass in a dict of literal scopes you're interested in [04:37] as a first-pass approximation [04:38] mwhudson, most obviously you could limit by ip [04:38] maybe also ssh client signature [04:38] that will let some obvious ones like page-id be passed in [04:38] lifeless: I considered that. [04:38] Maybe. [04:39] for a v1 lets get unblocked thing [04:39] its fine. [04:39] internal-only. [04:47] o/ huwshimi [04:47] * mwhudson contemplates the fun that is adding xmlrpc methods to lp [04:47] poolie: Hey! [04:48] mwhudson: xmlrpc it self is "fun" :-) [04:48] also true === almaisan-away is now known as al-maisan === al-maisan is now known as almaisan-away [05:10] wgrant: what are the '53' [05:11] lifeless, sorry to re-ask something i asked a month or two ago, but [05:11] 42 [05:11] once revisions are qa'd on stable, they'll deploy within a few days? [05:11] ideally ;) [05:11] No. [05:11] Ideally within 24 hours. [05:12] unless something else fails on production, or fails to qa? [05:12] it all depends on someone putting up a deployment request, other revisions not being in the way etc. [05:12] Unless stuff goes wrong, they're generally out in 24 hours. [05:12] the goal time is < 1 hour from qa [05:12] but we are far from that yet [05:12] lifeless: Ah, that email is mostly directed at Julian. https://devpad.canonical.com/~wgrant/2011/soyuz-expiration-blargh.html is not light reading. [05:13] lifeless: But, in summary, there are 53 BPRs published since hardy that are illegaly expired. [05:13] Because they're still published in the primary archive. [05:13] righto [05:13] Ugh, Tal. [05:13] We need to recover them from the archive. [05:14] I've read it now [05:14] thanks [05:15] jamesh: hi [05:15] jamesh: got 5 ? [05:15] sure. [05:15] Does anyone here use Identi.ca? I have an issue identical to this post but I don't understand what they're talking about: http://forum.status.net/discussion/873/badge-identica-badge.js-not-working-with-my-statusnet-installation/p1 (I'm asking here because I'm trying to set up something for Launchpad). [05:16] i use it but not the badge feature [05:16] idnetical how? [05:17] jamesh: so, I think: timeline wsgi injector should be a separate timeline-wsgi project; storm can grow a timeline_factory that timeline-wsgi talks to. python-oops-timeline should exist and have the context -> report code in it. [05:17] jamesh: so 2 new trivial projects, a patch to storm, and we're done [05:18] poolie: I have the same issue, as in, no posts show up on the badge. That post seems to say something about only friends posts showing up, but I don't understand the identi.ca language enough to know what they're saying [05:19] oh you want launchpadstatus's badge to be somewhere? [05:19] i thought you were trying to implement lp badges or something [05:19] lifeless: so what would python-oops-timeline hold exactly? Just the code to add the timeline to environ['oops.context'] and some on_create handlers? [05:19] or something more? [05:19] o/ jamesh [05:19] poolie: yeah I'm trying to show it on a status page [05:20] huwshimi, i suspect 'friends' is a hippy equivalent of twitter 'following' [05:20] jamesh: oops-timeline would be on_create handlers [05:20] statik: LOVE the reply you got from DEVOPS_BORAT :-) [05:20] and launchpadstatus has no friends :) [05:20] let's see if that's true [05:20] or I suppose it could do without copying to oops.context, since you could go context['wsgi_environ']['timeline.whatever'] [05:20] jamesh: thats timeline-esgi :) [05:20] *timeline-wsgi* [05:21] it's true: no friends [05:21] jamesh: I'm trying to avoid having specific projects have code for sibling projects in them [05:21] lifeless: okay. So the timeline-wsgi module knows about oops-wsgi. That sounds fine. [05:21] i wonder who DEVOPS_BORAT is [05:21] or alternatively the other way around [05:21] perhaps call it timeline-oops-wsgi; then it clearly can know about oops variables [05:21] sometimes it feels like it must be someone i know [05:22] mwhudson: Heh, yes. [05:22] huwshimi, i wonder what happens if lpstatus follows itself [05:22] jamesh: or as we touched on the other day, environ['timeline.timeline'] could be the dedicated variable [05:22] poolie: Can we make that happen? [05:22] lifeless: if the only connection is that it does "if 'oops.context' in environ: environ['oops.context']['timeline'] = timeline", then I don't think an extra package is worth it [05:22] apparently no [05:23] jamesh: So I've found, when I dig into some java stacks, that having *tiny* packages is actually very useful [05:23] poolie: OK, I might give up and use the twitter feed instead. [05:23] jamesh: it keeps the dependency chain very lean, when you go to reuse. [05:23] poolie: Thanks for your help :) [05:23] i have an idea [05:23] jamesh: I know storm doesn't do this, but I wish more code did. [05:24] it would be -awesome- if the overhead of doing a single python module (not package) was lighter. [05:25] jamesh: it won't have a practical difference for you though, will it ? [05:25] huwshimi, what happens if you just make a copy of the js, and change 'statuses/friends' to 'statuses/user_timeline'? [05:25] i reckon there's a fair chance that will work [05:25] lifeless: I guess not. It is one more thing to package though [05:26] poolie: I can do that (and it will probably work), but I'm trying to limit the number of working parts as this will appear when LP is down. [05:26] [we haven't drunk the buildout kool aid] [05:32] jamesh: time to give pkgme a test drive then :) [05:33] jamesh: these should be ideal cases for fully automated packaging [05:40] wgrant: welcome to the dark side [05:40] stub: yo [05:41] yo [05:41] lifeless: Heh. [05:41] stub: time for a catchup ? [05:41] I indeed finally gave in :( [05:41] lifeless: sure. Gimme a sec to boot the lappy [05:41] and steal my mike back [05:41] you want to be like mike/ [05:41] ? [05:48] When the database goes down at the moment do we currently display anything? What's involved to put a [new] page there? [05:48] stub: Matthew said you might know something about this...^ [05:50] huwshimi: Bug #840098 [05:50] <_mup_> Bug #840098: Librarian should return 503 pages during database outages < https://launchpad.net/bugs/840098 > [05:50] huwshimi: We just display an Oops page now. [05:50] huwshimi: We can put whatever you want there, basically... as long as it doesn't involve DB access, obviously. [05:52] wgrant: OK, I have (most of) a static HTML page (a little js and some images too) that will go there. Do you know how I can make this work? [05:53] wgrant: dark side? [05:53] nigelb: I created a Twitter account. [05:53] OHMYGOD [05:53] @wgrant? [05:53] wgrant: We can no longer be friends. [05:54] nigelb: I need to try to claim that using the 9 month rule. @wgrant_ for now. [05:54] Nasty common names :( [05:54] StevenK: No, but you can be followers [05:54] huwshimi: Boo, hiss. [05:54] wgrant: _ is the new style on twitter [05:54] huwshimi++ [05:54] huwshimi: It should ideally use normal LP JS/image infrastructure. [05:54] huwshimi: As it's rendered by LP, like any other view, except without the DB. [05:55] huwshimi: Just like the current OOPS page. [05:56] poolie: could you look at https://code.launchpad.net/~mwhudson/launchpad/feature-flag-xmlrpc/+merge/75673 briefly? [05:57] +"""XXX: Module docstring goes here.""" [05:57] or not :) [05:57] well yes, not that stuff: [05:57] heh [05:57] """Not ready yet (docstrings need writing etc) but would like feature flag manipulation looked at please :)""" [05:57] wgrant: Can we have a tumblbeast? :) [05:57] i know i'm just being snarky [05:58] yes, please [05:58] or, that's more of huwshimi's department, beasts [05:58] Heh [05:58] Was that the one TheOatmeal created? [05:58] yeah [05:58] its free to use now [05:59] * mwhudson goes to the pub [05:59] oops [05:59] mwhudson, it's not obviously wrong but i don't really understand it [05:59] poolie: ok, let's talk next week then :) [05:59] ok [06:00] I'm having brunch and mwhudson is headed to the pub. [06:00] the intention is good [06:00] timezones.sigh. [06:00] cheerio mwh [06:00] nigelb: Then move to Australia? [06:00] haa. [06:00] nigelb: what bothers me is when i'm going to the pub, and my colleague in POLAND hasn't stopped working yet [06:01] heh [06:01] mwhudson: It probably bothers him more :P [06:01] him/her [06:01] what bothers me is when i come home from the pub and robert is still working [06:01] StevenK: Only if it were that easy. [06:01] poolie wins [06:02] poolie: It's only when I'm in another timezone when I realise how many people here work *very* late [06:03] Oh wgrant doesnt have a concept of time. [06:03] Neither does StevenK. [06:04] Last night was particularly bad. [06:04] Since a script I expected to take 3 hours actually took 13 hours. [06:05] Could someone help me with this? http://paste.ubuntu.com/690527/ [06:06] nigelb: You have a tag mismatch somewhere. [06:07] I've been trying to trace it without much luck :( [06:09] http://paste.ubuntu.com/690530/ <-- pt file [06:09] Which table are you trying to close on line 68? [06:09] wgrant: StevenK: do you see an issue with lowering the minimum picker search term length from 3 chars to 2? perhaps if term is < 3 chars do not do fti search, just exact match to lp name [06:09] That table seems to be opened in the previous metal:widgets. [06:10] for bug 768148 [06:10] <_mup_> Bug #768148: person picker does not handle exact matches well - including not permitting exact matches for usernames < 3 characters long. < https://launchpad.net/bugs/768148 > [06:10] the one in line 25 [06:10] nigelb: I think 68 is trying to close the table on 25, but they are in separate macros. [06:10] Oh. I can't do that? [06:11] This is approximately XML. [06:11] It's not text-based like Django markup. [06:11] :D [06:11] You guessed where I'm coming from. [06:12] Argh. Need to ask sinzui for help. [06:12] I'm not sure how to get this workign without it being ugly. [06:14] nigelb: cani help at all? [06:15] wallyworld_: ohai, I'm trying to fix bug 80660 without killing kittens and without it being ugly. [06:15] <_mup_> Bug #80660: GAIM2.0b5 crashes on quit < https://launchpad.net/bugs/80660 > [06:15] err [06:15] 806660 [06:15] bug 806660 [06:15] <_mup_> Bug #806660: "Add a new address" in e-mail settings does the wrong thing when pressing Enter < https://launchpad.net/bugs/806660 > [06:15] but i hate cats. they all must die [06:15] * wallyworld_ looks at bug [06:16] wallyworld_: heh, on that you should look at Amber's (Graner) facebook photos (if you are her friend on fb) [06:16] wallyworld_: http://cheezburger.com/kenneystudios/lolz/View/1802695936 [06:16] nigelb: i hate fb more than i hate cats. and i hate twitter too. total waste of time [06:16] heh [06:18] StevenK: don't know where you find this stuff [06:18] StevenK probably has subscription to icanhazcheesburger [06:19] I do as well. BUt to one of their smaller sites. [06:24] nigelb: so did you try splitting the form into two like suggested in the bug report? [06:25] I did. [06:25] It was ugly [06:25] no luck? [06:25] What I did was split the table [06:25] Because semantically, I cannot have one form in another form. [06:25] And a form must either include the entire table or be only in one td. [06:26] yes [06:27] and that didn't work? having two tables? [06:27] It worked! [06:27] BUt it was ugly with lots of padding [06:27] Can we fix that? [06:27] s/padding/margin/ [06:27] can i see what you did? [06:27] sure [06:28] sec, let me restore yesterday's changes [06:28] Oh gah. [06:28] Give me 5 minutes I'll have to do it from scratch. Shoulda commited at safe point. [06:29] ok, just ping me [06:29] Shelve is handy. [06:29] Except when I end up with 60 shelves in devel. [06:29] my ide has shelve built in :-) [06:29] Does PyCharm have juju integration yet? [06:29] nope :-) [06:30] juju? [06:30] ensemble? [06:30] s/ensemble/juju [06:30] they renamed it [06:30] I like ensemble better :P [06:30] Yeah. [06:30] so does everyone else [06:31] when people found out, they wore out the WTF keys [06:31] Ahem. [06:32] lol [06:32] Yay, git branch importing works. [06:34] jelmer: Do you want a bzr bug for http://launchpadlibrarian.net/80061780/wgrant-mochiweb-R12B.log? [06:34] jelmer: I tried to use the original ,somebranch syntax instead of ,branch=somebranch [06:42] jtv: Do you have branches to entirely abolish katie yet? [06:44] branch scanning broken? [06:44] wgrant: yes, have a look at lp:launchpad. [06:44] wgrant: that's katie gina's buddy, not the other katie. [06:44] jtv: Ah, hadn't checked that in a few hours. [06:44] Nice, thanks. [06:44] Tsk. [06:44] Way behind the times. [06:45] Soooo 07:44 ITC. [06:45] Despite living in the future. [06:45] nigelb: Which branch isn't scanned? [06:45] https://code.launchpad.net/~nigelbabu/launchpad/registry-email-add-806660 [06:46] Its been 8 minutes. Launchpad is faster than that! [06:46] Hmm, 13 minutes. [06:46] That's not good. [06:47] wallyworld_: So, it looks like this -> http://people.ubuntu.com/~nigelbabu/first-try.png [06:47] * wallyworld_ looks [06:47] Is that Lucid? [06:47] Possibly Maverick. [06:47] Old, anyway. [06:47] Lucid [06:47] How did you know.... [06:48] The buttons are too brown. [06:48] * nigelb bows. [06:48] And here's my diff -> http://paste.ubuntu.com/690552/ [06:48] wgrant: I still haven't come to terms with unity. [06:48] nigelb: there's too much vertical space isn't there [06:48] Yeah [06:49] That's because they're in two different divs. [06:49] I don't know if I can move them into one. [06:49] Since the div itself is constructed from the (or so I think) [06:50] nigelb: did you check to see if any ccs is in use for any of the div/table/form elements that may be adding the vertical padding [06:51] nigelb: Your branch scanned a couple of minutes after you asked. Still waiting on logs to see what the delay was. [06:51] So, upgraded to Oneiric, rocketfuel-get, rocketfuel-branch foo, in foo: make schema: 'psycopg2.ProgrammingError: type "debversion" does not exist'. What else do I need to do? [06:51] ... oh and I'm just assuming this has something to do with the Oneiric upgrade, it may well not be [06:51] huwshimi: Sounds like the launchpad PPA was disabled during the upgrade. [06:52] huwshimi: did you install launchpad-devel-dependencies? [06:52] wgrant: Oh yeah, I think you're right [06:52] huwshimi: Make sure it's enabled, pointing to oneiric instead of natty, and then reinstall launchpad-developer-dependencies. [06:52] wgrant: Thanks [06:52] I fixed that debversion issue in the PPA a couple of weeks ago. [06:52] So it should work. [06:52] wallyworld_: So, what's adding the margin is table and form elements [06:52] (fun!) [06:52] wgrant: Excellent! I broke it? :D [06:53] nigelb: are they rendered with a css style? [06:53] a specific css style? [06:53] No. [06:53] table.form [06:53] and form [06:53] generic styles [06:54] so perhaps you could initially try using an inline style with no padding/margins etc and see if that works [06:54] Is that kosher? :-) [06:54] just to see if it works [06:54] ah [06:55] then we can either define a style in the template (like is sometimes done for a one off) or see if there's already one in styles-3.0.css [06:55] You mean a style="margin: 0;" right? [06:55] something liek that [06:55] Can't touch
because its created by a macro. [06:56] there is a way, i've seen it used but can't recall where exactly [06:56] let me check the macros. [06:57] nigelb: you may not need the initial form macro. just using a stock may work [06:58] i'd have to experiment a bit [06:58] ok [07:05] nigelb: in the template you are editing is an example of using a standard element rather than the macro [07:05] wallyworld_: worked :) [07:05] I just added the inline styles from firebug. [07:05] excellent! [07:06] nigelb: i have to go out and pick up my wife from downtown === wallyworld_ changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 261 - 0:[########*** stack smashing detected ***: ./lp terminated [07:07] Brisbane has a downtown? [07:07] wgrant: i was using the venacular that nigelb would understand as an american :-) [07:07] s/downtown/cbd :-P [07:08] haha [07:08] wallyworld_: I'm not American [07:08] Think East :-) [07:08] east of where? [07:08] I'm from India [07:08] nigelb: East of us is the US :P [07:08] oh, ok. sorry! [07:09] wgrant: HA. [07:09] East of the US! [07:09] what part of india? i've been to Bangalore [07:09] But that was a fail attempt at referring to East India Company [07:09] wallyworld_: I live in Bangalore :-) [07:09] :-) [07:10] Cat Logistics CLSI have an office in Whitexxxxx rd or something like that [07:10] east of the city centre i think [07:10] Whitefield [07:10] yes, that's it [07:10] i was there in 2008 [07:10] when i worked for Caterpillar [07:11] You should visit again! [07:11] i hope so. i really liked it :-) [07:11] Its got a really awesome weather. [07:11] I probably won't leave the city just for that. [07:11] i really liked the food [07:11] nigelb: but i do have to go, to get to the cbd :-) [07:12] :) [07:12] * wallyworld_ runs away [07:12] wgrant: You should tweet too. Not just sign up for twitter and follow people ;-) [07:14] Maybe :) [07:15] Where's the fun in *that*? [07:16] * nigelb blinks. [07:16] Peng: Are we both on another network as well? [07:17] My brain just got horribly confused seeing you in freenode :) [07:17] Possibly. And it's not an uncommon nick. [07:36] huwshimi: On a call before and cited the wrong bug (not that you need the right one as it is assigned to you!) [07:37] stub: Yeah, all good, I saw that [07:38] huwshimi: So 1) wording and design of the page, or just wording. 2) Register it as a view on storm.exceptions.DisconnectionError 3) Tests to ensure that when the db is pulled out from under lp's feed, the expected 503 error page is returned [07:38] huwshimi: I guess do as much of that as you are comfortable then hand off [07:39] Is this the bug about 503 when database is down? [07:39] huwshimi: I think wgrant or myself were going to do the wiring. [07:39] nigelb: I hope so, or I'm confusing the wrong issue. [07:39] stub, nigelb: yeah that's the one [07:40] \o/ [07:40] stub: Cool. I am working with matthew on 1. I'm just about to head off for the week, but I'll take a look on Monday and get what I can done. [07:40] huwshimi: I suspect you just want to do 1) and hand it off [07:41] stub: That's why I didn't give him past step 1 :P [07:41] stub: If that's easier I don't mind. [07:41] wgrant: You expect me to pay attention to scrollback? Sheesh. [07:41] heh [07:44] good morning [07:45] Morning adeuring. [07:45] hi wgrant [07:45] hi adeuring [07:46] hi jtv [07:46] hi adeuring, jtv [08:06] Hello! [08:07] hello! [08:33] Codehosting throws me twisted.internet.error.CannotListenError: Couldn't listen on any:8022: [Errno 98] Address already in use. === adeuring changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: adeuring| Critical bugs: 261 - 0:[########*** stack smashing detected ***: ./lp terminated [08:35] Nevermind. fixed. [08:39] How do I find what port loggerhead wants? [08:39] It seems to be already in use by something else which I want to kill. [08:50] Dunno, but my money would be another loggerhead process left unterminated. [08:50] I got it. [08:50] it was 8080 [08:50] I had nginx running there. [08:54] Is Bug #809118 a dupe of Bug #845397 or are these actually separate things? [08:54] <_mup_> Bug #809118: builddmaster handling of lp-prod/lp-slave db connection interrupts is untested < https://launchpad.net/bugs/809118 > [08:54] <_mup_> Bug #845397: buildd-manager needs to survive database outages < https://launchpad.net/bugs/845397 > [08:56] I'm horribly confused with codehosting running locally [08:56] nigelb: Oh? [08:56] http://paste.ubuntu.com/690624/ [08:56] where do I see these OOPS details? [08:57] nigelb: Hmm, you've pushed both branches up? It sounds like one or both might not exist. [08:57] I couldn't parse that :) [08:57] I just pushed one branch [08:58] Something into https://code.launchpad.dev/~landscape-developers/landscape/trunk so I could see commit numbers [08:58] nigelb: It seemed to be trying to scan two branches. [08:58] And generate an MP diff from them. [08:59] AH. [08:59] Delete the MP? [08:59] Not necessary. [08:59] Try pushing another branch up, maybe. [08:59] And rerunning make sync_branches. [08:59] Perhaps it will settle down. [08:59] I just deleted. [09:00] No jobs to run. [09:02] wgrant: http://paste.ubuntu.com/690626/ [09:02] There. [09:03] nigelb: The OOPSes should be in /var/tmp/codehosting.test [09:04] Found em. http://paste.ubuntu.com/690627/ [09:05] nigelb: Hm, apache's notrunning? [09:05] Are 'fiera' users besides the buildd manager fragile for fastdowntime? [09:05] stub: No, buildd-manager is the only one. [09:05] ok, I'll remove fiera from the fragile list and just add the new buildd_manager user [09:05] wgrant: It is. I see the web page. [09:06] nigelb: Even on the bazaar.launchpad.dev IP address? [09:06] wgrant: Ah not. [09:06] how do I fix? [09:09] Something must be wrong with your Apache config... it works by default once rocketfuel-setup has runs. [09:10] Hrm. [09:10] Do I run rf-setup again? [09:10] ah [09:10] sudo make install [09:11] Still fail. [09:22] Warning: DocumentRoot [/var/tmp/bazaar.launchpad.dev/static/] does not exist [09:22] There's potential fail there. [09:23] wgrant: still around? :) [09:24] nigelb: That shouldn't be a failure. [09:24] nigelb: It sounds like Apache isn't even listening on 127.0.0.99:80. I'm not sure what could be going on there. [09:25] wgrant: It is listening. [09:26] I see entries in error.log [09:26] Hm, why connection refused, then? :/ [09:27] bazaar.launchpad.dev sounds like loggerhead. [09:27] How can I check if its up? [09:27] bazaar.launchpad.dev:80 is Apache, which forwards some requests to loggerhead. [09:27] :/ [09:28] wgrant: Wait a minute. [09:28] 80? [09:28] I have bazaar.launchpad.dev:443, not 80 [09:28] Well, that's the one that gets logged. [09:30] The branch scanner will want :80 [09:31] So, you're right. [09:31] Something's wrong :/ [09:39] lifeless: are you around? [10:07] bigjools: https://code.launchpad.net/~stub/launchpad/trivial/+merge/75696 [10:09] stub: why not just fix the config? [10:10] I have a feeling tests depend on it [10:10] bigjools: Cause then other things that use that config item will also move and continue to use buildd-manager's database user [10:11] bigjools: database usernames in configs has been a WHUI anyway [10:11] indeed [10:11] are you relying on tests failing then? [10:11] bigjools: --test=buildd passes, I'll wait on ec2 to inform me of further fallout [10:12] ok [10:12] I'll approve it now [10:13] bigjools: I don't think tests will fail though, as permissions of fiera and buildd_manager are identical. So if a test is connecting using the config username, it will still work. Not a good thing long run, but lets us solve the immediate issue easily. [10:18] WHUI ? [10:18] bigjools: no, but I can be for short bits [10:19] lifeless: I wanted to catch up about python-oops [10:19] if it's not convenient we can do it Monday [10:29] lifeless: We Haven't Used It, I assume. [10:32] it's the past tense of YAGNI [10:35] YAGNI? [10:35] You Ain't Gonna Need It [10:35] heh [10:35] GIYF [10:36] Give In, You're Fired? [10:36] Google Is Your Friend [10:36] Mine was better. [10:36] Indeed. [10:36] Google, In Your Face [10:37] Now, who's got a few minutes to help me figure out why bazaar.launchpad.dev:80 isn't working? [10:37] (Actually, its why sync branches isn't working, but wgrant and I've gottten it to that point) [10:44] bigjools: ah [10:44] bigjools: I have no idea if monday will be better, but tonight would be awkward [10:44] lifeless: np, it's Friday night. And I have to go to lunch soon too. [10:45] kk, ciao [10:45] I'll muddle through for a bit [10:45] have a good weekend [11:11] wgrant: have you built the txlongpoll branch lately? [11:12] bigjools: Not for a while. What's the buildout error? [11:13] wgrant: no error, but can't run tests as testresources is not in the path [11:13] bigjools: How are you trying to run the tests? [11:14] bin/test [11:14] :( [11:14] as per the README ;) [11:14] if I run up bin/py, "import testresources" fails [11:14] Yeah, that's meant to work. [11:14] so there's a buildout problem [11:14] Let's see... [11:14] and my ken of buildout is not so good [11:15] I learnt quite enough about it during the Thunderdome... [11:15] * wgrant waits three forevers for buildout to finish. [11:21] wgrant: ARGH, it's not in install_requires [11:22] * bigjools fixes [11:22] bigjools: It shouldn't be. [11:22] It's a test dep. [11:22] buildout is almost done... [11:23] Generated script '/home/wgrant/Development/txlongpoll/trunk/bin/test'. [11:23] Finally. [11:23] Let's see what happens. [11:24] right, it's in extras_require [11:24] something else is missing [11:25] File "/home/wgrant/Development/txlongpoll/trunk/txlongpoll/testing/client.py", line 4, in [11:25] from testresources import ( [11:25] ImportError: cannot import name FixtureResource [11:25] That? [11:25] yes [11:25] Need a new testresources. [11:25] I think a bzr snapshot is required. [11:26] testresources is not in the pathj [11:26] Not for bin/py, no. [11:27] Check buildout.cfg [11:27] Here's a crash course in the critical bits of buildout for this :) [11:27] Each of those sections specifies a recipe. bin/py is built by the 'interpreter [11:27] ' section [11:28] bin/test by the 'test' section. [11:28] The eggs included in each bin/* script are dictated by the eggs directive in each section. [11:28] It follows deps. [11:28] And you can specify an extra_requires section to use by putting it in square brackets after the egg. [11:29] This way the package itself doesn't require rabbitfixture and all that stuff on production. [11:29] Can someone pastebin their /etc/apache2/ports.conf file? [11:30] nigelb: http://paste.ubuntu.com/690715/ [11:30] wgrant: ok thanks [11:30] allenap: thanks! [11:30] wgrant: this is far too much like black magic [11:30] bigjools: Nah, this is Zope :) [11:30] like I said ... [11:31] Magic was one of the problems of Zope wwasn't it? [11:31] how did we end up with the tests needing something not in the testresources egg :/ [11:32] that's a rhetorical question [11:32] I thought that was documented, but maybe not :( [11:33] wgrant: is it "normal" for bazaar.launchpad.dev to be directed to launchpad homepage? [11:33] the testresources in the lp tree is 0.2.4_r58 [11:33] as opposed to 0.2.4 in the txlongpoll tree [11:33] and it has FixtureResource [11:33] bigjools: That is sufficient, I believe. [11:33] Yep. [11:33] so I'll just copy that egg for now [11:33] nigelb: Yes. [11:34] \o/ [11:34] bigjools: You'll probably have to delete the old unpacked egg to make it use the new one. [11:34] yes [11:35] wgrant: \o/ \o/ \o/ [11:35] sync_branches worked! [11:35] nigelb: It works? [11:35] nigelb: What'd you change? [11:35] and on that note, FOOD [11:35] wgrant: apache ports.conf was listenign to 8009. Because I have 3 webservers on thsi box. [11:35] Ah. [11:35] I suspected that, thanks to allenap, confirmed, fixed. [11:36] * bigjools fixes setup.py [11:36] However, now I know my code doesn't work :D [11:36] Yak shaving is so much fun. [11:36] (not) [11:48] wgrant: I have to leave nowish. Will be back in a few hours, but on a low-bandwidth connection. But perhaps you could review, and if appropriate land, this? https://code.launchpad.net/~jtv/launchpad/bug-851684/+merge/75721 [12:01] Anyone else? I'm in a hurry! [12:01] adeuring, could you review this one? https://code.launchpad.net/~jtv/launchpad/bug-851684/+merge/75721 [12:02] I have to run _now_, but I'll be back in an hour or two. [12:02] jtv: sure [12:02] thanks! === Ursinha-afk is now known as Ursinha === jtv is now known as jtv-afk [12:11] wgrant, bigjools: Either of you fancy looking at https://code.launchpad.net/~allenap/rabbitfixture/details-breakage-bug-851813/+merge/75726? === matsubara-afk is now known as matsubara [12:29] matsubara, hi, fwiw, I've replied to the oops-tools MP, thanks for the review :) [12:30] danilos, cool! I'm going to land and roll that out today. thanks for working on that! :-) [12:31] matsubara, you are welcome, it was interesting to dive into it a bit :) [12:40] matsubara, btw, I don't have to send it to PQM for landing? (I've noticed ~launchpad-pqm is the trunk branch owner) [12:56] launchpad-developer-dependencies *Depends* on postgresql-8.4-doc? *Seriously*? [12:58] danilos, nope, just set a commit message in the MP and tarmac will take care of landing it on trunk [12:59] matsubara, cool, I will do that then [13:00] adeuring: Got time for a rabbitfixture branch? https://code.launchpad.net/~allenap/rabbitfixture/details-breakage-bug-851813/+merge/75726 [13:00] allenap: time isn't a problem. But I have no real clue about rabbit... [13:02] adeuring: This branch doesn't touch the Rabbit parts, it relates to detail handling in testtools. [13:02] Don't be alarmed :) [13:02] allenap: ok, I'll look ;) [13:02] but need a coffee first [13:03] Morning, all. [13:07] morning deryck [13:08] allenap: approved [13:09] bigjools: Ta. [13:09] adeuring: bigjools just +1'ed it :-/ eek, sorry. [13:09] np [13:10] ah sorry didn't see you looking at it adeuring [13:19] mtaylor: Is it just me, or does the Ec2 plugin for Jenkins not love OpenStack? [13:23] danilos, branch failed in the tarmac chroot [13:25] matsubara, in what way? how can I fix it? [13:26] danilos, the followlinks parameter for os.walk isn't available and due to the failure temp directories are not being properly cleaned up [13:28] matsubara, argh, we are not using 2.6 in there? [13:28] danilos, nope, I filed an RT to get that chroot updated to 2.6 [13:28] looking for the RT number, hang on [13:29] https://rt.admin.canonical.com/Ticket/Display.html?id=47591 [13:29] danilos, ^ [13:30] adeuring, abentley, henninge -- let's Skype today please. I'll start a conf call. [13:30] matsubara, right, fwiw, I believe followlinks=False is the default value anyway, I just wanted to be explicit, so I'll remove it and try again [13:32] danilos, ok. I think it'll still fail now because of the temp directories that were not cleaned up in the previous run [13:32] matsubara, right, how can we fix that then? [13:32] danilos, one way to fix it is to have a losa run bzr clean-tree in the chroot [13:33] danilos, or we could add a bzr clean-tree to the Makefile and it'd be run before make check is run [13:33] deryck: audio sadness. rebooting. [13:33] abentley, ok, cool. [13:34] matsubara, should I do that? [13:34] danilos, bzr clean-tree --unknown --force to clean target should be enough [13:35] danilos, please do [13:35] matsubara, ack, https://pastebin.canonical.com/52911/ [13:36] matsubara, I can probably remove the rms in there then [13:36] danilos, nope, because those are in the .bzrignore file [13:36] matsubara, ah, ok [13:53] matsubara, yay, merged :) [13:53] danilos, great! [13:54] StevenK: probably not just you ... it's on my todo list to finish the jclouds plugin [13:55] adeuring: Could you review a little fairly simple branch? https://code.launchpad.net/~allenap/launchpad/config-dir/+merge/75737 [13:55] allenap: sure [13:56] adeuring: Thanks :) [14:11] allenap: r=me; minor comment [14:12] adeuring: Thanks :) === almaisan-away is now known as al-maisan [14:38] I'm having what appear to be SSL problems on a new oneiric LP setup: http://paste.ubuntu.com/690852/ Anyone have any hints? [14:44] benji: I've seen that as well on Oneiric [14:44] but I haven't figured out what's going wrong exactly [14:45] benji: Ian said changing host to hostnossl in pg_hba.conf fixed the issue for him, but that doesn't work here. [14:45] benji: it's worth a shot though [14:47] jelmer: thanks, I'll give it a shot [14:50] Can I make a branch, & commit to it in a test? [14:53] nigelb: of course [14:53] \o/ [14:53] nigelb: if you have a testcase class that derives from bzr's TestCaseWithTransport, it should be as easy as: [14:53] tree = self.make_branch_and_tree(path) [14:53] revid = tree.commit("My commit message") [14:54] AH, currently its factory, so create a new class for this I guess. [14:54] let me grep as well. [14:54] Thanks! [14:55] nigelb:If you're not in a bzr TestCaseWithTransport, you should be able to use bzrlib.bzrdir.BzrDir.create_branch_convenience(path) [14:55] but you might have to do some other setup as well (overriding the config, etc) [14:55] I'm now thinking if I want all that for my test. [14:55] I may not. [14:59] I would recommend using TestCaseWithTransport if you reasonably can; it will help with test isolation problems. [15:00] e.g. if somebody has setup their bzr to always gpg sign commits you don't want the Launchpad test suite prompting them. === bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: adeuring, bac| Critical bugs: 261 - 0:[########*** stack smashing detected ***: ./lp terminated [15:00] g'morning Brad [15:00] hello adeuring. how's the reviewing today? [15:00] hi jelmer [15:00] bac: quiet :) [15:01] adeuring: no backlog? [15:01] * bac looks [15:01] bac: yes, there was an MP... got distracted... === jtv-afk is now known as jtv [15:17] jtv: I have 1.5 questions about your MP, see the email [15:18] hi adeuring! Yes, I expected as much. By the way, this is all pretty intensely tested, and functionality doesn't change—that's why so few test changes. Should've explained that. [15:18] jtv: so, you think the 65% memory usage are, let's say, tolerable? [15:25] For just this once? Absolutely, as long as the script makes enough progress that the problem gets a little smaller every time. [15:25] It's not really a matter of catching up with changes; it's more of a data conversion. [15:25] adeuring: answered your questions, I hope. [15:25] * adeuring is looking [15:26] (Kudos for checking the report. I think I've mentioned this recently, but I appreciate a thorough review. :) [15:27] Since the hardest of these packages appears to be only a few hundred records, even if the memory problem stays, we can go through a lot of packages before it becomes a problem again—and those packages will be permanently “done.” [15:29] jtv: ok, sounds good. But I am slightly worried about txn.commit() in conjunction with two script instances running [15:29] I have no clue though if bad things can happen at in this case... [15:30] adeuring: I don't think the second script instance gets past the startup-and-lock stage, but if it does, transitional domination leaves the last publication record untouched. [15:30] So in the case where there's no intervening Debian import, AFAICS they would just duplicate each other's work with no ill effects. [15:31] If there is one, things get a little more complicated. Let me try to figure it out. [15:31] (Though as I said, the script does use LaunchpadScript locking so I don't think it would be an issue) [15:31] jtv: OK. The alternative would be that this one run that needs a looong time and tons of memory is started manually, while the crontab entry is disabled [15:32] Yes, that's what I had in mind. [15:32] though the losas might not agree to such a fix... [15:32] We already mentioned it on #-ops and had no objections. [15:32] jtv: ok, the r=me [15:33] It's reassuring that your independent thought processes follow the same lines—means less chance that we missed anything. [15:33] Thanks! [15:46] hey henninge, what time do you get off work today? [15:46] jtv: I don't plan to hang around too long ... [15:47] henninge: Where are you moving to? [15:48] henninge: nigelb reminded me that it's almost EOW over there. As discussed, we'll have things to talk about afterwards but I wanted to give you an official goodbye & thanks for working with us! [15:49] :) [15:50] HAHAHA [15:50] http://www.customink.com/lab/?cid=zab0-000k-p2qg [15:50] nigelb: hang around *the office* of course ;-) [15:51] henninge: haha :) [15:51] jtv: thank you very much! I enjoyed it greatly, too. [15:52] henninge: and I'm sure I'm not the first to say it, but if you ever need a reference, no need to ask. :) [15:52] jtv: no you are not but I am glad I hear it so much. ;-) [15:52] :) [15:57] jelmer: if you're still here, sorry to bother you with it on a Friday afternoon but if you could still get bug 850502 q/a'ed today, that could remove the last blocker for a rather important fix. [15:57] <_mup_> Bug #850502: probing smart http servers doesn't work with pycurl < https://launchpad.net/bugs/850502 > [15:57] jtv: you are reading my mind [15:57] Well, it _is_ the same language. :) [15:57] Thanks. [15:57] jtv: I literally marked it as qa-ok 15 seconds before you asked. [15:58] :-) [15:58] \o/ [15:58] I've got one to Q/A, but I can do it on dogfood together with this fix. [15:59] I wonder why my revision isn't ready for QA yet. [15:59] jtv: every time I clear my throat, is that some meaningful statement in Dutch? [15:59] bigjools: yes, and probably about the mother of the enormous Hell's Angel you happen to be talking to. [15:59] Why do you ask? [16:00] nigelb: it takes a while for the qa-tagger script to notice. [16:00] You've heard of click languages right? [16:00] That's means if you don't "chew" carefully, you might be cursing in some language. [16:05] What's the difference between a product and a project? [16:07] Projects have products? [16:07] Is this the way how launchpad project works? with several products in its umbrella? [16:12] jtv: still around? :) [16:12] nigelb: yes, just rather busy with a little crisis. [16:12] ah [16:13] nevermind, i'll try and figure it out :) [16:13] Project == Project Group. Product == Product. [16:13] ok, so my guess was right. Cool! (also, psql <3) [16:13] Left-hand sides are class names, right-hand sides are UI terms. [16:13] Yes, psql is great. === deryck is now known as deryck[lunch] === al-maisan is now known as almaisan-away [16:34] bac: do you have time to review https://code.launchpad.net/~sinzui/launchpad/person-picker-tab-key/+merge/75771 [16:35] sinzui: Hi! I have a first cut branch for that bug. [16:35] fab [16:35] Instead of doing the tal:condition in span, I had to do it in a tal for it to work [16:35] Writing tests now :) [16:37] nigelb, thanks. I see your diff and It looks as I expect [16:37] \o/ [16:39] If I wwant to do something as admin, do I do this? --> with celebrity_logged_in('admin'): [16:39] Not admin, just a user who can see private branches [16:39] Or do I create a user and add that user to this product so they can see the branches [16:40] nigelb, only an admin and the team with the subscribed team/person can see the branch [16:40] hrm, I think I'll use admin. [16:40] I see lp.code.browser.tests.test_product has both a revision count test and a private test [16:41] I think test_committers_count_private_branch needs one more check to verify that the omitted id is not in the page [16:41] argh. === salgado is now known as salgado-lunch [16:42] I started writing in lp.code.tests.test_product. [16:42] Let me move it. [16:42] nigelb, no [16:42] there already is a model and a test [16:42] Oh. [16:43] Ah, I see! [16:43] we just need to add an assertion. we can render the view, get the id, and verify it is None [16:45] nigelb, I think i misread the last test. It shows the owner sees the info. We want to verify the id is in the page for that test. We want an extra test for a non subscriber using the same steps as the existing test [16:45] and not seeing the info. [16:46] right. [16:46] I've not broken anything in that test. which is not good. [16:50] nigelb, This is what I imagined, though have not run the actual test http://pastebin.ubuntu.com/690942/ [16:50] * nigelb looks [16:51] nigelb, I copied the test comment. I should have changed it [16:51] wit [16:51] wait [16:51] * nigelb is cnfused [16:52] ah, nevermind [16:52] I read your diff wrongly :) [16:54] sinzui: Thanks for the tests! I was doing it in a roundabout way :) [16:58] np. I had these test in mind when I suggested the fix. I should have noted them in the bug [16:59] I got two scary tracebacks http://paste.ubuntu.com/690949/ [17:01] nigelb, I think we need to add the principal arg to get the view [17:02] view = create_initialized_view(product, '+code-index', rootsite='code', principal=observer) [17:02] use fsm in the first test. [17:03] Trying again [17:06] sinzui: second test fails with the same error [17:06] but the first test now works? [17:06] yes [17:06] okay [17:08] bigjools: HA, 300 has been crossed. I'm a happy man ;) [17:09] ? [17:09] ah cricket [17:09] :) [17:09] they'll still lose [17:09] And another wide \o/ [17:09] on the line :/ [17:10] The bribes we paid the umpires are paying off [17:11] * bigjools off, enjoy your weekend [17:12] nigelb, are you missing the + in +code-index in the second test? [17:14] sinzui: ah,yes! [17:14] The tb shows 'code-index' [17:15] YEah :-) [17:15] sinzui: which feature flags do i need to set to see picker work? [17:15] And, there was one mistake I think [17:15] bac: sorry. I forgot [17:15] self.assertEqual(view.committer_count, 0) --> shouldn't that be 1? [17:15] sinzui: np [17:16] sinzui: just disclosure.picker_expander.enabled default 0 on [17:16] ? [17:16] wait. No. [17:16] bac, http://pastebin.ubuntu.com/690967/ [17:17] sinzui: thanks! [17:17] sinzui: Got an interesting assertionError. [17:18] henninge: \o/ Have a fun-filled future ahead :-) [17:18] nigelb, I think I know what you saw. I should have changed the first assert to check branch_count [17:18] nigelb: thank you very much! [17:19] henninge, It was great working with you [17:19] sinzui: thanks, same here ;-) [17:20] sinzui: I don't understand. Why should it be checking branch count? [17:21] nigelb, because you changed the template: [17:21] [17:22] when that is zero, the commits section is not rendered [17:22] Right! [17:22] But the count is till 1. [17:22] Ah. [17:23] view.committer_count is 1 view.branch_count is 0 [17:23] I misread it too [17:24] Should I just check branch count and leave it at that? [17:28] nigelb, I think we should check branch_count, revision_count, and the commits node to verify there is something, but we do not want to show it, and we did not show it [17:29] So, we verify branch_count = 0, revision_count =1, and then somehow check the view to make sure only branch_count sentence is there. [17:29] Is that the right thinking? [17:31] yep [17:31] nigelb, the latter is done via commit_section = find_tag_by_id(view.render(), 'commits') [17:31] self.assertIs(None, commit_section) [17:31] Aha [17:31] So just add branch_count check [17:31] and correct the commits count [17:31] nigelb, view() or view.render() generates the markup using the principal as the user [17:32] nigelb, I think so [17:32] \o/ === deryck[lunch] is now known as deryck [17:45] bac: if you're looking for something to review, I've got one on the queue: https://code.launchpad.net/~jtv/launchpad/bug-613823/+merge/75773 [17:46] jtv: was just about to claim it [17:46] sweet. thanks. === salgado-lunch is now known as salgado [17:55] jcsackett, Do you have time to mumble? [17:56] sinzui, sure. lemme fire up mumble. [18:30] hi jtv [18:30] hi [18:30] jtv: in the factory, the logic around setting iscurrent is a little confusing [18:30] jtv: does it default to true when the object is created? [18:30] Oh, it's just because iscurrent is True when we create the template. [18:30] Yes. [18:31] oh, ok [18:31] I could remove the “if” if you like. [18:31] might be less confusing to just set it. [18:31] OK [18:33] bac: pushed the change. [18:33] jtv: thanks [18:39] done jtv. nice. [18:40] Thanks! [18:51] flacoste, sinzui and anybody else. i get an error using 'make schema' in my py27 experiment. i don't think it's related to py27 though, since pypi only has ipython 0.11 i think: [18:51] While: [18:51] Installing iharness. [18:51] Getting distribution for 'ipython==0.9.1'. [18:51] Error: Couldn't install: ipython 0.9.1 [18:51] [18:53] barry: do you have an up-to-date download-cache? [18:54] flacoste: i *thought* so since i ran rocketfuel-setup about 2hrs ago :) [18:54] you should have: download-cache/dist/ipython-0.9.1.tar.gz [18:54] in your tree [18:54] barry: did you run link-external-sourcecode? [18:54] flacoste: hmm, yep, it's there. [18:55] barry: anything after the Error: Couldn't install: ipython 0.9.1? [18:55] flacoste: ah! how quickly we forget. and i'm not sure the help wiki descript that [18:56] barry: well, if download-cache is in your tree, link-external-source would have done its job [18:57] flacoste: hmm, okay, let me see [18:59] link-external-sourcecode is now managed by the make file [18:59] make compile will do the necessary buildout [19:00] i got tripped up on `make PYTHON=python2.7 schema` [19:00] i'm trying to create a branch of devel now, but the vm's disk i/o kind of sucks [19:13] bac: around? [19:18] nigelb, I can review your branch once gthe diff updates [19:18] sinzui: Ah, thanks :-) [19:18] I thought you left! [19:21] nigelb, The branch is good to land. I will do that now [19:22] sinzui: Thanks! :-) [19:24] flacoste, sinzui okay, i guess it *is* an issue with py27. a make schema w/o PYTHON=python2.7 seems to be working okay. maybe ipython 0.9.1 isn't compatible with python 2.7? [19:24] huh [19:25] barry, http://ipython.scipy.org/dist/0.9.1/ <- could be true [19:26] sinzui: yeah [19:26] sinzui: i'll see if upgrading my local download-cache to 0.11 makes any difference [19:27] ll supports py3. It looks promising [19:39] Oh no. [19:39] Can someone give me the tracback/details for OOPS-2085QASTAGING54 [19:43] sinzui: Could you help wwith ^ [19:44] * sinzui looks [19:44] How did that fail QA. I did all the testing :( [19:44] nigelb, the oops is not in the db yet [19:44] nigelb, what were you doing? [19:44] +check-links [19:45] I was QA-ing my fix [19:45] Its mostl likely a QA-bad. But I want to see the traceback to confirm [19:46] nigelb, https://qastaging.launchpad.net/+check-links ? [19:46] Yeah [19:46] I do not get an oops, but I only see {} [19:46] Well, javascript POSTs bug numbers and branches harvested to it [19:46] sinzui: please remind me. do i need to do anything more than put ipython-0.11.tar.gz in download-cache/dist and update versions.cfg? [19:46] It returns json of stuff that's valid [19:47] I'm QA-ing bug 849121 [19:47] <_mup_> Bug #849121: Autolinked bugs should also have title attribute with bug title < https://launchpad.net/bugs/849121 > [19:47] barry, that is all that is required. deleting old version is optional [19:47] sinzui: okay thanks. trying it [19:47] I'm trying to see if the title gets updated to the URL for comment #2 in https://bugs.qastaging.launchpad.net/ubuntu/oneiric/+source/phaseshift/+bug/755937 [19:47] <_mup_> Bug #755937: phaseshift version 0.40-13.2 failed to build on i386 < https://launchpad.net/bugs/755937 > [19:50] nigelb, what url did you use? [19:50] sinzui, barry: actually, you need to update the version number in versions.cfg [19:51] flacoste: yep [19:51] since we pin version using buildout [19:51] ah [19:51] sinzui: https://bugs.qastaging.launchpad.net/ubuntu/oneiric/+source/phaseshift/+bug/755937 [19:51] <_mup_> Bug #755937: phaseshift version 0.40-13.2 failed to build on i386 < https://launchpad.net/bugs/755937 > [19:51] barry: i missed the second part "and update versions.cfg' [19:51] sorry for being redundant [19:51] no worries! [19:52] flacoste, sinzui: so this should work, right: `make PYTHON=python2.7 schema` [19:52] barry: maybe only in a new branch [19:52] flacoste: yep, new branch [19:52] nigelb, so you are watching the js console for errors and you see the 500 error for +check-links [19:52] w/versions.cfg changed [19:53] barry: since i'm pretty sure the Makefile doesn't version on the value of PYTHON env var [19:53] sinzui: Yep [19:53] Looking at firebug [19:53] barry: what I mean is that bootstrap needs to be run with that env [19:53] flacoste: ah [19:53] barry: but i'm not sure it will do the right thing if it was invoked first with python2.6 [19:53] right. fresh branch [19:54] barry: you can remove bin/buildout [19:54] and then do a make [19:54] make PYTHON=python2.7 [19:54] that should do the trick [19:54] since bootstrap will be run in that case [19:54] flacoste: yeah, it still bombs out on ipython 0.11 :/ [19:55] sinzui: I can't reproduce any problems in my dev setup. So, not a clue what's going wrong. [19:55] barry: it fails to build ipython with python2.7? [19:55] I'm guessing there could be a timeout issue for the search. [19:55] Getting distribution for 'ipython==0.11'. [19:55] An error occurred when trying to install ipython 0.11. Look above this message for any errors that were output by easy_install. [19:55] While: [19:55] Installing iharness. [19:55] Getting distribution for 'ipython==0.11'. [19:55] Error: Couldn't install: ipython 0.11 [19:55] [19:55] % grep ipython versions.cfg [19:55] ipython = 0.11 [19:55] [19:55] % ls ../download-cache/dist/ipython* [19:55] ../download-cache/dist/ipython-0.11.tar.gz [19:55] [19:55] barry: why ../download-cache ? [19:56] nigelb, could be [19:56] barry: i'd expect ./download-cache [19:56] barry: do you a symlink in place? [19:56] ln -s ../download-cache . [19:56] flacoste: yep, that symlink is there and ./download-cache also has 0.11 [19:57] sinzui: The tests cach all the use cases that I'd expect it to catch. What should I be doing since I can't do a qa-ok with any sort of surety [19:57] *catch [19:57] barry: are you on lucid or oneiric? [19:58] Does staging have the rev yet? It is faster [19:58] flacoste: this is a lucid vm [19:58] It just got on qastaging. [19:58] I'm not sure eif its not stage [19:58] * nigelb checks [19:58] barry: ok, i don't have this setup, but i can try on oneiric to see how far i get [19:59] flacoste: cool, thanks. i'll keep poking at it too :) [19:59] stage is *old* [20:01] nigelb, I see staging is about 12 hours behind. I just got my work that landed before I woke [20:02] the bottom revision numbers of stage say 10984. Is that wrong? [20:02] sinzui: stage = staging.launchpad.net right? [20:02] nigelb, yes [20:02] or is it something I don't know of. [20:03] nigelb, I am being an idiot. I can paste you the error I see hidden in the browser response [20:03] hah [20:03] flacoste: did you ask henninge about being in the emeritus team? [20:04] Also. 2 days of falling ill. 2 launchpad branches landed. Productive sick time I reckon. [20:06] lifeless: i didn't think about it, but he's still subscribed to launchpad-dev [20:06] so would probably be interested [20:06] barry: it's compiling dependencies over here [20:08] flacoste: hmm [20:09] barry: it builds cleanly on Oneiric using python2.7 [20:09] barry: no need for ipython 0.11 [20:10] barry: so i suspect a Lucid issue :-/ [20:10] flacoste: huh. yeah. okay thanks [20:10] barry: do you have anything py2.7 eggs built under eggs? [20:11] just checking that it's really ipython that doesn't work and not all 2.7 deps [20:11] flacoste: yes, i do have some py27 built eggs in there (e.g. the zope stuff) [20:12] barry: ok, so either a buildout issue on Lucid/2.7 or something in ipython specifically [20:13] flacoste: nod [20:15] flacoste: can i get more verbose output out of buildout? [20:17] nigelb, sorry, I was pulled into anther conversation: http://pastebin.ubuntu.com/691043/ shows that there can be a mismatch between the set of ids and what is removed [20:17] barry: you can try running it manually [20:17] nigelb, maybe it is a parsing error [20:17] sinzui: Oh. Checking. [20:17] nigelb, one option is to look before removing the item [20:18] barry: [20:18] PYTHONPATH= $(PYTHON) bootstrap.py\ [20:18] --setup-source=ez_setup.py \ [20:18] --download-base=download-cache/dist --eggs=eggs \ [20:18] --version=1.5.1 [20:18] PYTHONPATH= ./bin/buildout \ [20:18] configuration:instance_name=${LPCONFIG} -c $(BUILDOUT_CFG) [20:18] LPCONFIG=development [20:19] BUILDOUT_CFG=buildout.cfg [20:19] sinzui: *confused* It should be there [20:19] flacoste: okay, manually as per above still bombs out on ipython. time to pdb i guess ;) [20:19] Because I'm checking in the list that I just sent to search. [20:20] barry: maybe try buildout ipython? [20:20] sorry building [20:21] might be because of missing unrepored dependency [20:21] flacoste: good idea [20:23] sinzui: Well, it is qa-bad anyway. :( [20:24] flacoste: well, this seems like a bad sign: [20:24] @lessons[/tmp/xx/ipython-0.11:258]% python2.7 setup.py build [20:24] Aborted (core dumped) [20:24] [20:24] lol [20:24] yeah [20:24] nice euphemism ;-) [20:25] thanks sinzui! [20:25] flacoste: I will mail him [20:25] flacoste: ah, I only have his canonical address [20:25] flacoste: okay, i'll shut up now [20:26] lifeless: its in his email to launchpad-dev [20:26] the one about translations [20:26] nigelb: i pm it to lifeless [20:26] :) [20:27] Gah. After python tests and javascript tests I end up with a QA fail. [20:27] mailed him [20:30] Oh. Its a weekend. [20:35] Hrm, does bugtask.search always return a list of unique values? [20:35] Oh. FU. [20:35] No. [20:35] * nigelb facepalms. [20:39] sinzui: took a bit longer to get the MP to work out than expected, but the branch is up for review with you requested as reviewer. :-) [20:39] am I supposed to get a file not found error with launchpadlib for the credentials file when used with desktop integration permissions? [20:45] in unity, is there a shortkey to run a command? I can't access the pannel [20:45] crap, wrong channel :) [20:45] thank you jcsackett [20:46] sinzui: Found the problem. Doing as you suggested. [20:46] I assumed search would return only unique IDs [20:46] I was wrong. [20:46] There can be two bugtasks for a bug. [20:46] *two or more [20:52] nigelb, that is right. we often use a set() object when building a collection to ensure out code sees one one item [20:54] hm, I like this line in launchpadlib: credential_store = credential_store :) [20:55] sinzui: I can't do the set() here because I get a list of bugtasks which are indeed unique. I should have caught this. [20:56] nigelb, correct, but this is case were you want bugs, so your could do bugs = set(bugtask.bug for bugtask in bugtasks) [20:57] ahhh. [20:57] YES [20:57] but that's adding another loop [20:57] nigelb, you may have fixed bug 262545, or you have made it very easy to fix [20:57] <_mup_> Bug #262545: Milestone listings should show the bugs' titles/descriptions in a tool tip < https://launchpad.net/bugs/262545 > [20:58] I'm thinking the if would be less iterations [20:58] oh. looking [21:04] sinzui: are you around long? [21:04] I have a fix for the qa-bad. [21:04] I can linger [21:04] I can review your fix and land it [21:05] excellent. Give me 5 minutes to push it out === matsubara is now known as matsubara-afk [21:29] https://code.launchpad.net/~nigelbabu/launchpad/bug-title-regression-849121/+merge/75822 [21:29] Diff shows empty. I'm confused. [21:29] I see [21:29] Delete and submit again? [21:29] * sinzui looks in loggerhead [21:31] nigelb, your change and test looks good in loggerhead [21:32] okay \o/ [21:33] nigelb, I resubmitted: In linkchecker, check if the bug ID exists in the list before removing from the list [21:33] Oh, cool. [21:33] and there it is [21:34] I am approving this and landing it now [21:34] Thanks a bunch! [21:34] Could you help me figure out what the other bug is about? [21:41] jcsackett, I approved your branch [21:43] jcsackett, I am sending your branch off to land [21:48] sinzui: thanks. [21:48] * jcsackett really needs to sort out his landing issues. [21:58] sinzui: for the milestone bug, does it mean https://launchpad.net/unity/4.0/4.2.0 page [21:59] nigelb, yes, or its alternate url https://launchpad.net/unity/+milestone/4.2.0 [21:59] The former is a released milestone, the latter always exists [21:59] * nigelb looks [22:00] The url maps to the same view [22:00] sinzui: I see that the title of the bug is already there [22:00] It was once truncated [22:00] I think the intent was to load more information on hover, such as full title, description, and bug tags [22:01] I think the tags issue was reported as a separate bug [22:01] Do we have a hover for more info kind of story anywhere else? [22:02] It looks like the +check-links stuff isn't needed here. [22:05] nigelb, I agree it is not in this case, but I think you have laid the foundation to solve a class of bugs [22:05] \o/ [22:06] We want to load extra bug information in an asyc fashion, either after the page loads or on hover. Ideally the first, but hover is okay [22:06] The foundation was there. I slowly extended it [22:06] :) [22:06] Showing the title in a tooltip solves the bug id in test case. Showing part of the description or tags allow users looking a lists of bugs to gain information without traversal [22:08] I think it would be nice if on clicking the URL, it loaded an "overlay" that would display the summary + tags [22:10] nigelb, see bug 401243, bug 1924, bug 86461, bug 262545 [22:10] I bet we can dupe some of those [22:12] I see mpt bugs! [22:13] Those usually cannot be duped ;-) [22:13] They can when code was merged [22:15] I remember seeing 1924. That is a bit of work by itself. [22:17] sinzui: Ooh. bug 262545 looks like fun. [22:17] <_mup_> Bug #262545: Milestone listings should show the bugs' titles/descriptions in a tool tip < https://launchpad.net/bugs/262545 > === bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: -| Critical bugs: 261 - 0:[########*** stack smashing detected ***: ./lp terminated [22:19] nigelb, We had timeouts trying to show that data. The hope was to solve the issue after page load. We stopped truncating bug titles since then. Release managers still want to see the tags and the description. [22:20] sinzui: We could create a similar interna API to solve this [22:20] It should not be *too* hard [22:20] nigelb, I was thinking the same since you have demonstrated how to do it [22:21] I think I'll pick it up after my current assigned bugs are over [22:21] (2 more) [22:23] nigelb, fab. I agree it is best not to commit to to many bugs. [22:25] :) === jam2 is now known as jam