[00:05] 26 [00:05] grr [00:55] wgrant: I have private bug with nothing, with subscriber and with structural subscriber, asserting on what getBugNotificationRecipients() returns. I'm obviously missing a bunch of scenarios [00:56] There are three implicit subscriber cases: structural subscriptions, dupe subscriptions, and assignees. [00:57] I'm not sure if dupe assignees and dupe structsubs also count. [00:58] wgrant: So assignee sounds a good plan -- I've not thought about dupes yet [01:25] wgrant: Blink. [01:25] wgrant: IBug.markAsDuplicate() recalculates heat, but so does IBug._markAsDuplicate() which the former calls. [01:27] StevenK: markAsDuplicate recalculates the heat of the new master, _markAsDuplicate recalculates the heat of the old. [01:27] Ah [01:38] wgrant: http://pastebin.ubuntu.com/1107437/ [01:54] StevenK: A good start, indeed. [01:56] wgrant: Do you think it's worthwhile expanding out to public bugs? [02:04] StevenK: Certainly [02:04] StevenK: It is to be a thorough set of tests for getBugNotificationRecipients [02:04] It's hardly comprehensive or thorough if it doesn't do public bugs too. === _mup__ is now known as _mup_ === Beret- is now known as Beret [02:15] gary_poster: nice mail :) [04:15] wgrant: http://pastebin.ubuntu.com/1107562/ bugwatch is up next, and then subscribed to question linked to bug [04:15] Then I might be done [04:32] wgrant: So now that hilarity has passed, bugwatches? [04:34] StevenK: How are watches involved? [04:34] wgrant: sinzui implicates them [04:35] Hm [04:35] That's odd. [04:35] wgrant: I don't know how they work. :-( [04:36] Well, I know they link to an external bugtracker and checkwatches does something to some watches and then hangs. [04:36] But can a watch have subscribers or impact on getBugNotificationRecipients()? [04:40] No [04:40] I don't believe they're relevant here at all. [04:41] I shall ignore them, then [04:41] * StevenK moves onto working on how to staple a question and bug together [05:17] wallyworld, wgrant: https://code.launchpad.net/~stevenk/launchpad/bugnotification-testcases/+merge/116402 [05:23] StevenK: Looking [05:30] StevenK: https://code.launchpad.net/~wgrant/launchpad/faster-checkCanBeDeleted/+merge/116404 [05:32] wgrant: r=me, looks great [05:33] Thanks. [05:33] wgrant: What about my review? :-) [05:34] StevenK: Looking [05:34] What's + def test_public_bug_with_duplicate_same_pillar_subscriber(self):? [05:35] wgrant: Both bugs are against the same pillar [05:35] Yes, but why? [05:35] How's it relevant as a separate case? [05:36] The private case will be different, and I did the same cases for public bugs [05:36] I can condense the two public duplicate tests if you wish [05:36] I don't see how the private case is different. [05:36] It's matters whether the subscriber has access [05:37] Not whether it's a different pillar. [05:37] wgrant: It will be -- give an APG against the pillar [05:37] StevenK: Und? [05:37] That's the case where there's an APG against the pillar [05:37] Not the case where they're the same pillar [05:38] wgrant: Right, so condense the four down to test? [05:38] Down to two, rather [05:38] Right [05:38] Test things that should be tested because they make a difference. [05:38] I split it out due to sinzui's mail [05:39] Also, do the tests pass? [05:40] They do [05:41] Huh [05:41] How does the question one work... [05:41] Oh god [05:41] Question.linkBug subscribes the question owner [05:41] What could possibly go wrong. [05:42] WCPGW, right? [05:42] :-) [05:42] Implicit access grants are bad, m'kay. [05:42] Yes, I'm not sure the two question tests add value [05:42] They don't. [05:42] Bin them too? [05:42] Yes [05:42] Let me read sinzui's mail [05:42] Ah [05:42] So he [05:43] probably speaks of the bug->question notification forwards [05:43] I'm not quite sure how they work [05:43] But they're separate from this [05:43] So don't need to be considered here, at least not yet. [05:52] StevenK: Are you sure that all of xx-initial-bug-contacts.txt is duplicated? [05:54] wgrant: It was sinzui's suggestion that it be binned since much of the test will fail to be true in a few weeks with the bug supervisor and security team playing [05:55] StevenK: Sure, but it covers a whole lot of stuff that's only barely related to what you're adding tests for [05:55] Like setting the bug supervisor [05:55] And the security contact being subscribed by default [05:56] Bug supervisor is also dying horribly too? [05:56] Security contact is also changing after we can filter on information type [06:00] StevenK: Bug supervisor is not dying. [06:00] Its role is changing. [06:00] Security contact will probably die entirely. [06:00] We will still need to be able to set the bug supervisor. [06:01] I can shuffle that part into a browser test easily [06:01] Rogjt [06:01] Right [06:01] But you can't just delete it [06:01] Without confirming that it's been replaced, or replacing it yourself [06:02] lib/lp/bugs/browser/tests/test_bugsupervisor.py:class TestBugSupervisorEditView(TestCaseWithFactory): [06:02] Does that count? [06:02] If it tests the same stuff, sure. [06:08] Oops [06:31] wgrant: Diff updated, I've added new tests for the Change bug supervisor link [06:31] And I'm still 164 lines in credit [06:48] StevenK: Thanks [06:49] wgrant: Thanks. Did you see the branch I just landed? [06:51] Aha [06:51] I think only two of those were mine [06:53] Yay [06:53] Only one actual bug in bugsummary maintenance [06:53] And one in the rebuild script [07:32] StevenK: https://code.launchpad.net/~wgrant/launchpad/bug-1028279/+merge/116411 [07:32] StevenK: (yes, this is very similar to your thing which broke everything, but I like to live dangerously) [07:44] good morning === matsubara-afk is now known as matsubara === almaisan-away is now known as al-maisan [10:34] morning [10:35] gary_poster, hello, im looking for some info on the position [10:35] http://blog.launchpad.net/were-hiring/were-hiring-software-engineers-to-work-on-cloud-projects-in-canonical [10:35] czajkowski, said i should be asking you about it [10:35] or gmb [10:36] gmb: ping [10:36] gary will be asleep right now (I hope!) [10:36] haha ok :] [10:36] Ergo^: mornign more of the developers are online now [10:36] and in fact gmb is on hols [10:36] wgrant: might you be able to answer some of Ergo^ questions on lp dev please, he's thinking of applying for one of the roles [10:38] I'm trying to not be here :) [10:38] 'cause it's getting late [10:38] I know but I cant find any EU folks up atm [10:39] gmb can't be too far away [10:39] wgrant, carry on, i can ask later ;-) [10:39] adeuring: allenap ping are either of you about ? [10:39] wgrant: From where you are? [10:40] * adeuring is looking [10:40] Heh [10:40] jpds: AU [10:40] although he never sleeps [10:40] adeuring: thanks [10:40] Ergo^: adeuring might be able to answer some of your questions [10:40] Ergo^: thanks for coming and asking though [10:42] Ergo^: I think you should wait for gmb if you have more specific questions about the job. [10:43] But we can of course anwser more generic questions about Canonical ;) [10:45] well, i would be interested to what i would work on and what kind of skill level would be expected for the position [10:47] adeuring, i've never worked for a IT organization that would have many employees, so im not sure what i would ask about :-) [10:50] Ergo^: I don't know much what the the work is about aside from the general "cloudy" stuff... Regarding an org with "many" employees: I myself do not notice that much about the number of people employed by Canonical. You will work i a relatively small team, I assume. four or five people probably. [11:05] czajkowski, can i pm you ? [11:10] Ergo^: sure [11:12] Ergo^: gmb will be able to tell you more about the team's first project, but, like adeuring, there isn't the feel of "big company IT". We try to produce the best code we can, in a professional way; I have learnt *so* much about how to produce large pieces of software from working here. We're rigorous about testing, and we try to make decisions based on evidence and measurement. We don't always get it right, but we tend to see mistakes a [11:12] s an opportunity to learn rather than to blame. [11:12] Ergo^: the new squad will be working on ceilometer initially. [11:12] allenap: +1 [11:12] lifeless: go sleep! [11:13] one word: Cynthia. [11:13] Ha! [11:14] lifeless: awww [11:15] ok, well i work in environment where we dont write tests at all - they move more like early facebook - the boss doesnt want to budget for tests [11:15] but theres no problem to write tests [11:16] i would love to move to environment where i can learn new things === matsubara is now known as matsubara-afk [11:19] lifeless, so ceilometer - what kind of web stack will be used for the project? pylons/pyramid? something home brewed ? [11:23] have a poke around yourself - https://launchpad.net/ceilometer [11:25] oh it uses webob [11:25] nice :] [11:25] and sqlalchemy, even nicer [11:25] i was expecting it would be using sqlstorm [11:25] Ergo^: hey howdy [11:26] ohai rick_h_ [11:26] Ergo^: you were hacking on some of the min-webhelpers stuff right? [11:26] rick_h_, yeah ive made html.grid stuff [11:26] Ergo^: heh, not going to see much of the usual stack around :/ [11:26] but really good dev practices, some stuff to learn for sure [11:27] rick_h_, well i would love that because i wont learn new things the place im at atm [11:27] different focus [11:27] Ergo^: definitely apply if you might be interested and chat with the guys. They're a really good group of smart peeps. [11:27] i would be, question is if they would be :P [11:30] rick_h_, well even if its not stack im used to it has some parts i know and love, so thats a good start [11:30] right, the launchpad stack is kind of strange, but you're allowed to learn it. I didn't know anything more than some articles of zope stuff [11:30] but most other things are django based [11:31] * Ergo^ knows nothing about django [11:31] heh, it's 'easy' :P [11:32] i would expect pylons/pyramid based wsgi apps, since i would expect its more flexible for this kind of environment [11:32] you'd think...but no. I've not won a battle on that front yet though there are some of us trying [11:33] rick_h_, i would expect mramm to help ;-) [11:33] hah, I'll have to ask him what his team's up to on that end I guess. [11:34] go [11:34] they are all about go [11:34] yeah he mentioned he writes in go right now last time ive asked [11:35] ah, he's over there [11:47] well, the ive browsed the code for ceilometer, it seems understandable and nice for me :] [12:23] czajkowski: looks like the report a bug link failure is fixed yay [12:24] rick_h_, when do you plan to add a human friendly interface to launchpad ? ;-) [12:24] Ergo^: heh, that's huw's job :P [12:49] Hi, I have setup an instance of launchpad with an actual domain (not launchpad.dev) and a clean db using wgrant's bootstrap-db-from-scratch and have added users using his user creationscript, now nor the admin nor regular users seem to be able to login into the subdomains of my instance (code, answers, blueprints), when I login with any account it redirects back to the page I came from but I'm still not logged in, does anyone know what' [12:49] s wrong ? Did I misconfigure something ? [13:07] gmb, ping [13:11] Good morning, all. [13:17] deryck: morning. [13:18] deryck: http://www.goodreads.com/quotes/14559-good-morning-said-bilbo-and-he-meant-it-the-sun === Guest49605 is now known as slank === slank is now known as Guest96367 [13:28] abentley, heh. Great passage. [13:28] I knew there was a reason I normally typed only "morning" :) [13:30] deryck: Hehe. [13:33] adeuring, https://plus.google.com/hangouts/_/5c02c8b06ff0d06aaf9314c93315d217f5459977?authuser=0&hl=en [13:57] gmb, ping [14:00] Ergo^: he's not here. and won't be for two weeks [14:01] ah :] [14:01] rick_h_, so you say i should apply ? ;-) [14:01] Ergo^: give it a go and talk with them. [14:08] Ergo^ is a friend of rick_h_? === al-maisan is now known as almaisan-away [15:49] deryck: Currently, the mustache_model and the mustache_template from the server can be used by the javascript verbatim to render an identical result to the server-side rendering. [15:49] deryck: This is because the mustache_model includes control variables that affect the rendering, even though they're not logically part of the model. [15:50] abentley, ok. are you wanting to change this where only the template can be rendered? Or something else? [15:51] deryck: With the new pystache, we could remove all control variables from the mustache_model, which would be cleaner, but would break this property that the JS can use the model verbatim. [15:52] abentley, is there a downside to not using the model verbatim? [15:52] deryck: The downside is it's a bit more work to get an identical rendering between client-side and server-side rendering. [15:53] deryck: (but it's work we already do) [15:54] abentley, ah, I think I see. We just do it via variables in the model, where as we need to specify those values at the call site now. right? [15:55] deryck: Yes, we need to inject the control variables at the call site, if they're not in the data sent by the server. [15:57] abentley, sounds fine to me. Seems cleaner on both ends to me. i.e. model is cleaner and rendering is explicit. [15:57] deryck: Cool. === salgado is now known as salgado-lunch [16:02] heh i think i should install ubuntu :/ === deryck is now known as deryck[lunch] === matsubara-afk is now known as matsubara [17:20] doh, forgot to put myself as ocr === rick_h_ changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: rick_h | Firefighting: - | Critical bugs: 4.0*10^2 [17:20] and since I am... jcsackett can I bug you please? https://code.launchpad.net/~rharding/launchpad/lpclient_fix/+merge/116338 [17:24] rick_h_: sure. [17:24] jcsackett: ty much kind sir === salgado-lunch is now known as salgado === Ursinha` is now known as Ursinha [19:05] rick_h_: sorry, forgot to ping you when i finished reviewing your branch. === Ursinha is now known as Guest69114 [19:05] it is r=me. [19:05] Thanks it's off to ec2. thanks again! [19:32] Why are some versions listed twice under 'Releases in Ubuntu'? https://launchpad.net/ubuntu/precise/+source/thunderbird [19:43] wgrant: are you here ? [20:00] rick_h_: still around? [20:01] abentley: yep, what's up? [20:01] rick_h_: Could you please review https://code.launchpad.net/~abentley/launchpad/restore-queue-test/+merge/116534 ? [20:02] abentley: loading up now [20:03] rick_h_: Thanks. [20:05] abentley: what's task_init meant to do? [20:06] abentley: nvm, looking [20:06] rick_h_: It sets up a launchpad scripting environment. [20:16] abentley: couple of questions (side notes) r=me ty much [20:16] rick_h_: Thanks.' === mbarnett` is now known as mbarnett [20:35] jcsackett: ping [20:35] jcsackett: in your MP it says the 'helper method is removed' which I'm reading as userCanAccessUserData as being removed but it's not? [20:39] Does anyone know why I'm perfectly able to log in on the main section of my launchpad instance but not on the other sections like code and answers ? I don't get any errors but after supplying info to openid I just don't get logged in, any suggestions ? === rick_h_ changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugs: 4.0*10^2 === salgado is now known as salgado-afk [21:47] wgrant: StevenK: jcsackett: wallyworld: this is the non-published link of what I did today: http://youtu.be/Vq6VsKuFY_o [22:04] Bert_2: Did you set cookie_domains to include your new domain? [22:04] Bert_2: That controls how wildcardy the cookies are [22:35] wallyworld: you are proposing to fix 3 or more of thses bugs https://bugs.launchpad.net/launchpad/+bugs?field.tag=bug-links [22:38] wallyworld: http://blog.launchpad.net/general/bug-linking-part-2 "Linking existing bugs" [22:46] wgrant: where can I set the cookie_domains ? [22:47] Bert_2: the development config inherits the default value from lib/lp/services/config/schema-lazr.conf. You can override it in your own config. [22:47] # Session cookies being sent to a subdomain of the parent [22:47] # domains listed here will be sent to the parent domain, [22:47] # allowing sessions to be shared between vhosts. [22:47] # Domains should not start with a leading '.'. [22:47] cookie_domains: demo.launchpad.net, staging.launchpad.net, launchpad.net, launchpad.dev [22:47] so I shouldn't edit it inside schema-lazr.conf ? [22:48] Probably not. The configs form an inheritance hierarchy, so you can just override the key in yours [22:48] so I would override from launchpad-lazr.conf in my custom configsdir ? [22:48] Right [22:49] awesome, thx a ton :D [22:49] np [22:52] wallyworld: StevenK, wgrant: this is the one I was thinking of https://bugs.launchpad.net/launchpad/+bug/1004248 [22:52] <_mup_> Bug #1004248: hook to force page refresh on context url changing is not working < https://launchpad.net/bugs/1004248 > [23:10] sinzui: something up with that? [23:16] rick_h_: I was asking if a cache issue when a bug was marked a dupe related to that bug [23:16] The conclusion was no [23:16] sinzui: ah ok cool. Wanted to make sure there wasn't anything up since I put that to ec2 today [23:36] wgrant: I just noticed that your bootstrap-db-from-scratch's bootstrap-lp-db script is missing the bug-watch-updater Celebrity, is that possible ? [23:39] (I have an oops page if you need more info) [23:40] Bert_2: Yeah, if you look in the script where it creates the celebrities, you'll see comments instead of makeTeam/makePerson calls for some of them. I mainly just created the essential/interesting ones. [23:40] You can alter the script or create the team manually to resolve it. [23:40] bazaar_experts = factory.makeTeam( [23:40] name='bazaar-experts', displayname='Bazaar Experts', owner=admins, [23:40] subscription_policy=TeamSubscriptionPolicy.RESTRICTED) [23:40] # bug_importer [23:40] # bug_watch_updater [23:40] buildd_admin = factory.makeTeam( [23:40] name='launchpad-buildd-admins', [23:40] displayname='Launchpad Builder Administrators', owner=admins, [23:40] subscription_policy=TeamSubscriptionPolicy.RESTRICTED) [23:41] Some of the missing ones may be more essential now than they were when I wrote it. [23:41] But the intention was that it'd get the web UI to work enough that you could create the rest if you needed them. [23:42] I see, so I'm missing the bug-watch-updater person then ? [23:42] it's apparently required to file a bug ;) [23:43] Yeah. You can run the makePerson/makeTeam calls in bin/harness to fix that up [23:44] In bin/harness, say eg. "factory.makePerson(name='bug-watch-updater', displayname='Bug Watch Updater', email='bugwatch@example.com')" then "transaction.commit()" [23:44] if you're interested: http://pastebin.com/yFzyDNCU it was on a call to bugs.[maindomain]/[project]/+filebug [23:45] Ah right [23:45] That is indeed a relatively recent change. [23:45] wgrant: why should I add it to bin/harness and not eg. make a utilities file for it and just execute that ? (just wondering) [23:46] Well, you can update the script to do it too, but if it's a one-off it's usually easier to do it in bin/harness [23:49] rick_h_: awk: cannot open build/js/yui-3.3.0/yui/yui.js (No such file or directory) [23:49] rick_h_: Any idea on that build error? [23:49] $ ls -l build/js/yui-3.3.0/ [23:49] total 0 [23:49] lrwxrwxrwx 1 wgrant wgrant 30 2012-07-25 09:49 yui-3.3.0 -> ../../../../build/js/yui-3.3.0 [23:50] It's a recursive symlink.. [23:51] rick_h_: Also, your yui buildout changes still use a predictable /tmp name [23:52] StevenK: Can you build a fresh tree? [23:52] wgrant: yes, sorry. While we talked about it, webops didn't have feedback on that part and so only changed that which was required. [23:52] wgrant: My devel build a few minutes ago worked [23:52] wgrant: I can make a follow up that will adjust that dir. [23:52] wgrant: I can clean and then do a fresh make? [23:52] StevenK: Try make clean_buildout build [23:52] we were tossing stuff at the wall at the time [23:53] Heh [23:53] rick_h_: May I suggest you not do that with our Makefile? [23:53] wgrant: added a card to move that dir in the morning [23:53] wgrant: so bin/harness is meant for one-off scripts ? [23:53] wgrant: make clean_buildout build worked for me [23:54] StevenK: Hmm [23:54] Bert_2: It just gives you a Launchpaddy Python console [23:54] StevenK: heh, the sticking to the wall was guessing what issue my change had on qas not our makefile...and it's buildout.cfg now makefile :P [23:54] wgrant: I see [23:54] rick_h_: Even worse, because buildout loves giving obtuse error messages. [23:56] StevenK: so think it's ok, will adjust the path to keep things inside of the build dir vs /tmp [23:56] wgrant: just so you know, same goes for bug-importer, apparently [23:56] Yup [23:58] StevenK, rick_h_: Hm, even 'make clean build' breaks [23:58] Oh [23:58] I don't have unzip installed [23:58] It's nice that buildout doesn't actually notice or display the error [23:59] [09:54] < StevenK> rick_h_: Even worse, because buildout loves giving obtuse error messages. [23:59] wgrant: ^ [23:59] StevenK: It also loves not giving any error message at all, though [23:59] Obtuse errors are fine :) [23:59] Does anyone know what the bugtask tasks and nominations table is ?