[00:00] wallyworld_: mumble? [00:01] yep === wallyworld_ changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - wallyworld (*jtv) | https://code.launchpad.net/launchpad-project/+activereviews | Critical bugs:209 - 0:[######=_]:256 [00:48] sinzui: Did you see the fallout from the flag-expired-memberships.py fix? [00:51] Project windmill-devel build #143: STILL FAILING in 1 hr 10 min: https://lpci.wedontsleep.org/job/windmill-devel/143/ [02:01] lifeless, sorry, I'm a novice to lp... not sure I understand what you're saying on bug #724740. I thought that adding the mutator was how to run business logic when the attribute is set... [02:01] <_mup_> Bug #724740: setting a ppa private cannot be done over the API < https://launchpad.net/bugs/724740 > [02:01] lifeless, here's my code so far: http://bazaar.launchpad.net/~timrchavez/launchpad/set_ppa_private_from_api_724740/revision/13052 [02:03] (sorry there are still some inconsistencies in the comments and no tests yet :/) [02:03] * timrc ducks [02:24] wgrant: Most of the failures for archiveuploder look like behaviour changes in notify_spr_less() [02:24] wgrant: Which I'm fixing [02:25] wgrant: Running -t archiveuploader to see what the fall-out is [02:46] StevenK: Hmm. [02:51] Project windmill-devel build #144: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-devel/144/ [02:57] wgrant: Hm? [02:57] Indeed. [02:57] ! [02:59] wgrant: Down to one failure [02:59] StevenK: But who knows how many you broke in Soyuz :) [02:59] Anyway, let me review your diff. [03:00] I have local changes [03:00] timrc: hi [03:00] Including putting back sanitize_string :-( [03:00] StevenK: Why did the abomination need to return? [03:00] timrc: mutators can be used yes, but if we need it always then just using a property is better [03:02] wgrant: Since I can't call guess_encoding on a unicode string, and the mail text seems to change [03:02] For some tests it's unicode, and others it's ascii [03:02] StevenK: It'll automatically become unicode when a unicode is interpolated into it. [03:02] Because fuckyeah Python 2. [03:03] StevenK: This indicates that there are unicode-safety bugs. [03:03] StevenK: It should either always be a unicode or never be. [03:04] wgrant: Then there likely already were [03:04] Sure. [03:04] r13103 pushed [03:12] Hm. [03:12] The branch is shorter now? [03:12] Interesting. [03:12] StevenK: notify_spr_less seems to assume there's always an archive. [03:13] But that's not the case. [03:13] Or at least it shouldn't be. [03:13] StevenK: Perhaps s/notify_spr_less/reject_changes_file/? [03:14] I'd also continue to encourage you to remove get_status. [03:15] Oh, and just replace it with a dictionary? [03:23] The dictionary, yeah. [03:23] I'm doing a proper rereview now. [03:23] I've done those two suggestions locally [03:23] ACTION_DESCRIPTIONS[action] is not much worse than get_status(action) :) [03:23] Thanks. [03:24] The only test that still fails is testSourcePackageRecipeBuild_success_mail. Didn't poolie break that on purpose? [03:25] Ah, no. I've broken it so it sends mail [03:30] Ahh. I can't check PU.getSourceBuild() [03:30] :-( [03:32] lifeless, this may sound dumb but when you say property are you referring to Python's @property? just making sure I'm understanding you correctly? [03:35] wgrant: I have those two changes to push, along with the fix for SPRB_success_mail. [03:38] hi wallyworld_ [03:39] StevenK: I'm reworking _sendNotification [03:39] wgrant: Oh, you're going to give me a patch? [03:39] Yes. [03:40] 'cause I was about to shred it in the review. [03:40] Decided I would be a bit kinder. [03:40] Who are you, and what have you done with the real wgrant? [03:43] jtv-afk: hello [03:43] Oh, old nick === jtv-afk is now known as jtv [03:43] wallyworld_: any reviews you need me to mentor? === StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: wallyworld (*jtv) | https://code.launchpad.net/launchpad-project/+activereviews | Critical bugs:209 - 0:[######=_]:256 [03:44] jtv: thanks for asking. i assigned 2 to you. did you not get the email? [03:44] That '- ' was annoying me [03:44] wallyworld_: Probably. But email is one of those "it's got to be in there somewhere" things. [03:44] :-) [03:48] Ah, there they are. [03:53] StevenK: Slow tests :( [03:53] But they seem happy with my +11/-53 so far. [03:56] Crumbs! [03:57] wgrant: My local branch has all of the archiveuploader tests passing [04:00] StevenK: Have some comments. [04:04] wgrant: Your commit messages makes me sad [04:05] StevenK: It sucked years before you got to it. [04:05] True [04:06] timrc: yes, I am [04:06] StevenK: send_mail/_sendMail/_sendNotification/send_message still seem like they're designed to confuse me. Let's see if we can merge/rename some of them. [04:07] And they're not to be confused with sendmail(), which does the actual work! [04:08] wgrant: I'm thinking about solving the two calls to _sendNotification in notify() [04:08] The only difference is the summary [04:08] send_mail can also easily be merged into _sendNotification. [04:10] wgrant: You say the logging of the mail is still duplicated -- however the level is different? [04:11] ... huh. [04:11] Make it all debug. [04:11] If you're doing a dryrun you should be using -v anyway, surely. [04:13] StevenK: What's the difference between the two _sendNotification calls? rejected doesn't send the file summary with OK/NEW/etc.? [04:13] That seems sort of trivial to sort out. [04:14] wgrant: summarystring for !rejected, summary_text for rejected [04:14] Only [04:16] StevenK: Do you like my slight _sendNotification simplification? [04:16] I do [04:16] lifeless, gotcha... so when is it favorable to use a mutator vs. @property out of curiosity? [04:17] wgrant: Re: your "What did it do before?" question, exactly that. [04:17] Huh. [04:17] I hadn't seen that before. [04:17] OK. [04:18] timrc: when clients through the API should do different things than clients inside the appserver. [04:18] wgrant: It was inside notify() [04:20] wgrant: I'd love to drop the hasattr() hack, too [04:20] wgrant: But tests insist on passing in StringIO as the file_object [04:25] StevenK: We should find some other way. [04:25] StevenK: How was it done before? [04:25] Did it use packageupload.changesfile.filename or something? [04:25] lifeless, okay. so if a mutator is used then clients within the appserver would basically need to call setPrivate explicitly rather then .private = boolean [04:25] lifeless, @property would give a common interface for both [04:26] wgrant: It used packageupload.changesfile.filename [04:26] StevenK: :( OK [04:27] StevenK: We may want to rationalise this eventually. [04:27] So we take a filename and either changesfile string or object... not all three. [04:27] Mmmmm [04:28] wgrant: Does http://pastebin.ubuntu.com/613578/ satisfy your "Can haz map?" comment? [04:28] StevenK: It does indeed, but the location could be better. [04:29] * StevenK ponders lunch. [04:30] StevenK: So, do you have any more ideas for merging the Confusing Four? [04:30] send_mail can be pretty trivially folded into _sendNotification. [04:30] I agree about that [04:31] send_message() is also used by notify_spr_less's new name [04:31] _sendNotification can be folded into notify() [04:31] Right. [04:31] StevenK: Hm, notify_spr_less doesn't want to use _sendMail? [04:32] No, it's first argument is an apr [04:32] *SPR [04:32] It looks like it can be optional. [04:32] It says 'if spr:' [04:32] Indeed, it is optional. [04:32] Use it if you can. [04:33] wgrant: I did not see the fallout. [04:33] Then send_message can be folded into there. [04:33] sinzui: It hadn't been sending warnings. [04:33] sinzui: So about 300 memberships expired without warning. [04:33] timrc: right [04:33] sinzui: But only 20ish were in restricted teams that they could have renewed themselves, and I think the owners have fixed those. [04:33] mutators are basically fugly [04:33] wgrant: :( [04:33] lifeless, aye [04:34] I had answered a users question today saying all was fixed. He had noticed his membership was expiring and had not gotten an email [04:35] lifeless: Let's rewrite Launchpad in Java. [04:35] wgrant: indeed, why have one problem when we can have two! [04:35] wgrant, I think we should rewrite it in something more intuitive, like COW (http://www.bigzaphod.org/cow/) [04:37] timrc: But one of the instructions is actually intuitive :( [04:38] wgrant: The log level change is going to cause widespread changes to doctests [04:39] StevenK: Indeed... We'll see how widespread it is. [04:39] StevenK: If it's too hard, use a different log method for each, but still dedupe. [05:28] wgrant: Changes made, and your branch merged. [05:28] +16/-14 for nascent-announcements.txt [05:28] Which is much less than I feared. [05:32] wgrant: _sendNotification folded into notify() [05:32] Project windmill-db-devel build #328: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-db-devel/328/ [05:35] StevenK: Hexcellent. [05:37] Hmm, we haven't harrassed the LOSAs at all today :( [05:37] We are not up to our usual standard. [05:37] * StevenK looks at merging send_mail() into notify() [05:37] StevenK: Yay [05:37] Er. [05:37] No. [05:38] Indeed, we call it twice [05:38] [13:30] < wgrant> send_mail can be pretty trivially folded into _sendNotification. [05:38] :-) [05:39] StevenK: Oh, right, send_mail, not send_message. [05:39] send_mail can be folded in. [05:39] send_message should be merged into _sendMail, but that first requires that reject_changes_file use the latter instead. [05:41] wgrant: However, we call send_mail twice -- once for annoucements and once for the message itself. [05:42] StevenK: The args are the same except for action, recipients, from_addr and bcc_addr, AFAICT. [05:42] Also, the subject can be shared, but the body cannot. [05:43] Possibly reintroduce the do_send_mail closure. [05:43] But at the end this time. [05:43] Will save like 13 arguments and a confusing function name. [05:53] poolie: you wanted to catch up more generally ? === almaisan-away is now known as al-maisan [05:57] wgrant: notification.py | 18 ++---------------- [05:57] wgrant: From killing send_message [05:58] StevenK: I notice that DSDJob.run finds its DSD by {distroseries, sourcepackagename}. Doesn't that become ambiguous with multi-parent? [05:58] jtv: Yes, that should change. [05:59] wgrant: Make that +2/-19 [05:59] StevenK: do we have a bug/card for that? [05:59] I can't recall off the top of my head [06:00] OK, I'll look. [06:00] StevenK: :) [06:00] StevenK: bug 758906 may be a bit general [06:00] <_mup_> Bug #758906: Allow a derived series to have multiple parents < https://launchpad.net/bugs/758906 > [06:00] AssertionError: Invalid recipient: '' in ['D', 'a', ... [06:00] * StevenK digs [06:00] StevenK: Does that mean that send_mail and send_message are both dead? [06:01] send_mail is not, send_message is [06:01] I am disappoint. [06:01] Of course you are. [06:02] I'm hoping that notification.py drops below 500 lines. [06:02] hi lifeless [06:03] o/ poolie [06:03] wgrant: 509 [06:03] sure [06:03] now if you like [06:03] StevenK: Victory is near. [06:03] poolie: that would be great. shall we try skype? [06:04] wgrant: What was your plan to kill send_mail? [06:09] StevenK: Give me a sec. [06:14] wgrant: My branch has also fallen behind Full HD [06:16] StevenK: Hm, I have an odd failure in distroseriesqueue-notify.txt. [06:16] Have you fixed that one yet? [06:16] I've not been running the soyuz tests [06:19] r13104 broke it. [06:19] :-( [06:20] Ah, that could be the DEBUG vs INFO [06:20] Hm, possibly. [06:20] Doesn't look like it, though. [06:20] I'll dig when archiveuploader stops running [06:21] Also, just found a bug in r13104 [06:21] - for bpr in bprs: [06:21] - names.add(bpr.build.source_package_release.name) [06:21] - version = bpr.build.source_package_release.version [06:21] + elif bprs: [06:21] + names.add(bpr[0].build.source_package_release.name) [06:21] + version = bpr[0].build.source_package_release.version [06:21] You need to add the names even if there are sprs. [06:21] Just not the version. [06:22] Oh. [06:22] Heh. [06:22] It was the DEBUG/INFO change: the unification added some new fields. [06:22] Ah [06:22] Sorry, I fixed that locally [06:23] In r13105 [06:23] Great. [06:23] Do you have a diff for the -notify change? [06:23] Just pushing. [06:23] Or have you not fixed it? [06:24] Oh. [06:24] No, that one I haven't fixed. [06:24] There will be many more like it. [06:24] I'm pushing the send_mail merge. [06:24] Done. [06:24] I've just pushed r13107 [06:24] Hm. [06:25] Have you? [06:25] Pushing [06:25] When that returns, I'll re-merge your branch [06:25] Hm. No progress either [06:26] connect(4, {sa_family=AF_INET, sin_port=htons(443), sin_addr=inet_addr("91.189.89.225")}, 16 [06:26] Odd [06:30] ssh: connect to host bazaar.launchpad.net port 22: Connection timed out [06:30] Hmmm [06:31] But ssh -vv connects [06:31] WFM :( [06:31] So I'm confused [06:31] Ah, there it goes [06:31] wgrant: Sorry, pushed. [06:34] * StevenK attempts to merge in wgrant's latest branch, dies from conflicts [06:34] :( [06:34] wgrant: I can't make sense of them either [06:34] Oh? [06:34] Let me see. [06:34] zomg conflicts [06:35] Oh. [06:35] You demolished _sendNotification. [06:35] I see. [06:36] You said to? :-)( [06:36] s/(// [06:41] StevenK: Pushed. You should just be able to pull. [06:41] 497 lines. [06:42] \o/ [06:44] * StevenK looks at distroseriesqueue [06:45] StevenK: Can you also fix bcc_addr calculation? [06:45] StevenK: It should use the spr name and then fall back to the first bpr name. [06:45] StevenK: And not duplicate the template. [06:47] wgrant: http://pastebin.ubuntu.com/613612/ [06:48] StevenK: elif bprs [06:53] StevenK: I'm still not quite sure how notification.py has ended up 20% shorter, despite some stuff being moved into it from queue.py... [06:53] Haha [06:53] Iz bonus [06:54] wgrant: Fixed distroseriesqueue* [06:55] StevenK: I would avoid further elision like the nascentupload-announcements.txt fix. [06:55] It may conceal unexpected Bcc and From additions. [06:55] :-( [06:56] How did you know that's how I fixed them? [06:56] Heh [06:56] I was actually typing that before you said you'd fixed them :( [06:56] Oh, so since I've done it, I can leave it? :_) [06:57] No. [06:58] Should I fix nascentupload-announcements.txt as well? [06:58] StevenK: Ideally. [06:58] cody-somerville: your bug is fixed; will be deployed monday [07:03] % psql -l | egrep -c 'ftest_[0-9]' [07:03] 8 [07:03] With no test suite running :-/ [07:08] wgrant: distroseriesqueue* fixed properly [07:08] Great. [07:08] I think this is just about done. [07:09] The only thing I can think of is the hasattr() hack [07:09] Yes. [07:09] That's only used by notify(), right? [07:10] An extra arg at that single level won't hurt too much. [07:10] No, reject_changes_file [07:10] Well, yes, but that's called immediately by notify() [07:10] So it doesn't affect the majority of the code. [07:11] Bah, I called it reject_changes_file*s* ? [07:11] :( fixit [07:11] Fixed [07:17] wgrant: r13111 pushing [07:18] Hmm, it's back over Full HD again. === al-maisan is now known as almaisan-away [07:21] wgrant: Diff in the MP has updated, once more with feeling? [07:28] StevenK: Soyuz tests are passing? [07:29] Still running archivepublisher [07:29] But I can let you know in 30 minutes :-( [07:30] So, I'll rereview in a sec. [07:30] wgrant: Running soyuz now, no failures in archivepublisher [07:30] What are your next steps? [07:30] After this branch? [07:31] I was going to say hook this into the package copier, but that is dangerous [07:31] It might be worth seeing how hard it is to extract reject_changes_file() from notify(), making archiveuploader call it directly. [07:31] But if you want to go directly to the copier goal, you'll need to wean notify() and co. off the changesfile. [07:31] I tried that, archiveuploader deals with both forms of rejection in one method [07:31] Stop using it for Changed-By and Maintainer, for example. [07:31] Bah. [07:31] That's stupid. [07:32] But OK. [07:32] My concern with the package copier calling it is that notify() is fairly heavyweight, and the package copier needs to be lean and fast [07:33] Does it? [07:33] Otherwise copying times out and people yell at me. :-( [07:33] These copies won't be done inline. [07:33] Ahh [07:34] Well, for security copies they probably will for the short-term. [07:34] So call notify() in PCJ, *not* do_copy [07:34] But this is pretty light-weight... [07:34] No, do_copy. [07:34] But only security copies and PCJ will use it for now. [07:34] That's fairly easy guarded [07:34] On a vaguely related note, did the job to pro[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[Ccess all the old copyright files ever run? [07:34] No need. [07:34] The other types of copies are unsupported. [07:35] persia: Old changelog files? Yes. === almaisan-away is now known as al-maisan [07:35] Oh, excellent [07:35] persia: It took one month to run [07:35] persia: And processed roughly 580,000 SPRs. [07:35] Only 'cause you threw away my good one :P [07:35] StevenK: It took about one year to schedule, so I'm happy with the run time :) [07:35] So we thanked it by deleting it from the codebase. [07:35] wgrant: I got lifeless'd [07:36] wgrant: And I didn't throw it away, it mutated ... [07:36] wgrant: Uh? What about ppa-to-ppa copies? [07:36] StevenK: They shouldn't announce. [07:37] We will handle that in the integration. [07:37] Clearly [07:37] But it should be handled with the rest of the do-not-announce logic. [07:37] Not by not calling notify(). [07:37] Right [07:37] wgrant: Are you reviewing, or waiting for soyuz test results? [07:38] Or doing something else entirely :-) [07:38] Will look shortly. [08:07] wgrant: 2 failures in soyzu [08:07] *soyuz [08:07] They're both doctests, so I guess it's more INFO vs DEBUG fallout [08:22] StevenK: Have you disposed of _filename yet? [08:24] wgrant: Yes [08:24] Trying to work out the xx-queue-pages.txt failure [08:24] soyuz-set-of-uploads failed due to INFO vs DEBUG [08:26] The rejection message seems to be None. [08:26] Yes, I think I've found the bug. [08:27] And found a stray place _filename hasn't been erricated yet [08:31] wgrant: r13112 pushed. [08:32] wgrant: Did you notice my drive-by to drop pocketsuffix from queue? === al-maisan is now known as almaisan-away [08:32] StevenK: I WTF'd at it for a minute and then worked out it was a drive-by, yes. [08:32] *Not* really the right sort of branch for drive-bys, but I won't hurt you too much. [08:33] Well, true, it's large and hurty enought [08:33] s/t$// [08:34] wgrant: Diff updated. [08:40] StevenK: The summarystring stuff could do with a shuffle. [08:40] wgrant: Er, which bit? [08:40] I'd move the buildSummary bit (line 144) into an else block after the "if action == 'rejected'" [08:40] Since the rejected bit clobbers it. [08:42] wgrant: Done [08:51] StevenK: Could you also de-underscore and de-CamelCase the remaining functions? [08:51] Apart from that I think it is pretty much landable. [08:51] We will see Julian scream in a few minutes, I guess? [08:56] How do? [08:59] wgrant: Does mean you're willing to Approve it? [09:00] s/s m/s that m/ === jtv1 is now known as jtv [09:01] huwshimi: hi [09:01] jml: Hello! [09:02] wgrant: r13113 pushed. [09:02] huwshimi: let's talk :) [09:02] jml: Skype? [09:05] wallyworld_: Are you still the OCR? [09:05] StevenK: perhaps not anymore [09:05] i should change the topic [09:05] * wallyworld_ is about to eat dinner === wallyworld_ changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: | Critical bugs:209 - 0:[######=_]:256 === StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:209 - 0:[######=_]:256 [09:06] I wonder if that 209 count is still right [09:07] It's 210 now, I think. [09:07] Possibly more. [09:07] it seems to be stuck around 200 :-( [09:07] It's decreasing. [09:07] But then stuff gets escalated. [09:08] right [09:08] http://webnumbr.com/launchpad-critical-bugs [09:08] nice graph. i hadn't seen that before [09:10] There are 9 escalated bugs. [09:10] wgrant: The diff has updated, can haz comment/approve? [09:11] bigjools must be subjected to it first. [09:11] bigjools: https://code.launchpad.net/~stevenk/launchpad/refactor-notification/+merge/61919 [09:12] bzr repacking a commit when you just want to push before your battery runs out is sub optimal [09:12] hey wallyworld_ you're up late [09:12] goodmorning [09:13] The notification.py diff is pretty much useless, but the new file is short and pretty readable. [09:13] And self-contained. [09:19] http://webnumbr.com/.join(launchpad-oops-bugs.all,launchpad-timeout-bugs.all,launchpad-critical-bugs.all) === lifeless changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:206 - 0:[######=_]:256 [09:24] Who's up for a review? https://code.launchpad.net/~jtv/launchpad/db-bug-788526/+merge/62623 [09:33] jtv: I'll look === adeuring changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: adeuring | Critical bugs:209 - 0:[######=_]:256 [09:34] thanks adeuring [09:36] Project windmill-db-devel build #329: STILL FAILING in 1 hr 8 min: https://lpci.wedontsleep.org/job/windmill-db-devel/329/ [09:41] Dear Unity, why are you making my laptop screen flicker? [09:48] StevenK: it's not Unity, it's me! [09:48] danilos: How are you doing that, then? :-) [09:49] StevenK: just saying I might drop by and then it shudders (manifests as flicker ;)) === almaisan-away is now known as al-maisan [10:26] wgrant: bigjools has approved, your turn [10:32] jtv: r=me [10:32] thanks! [10:33] Food time!!#@@!# [10:33] (I'm pretty excited about it) [10:35] StevenK: It is done. [10:36] wgrant: I'm sad that you're not on maintenance rotation any more, I was going to press-gang you into fixing the FatalUploadError-generating-an-oops-for-bad-gpg-signatures annoyance [10:37] since every single soyuz oops for the last few days has been those [10:37] bigjools: As I said, I was looking at that last week, but got distracted by the whole epic failure thing. [10:37] Yeah. [10:37] The missing mandatory field errors are now replaced by those. [10:37] Since it does signature verification first. [10:37] wgrant: bigjools wished for docstrings, so 527 [10:37] bigjools is a terrible person. [10:37] But probably correct. [10:37] Haha [10:38] * bigjools is merely enforcing the existing rules ;) [10:38] At least we removed a few functions that would have also needed 15-20 line docstrings. [10:39] yarp [10:39] I'm sure I can refactor some more out of it, but this is workable, landable, somewhat reviewable, and makes me cry less. [10:40] gpghandler-service ftw [10:40] Yes [10:40] Hopefully first thing. [10:40] wgrant: have you seen https://dev.launchpad.net/ArchitectureGuide/ServicesRequirements ? [10:40] I have. [10:40] good ;) [10:41] But it's 10pm on your Friday night, so you are not here. [10:41] I am writing up a mail to the list even now [10:41] I have a cat nestled in the crook of my legs, wife on the couch beside me and tv on [10:41] Seeing KPI used in a technical document makes me cringe, but I will survive. === al-maisan is now known as almaisan-away [10:46] Project windmill-devel build #145: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-devel/145/ [10:47] actually, still no food, and I have to run an errand. [10:47] back soon. === jtv is now known as jtv-afk [11:23] back === jtv-afk is now known as jtv [11:34] is anybody aroubd with Twisted-fu? I'm trying to let the test-keyserver return a 500 error when a non-existing key is looked up. (That's what our real-life keyserver does, really) [11:35] A 500? [11:35] That would be an SKS bug. [11:35] Using ErroPage() seems to work, but how can I test this? [11:35] wgrant: yes, it is -- but should we fix this too? [11:36] wgrant: just try http://keyserver.ubuntu.com:11371/pks/lookup?search=0x6F0DAED1&op=vindex [11:40] wgrant: but anyway, even if it would return a 404: My question is: How can I test that our test keyserver returns a 404 or 500 or whatever other error? [11:41] Nobody has done anything significant to zeca in quite a while... I'm not sure if it's tested. [11:41] * wgrant looks around. [11:42] Oh, the tests aren't too bad. [11:42] adeuring: So you're not sure how to assert an HTTP error in test_web? [11:43] wgrant: right [11:43] wgrant: Returning ErrorPage(...) in web.py _seems_ to work, bt I'd like to test that properly... [11:45] adeuring: I presume twisted.web.client.getPage calls the errback if an error occurs. [11:45] Yeah: "Download a page. Return a deferred, which will callback with a page (as a string) or errback with a description of the error." [11:45] wgrant: I have no real clue about twisted... So I would have to add an error callback? [11:46] adeuring: getPage returns a Deferred, to which you can addCallback and addErrback. [11:46] adeuring: You'll see it currently uses addCallback to add an assertion. [11:46] On the success case. [11:46] wgrant: ah, right! thanks! [11:52] adeuring: twisted.trial.unittest.TestCase has an assertFailure method that may help: http://twistedmatrix.com/documents/current/api/twisted.trial.unittest._Assertions.html#failUnlessFailure [11:52] spiv: thanks! [11:53] adeuring: (despite the API doc link, the preferred name for that method is assertFailure not failUnlessFailure) [11:54] adeuring: the basic trick to know is that trial's TestCase allow you to return a Deferred from your test method (and setUp etc), and the test will wait for the result/failure of that before completing. [11:54] spiv: ok [11:54] spiv: actually, most of our Twisted tests don't use trial TestCase [11:55] jml: *shudder* [11:55] spiv: no, it's actually awesome [11:55] jml: awesome can make a person shudder too! [11:55] spiv: 'run_tests_with = AsynchronousDeferredRunTest' [11:55] jml: the interface for test writers is approximately the same? [11:56] spiv: yeah. things like the assert you mentioned are free-floating functions [11:56] spiv: and it's more strict with reactor cleanup [11:56] (and there's more helpers for debugging) [11:56] (and you need to do less multiple inheritance) [11:57] jml: \o/ [11:57] spiv: http://readthedocs.org/docs/testtools/en/latest/for-test-authors.html#twisted-support [12:44] * henninge lunches === henninge is now known as henninge-lunch === henninge-lunch is now known as henninge === almaisan-away is now known as al-maisan === bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: adeuring, bac | Critical bugs:209 - 0:[######=_]:256 [13:26] hello adeuring. busy today? [13:26] bac: not really [13:34] Hi! I have re-installed my laptop and used rocketfuel-setup to get my LP setup going again. I also had saved my homedir and copied it back to the new installation, so I may have mixed stuff. [13:34] Now make schema won't work, it breaks off like this: http://paste.ubuntu.com/613727/ [13:35] The last line is about "ident authentification failing for user henning" [13:35] What's missing? [13:39] Would rocketfuel-setup not create a user for my account? [13:39] rf-setup does not run utilities/launchpad-database-setup [13:40] oh [13:40] henninge: "utilities/launchpad-database-setup $(whoami)" [13:40] * henninge should have read that again [13:40] StevenK: thanks! === salgado_ is now known as salgado [13:41] I may be wrong, the rf-setup code makes me sob. [13:42] no, it's coming back to me that we split that back when we open sourced because people did not like rf to mess with their database. [13:42] Well, truth be told, rf-setup is not something to be run often [13:42] exactly === Ursinha-afk is now known as Ursinha [13:43] make schema is doing what it should now. ;-) [13:43] now henninge can run tests ... [13:45] * StevenK high fives henninge [13:45] ;-) === al-maisan is now known as almaisan-away === almaisan-away is now known as al-maisan === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [14:13] hi sinzui, gary says you brought up bug 186660 to him recently as something we might look at soon. it would possibly close several bugs but none are marked critical. [14:13] <_mup_> Bug #186660: Launchpad shouldn't store wiki names < https://launchpad.net/bugs/186660 > [14:14] bac: That is right. We have ignored the issue for many years. I was just noting that with the SSO change last year. We might be able to close all wikiname bugs except the one saying it should be removed [14:15] allenap: you've got a test here called test_requestUpgrade_is_efficient. It seems to assert that the query count does not increase with the number of jobs it needs to create. I'm not so sure Storm will let us do that. [14:24] bac: I've got an oversized and tedious MP here, and I have to leave. But _if_ you have no problem with that, then I'd be grateful if you could review! https://code.launchpad.net/~jtv/launchpad/db-bug-788956/+merge/62669 [14:24] jtv: you're a natural-born salesman [14:24] Yuck. [14:24] I've done sales, but I'm only good at it if I believe in what I sell. [14:24] who could pass oversized, tedious, and unattended? [14:25] You could if you wanted to! [14:25] jtv: i'll have look in a bit [14:25] Great, thanks [14:40] Have a good weekend, everyone! === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [15:13] gmb: Do I get extra karma for getting two [r=allenap]s into a commit message? ;) [15:14] allenap: Sadly not :). [15:15] Hahah. "Strongly suggest you use lp-land." I did and it added the extra tags. Unhelpful. [15:16] jcsackett: so you have time to talk? [15:16] sinzui: sure. mumble or sip? [15:17] sip? [15:18] We miss connected [15:18] we did. :-P [15:42] Project windmill-db-devel build #330: STILL FAILING in 1 hr 12 min: https://lpci.wedontsleep.org/job/windmill-db-devel/330/ === al-maisan is now known as almaisan-away === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [16:34] adeuring or bac: could you please review https://code.launchpad.net/~abentley/launchpad/duplicate-msgid/+merge/62697 ? [16:34] abentley: sure [16:34] adeuring: thanks. === matsubara_ is now known as matsubara [16:53] abentley: r=me [16:53] adeuring: thanks. [16:55] Project windmill-devel build #146: STILL FAILING in 1 hr 13 min: https://lpci.wedontsleep.org/job/windmill-devel/146/ [17:11] Project windmill-db-devel build #331: STILL FAILING in 1 hr 7 min: https://lpci.wedontsleep.org/job/windmill-db-devel/331/ [17:11] bac: does OOPS-1963SMS24 make any sense to you? It's apparently the cause of bug #784008. [17:11] <_mup_> Bug #784008: problem when pushing fix for a fix-committed bug < https://launchpad.net/bugs/784008 > [17:12] * bac looks [17:17] adeuring, bac : Could one of you take a look at https://code.launchpad.net/~gmb/launchpad/choose-affected-product-oops-bug-370117/+merge/62704 for me? [17:17] gmb: i will [17:17] bac: Thankee [17:21] abentley: the OOPS does not make sense to me b/c the code it references no longer exists. [17:22] bac: Thanks. I guess the bug probably is fixed, too, but I'll poke at that later. [17:22] abentley: i hope so... [17:23] gmb: short, sweet, r=bac [17:23] bac: Ta. [17:24] bac: I have trouble seeing why the bug and the oops would be connected, so it's possible another issue was at play for the oops, and the bug still exists. === salgado is now known as salgado-lunch === matsubara is now known as matsubara-lunch === adeuring changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: bac | Critical bugs:209 - 0:[######=_]:256 === salgado-lunch is now known as salgado [18:25] Hi, I just filed bug 789222, which I introduced with my "fixes" [18:25] <_mup_> Bug #789222: Sprints and specification subscribers are really not alphabetically sorted < https://launchpad.net/bugs/789222 > [18:25] should I be separating the sprints and specification into separate branches and bugs or together is fine? [18:25] I know the fix for it and I'm working on it. [18:29] nigelb: if the branch gets too complex to think about or review, then you'll know you should have split it. [18:29] nigelb: but probably it's ok to do them together. [18:29] jml: Its basically just a small change of one lines each, unless you insist on writing new test cases to catch that. === matsubara-lunch is now known as matsubara [18:30] nigelb: well, if you introduced a bug with your fixes, it shows that we don't have enough tests for this area [18:30] nigelb: so, yes I will insist :) [18:34] jml: heh :D [18:34] I knew you'd insist :D [18:34] jml: I don't know if I want to touch the doctests for the specifications. [18:35] nigelb: give it a try at least. [18:36] I'm tempted to just write new unit tests. [18:36] Wait, that's a trap. I'll end up writing a whole bunch of unit tests. I take that back :p [18:38] nigelb: you'll need some kind of test. do which ever is easier for you. [18:38] jml: :) [18:38] Sorry for this sort of mess I caused :) [18:40] np. [18:42] jml: When is the sprint in Dublin? [18:43] I guess the pie on the face is less likely now :( [18:43] nigelb: June 27th: 1 month [18:43] nigelb: yes, quite unlikely. [18:43] nigelb: but still possible. [18:44] heh [18:46] * jml is off [18:46] g'night all [18:46] see you in a bit over a week's time. [18:48] ouch, I messed up postgres :( [18:48] apparently, at some point I accidentally uninstalled it [18:48] I ran rocketful-setup again, but that didn't get the schema on there [18:49] how do I fix that? [18:50] nvm, I think I fixed it. [19:06] No I didn't, sigh. === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [19:50] Project windmill-db-devel build #332: STILL FAILING in 1 hr 8 min: https://lpci.wedontsleep.org/job/windmill-db-devel/332/ [19:55] anyone knows how to make a source package branch the official one? [20:02] Project windmill-devel build #147: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-devel/147/ [20:17] bac: I'm picking that task up. Just that I broke my local dev set up and trying to figure out if I have to reinstall the whole thing. [20:18] bug 347770 [20:18] <_mup_> Bug #347770: UI for making a branch an official package branch < https://launchpad.net/bugs/347770 > [20:18] nigelb: great to hear, except for the borked machine [20:19] Note to self: reinstalling rabbitmq was a bad idea. [20:19] james_w: is there an existing tool that uses the API to set official package branches? (is it done as part of package-importer?) or should I write my own (i want to set official package branches on another distribution) [20:19] flacoste, there's set_official.py in lp:udd I think [20:31] james_w: i'll have a look === almaisan-away is now known as al-maisan === al-maisan is now known as almaisan-away === bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:209 - 0:[######=_]:256 [21:09] Project windmill-db-devel build #333: STILL FAILING in 1 hr 7 min: https://lpci.wedontsleep.org/job/windmill-db-devel/333/ [21:15] has anyone seen this error from ec2: [21:15] AttributeError: 'Entry' object has no attribute 'queue_status' [21:15] what a silly error too [21:37] poolie: it sounds like ec2 was expecting a merge proposal but got something else. [21:39] yes [21:40] i gave it a branch [21:40] perhaps i'll shave that restfulclient yak === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [22:17] Project windmill-devel build #148: STILL FAILING in 46 min: https://lpci.wedontsleep.org/job/windmill-devel/148/ === Ursinha is now known as Ursinha-afk === Ursinha-afk is now known as Ursinha [22:25] anyone around to review a branch? [22:26] poolie: You around? [22:27] I'm headed to bed. If someone can review https://code.launchpad.net/~nigelbabu/launchpad/789222-sort-fix/+merge/62739 that'd be awesome :) === Ursinha is now known as Ursinha-afk [22:40] hi nigelb === matsubara is now known as matsubara-afk [22:57] replied [23:00] Project windmill-db-devel build #334: STILL FAILING in 43 min: https://lpci.wedontsleep.org/job/windmill-db-devel/334/ [23:06] *stretch* [23:06] hi there [23:06] flacoste: there is an API call I believe. No web UI atm. [23:09] lifeless: yep [23:09] I see the futher discussion now ;) [23:23] lifeless: if you're in lp mode, can you tell me if there's a better way to write https://code.launchpad.net/~nigelbabu/launchpad/789222-sort-fix/+merge/62739 [23:27] tx [23:28] no probs