[00:03] poolie: correction, no lp committers have commented on it [00:03] I've looked at it and determined that I'm not qualified [00:03] I'll poke jml and mwhudson :) [00:03] haha [00:03] ok, thanks :) [00:04] so, if its conditional. [00:04] lets land it. [00:04] and iterate. [00:04] lifeless: you review it then [00:04] rs=lifeless [00:04] done [00:04] poolie: is it proposed into the right branch? [00:04] 4907 + [00:04] doesn't seem like something i'd expect to see [00:05] lifeless: i think it is worth fixing the issues andrew raised [00:05] poolie: right [00:05] but none of them seem profound so i wanted to pipeline other reviews [00:05] I knew that the code had been reviewed. [00:05] and andrew is an emeritus lp reviewer. [00:05] so he can vote it through. [00:05] mwhudson: i suspect it is a mix of db-devel and devel, so it may not be possible to land until they merge [00:06] which may now have happeende [00:06] jam will also need someone to sponsor this and to help him shake it out on staging [00:06] or it is landed on db-devel [00:06] * thumper is off next week [00:09] thumper: you mean it could land on db-devel instead? [00:09] yes [00:13] poolie: it definitely can't land on devel until the next release [00:13] well, unless there's some history rewriting [00:13] meaning 2 weeks from now? [00:14] i think it's a bit more than that [00:14] but if it landed on db-devel, it would be available for testing on staging? [00:14] yes [00:18] poolie: the branch has conflicts with db-devel it seems [00:18] jam: can you merge db-devel, fix the conflicts and repropose it against db-devel? [00:25] i don't think he's here at the moment but i put that on the mp [00:26] thanks [00:29] I think getting a new mp against db-devel would help [00:30] as it would avoid all the extra crap [00:30] we should allow target editing [00:30] (but don't yet) [00:30] and a way to regenerate the diff [00:30] yet more on the mp todo list [00:54] hi, I'd like to develop new features for rosetta (launchpad translations), but there are quite a lot of branches. Which one should I use as a base? [01:00] https://dev.launchpad.net/Trunk will help you understand how the various branches relate [01:00] Or, in short, base of lp:launchpad/devel [01:06] maxb: nice, thank you [01:07] thumper: yo [01:13] wallyworld: hi [01:14] skype? [01:15] ok [01:21] thumper: i agree changing the target wbn [01:28] mars: Um, good luck with getting dpkg to downgrade packages. [01:28] Downgrades aren't actually supported. [01:29] ? [01:29] s/dpkg/apt/ [01:29] meaning the packages aren't required to cope with it? [01:29] packaging 101 question: is there a script to make a tar.gz from an egg for adding to download-cache? [01:30] poolie: Correct. [01:31] apt will try very hard to avoid it. [01:39] * thumper feels like crying [01:39] why is this so fucking hard [01:39] * thumper is upset bzr doesn't allow me to push without stacking [01:40] thumper: init the branch, turn off stacking, then push [01:40] I can't init the branch [01:40] the branch is trunk [01:40] ? [01:40] I'm trying to fix up the remaining 9 maverick branches that are stacked on lucid [01:40] it already exists on lp and is stacked? [01:40] where reconfigure --unstacked breaks [01:41] poolie: yes [01:41] I have local full copies of the branches on devpad [01:41] and I was trying to move the existing .bzr to backup.bzr using hitchhiker [01:41] and repush the full unstacked branch [01:41] but I can't [01:41] two problems stop it [01:42] there is a bug in LP where the trunk is offered to stack when pushing trunk [01:42] (in the weird edge case where you do that) [01:42] and that bzr can't avoid stacking at creation time [01:44] you'd think it wouldn't be that hard [01:45] thumper: --stacked-on= doesn't help? [01:45] wgrant: is that valid? [01:45] thumper: I think so. [01:45] It used to be. [01:45] * thumper pokes something [01:46] $ bzr push lp:~thumper/wikkid/test --stacked-on= [01:46] Created new stacked branch referring to file:///home/tim/sandbox/wikkid-sandbox. [01:46] .... great. [01:46] Well, you could start pushing, kill it before it finishes, then push again. [01:46] That should result in it being unstacked. [01:47] I'm tempted to just use hitchhiker to copy the .bzr dir from the devpad copy [01:48] that may work [01:48] :/ [01:48] poolie: lynne is back, but I'm feeling shitty - going to find a local gp and pop in. [01:48] once I get through to a human @ vodafone [01:48] np [01:48] although I'd have to do something about the checkout dir [01:49] there is a medical centre under the forum, on the side nearest the urban; good luck [01:49] 6 minutes on hold so far [01:49] poolie: can you think of a better idea? [01:50] i'm trying to understand what you're trying to do [01:50] poolie: ok... here goes [01:51] https://code.edge.launchpad.net/~ubuntu-branches/ubuntu/maverick/libsoup2.4/maverick is stacked on https://code.edge.launchpad.net/~ubuntu-branches/ubuntu/lucid/libsoup2.4/lucid [01:51] it shouldn't be [01:51] the lucid branch should be stacked on maverick [01:51] I'm trying to fix that [01:51] or [01:51] more correctly [01:51] I'm trying to unstack the maverick branch [01:51] I don't care about lucid not being stacked [01:51] however [01:51] ok, and just reconfiguring it fails how? [01:52] reconfigure --unstacked breaks [01:52] with an error similar to what I pastebinned yesterday [01:52] http://pastebin.ubuntu.com/502991/ [01:52] well, this is for lp:ubuntu/language-pack-gnome-tg [01:52] but it is also one of the 9 that fail [01:53] ok and you have new proper copies of the branches elsewhere [01:53] 312 of the 321 incorrectly stacked branches got unstacked correctly using reconfigure --unstacked [01:53] yes, on devpad [01:54] hm [01:55] is it an option to just overwrite it using sftp+? [01:56] what do you mean? [01:57] well, first, let me try to work out if that revision is meant to be in either of those brancehs [01:58] thumper: Why can't you just mv .bzr backup.bzr.~1~ in hitchhiker, then bzr init lp:foo; bzr reconfigure --unstacked lp:foo; bzr push lp:foo ? [01:58] maxb: because bzr init lp:foo errors [01:58] ! [01:58] yeah [01:58] thumper: because it tells it to stack on itself? [01:59] can you pastebin that error? [01:59] the error is worse now :( [02:00] uh, still? [02:00] bzr: ERROR: Server sent an unexpected error: ('error', ' cannot have linked branches.">') [02:00] ! [02:01] that's not my fault :) [02:01] I was going to look at those after I had fixed these branches [02:01] hm so what do you want? [02:01] i can make a patch to disable stacking on random things [02:01] or we can manually edit that repo [02:01] or we can investigate why it won't unstack [02:03] poolie: is it possible to have a hacky plugin to allow me to push without stacking? [02:03] poolie: that might be easiest [02:04] sure [02:04] poolie: then I could move the .bzr to backup.bzr with hitchhiker [02:04] poolie: and push the full copy in [02:04] i'm just wondering if you're going to hit the same zope error? [02:04] that zope error is due to it looking for the branch to stack on [02:04] I can use the full url to hitchhiker in still [02:05] so all we need is to be able to push an unstacked branch [02:05] then we can look into the unstacking failure [02:05] et al [02:05] I need to fix those error messages [02:05] but I'm not sure that'll get done in time [02:05] i.e. by EOD as I'm off next week [02:05] I might get abentley to look into it next week [02:06] I'm guessing it isn't actually that hard [02:06] just catching the error in the right place [02:06] and returning it correctly though the smart server [02:15] * thumper looks for food [02:16] thumper, i'll see what i can do about it [02:16] i don't think i'll have access to write to those branches but that can probably be fixed [02:35] poolie: if you can get me the hacky plugin, I can put it on devpad and push the branches [02:35] poolie: you can always test it locally [02:35] k [02:39] just testing it [03:09] Did anyone make any headway on the CSCVS NoWhoami problem yesterday? [03:10] * maxb is collating a list of failed imports [03:10] maxb: not that I know of [03:11] maxb: is there a bug filed? [03:11] we need a losa to look at the importds i think [03:12] mwhudson: do you think that is better than hacking CSCVS? [03:13] thumper: maybe not [03:13] thumper: ok, lp:~mbp/bzr/stacking adds a -Ddisable_stacked_on_url debug flag [03:13] which should do what you need [03:13] you can set that for pushing, etc [03:13] i don't understand why it changed though :/ [03:15] poolie: can I just check that out on devpad and use the bzr in it directly? [03:15] poolie: do I have to compile anything? [03:16] $ bzr branch lp:~mbp/bzr/stacking mbp-bzr [03:16] bzr: ERROR: The branch lp:~mbp/bzr/stacking has no revision None. [03:16] ? [03:17] ah, heh [03:17] i'm using it to push itself, so it's taking a bit longer than usual :) [03:17] i'll push it to devpad in a shared repo [03:17] hang on [03:23] thumper: that branch is there for you now [03:23] poolie: on lp? [03:24] yup [03:27] poolie: do I have to "make" anything [03:27] ? [03:47] poolie: doesn't quite work: $ ~/mbp-bzr/bzr push -Ddisable_stacked_on_url --use-existing lp:~ubuntu-branches/ubuntu/maverick/libsoup2.4/maverick [03:47] Using default stacking branch /~ubuntu-branches/ubuntu/maverick/libsoup2.4/maverick at lp-64804368:///~ubuntu-branches/ubuntu/maverick/libsoup2.4 [03:47] bzr: ERROR: The branch 'bzr+ssh://bazaar.launchpad.net/~ubuntu-branches/ubuntu/maverick/libsoup2.4/maverick/' cannot be stacked on '/~ubuntu-branches/ubuntu/maverick/libsoup2.4/maverick'. [04:13] thumper: sorry, back now, no, you shouldn't need to build anythnig [04:14] can you paste the traceback please? [04:15] there was no traceback [04:15] not even in .bzr.log? [04:16] * thumper looks [04:17] poolie: devpad:/home/tim/.bzr.log [04:17] mwhudson: ping [04:19] sorry thumper, that's -Ddisable_set_stacked_on_url [04:19] :/ [04:19] my mistake [04:19] * thumper sighs [04:19] obviously it's too long [04:20] what about -Ddisable_stacking [04:20] thumper: hi [04:20] mwhudson: got a few minutes for a pre-impl? [04:20] that would've been smarter [04:20] mwhudson: translatePath errors [04:20] thumper: ok [04:21] mwhudson: thanks [04:22] hmm [04:22] thumper: can you hear me? [04:22] mwhudson: no all I could here was me [04:22] bah [04:23] thumper: i'm trying to work out if i should file a follow-on bug to fix this properly [04:24] oh ffs [04:24] perhaps it is that we want a configuration option to say whether bzr should trust server-suggested stacking? [04:24] poolie: it would be great to have a client side way of saying "ignore stacking" [04:31] thumper: i guess it's bug 368913 [04:31] <_mup_> Bug #368913: bzr tries to stack on a new branch with stacking policy pointing at . [04:31] and bug 391405 [04:31] <_mup_> Bug #391405: want an option to force stacking or not when creating a branch [04:38] thumper: sorry for the lag, is it ok now? [04:41] poolie: looks like that works [04:41] 8 left to fix [04:55] it's hard to get used to having so much code in .txt files [05:09] how do i run just a single doctest? [05:09] i mean, a single file? [05:11] bin/test -t blahblah.txt [05:11] Don't try to give the full path -- it's often not what you expect. [05:14] ah, so bugs-emailinterface as a workaround for something appears under lib.canonical.launchpad.ftests [05:15] not the module that actually contains it [05:17] It varies. [05:18] poolie: Everything in canonical.launchpad shouldn't be there (but where to put it? Its still unclear often where under lp. things should go) [05:23] stub: well, in this case the actual file is in lp.bugs.tests [05:23] which is not a bad place for it imo [05:24] something to do with bug 305856 [05:24] <_mup_> Bug #305856: Spurious/intermittent test failure in answers/doc/emailinterface.txt [05:24] right. but people are encouraged to put new stuff in the 'correct' place rather than in canonical. which might explain the disconnect [06:45] wallyworld: normally page tests test no-js functionality [06:45] wallyworld: and the windmill ones test js functionality [06:46] wallyworld: interactively I use a firefox plugin to disable js [06:46] thumper: in that case, everything should be sweet, no? [06:46] wallyworld: have you checked that the existing test coverage covers the case you care about? [06:46] yes, xx-branchmergeproposals.txt [06:47] wallyworld: have you made the fix? [06:47] that doc test basically creates merge proposals etc and checks the results [06:47] i added to it as well as part of the increased test coverage for the new stuff in the branch [06:48] wallyworld: you are good to go now [06:48] * thumper EOWs [06:49] thumper: thanks. enjoy your week off :-) === almaisan-away is now known as al-maisan [07:32] Morning [07:32] Morning noodles775. [07:59] ok [07:59] trying to fix my dkim/gpg failures now [08:07] omg these doctests with everything running together [08:35] w [08:40] good morning [09:01] stub: ttps://bugs.edge.launchpad.net/launchpad-foundations/+bug/640125 is linked to the branch in rev 11567, but it needs qa [09:01] <_mup_> Bug #640125: cron scripts should log everything, but only send mail for errors [09:02] Yup. That might have got to staging now so can be tested when I've kicked off the 8.4 slave [09:03] What do we use python-tickcount for? [09:04] It seems odd that nobody else on the planet needs it. [09:04] stub: its causing https://devpad.canonical.com/~lpqateam/qa_reports/launchpad-stable-deployment.txt issues because (like me) you reuse branches [09:04] wgrant: lsprof didn't exist [09:05] morning all [09:05] Morning bigjools. [09:07] oh yay [09:07] lifeless: Can we use lsprof instead? [09:07] well we won't get ticks, but I'm not sure they are a great proxy [09:07] better to implement bug xxxx for per thread resource usage in oops. [09:08] (python-tickcount and ubuntu-keyring are the two packages that really tie us to Ubuntu) [09:09] Hey [09:12] Good morning [09:12] thumper, poolie: hi [09:13] thumper, poolie: I've honestly been meaning to check out jameinel's branch. Really. [09:19] np, it shouldn't be your job to review everything [09:19] though i guess this is a bit in your areao [09:23] gmb: can i trouble you for an incremental review on https://code.edge.launchpad.net/~mbp/launchpad/dkim/+merge/35985 [10:15] noodles775: just looking at your comment ordering post... [10:16] noodles775: out of curiosity, is the code in that demo using lp.services.comments? [10:16] jml: yep. [10:16] noodles775: cool :) [10:18] noodles775: ping [10:19] jml: I had to modify lp.services.comments a bit, and I think lp.services.comments could be generalised a bit more too. [10:19] mrevell: yup? [10:19] noodles775: both make sense. [10:19] noodles775: as far as I know, lp.s.comments is an intent-to-generalize more than an actual proven generic solution. [10:20] noodles775: Hey, do you have time for a call today? I'd like to pick your brains on your screencast recording setup. [10:20] mrevell: sure, although it's just gtk-recordmydesktop. I can talk now, or after lunch, whatever works for you. [10:21] noodles775: Is in five minutes okay? [10:21] Sure, I'll be in the soyuz 1-1 on mumble? [10:21] Ta [10:46] afk for ~20 mins [11:07] now, to action [11:12] jml: where is your bzr plugin to show the XXXes? [11:13] lp:difftodo [11:13] jml: rock, thanks [11:13] it's not bundled as a regular plugin. am happy to help w/ install issues [11:13] * bigjools as adding copious more to the b-m code === al-maisan is now known as almaisan-away [11:18] jml: I checked it out in plugins/ and did "bzr todo" - how easier can it be? :) [11:19] bigjools: glad to hear it. it's just been ages since I've installed it or had a new user, so was expecting worse. [11:28] jml: this _deferred_list stuff is a nightmare :/ [11:28] bigjools: I've long thought so :) [11:29] jml: in particular the way it chains callables together in the recording slave with the *DispatchResult at the end [11:29] bigjools: you mean the way it hangs so much on exactly what kind of dispatch result you get? [11:30] jml: it's a consequence of the recording slave strategy. Because it doesn't know in advance what Deferreds will be fired or how many of them, it just keeps processing the recorded slave calls until it hits an instance of the BaseDispatchResult [11:31] ahh [11:31] which, when called,p does a Thing [11:31] bigjools: that makes a strange kind of sense [11:31] the Thing to do was decided ages ago [11:31] jml: yes, that's the annoying thing about it :) [11:32] bigjools: actually, I was going to ask you about the branch anyway... [11:32] jml: fire away [11:33] bigjools: I'd like to keep up-to-date with the changes. I'll probably have thoughts, questions etc. What's the most helpful way of sending those back to you? [11:33] bigjools: as I get them, or wait until you've reached some kind of checkpoint or... ? [11:33] jml: as you get them would be good - I'm committing a few times a day when I work on it, but that's not regular at all [11:33] bigjools: will do. [11:33] I'm trying to make the commit messages as useful to you as possible [11:34] stub: any idea about the 15 second update in the +delete bug? [11:34] ENOCONTEXT [11:34] bigjools: not promising I'll get any time. I just filled up an a4 page with "work things currently on the go" [11:34] ha [11:35] stub: https://bugs.edge.launchpad.net/launchpad-registry/+bug/652802 [11:35] <_mup_> Bug #652802: Person:+delete timeouts on teams [11:35] jml: BTW remember all those traps we added that just log messages? [11:35] bigjools: yeah. [11:35] jml: I've decided that we should remove them, because inside scan() it catches all errors anyway and does the failure counting. [11:36] if we can make all aspects of the job management get failure counted for free, that would be...win [11:36] bigjools: that makes sense... as long as the errors don't get lost. [11:36] jml: I can still log - just throw the failure again [11:37] bigjools: for me, the confusing part of the error handling is that some parts catch and throw away and others re-raise and others catch and then signal failure with some different mechanism [11:37] jml: you're not alone in confusion [11:37] bigjools: it would be nice if everything just damn well raised & let the bm take care of it all. [11:38] exceptions are great for errors [11:38] in exceptional cases [11:38] routine errors - no [11:41] you've argued this before, but not made a compelling case [11:44] lifeless: It is slow because it is trying to update 25k rows in a table of 60million [11:44] oh wow. [11:45] deceptive ;P [11:45] thanks for looking that up [11:46] real question is how come it managed that query in 15s. Took my test 46s :) [12:02] Morning, all. [12:07] night all [12:35] * bigjools drowns in build manager hideousness [12:37] That rabbitmq hang on shutdown is annoying. [12:38] deryck: yes [12:39] I've made a /etc/default/rabbitmq file that overrides the DAEMON variable in the startup script to /bin/true [12:39] I shall do that now. [12:40] death to persistent services only needed by LP.... [13:03] om nom nom [13:14] My /etc/default/rabbitmq says "exit 0" :-) [13:27] heh === matsubara-afk is now known as matsubara [13:31] our fake logger copes quite miserably when one of the strings it's trying to log has a % in it [13:31] which of our 3 fake loggers ? :-) [13:32] quite [13:40] bryceh: Can you triage bug 644794? It's one of yours :) [13:40] <_mup_> Bug #644794: Link BugTrackerComponents to distro/sourcepackages [13:43] bigjools: I thought we fixed that. [13:45] sinzui: hi [13:45] hi jml [13:45] sinzui: (foo,) is perfectly valid Python syntax, PEP 8 preferred and our historical coding standard. Why are we changing it? [13:46] because PEP8.py is complaining and I do not want to see the complaint [13:46] sinzui: fix pep8.py [13:47] maybe [13:49] sinzui: or stop using it. it's putting the cart before the horse to change the way we write code to match a bug in a third-party tool. [13:49] would you like to put pylint back [13:49] no. [13:49] but that's not the only other option open to us :) [14:01] sinzui: https://code.edge.launchpad.net/~jml/pocket-lint/singleton-tuples/+merge/37242 [14:02] allenap, many many thanks for helping triage bugs today. Sorry if I'm stepping on you, too. :-) Was trying to help catch them up today as well. [14:02] deryck: I haven't noticed actually. [14:03] ok, cool [14:07] sinzui: thanks for the review. how soon can we have the patched version on developer machines? [14:07] jml: we have, but this time it's in the string outside of the exc_info [14:07] deryck: is sladen filing bugs by email, or is the dupe checker substantially worse [14:07] bigjools: huh what? [14:08] jml: a traceback being passed in instead of using exc_info, basically [14:08] jml: soon is never an option with building PPAs. maybe Wednesday [14:08] sinzui: what needs to happen? [14:08] bigjools: sorry I think I missed some context. [14:09] bigjools: oh never mind [14:09] sinzui: there are plenty of buildd-admins around who can rescore builds, I'm one of them ;) [14:09] I push the new source package then we wait for its turn to be built [14:09] * sinzui has never consider cheating [14:09] sinzui: I have a graph that shows the queue empties regularly [14:09] wel not on this subject anyway [14:10] jml, the last pocket-lint build for Jelmer took about a weeks to do all the hops [14:10] sinzui: anyway the queue is small [14:11] sinzui: well, let me know when you've pushed the build. I guess it has to go into the launchpad developer PPA? [14:11] jml, okay [14:11] jml, we just vopy it [14:11] copy [14:12] sinzui: nice. [14:24] deryck: Can you triage bug 651128? I can't really judge how important it is. [14:24] <_mup_> Bug #651128: Email bug submission fails due to erroneous bad signature detection [14:41] allenap, sure, I'll take a look. [14:41] deryck: Thanks. [14:42] np [14:43] jml, I believe he is email filing the bugs. [14:44] deryck, I wish we could force a dupe checker into everyone's email client. [14:44] yup [14:45] would save us all a lot of time. :-) === almaisan-away is now known as al-maisan [14:50] I don't really like our behavior of adding bug watches when someone adds a link for a tracker we recognize. [14:50] Maybe this helps other projects but for malone it's almost always wrong to do this. [15:04] mars: Regarding bug 644984, does that mean that lifeless' fix (r11597 in devel) is not in production-devel, or that it is but didn't fix it? [15:04] <_mup_> Bug #644984: test_runAll_mails_oopses fails sometimes [15:05] (you might want to re-open the bug if so) [15:05] noodles775, I haven't looked yet (that is why I left it Fix Commited) [15:05] Ah. [15:05] need to do this first, then thtat [15:06] hurray for allenap and I! bug box 0. [15:06] deryck: We rule :) [15:07] deryck, is that a first? [15:07] for anyone? [15:08] mars, oh, no. We keep our New bug count at zero as best we can. [15:08] mars, I've just let it slip for a little over a week as I was coding more. And I new most of them were dupes or need lots of explaining to users and was being lazy. [15:09] to my defense this is often the case for malone bugs and I was just worn down by it temporarily :-) [15:09] heh [15:18] The overlays are not aligned properly anymore, I think [15:23] allenap, what do you make of kitterman's comment in the follow up to bug 651128? Maybe this is a problem with that script? No one else is having issues with bad sigs. [15:23] <_mup_> Bug #651128: Email bug submission fails due to erroneous bad signature detection [15:25] danilos: Hi, are you here? [15:26] deryck: We could ask him to file a bug by email directly to try and isolate requestsync. [15:26] allenap, indeed. I'll ask him to confirm on staging. [15:29] danilos: about the agreement, do I send it to you? (I mean, in addition to contributor-agreement@canonical.com ) [15:29] malaria, hi, no, no need to [15:30] danilos: ok, so just for contributor-agreement@canonical.com [15:33] danilos: done. I re-created my branch on top of trunk and I updated the patch (now tests in browser-helpers.text work) [15:34] danilos: what more can I do? [15:35] malaria, the next step is to propose it for merging :) [15:36] malaria, see https://dev.launchpad.net/CoverLetters for how to describe the change as well :) === deryck is now known as deryck[lunch] [16:12] danilos: can you please give me a non-ascii unicode literal for Python? [16:15] jml, in what format? :) [16:15] \u0422 is probably a Cyrillic character [16:15] danilos: something I can paste into a Python file as a unicode literal :) [16:16] jml, ā [16:16] jml, does the above work, or you want something like "д" :) [16:16] I seem to ask too many questions and mars is quicker to the point :) [16:16] foo = ; I want something for [16:17] jml, right, well, foo = u'проба' should do if you are using utf-8 encoding [16:17] danilos, mars: thanks. [16:17] danilos: groda? [16:18] jml, it's "proba" (п is like Greek pi :), meaning "test" [16:18] dammit. I always get that wrong. [16:19] some day... [16:20] fwiw, if you paste the literal into a file, you get... SyntaxError: Non-ASCII character '\xd0' in file testrepository/tests/ui/test_cli.py on line 198, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details [16:20] using error_text = u'\u043f\u0440\u043e\u0431\u0430' [16:20] instead. [16:20] jml, you have to tell your editor to save it as utf-8 with a BOM [16:21] jml, you need to use "# -*- encoding: utf-8" (PEP-9 I think) === jcsackett_ is now known as jcsackett [16:22] uhm, I mean PEP263 as the error message says :) [16:22] ahh :) [16:22] I'm going to live on in merry ignorance of what BOM means in this context [16:22] byte order mark [16:22] silly thing needed by Windows [16:24] jml, BOM with UTF-8 is creepy stuff (it's "byte-order mark" and "byte-order" doesn't make much sense with a byte stream like UTF-8; it's something like \ufffe or \ufeff) [16:25] although I value the beauty and richness of human culture [16:26] sometimes I wish the Romans had beaten everyone === matsubara is now known as matsubara-lunch [16:28] Credo te iustum locum quaerere Quotes Page === salgado is now known as salgado-lunch [16:41] mpt: no, I'm not. [16:41] :-) === jam1 is now known as jam === Ursinha is now known as Ursinha-lunch [16:57] danilos: 'make lint' give me some "Line exceeds 78 characters" warning is this a problem? (there are other warnings for no-patched parts of the code...) [16:58] malaria, yeah, a reviewer will usually ask you to fix these (even if you didn't cause them) === deryck[lunch] is now known as deryck [16:58] danilos: ok, so I'm going to fix these. [17:01] danilos: one more thing, it complains about "narrative uses a moin header." I don't really get what this mean... [17:09] jml: have you looked at my changes yet? No rush, but I have a question if you have. [17:09] bigjools: no, not ye. [17:10] jml: ok, I am in the mood to delete code and I think I can blitz about 100 lines of crap in manager.py [17:11] but some of it is most intriguing [17:12] bigjools: ooh. [17:12] danilos: ok, I found [17:12] bigjools: which bits? [17:14] jml: it's all of the stuff that deals with recording slave, processing the deferred_list etc [17:14] but I can't figure out wtf the stuff in checkDispatch is needed for [17:15] the error handling I think can move moved wholesale to the startCycle method [17:15] s/move/be/ [17:16] bigjools: agree re error handling [17:16] (also, we should have a doCycle method, or something that does everything sans scheduling the next call) [17:17] jml: already done :) [17:17] bigjools: sweet. [17:17] makes the tests somewhat nicer ... [17:17] bigjools: in that case, error handling should be there, not startCycle [17:17] bigjools: I'm not at all surprised :) [17:17] yes the error handling is in the equivalent of your doCycle [17:18] on checkDispatch, the bit that I don't get is this: [17:18] if method in buildd_success_result_map: [17:18] expected_status = buildd_success_result_map.get(method) [17:18] status, info = response [17:18] if status == expected_status: [17:18] self.callSlave(slave) [17:18] return None [17:18] that's exactly what I am pondering over too === al-maisan is now known as almaisan-away [17:19] under what circumstances is 'response' a 2-list? [17:19] I think it's checking return values only for some of the calls [17:19] why.... who knows [17:19] 'callSlave' is just "do the next step", iiuc [17:19] yep [17:19] it's clearly not needed any more, I'm just trying to work out if it's doing something we need [17:20] err that doesn't parse well [17:20] but you get the idea :) [17:20] yeah, I do :) [17:21] bigjools: my guess is that the chunk of code pasted above is belt-and-braces for RecordingSlave [17:21] based on how buildd_success_result_map gets used in it [17:21] I tend to agree [17:21] where does checkDispatch get 'response' from? [17:21] from callSlave... [17:21] xmlrpc.Proxy callback [17:23] yeah [17:24] so if I'm reading this correctly (big 'if'), the behaviour in trunk is to terminate the series of calls to the remote slave as soon as we get an 'ensurepresent' return value that's not (True, $SOMETHING) or a 'build' return value that's not (BUILDING, $SOMETHING) [17:25] that's about it [17:25] I don't know why that's desirable behaviour. [17:26] I've looked at that code many many times in the last 6 months and I still don't know either [17:26] it sounds to me as if those checks ought to be done around explicit calls to build() and ensurepresent() [17:26] perhaps it's a fail-fast kludge? [17:26] we can bear it in mind when we change the BlockingProxy over [17:26] I don't think we need to. [17:27] we can bear it in mind if stuff on dogfood breaks because we call the slave too often. [17:28] mebbe === matsubara-lunch is now known as matsubara [17:29] in that case, I'm nearly done, it's just a case of removing swathes of this code, its tests, and dealing with the errors at the top of the call chain [17:30] woot :) [17:32] oh, and working out where to commit now that I'm removing the *DispatchResults [17:32] bigjools: this code & conversation reminds me of Kernighan's Law [17:32] "Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?" [17:32] they're wrapped in @write_transaction [17:32] indeed [17:35] bigjools: I guess it makes sense to commit at the very end [17:36] jml: I'm not sure about that [17:36] bigjools: well, that's what it does now. [17:36] jml: not entirely - it has three separate commits [17:37] there's the one around scan(), the one after calling updateStatus and the one when dealing with the end of the dispatch chain [17:40] bigjools: yeah, I mean one to replace the calls in dispatch === Ursinha-lunch is now known as Ursinha [17:45] danilos: I requested merge :) [17:46] bigjools: just in case you missed it... [17:46] bigjools: yeah, I mean one to replace the calls in dispatch [17:47] malaria, cool, you can probably get a review from someone on #launchpad-reviews, if not, I'll get to it on Monday (mostly done for the day and I am starving :) [17:47] jml: those ones are only wrapping the assesFailureCounts() and the reset_result which cleans the job [17:47] both already dealt with [17:47] jml: so I'm going to add one at the end of the scan for good measure :) [17:48] hmm. [17:48] danilos: ok, I'm going to #launchpad-review. Otherwise, have a good week-end ;) === salgado-lunch is now known as salgado [18:03] malaria, thanks :) [18:05] deryck, allenap: do you guys know what the heck http://pastebin.ubuntu.com/504016/ means? [18:05] dobey, I do, unfortunately :-) [18:06] dobey, your trying to edit the slave bug task rather than the master. where the series is the master, the upstream the slave. [18:08] i don't think so? [18:08] or i don't understand what that means [18:08] but the error message is obviously not helpful to me directly :) [18:09] good evening all, have a nice weekend [18:14] hmm [18:14] deryck: ok, if that is the problem, how do i determine if i am editing the right thing? [18:25] dobey, sorry, on call. I'll explain better in a minute. [18:28] ok [18:38] g'night all. [18:38] if you see lifeless, tell him to release testr. === jcsackett|afk is now known as jcsackett_ [18:59] dobey, sorry for delay. Had to finish calls. Does this help explain? http://bazaar.launchpad.net/~launchpad-pqm/launchpad/db-devel/annotate/head%3A/lib/lp/bugs/doc/bugtask.txt#L286 [19:00] The section starting there, "Conjoined Bug Tasks" === Ursinha-afk is now known as Ursinha [19:04] * dobey reads === Ursinha-afk is now known as Ursinha [19:12] deryck: does launchpadlib know anything about the conjoined_* attributes? [19:13] dobey, no [19:14] deryck: so how do i tell if the target i'm looking at, is the one i want, if the bug has a conjoined task for the development series? [19:16] dobey, perhaps bdmurray or bryceh have some stock code snippets for this they could share. I don't do this myself much since we don't use series targeted bugs on launchpad. [19:16] bdmurray, bryceh -- what sort of check do you guys do in lplib to make sure you have the right side of the conjoined bug task? [19:20] I'm still not clear on what a conjoined bug task is. ;-) [19:21] Urgh. We need support for the code import dispatcher to only dispatch one job per svn repository uuid per importd [19:21] bdmurray: i think it's sort of like http://southparkstudios-intl.mtvnimages.com/shared/sps/images/shows/southpark/vertical_video/import/season_02/sp_0205_08_v6.jpg?width=480 [19:23] leonardr, your authorisation email is a great read [19:24] sinzui, thanks [19:25] bdmurray: do you know where the code is that closes Ubuntu bugs based on the (LP: #xxx) comments in debian/changelog for package uploads? [19:26] bdmurray, so what do you do? try/except around conjoined? [19:26] dobey, if it were me, I would inspect the target and see what it is before trying to edit the task. [19:26] deryck: I can't answer that without knowing what exactly a conjoined bug task is [19:27] deryck: yes, but there is no obvious information about whether the target and series are the same [19:27] deryck: because the main generic task always has no series [19:27] I'm not sure what conjoined means either [19:27] deryck: better question: why doesn't editing the master, simply edit the slave instead? [19:27] you'll get a ConjoinedBugTask error if you try to edit the main bug task when it's tracked in the series. [19:27] dobey: No someone the code team would know there is a dpkg part that parses the changelog gets the numbers though [19:28] it's in soyuz. [19:28] right, that's what I meant! [19:28] bdmurray: yeah, i'm less interested in the number parsing, than how it deals with picking the bug task based on series [19:28] dobey, if you edit the master, it will work. it's editing the slave that fails. In this case, the primary task, not series task, is the slave. [19:28] oh [19:29] deryck: ok, then transpose slave and master in my question :) [19:29] Launchpad does not know where Soyuz - The Launchpad Package Manager hosts its code. [19:29] nice. [19:29] dobey, just construct your searchTasks query to get the ones you want. using nominated_for [19:30] deryck: branches don't have a nominated_for [19:30] so you're going branch-->bug-->bugtask? [19:30] deryck: i am taking a list of the bugs fixed in a branch (from bzr commit --fixes=blah), and trying to mark them as 'fix committed' when the branch is merged into its target [19:31] deryck: and having to support different series, makes it hate life [19:31] because the conjoined task thing kind of screws everything up [19:32] dobey, I don't know how you can do that without looking at the target. Because there could be any number of tasks on the bug. [19:32] deryck: i am looking at the target [19:33] and can you not tell the different in a series targeted bug from the regular task, looking at the target? [19:34] deryck: let me try to find a meaningfully useful example to explain with === salgado_ is now known as salgado [19:39] see process_bug in http://bazaar.launchpad.net/~ubuntu-archive/ubuntu-archive-tools/trunk/annotate/head:/mass-sync.py [19:40] it does two passes, one to fill related_tasks for those tasks which have a slave task, then the other to process the bugs === You're now known as ubuntulog [19:41] deryck: so on try: [19:41] print task.target.development_focus [19:41] except AttributeError: [19:41] pass [19:41] ah, stupid paste [19:41] sorry [19:42] dobey, I think what james_w pasted above will get you unstuck. Thanks much, james_w! :-) === almaisan-away is now known as al-maisan [19:47] not sure that will help [19:50] will a rootsite parameter with canonical_url remove 'edge' from a returned url? === al-maisan is now known as almaisan-away [20:16] sinzui: do you know? the answer to my question above? [20:17] bdmurray, no it removed bugs|translations|etc [20:18] sinzui: does anything strip edge? [20:18] no [20:18] well, logout does it very well [20:18] heh [20:19] bdmurray, few conditions that allow users to leave the env name do so by hardcoding the url, or they set the cookie to disable edge redirection [20:20] sinzui: it's appearing in a bug email body which is then sent to users [20:22] well I think that is correct. as an edge user it should be clear I am being directed to edge [20:22] bdmurray, is the issue that non-edge users are being sent to edge? [20:23] I recall that lp recognises that the user is not an edge user a redirects him or her to lpnet instead [20:24] I believe its more a matter of consistency most, if not all, urls don't contain edge === jcsackett__ is now known as jcsackett [21:43] bdmurray, did you find a solution to you link problem? [21:44] bdmurray, I think a lot of email orginate from an lpnet process so they always have lpnet urls [21:45] sinzui: no I did not find a solution [21:47] i'll look too [21:50] bdmurray, what part of the application is sending emails? is it in proc. Most bug mail is queue and the bug mailer which runs on lpnet only send the email, which has the expected urls [21:54] its in bugchange.py which I think is used by the cronjob that sends bug change notifications [21:54] bdmurray, many templates do something like this instead of a canonical_url https://launchpad.net/~%(person)s/+editemails [21:56] bdmurray, I do not think edge has cronjobs running [21:57] bdmurray, so the problem is in getBugNotification()? [21:58] of BugDuplicateChange yes [22:00] I'm really pretty sure that bugnotification.py is running on loganberry as I had to have a fix cowboyed there once [22:00] looks like we are making the data too early. We make it in proc on edge. The data is queue. An external proc on lpnet then pull from the queue and it has urls with edge in it [22:02] I wonder if we want to do create something like expand path that takes a path and make it a canonical_url for the current env [22:05] bdmurray, so gmb introduce the bug last month, but the first wrong use if it was added by myself in 2007 [22:06] no, this bug is from 2009 [22:07] well, regardless we need to decide how to postpone making URLs until we are ready === matsubara is now known as matsubara-afk [22:16] bdmurray, we may want try forcing canonical url to use config.launchpad,non_restricted_hostname [22:18] bdmurray, I think this can be used in any env to make make a canonical path that is concatenated to the non-edge version of the site: config.launchpad.non_restricted_hostname + canonical_url(bug_task, force_local_path=True) === jcsackett_ is now known as jcsackett [22:22] sinzui: how would you test it? [22:24] bdmurray, this is an example of a less hackish way. We do this for openid/XRDS to ensure lpnet is used: http://pastebin.ubuntu.com/504160/ [22:29] sinzui: okay, thanks for the help! [22:30] bdmurray, I think we need to push test information into the config to be certain the method under test is making the url we control: maybe http://pastebin.ubuntu.com/504162/ [22:30] config.pop() reset the config. the config is global...we need to do this so that other tests do not see it [22:33] bdmurray, I can see other things, to covert bug to question is also broken [22:34] instead of hacking this method. write a function that takes any canonical url, converting it to a URI, then switches the host. That is very easy to test and then reuse [22:35] where would you put such a function? [22:37] why do you ned to do that ? [22:40] bdmurray, I think we might want add helpers.py to lp.services.mail. There is already a helpers in c.l and I think it too has mail template helpers in it [22:42] lifeless, urls are generated in some case edge, then inserted into emails. I see three cases for bugs. I see that many old registry templates avoid the edge host by hard coding the domain in the email template, and interpolate the path from the canonical_url [22:43] well we're nuking edge very soon [22:43] may be simpler to justs not bother addressing this [22:43] oh, then we can also nuke some openid code then [22:44] by soon, on the order of weeks [22:44] the roadmap is: [22:44] bdmurray, maybe you can mark the bug as wont fix, or just note it will be fixed when edge is torn down in a few weeks [22:44] - get qastaging going [in progress with losa] [22:45] - disable edge deploys - start deploying just stable (to both the lpnet and edge servers) [22:45] that makes a fair amount of sense to me when I first looked at the bug I didn't realize the amount of work required [22:45] - disable the edge redirect [22:45] - make apache redirect edge urls to lpnet [22:53] does anybody see what's wrong in my commit message? [22:53] http://pastebin.ubuntu.com/504170/ [22:55] jam: https://bugs.edge.launchpad.net/loggerhead/+bug/653297 may interest you (or may not, I'm not sure if its something you've looked at) [22:55] <_mup_> Bug #653297: http://bazaar.launchpad.net/%7Eindicator-applet-developers/libindicate/trunk/revision/382 errors [22:58] gary_poster, ping [22:58] sinzui, here, but running very soon [22:59] gary_poster, do you have any immediate plans for Account and EmailAddress [23:00] sinzui: all plans are recorded in https://dev.launchpad.net/LEP/OpenIdRoadmap with associated (linked) bugs [23:00] lifeless: I had not seen that before, offhand it looks like concurrent access to the structure, popping an item out while the other is accessing it. [23:01] gary_poster, I think Foundations does not claim EmailAddress any more since full separation and I also think you have no interest in LoginToken because only the registry uses it to confirm (not login) [23:01] jam: yeah, thats plausible [23:01] anyway, end-of-week here [23:01] ditto :) [23:02] sinzui: noone is working on these at this time, nor will they be in the next few weeks at least (and you can see that stuff ideally happens before EmailAddress/Account work, in the form of separating ShipIt) [23:02] does not claim...um... [23:02] gary_poster, I want to move LoginToken and EmailAddress to lp.registry. I may do that with Account because I think it is being demoted to something smaller like an ssh key [23:04] gary_poster, unless you say no right now, I am taking all three objects. your roadmap tells me you do not want them and are working to not have them [23:05] sinzui, we care about EmailAddress because of SSO integration; and we have some clean-up plans for it that you can see on that wiki page (e.g. bg 629172). Other than that we don't care about it. I don't care about LoginToken at all AFAIK. If you are OK with our plans on the roadmap and with being very careful with the EmailAddress because of the SSO stuff, I'm happy for you to take them (and even appreciative) [23:06] May have been truncated: ...If you are OK with our plans on the roadmap and with being very careful with the EmailAddress because of the SSO stuff, I'm happy for you to take them (and even appreciative). [23:06] my immediate goal it to get A and EM out of c.l so that I can make progress resolving circular imports [23:07] I can move account somewhere else, I think I think in 6-12 months, you will be done and the models will be largely a registry concern [23:08] sinzui, I like that goal. The SSO stuff is my only immediate concern, and I don't think that your change will affect it. Maybe check with stub if you are not confident yourself. [23:09] gary_poster, thank. I am not changing db. I just want the import lines in our code fixes [23:09] sinzui, great, thank you. have a great weekend. [23:12] sinzui: rev 11576 needs qa [23:12] sinzui: you reviewed it, perhaps you can tell if its ok or not ? [23:12] [r=gmb][ui=salgado, sinzui][bug=439831, 489483, [23:12] 629063] Add a font-family declaration for inline description editing [23:13] widgets which ensures consistency and uses the Ubuntu font if present. [23:13] * sinzui lookds [23:13] https://bugs.edge.launchpad.net/malone/+bug/435865 is the blocking bug I think [23:13] <_mup_> Bug #435865: Use fixed-width fonts for bug summaries [23:13] according to https://devpad.canonical.com/~lpqateam/qa_reports/deployment-stable.html [23:17] sinzui: thanks [23:18] back after breakfast [23:18] well that is a little easier than my negative tag search [23:25] lifeless, does this report of fix committed without tags concern you: https://bugs.edge.launchpad.net/launchpad-project/+bugs?orderby=targetname&search=Search&field.status:list=FIXCOMMITTED&field.tag=-qa-ok+-qa-needstesting+-qa-untestable&field.tags_combinator=ALL [23:25] I use it from time to time to check if we missed something [23:28] that useful [23:28] (not back, just picking upo a book for lynne)