[00:20] <lifeless> thumper: ping
[00:20] <lifeless> Bug 667554 is blocking deploys
[00:20] <_mup_> Bug #667554: State change and reviewer request emails go out for work in progress <code-review> <email> <qa-needstesting> <Launchpad Bazaar Integration:Fix Committed by thumper> <https://launchpad.net/bugs/667554>
[00:21] <lifeless> thumper: (This is the 'qa promptly...-please-' plea)
[00:21] <lifeless> thumper: I would nag wallyworld, but he isn't on irc just now :)
[00:23] <wgrant> lifeless: I think we may need to roll back cesium.
[00:23] <wgrant> It's knocked out half the non-virt builders.
[00:24] <StevenK> 'NoneType' object has no attribute 'processor'
[00:24] <StevenK> Wheee
[00:25] <wgrant> There's a Twisted callback being called after a failure, when it shouldn't.
[00:25] <wgrant> And the builder's cached behaviour is incorrect at the that point.
[00:26] <wgrant> A quick workaround may be to remove the behaviour cache.
[00:26] <wgrant> But can we just rollback to whatever it was before?
[00:26] <StevenK> lifeless: ^
[00:33] <wgrant> I don't have the time nor the log access to debug this much further :/
[00:56] <lifeless> ok
[00:57] <lifeless> wgrant: 11811 be ok ?
[00:59] <spm> soyuz-production-rev-9886 is more likely. that's a softlink change.
[00:59] <wgrant> lifeless: No. 11808 is probably the culprit.
[00:59] <wgrant> 11801 was the initial landing, it was rolled back in 11805, then brought back in 11808.
[00:59] <wgrant> I'd go with spm's suggestion.
[00:59] <lifeless> 11793 then
[01:00] <spm> any other revno isn't so much a rollback, as a rollout
[01:00] <lifeless> spm: ah, please do that.
[01:00] <lifeless> spm: we should also take cesium back out of nodowntime
[01:00] <spm> oki
[01:00] <lifeless> spm: until this is addressed
[01:00] <thumper> lifeless: where is the imap folder for the qastaging email box?
[01:00] <lifeless> perhaps we need a 'lock' facility in the deployment manager
[01:00] <lifeless> thumper: its the staging one
[01:01] <thumper> lifeless: how do I tell the difference?
[01:01] <lifeless> thumper: right now you don't. I've filed an RT asking for something
[01:01] <thumper> lifeless: ok
[01:01] <lifeless> thumper: OTOH there is almost no mail from staging/qastaging. So you can just empty the mbox
[01:01] <lifeless> then do your thing
[01:01] <thumper> lifeless: what bzr hosting do we have for qastaging?
[01:01] <lifeless> thumper: EPARSE
[01:02] <thumper> lifeless: like pushing branches to qastaging?
[01:02] <lifeless> its all there
[01:02] <lifeless> lp: won't work until the bzr bug I filed is fixed.
[01:02] <thumper> ok
[01:02] <lifeless> but the full paths will
[01:03] <lifeless> I should probably do the bzr one myelf
[01:05] <wgrant> spm: Once that's rolled back and b-m restarted, the disabled buildds need to be undisabled.
[01:05] <spm> figures
[01:05] <lifeless> spm: thanks
[01:05] <spm> it's rolled back, fwiw. that was fairly easy. just making sure all teh required services are restarted
[01:06] <lifeless> yeah, thats the idea :)
[01:06] <lifeless> low TTR
[01:09] <thumper> test_ppa_displayname_inline_edit  failing on db-devel builder
[01:15] <lifeless> :(
[01:19] <thumper> mwhudson: have you tried mumble recently?
[01:19] <thumper> mwhudson: it has started working for me fine
[01:21] <mwhudson> thumper: no
[01:21] <thumper> mwhudson: in the end I deleted my ~/.config/Mumble dir and started again
[01:22] <thumper> mwhudson: dropped the caching to 10ms
[01:22] <thumper> mwhudson: and it is working fine now
[01:22] <mwhudson> thumper: huh, cool
[01:22] <mwhudson> i should try it again then
[01:22] <thumper> I'm not entirely sure what else has changed, but I've been using it for standups this week
[01:22] <thumper> and for talking with flacoste
[01:29]  * StevenK peers at the build page. Where's my build log?
[01:30] <wgrant> StevenK: Which build is borked?
[01:30] <StevenK> wgrant: https://launchpad.net/ubuntu/+source/linux/2.6.37-2.10/+build/2032158 for example
[01:31] <wgrant> StevenK: Looks like it was killed by the failure counter.
[01:31] <wgrant> Retry.
[01:31] <wgrant> Bonus points if you unkill all the builders.
[01:32] <StevenK> I set it to OK and remove the failure message?
[01:34] <wgrant> Indeedily.
[01:35] <StevenK> Whee, adare promptly failed itself again
[01:36] <wgrant> That's not unexpected.
[01:36] <wgrant> ppc is sort of screwed at the moment.
[01:37] <wgrant> At least it has a proper error this time.
[01:40] <StevenK> I prefered the other error, it at least pointed to a code error in the buildd-manager :-)
[01:41] <StevenK> allspice picked itself back up, though
[01:43] <StevenK> wgrant: Have you filed a bug about this, or do I need to?
[01:43] <wgrant> StevenK: I haven't. Do you have the traceback and related log entries?
[01:44] <StevenK> Not to hand
[01:44] <wgrant> http://paste.ubuntu.com/526017/
[01:47] <StevenK> wgrant: bug 671242
[01:47] <_mup_> Bug #671242: New buildd-manager disabling everything in sight <Soyuz:Confirmed> <https://launchpad.net/bugs/671242>
[01:47] <persia> Good title!
[01:48] <wgrant> StevenK: Thanks.
[01:49] <wgrant> StevenK: is there a probe failure message immediately before each traceback?
[01:49] <wgrant> I see there's one 9 seconds later, but that's probably from the next scan.
[01:53] <StevenK> wgrant: After
[01:54] <wgrant> :(
[01:54] <StevenK> Traceback, and then the probe failure message immediately after
[01:56] <wgrant> StevenK: Is there a "builder BLAH failure count: X" line before the traceback?
[01:58] <wgrant> My theory is that assessFailureCounts knocks the build off the builder, then rescueIfLost fires in the same transaction, using the cached BFJB.
[02:01] <StevenK> wgrant: That's attached to the failed probe messages, isn't it?
[02:01] <StevenK> 2010-11-05 00:25:45+0000 [QueryProtocol,client] Builder lakoocha failed a probe, count: 4
[02:02] <wgrant> StevenK: The 'failed a probe' message occurs when a failure is detected with no build assigned.
[02:03] <wgrant> 'builder BLAH failure count: X, job 'BLAH' failure count: Y' is used when there is a build assigned.
[02:04] <StevenK> wgrant: I can see that in the logs for rothera, but it's a timeout error, not the processor none traceback
[02:04] <wgrant> Intriguing.
[02:06] <wgrant> Anyway, I guess we'll have to wait until Monday evening.
[02:06] <StevenK> wgrant: I wonder if there's an addErrBack for rescueIfLost
[02:08] <wgrant> StevenK: rescueIfLost isn't the problem here.
[02:08] <wgrant> Its caller is.
[02:09] <wgrant> It is being called with a dirty transaction with a builder with an outdated BFJB cache.
[02:09] <wgrant> There are enough commits and aborts around that that shouldn't happen.
[02:09] <wgrant> But there must be a missed case.
[02:10] <wgrant> But I am not exactly a Twisted expert.
[02:10] <StevenK> Neither
[02:11] <wgrant> Maybe I should acquire a book.
[02:13] <thumper> StevenK: I hope there is lots of lovely logging for the new buildd manager
[02:13] <wgrant> Not enough :(
[02:13] <wgrant> But it's not as bad as it ws.
[02:14] <thumper> well add some dear liza...
[02:14] <thumper> has the buildd manager been rolled back?
[02:14] <StevenK> wgrant: http://www.amazon.com/Twisted-Network-Programming-Essentials-Fettig/dp/0596100329/ref=sr_1_7?s=books&ie=UTF8&qid=1288923189&sr=1-7 ?
[02:14] <StevenK> thumper: Yes
[02:15] <thumper> StevenK: can I talk to you in about 30 minutes about PPAs?
[02:16] <StevenK> thumper: Sure
[02:16] <thumper> ta
[02:17] <wgrant> thumper: As I see it, we have a bit of a conflict. Code likes to delete things, while the rest of Launchpad does not delete anything ever.
[02:17] <thumper> wgrant: sure it does...
[02:17] <wgrant> Oh?
[02:17] <thumper> blueprints will be deletable soon
[02:18] <thumper> :-)
[02:18] <wgrant> I hope you mean the code.
[02:18] <thumper> we have lots of garbo scripts that delete things
[02:18] <thumper> and no, I don't mean the code
[02:18] <wgrant> They delete records of inconsequential happenings.
[02:18] <spm> hahaha
[02:18] <wgrant> Not OMGCRITICAL stuff like who uploaded some malware to Ubuntu.
[02:19]  * spm prints "<wgrant> They delete records of inconsequential happenings." to preserve for all time
[02:37] <lifeless>   Hard / Soft  Page ID
[02:37] <lifeless>      278 /    7  Archive:EntryResource:getBuildSummariesForSourceIds
[02:37] <lifeless>      207 /   55  Person:+commentedbugs
[02:37] <lifeless>       94 /    0  MailingListApplication:MailingListAPIView
[02:37] <lifeless>       90 /  375  BugTask:+index
[02:37] <lifeless>       83 /  269  CodeImportSchedulerApplication:CodeImportSchedulerAPI
[02:37] <lifeless>       34 / 2190  Archive:+index
[02:37] <lifeless>       32 /  138  Archive:+packages
[02:37] <lifeless>       19 /  323  Distribution:+bugs
[02:37] <lifeless>       18 /   14  ProjectGroup:+milestones
[02:37] <lifeless>       11 /   82  MaloneApplication:+bugs
[02:39] <StevenK> lifeless: Are they timeouts?
[02:41] <wgrant> Hm, we only hold three of the top ten, and two of those are probably the same issue. Not bad.
[02:42] <thumper> StevenK: mumble?
[02:43] <StevenK> thumper: Sec
[02:54] <LPCIBot> Yippie, build fixed!
[02:54] <LPCIBot> Project db-devel build (120): FIXED in 3 hr 9 min: https://hudson.wedontsleep.org/job/db-devel/120/
[02:54] <LPCIBot> Launchpad Patch Queue Manager: [rs=buildbot-poller] automatic merge from stable. Revisions: 11862
[02:54] <LPCIBot> included.
[03:04] <StevenK> lifeless: Interestingly, the deployment page says bad, but the bug is marked 'qa-untestable'
[03:17] <StevenK> thumper: Are you okay to mentor my review of https://code.edge.launchpad.net/~wallyworld/launchpad/person-mergequeue-listview/+merge/39933 or would you prefer someone els
[03:17] <StevenK> s/els$/else?/
[03:21] <thumper> I can take a look
[03:57] <lifeless> StevenK: which bug
[04:00] <lifeless> spm: can you please add a feature flag to qastaging for qa needs?
[04:00] <lifeless> hard_timeout team:bzr 15 5000
[04:03] <spm> lifeless: thatshould be applied
[04:23] <lifeless> spm: can you drop that to 2000 ?
[04:24] <spm> done
[04:24] <lifeless> great
[04:24] <lifeless> please remove the rule
[04:25] <spm> done
[04:29] <lifeless> thanks
[04:37] <wgrant> Is PQM happy at the moment, and likely to remain so? It threw out https://code.edge.launchpad.net/~wgrant/launchpad/destroy-distroseries-lucilleconfig/+merge/38648 yesterday.
[04:37] <lifeless> wgrant: we can't actually tell
[04:37] <wgrant> ...
[04:37] <lifeless> there is a bug
[04:37] <wgrant> Hwhat?
[04:38] <lifeless> the testfix state is not well exposed
[04:38] <lifeless> last build of devel workd
[04:38] <lifeless> last build of db-devel failed
[04:38] <wgrant> Yay.
[04:38] <lifeless> devel and db-devel are both building atm
[04:38] <lifeless> WindmillTestClientException: {u'suite_name': u'lp.soyuz.windmill.tests.test_ppainlineedit', u'result': False, u'starttime': u'2010-10-5T6:12:5.320Z', u'params': {u'xpath': u"//h1[@id='displayname']/span[1]", u'validator': u"Celso's default PPA"}, u'debug': u"Text 'Celso's default PPA' was not found in the provided node.  Found instead: PPA for Celso Providelo", u'output': None, u'endtime': u'2010-10-5T6:12:5.321Z', u'method': u'
[04:38] <lifeless>                   u'validator': u"Celso's default PPA"}, u'debug': u"Text 'Celso's default PPA' was not found in the provided node.  Found instead: PPA for Celso Providelo", u'output': None, u'endtime': u'2010-10-5T6:12:5.321Z',
[04:38] <lifeless>                   u'method': u'asserts.assertText'}
[04:39] <lifeless> looks like a genuine fail
[04:39] <lifeless> StevenK: ^
[04:39] <wgrant> Hudson's still happy, though :/
[04:40] <wgrant> So not very legit.
[05:05] <StevenK> That's ... odd
[05:36] <SpamapS> lifeless: was it you that pointed out mod_pagespeed?
[05:41] <lifeless> no
[05:41] <lifeless> I was the one that went eeeeek omg nooo
[05:41] <lifeless> [just on the probably complexity of the heuristics it must have]
[05:42] <lifeless> let alone the potential to mess with our API implementation
[05:42] <lifeless> SpamapS: ^
[05:42] <SpamapS> so I filed an ITP w/ debian to package it..
[05:42] <SpamapS> and have started looking into it
[05:43] <SpamapS> 45 dependencies.. I think 3 of them are already packaged
[05:43] <SpamapS> they build a .deb, but they don't use dpkg-buildpackage to do it
[05:43] <lifeless> -lol-
[05:43] <lifeless> I'm very unsurprised.
[05:43] <lifeless> Google project yeah?
[05:43] <SpamapS> the first thing it does, is sync all of its 3rd party dependencies from their upstream repositories at specific revisions.
[05:44] <SpamapS> yes, Google seems to be against releasing and stablizing things. ;)
[05:44] <lifeless> well
[05:44] <SpamapS> I have to wonder, are we fighting the good fight, or holding back progress?
[05:44] <lifeless> its a different definition of release ;)
[05:45] <SpamapS> TODO: describe advanced compilation options such as compiling against system headers.
[05:45] <lifeless> SpamapS: *blink*
[05:45] <SpamapS> am I the only one who thinks thats *BASIC* compilation?
[05:45] <lifeless> I hear ya
[05:46] <SpamapS> I can see how the conversation went at Google that led to gyp and gclient (the things that make this "just work")
[05:47] <SpamapS> "Its got 45 dependencies, it takes a long time to get them all onto one system."
[05:47] <SpamapS> "I can solve that!"
[05:47] <SpamapS> "Ok, solved. We can now compile all 45 dependencies with one command. Who wants to go play ping pong?"
[05:47] <lifeless> they have a specific diagnostic story
[05:47] <lifeless> if you look at go it becomes very clear
[05:47] <wgrant> Well...
[05:47] <lifeless> they -want- a single binary with no shared libraries
[05:48] <wgrant> Have you seen Chromium?
[05:48] <wgrant> It is the Java mentality cubed.
[05:48] <SpamapS> Yes, this uses the chromium tools
[05:48] <lifeless> the reason they want this is so that when there is a fault, they know all the deps precisely with no room for skew
[05:48] <lifeless> and for complete isolation between concurrently installed things on the same machine
[05:49] <wgrant> Yes, but it makes everyone else sick.
[05:49] <lifeless> I don't completely buy the value of this - apport does a pretty tremendous job
[05:49] <SpamapS> ridiculous.. they're including libjpeg, libpng, zlib
[05:49] <SpamapS> things that have been on every system for a long, long time.
[05:50] <lifeless> yes
[05:50] <lifeless> its not because they have to
[05:50] <lifeless> its because they want to
[05:50] <lifeless> the numeric analysis is something like:
[05:50] <wgrant> They *think* they want to.
[05:50] <lifeless>  - if we get 10billion downloads
[05:51] <lifeless>   - we'll save 5 hours diagnosis due to folk with zlib1e which had a buffer overflow
[05:51] <lifeless> wgrant: they want to. No thinking involved.
[05:51] <SpamapS> They're thinking in faster moving terms than most people actually move. Its valid for desktop software.. people see "there are updates" and they tend to update. Not so much for the server side.
[05:51] <lifeless> no
[05:51] <lifeless> its not about how fast things move
[05:51] <lifeless> its about reproducability and support overhead
[05:52] <SpamapS> Which is funny, thats why we do what we do. ;)
[05:52] <lifeless> I got into this fairly deeply @ LCA last year
[05:52] <SpamapS> But they're doing it by assembling a mini-distro around their product.
[05:52] <lifeless> none of it attributable, of course
[05:52] <SpamapS> which is actually totally awesome.. if you, the user, trust them to keep all those deps in top shape.
[05:55] <SpamapS> lifeless: we didn't really solve this at UDS.. too many distractions.. its the same old problem.
[05:55] <wgrant> SpamapS: Does the solution actually need discussion?
[05:56] <wgrant> I don't think there's any option but to declare their strategy as being utterly crackful, ignore it, and port their build system to use real system libraries.
[05:58] <SpamapS> wgrant: 45 is a drop in the bucket. Hudson has over 1000 java libraries that aren't packaged. This keeps coming up... upstreams don't build on top of distro's, they build on top of libraries.
[05:59] <wgrant> SpamapS: But Hudson at least doesn't bundle modified copies of its libraries, right?
[05:59] <SpamapS> modified, no, selected versions, yes absolutely.
[06:00] <SpamapS> to me, these upstreams have done a lot of our work for us and we throw it away because we only want to have one version of everything to support.
[06:03] <StevenK> Surely Hudson isn't 1,000? 200, 300, sure, but 1k?
[06:03] <wgrant> Doing a Launchpad and specifying a known-good set of unpackaged versions is one thing.
[06:04] <wgrant> But bundling libraries... uh... kill them.
[06:06] <StevenK> Didn't dpkg used to statically link against zlib in the deep dark ages?
[06:24] <StevenK> lifeless: Can you remind me of a discussion we had at UDS? You mentioned using btrfs on the Hudson build slaves -- that one I remember, but there was another suggestion
[06:57] <SpamapS> StevenK: talk to JamesPage about it.. 1000 was the number of libs hudson needed to download from maven to build *after* it cross referenced with everything debian had packaged.
[06:58] <lifeless> SpamapS: well I've argued (successfully I think) that we need N libraries concurrently for java and python
[06:59] <lifeless> StevenK: errr I didn't suggest btrfs on the build slaves.
[06:59] <lifeless> StevenK: I suggested an RT ticket asking for bigger images.
[06:59] <lifeless> StevenK: our you can roll your own
[07:01] <StevenK> lifeless: Actually, they're 20GiB, just the / is only 1.5GiB
[07:02] <lifeless> StevenK: yes, but thats the partition you need bigger to install java etc, right ?
[07:02] <StevenK> Currently it fits with about 50MiB to spare
[07:02] <lifeless> EMEEP
[07:03] <StevenK> Current devel slave has 120MiB, that will drop to roughly 50 over the course of the build
[07:05] <StevenK> lifeless: Too close, and I should repack?
[07:06] <lifeless> dunno about you but my sysadmin senses are screaming
[07:07]  * StevenK ponders an EBS store for persistant branches
[07:16] <StevenK> steven@hudson:/tmp$ ls -1 | wc -l
[07:16] <StevenK> 3589
[07:16]  * StevenK sobs
[07:54] <StevenK> lp.soyuz.windmill.tests.test_ppainlineedit fails on db-devel again ... How odd
[07:55] <wgrant> Huh.
[07:55] <wgrant> I don't recall that failing within the last few months.
[07:56] <StevenK> And has now failed twice in 2 builds, but not in devel
[07:58] <wgrant> And not in Hudson.
[08:04] <StevenK> Indeed
[08:04] <StevenK> Sounds like a reason to switch to me
[08:04] <StevenK> :-P
[08:12] <bac> hi wgrant, you still around?
[08:14] <wgrant> bac: Hi.
[08:14] <bac> wgrant: you know much about the inner workings of merge proposals?
[08:14] <wgrant> bac: Not a huge amount, but possibly enough.
[08:14] <bac> wgrant: i've noticed rollback branches don't get their status updated to 'merged'
[08:15] <bac> and they clutter up +activereviews until cleaned up
[08:15] <wgrant> Do you have a current example?
[08:15] <bac> https://code.launchpad.net/~bac/launchpad/rollback-11801/+merge/39422
[08:15] <lifeless> bac: uhm
[08:15] <bac> wgrant: unfortunately i spoiled it by updating the status manually
[08:15] <lifeless> bac: that means one of two things
[08:15] <lifeless> bac: it wasn't actually landed previous
[08:16] <lifeless> bac: or the scanner glitched at the same time
[08:16] <bac> https://code.launchpad.net/~mars/launchpad/rollback-11586-and-11588/+merge/36212
[08:16] <lifeless> bac: launchpad itself doesn't know about the rollback stuff
[08:16] <bac> lifeless: well, there is another
[08:16] <wgrant> Hm.
[08:16] <bac> i know the first actually landed
[08:16] <bac> i haven't checked on the second
[08:16] <wgrant> https://code.launchpad.net/~bac/launchpad/rollback-11801
[08:16] <wgrant> It's being scanned.
[08:16] <wgrant> Which is a little odd.
[08:16] <bac> ah, so it is
[08:16] <bac> for 10 days now
[08:17] <StevenK> lifeless: Interestingly, the deployment page says bad for r11825, but the bug is marked 'qa-untestable'
[08:17] <lifeless> see under scanner glitch
[08:17] <bac> score one for lifeless
[08:17] <wgrant> Indeed.
[08:17] <lifeless> StevenK: https://bugs.edge.launchpad.net/qa-tagger/+bug/670792
[08:17] <_mup_> Bug #670792: handling of bad-commit- tags needs improving <qa-tagger:Incomplete> <https://launchpad.net/bugs/670792>
[08:17] <wgrant> These non-edge URLs are strange and foreign :(
[08:17] <StevenK> Haha
[08:17] <StevenK> Blame lifeless
[08:18] <bac> wgrant: can i do anything to kick the scanner for that branch?
[08:18] <lifeless> StevenK: its bad because of the bad-commit-REVNO tag (which is how we mark that 11825 was faulty)
[08:18] <wgrant> bac: Not sure.
[08:18] <wgrant> I don't really know how the scanner works these days.
[08:19] <bac> wgrant: if it is a one-off i'm not concerned.  but i saw two that appeared to be in the same situation
[08:19] <wgrant> That is indeed concerning.
[08:20] <bac> lifeless: i see your comment on the MP
[08:20] <bac> lifeless: i didn't just now land it, i did it the day of the problem
[08:20] <bac> just updated the status of the MP today
[08:21] <lifeless> grah
[08:21] <lifeless> ok
[08:21] <lifeless> I wouldn't do that
[08:21] <bac> what would you do?
[08:21] <lifeless> because the metadata will be faulty about the rev it was merged into
[08:21] <lifeless> I would look to see why it hadn't updated and get that fixed ;)
[08:21] <bac> mark the MP rejected?
[08:23] <lifeless> no
[08:23] <lifeless> so, when you look at the branch and its scanning
[08:23] <lifeless> thats an issue
[08:23] <lifeless> look into that
[08:23] <bac> lifeless: i did not see the branch was scanning
[08:23] <lifeless> when its fixed, lp will mark the mp appropriately.
[08:23] <lifeless> bac: right, I know :). I'm saying what I would have done was to look around for clues.
[08:24] <lifeless> one of the places I'd look would be the branch page.
[08:26] <bac> lifeless: so would resetting the MP back to 'approved' be inappropriate now?
[08:27] <lifeless> bac: if the branch is still scanning, setting it back to approved is probably best.
[08:27] <lifeless> OTOH
[08:28] <bac> and then trying to get that scanner process kicked...
[08:28] <lifeless> the main thing I'm concerned about is figuring out what happened, ensuring there is a bug that when fixed will prevent it happening again.
[08:30] <bac> lifeless: ok, i'll change the MP back to 'approved' and open a bug referencing that branch but not request anything be done about the stuck scanner.  thanks.
[08:30] <wgrant> I'm not sure that it will be marked merged once it does scan, since the rev won't be new in devel. But I guess we'll see.
[08:31] <bac> wgrant, lifeless: fwiw the other example i cited is a rollback branch that never landed so it was a bad example.
[08:31] <lifeless> what pages does the recipe ui stuff turn up on ?
[08:32] <wgrant> lifeless: Every branch page.
[08:32] <lifeless> time to see if the flag really works
[08:32] <wgrant> lifeless: There's a "Related source package recipes" section just below the "Branch merges" section.
[08:46] <bac> ok
[08:46] <bac> er
[08:48] <adeuring> good morning
[08:54] <bac> hi adeuring
[08:54] <adeuring> hi bac!
[09:00] <mrevell> Morning
[09:10] <bac> hi mrevell
[09:11] <mrevell> hey bac, welcome back, heh
[09:21] <jml> hello
[09:22] <lifeless> jml: your scopes rules are present in production; both patches are in stable and qa'd - we just need to qa up to them and they will go live.
[09:25] <jml> lifeless: sweet.
[09:25] <jml> lifeless: I guess I need to populate the team, delete the edge rule and do comms
[09:25] <jml> anything else?
[09:28] <lifeless> yes. Synced with the revs being deployed of course.
[09:29] <lifeless> we probably want to do a beta program in-app too
[09:29] <lifeless> a-la gmail labs
[09:30] <jml> lifeless: "here are our beta features, sign up to them?"
[09:30] <lifeless> yeah
[09:31] <jml> lifeless: I think that would be an excellent thing.
[09:31] <wgrant> Are we going to have a lot of features for which that would be relevant, though?
[09:31] <lifeless> wgrant: we have 3 concurrent at the moment
[09:32] <jml> wgrant: I'm guessing so.
[09:32] <wgrant> Do we?
[09:32] <lifeless> wgrant: recipes, merge queues, subscribe-to-search
[09:33] <wgrant> Hm, true.
[09:34] <lifeless> oh and derived-series ui
[09:35] <jml> lifeless: https://code.edge.launchpad.net/~lifeless/launchpad/databasefixture/+merge/38694 – what's the actual state of that MP?
[09:35] <lifeless> jml: in principle landable
[09:36] <lifeless> it bounced with some glitches that I think I've fixed.
[09:36] <lifeless> if you want to give it a spin, please do.
[09:37] <jml> lifeless: ok. I probably won't today.
[09:48]  * jml away for a bit
[11:06] <deryck> Morning, all.
[11:30] <jelmer> wgrant: Argh, it looks like your branch is cursed or something.
[11:33] <wgrant> jelmer: Yeah, buildbot seems to have a failure that Hudson does not.
[11:37] <wgrant> Still, this is just two failures so far. One of my previous batch took 10 attempts. So not that bad.
[12:09] <mars> good morning
[12:15] <jtv> hi mars
[13:03] <mars> how is it possible that merely importing a TestCase subclass that defines 'layer = None' causes the Zope testrunner to barf?
[13:09] <jml> mars: importing a TestCase makes it discoverabl
[13:09] <jml> e
[13:10] <mars> jml, that appears so.  Now I'm trying to figure out how other people actually manage to use the subclass without it blowing up on import
[13:15] <mars> 'bin/py -m pdb bin/test lp.testing.tests' at least gives me a debugger
[13:24] <jml> do we have a way to mass add people to a team?
[13:25] <abentley> jml: why are you creating a new team for recipes instead of making them available to all members of the beta team as we have until now?
[13:28] <benji> jml: I don't know if it exposes adding people to teams, but a launchpadlib script suggests itself to me
[13:28] <jml> abentley: it seems a good way to try having a beta programme specific to a feature
[13:28] <jml> benji: yeah, that would work. lots of roundtrips, but it would work & probably be faster than manual data entry.
[13:29] <abentley> jml: I don't think we should take the feature away from people who already had the option of using it, even if they hadn't used it yet.
[13:29] <abentley> jml: So please make the beta team a member of the recipe team :-)
[13:33] <jml> the real spanner-in-the-works is that we don't yet have a way in-app of inviting people to join the beta
[13:35] <mars> jml, that means we have a chance to do it well
[13:35] <mars> jml, btw, turns out I had to put a 'del YUIUnitTestCase' at the end of the file, so the testrunner would not discover the class.
[13:36] <jml> mars: is that what other modules do?
[13:36] <abentley> jml: That is a serious deficiency.  People can join the team if they want, I suppose, but the requirement to do so will be new and surprising.
[13:36] <jml> abentley: well, only surprising if they don't read the blog.
[13:37] <abentley> jml: Who reads the blog?
[13:37] <jml> abentley: I think Francis does
[13:37] <jml> abentley: maybe some others.
[13:37] <mars> jml, no, they define the test_suite() function in the module, and explicitly build the suite contents.  Same effect though - the module imports are not implicitly included
[13:38] <jml> mars: how does YUTC blow up?
[13:39] <mars> jml, deep in the zope testrunner, it trys to look up 'layer.__module__'.  YUTC sets that attribute as layers = None, so it raises a TypeError
[13:39] <jml> mars: why not just delete that from YUTC?
[13:40] <mars> jml, I assume it was put there for good purpose, perhaps as a subtle signal to the programmer that they need to define it
[13:40] <mars> and I am writing a test for the class
[13:41] <mars> which does not use the class in the standard way
[13:41] <jml> mars: if it was put there for good purpose, then a test will fail if you delete it :)
[13:41] <mars> interesting
[13:41] <mars> well, worth a shot!
[13:42]  * jml gets some thinking juice
[13:57] <mars> jml, so this is fun - you can't import YUTC, because it uses layers.  But YUTC can't set layer=anything, because you can't import canonical.testing.layers into lp.testing (circular import maybe)
[13:57] <jml> mars: that *is* fun.
[13:57] <jml> but I have to go to a meeting
[13:57] <mars> YUTC uses layers because it inherits from lp.testing.TestCaseWithFactory, which uses layers
[13:57] <mars> jml, :)
[13:59] <mars> and TestCaseWithFactory needs layer=FunctionalLayer, but again, it can't set it, because lp.testing can't import canonical.testing.layers.
[14:15] <deryck> mars, hi.  Working on yui 3.2 upgrade in lp and have questions about something weird.  you have time to chat?
[14:16] <mars> deryck, sure
[14:16] <mars> deryck, how can I help?
[14:16] <deryck> mars, so I see lots of 404s in console for css files.  I can't find what's trying to load them.  turning devmode off I see 404 for yui combo? urls pointing to yahoo's site....
[14:17] <deryck> mars, I'm wondering if I have to explicitly turn of combo loading attempts?
[14:19] <mars> deryck, well, for starters, we should not be going off-site for anything.  Is this in launchpad.dev?
[14:19] <deryck> mars, yes
[14:19] <deryck> mars, and only going off site when not in devmode.
[14:20] <deryck> mars, I toggled out of devmode just to see if the 404s were devmode specific and maybe linked in a devmode block I couldn't find.
[14:25] <mars> deryck, maybe you could hack the page template to show what the loader is doing - debug output
[14:25] <deryck> ok
[14:26] <mars> deryck, have you ever done that before?
[14:26] <deryck> mars, yes, I have.  trying to recall how....
[14:27] <mars> oh, interesting
[14:28] <mars> deryck, reading the YUI Config object docs
[14:28] <mars> you can set a custom filter: attribute
[14:28] <mars> myFilter: {
[14:28] <mars> 'searchExp': "-min\\.js",
[14:28] <mars> 'replaceStr': "-debug.js"
[14:28] <mars> }
[14:28] <mars> which means you could do:
[14:28] <mars> debugLoader: {
[14:29] <mars> 'searchExp': "loader-.*js",
[14:29] <mars> 'replaceStr': "loader-debug.js"}
[14:30] <deryck> ah, ok.  That's not what I'm thinking of.  I thought you told me something similar before, though, about loader debugging.
[14:30] <mars> deryck, in devmode, you can look at base-template-macros.pt and replace the loader.js line directly
[14:31] <deryck> ok
[14:37] <deryck> mars, found it.  http://pastebin.ubuntu.com/526338/
[14:40] <mars> deryck, that was an easy fix
[14:40] <deryck> mars, indeed.  and unrelated to my other issues, but it clears up the errors in my console better :-)
[14:40] <deryck> mars, thanks for the help!
[14:40] <mars> no problem
[14:40] <mars> glad I could help
[15:54] <jml> jelmer: hi
[15:54] <jelmer> jml: hi
[15:54] <jml> jelmer: what happens when you run ./bin/test -cvv test_builder?
[15:55] <jml> sinzui: hello
[15:56] <jml> sinzui: I saw that you removed a bunch of glob imports recently. If I remove one from c.l.database.__init__ manually, will that mess with your automated tools
[15:56] <jelmer> jml: I get a test module import failure for lp.buildmaster.tests.test_builder, and it runs the test: lp.soyuz.browser.tests.test_builder_views.TestBuilderEditView.test_posting_form_doesnt_call_slave_xmlrpc
[15:56] <jml> jelmer: cool, thanks. that's what I get too. I hate Python.
[15:58] <jelmer> jml: I usually just run with -t  to avoid this sort of thing
[15:58] <jml> jelmer: :(
[15:59] <jelmer> jml: I agree.
[16:10] <deryck> rockstar, ping
[16:11] <rockstar> deryck, pong
[16:11] <deryck> rockstar, hey, dude.  Getting close on lazr-js actually.  http://pastebin.ubuntu.com/526387/
[16:13] <rockstar> deryck, is that working?  My sed of s/yui/yui3/ made things really broken.
[16:13] <deryck> rockstar, yeah, so far.  notice it's template and lp js changes.  if one without the other, it would break.
[16:14] <deryck> rockstar, I'm just reloading pages manually and making changes until it works.
[16:15] <rockstar> deryck, I thought the picker had WAY more references to creating items called yui-* than that.  The picker's working now?
[16:16] <deryck> rockstar, yes, I'm pretty sure.  I'm in a debugger session right now with the editor before I can confirm for sure.
[16:18] <rockstar> deryck, cool. I was wondering if there'd be more picking and choosing of which s/yui/yui3/ stuff to change.
[16:25] <deryck> rockstar, is there a yui lint tool of any sort?  To check a file for yui 3 vs 3.2 isms?
[16:26] <rockstar> deryck, not that I know of.
[16:27] <deryck> suck it
[16:31] <rockstar> deryck, may I suggest that you file bugs liberally on the javascript oddities you find in there?  Anything that makes the upgrade hard.
[16:32] <deryck> rockstar, sure.  just trying to get it done now.  but will certainly do it after it's good.
[16:32] <rockstar> Takes notes then.  :)
[16:33] <rockstar> deryck, I'm starting to wonder if there's a yak in our javascript anywhere.
[16:34] <deryck> rockstar, we're not consistent in how we write it
[16:34] <deryck> zope widgets, hand js, manual sniffing of classes
[16:35] <rockstar> deryck, yeah, I'd like to write a guide on writing javascript for the dev wiki.  I need to get around to that soon.
[16:46] <jml> jkakar: hello hello
[16:47] <jkakar> jml: Hi!
[16:48] <jml> jelmer: are there doctests that test the uploadpolicy?
[16:48] <jml> jelmer: the answer is 'yes'.
[16:48] <jelmer> jml: yes, and there are also some unit tests I believe.
[16:49] <jelmer> heh
[17:05] <deryck> rockstar, pickers do work for me.  But icons that launch overlays are now form buttons.  I guess I'm missing some CSS rules somewhere.
[17:06] <rockstar> deryck, something with activators, I suspect.
[17:06] <deryck> yeah
[17:06] <deryck> or actually, it may be where we didn't use the activator
[17:08] <rockstar> deryck, ah, okay, because I thought I had fixed that.
[17:19] <jml> jelmer: what about ./bin/test -cvvt nascentupload-closing-bugs.txt?
[17:21] <jelmer> jml: import failures in two mailman tests, but other than that it seems to work fine
[17:21] <jml> jelmer: I get this: http://paste.ubuntu.com/526452/. Guess I'll make clean, schema etc.
[17:22] <jelmer> hmm, interesting. is that current devel?
[17:24] <deryck> rockstar, got the icons back.  needed yui3-skin-sam for the body class, not yui-skin-sam.
[17:26] <rockstar> deryck, ugh.  That scares me a bit.  I suspect you'll want to check a large sampling of pages to make sure that doesn't break anything.
[17:26] <deryck> rockstar, yeah, I am.  Doing all the manual checks first, then back to re-enabling windmill tests.
[17:27] <jml> jelmer: stable.
[17:32] <abentley> rockstar: where was that custom description field, again?
[17:32] <rockstar> lp.services.fields I believe.
[17:33]  * jelmer tries stable as well
[17:33] <abentley> rockstar: thanks.
[17:37] <deryck> rockstar, so i don't see anything but I think'll I'll use both classes, i.e. "yui3-skin-sam yui-skin-sam" just to cover us.  Sound reasonable?
[17:37] <rockstar> deryck, if you don't see anything, then let's not even worry about it.
[17:37] <rockstar> We could complicate things by using both classes.
[17:37] <deryck> rockstar, ok
[17:45] <jelmer> jml: works in stable too, no import errors
[17:45] <jml> jelmer: ok, thanks.
[17:45] <jml> jelmer: make clean; make schema seemed to sort it out for me
[18:39] <jml> g'night all
[19:01] <abentley> rockstar: chat?
[19:47] <rockstar> abentley, sure!
[19:48] <abentley> rockstar: hop in!