LPCIBot | Project devel build #1,014: STILL FAILING in 3 hr 58 min: https://lpci.wedontsleep.org/job/devel/1014/ | 00:03 |
---|---|---|
mwhudson | jelmer: maybe we don't need new code import mails now? | 01:35 |
wgrant | Heh. | 01:37 |
mwhudson | not that i really mind, it's not like they take long to dispatch | 01:39 |
cody-somerville | mwhudson, they're probably going to give me Carpal Tunnel Syndrome though from all the clicking needed to delete them :P | 02:26 |
nigelb | Good morning! | 02:36 |
wgrant | Evening nigelb. | 02:36 |
nigelb | cody-somerville: heh, automate with selenium! | 02:36 |
nigelb | wgrant: I'm taking a shot at TDD today. Writing tests first. I hope that doesn't mean more headdesking :) | 02:36 |
wgrant | nigelb: It gets better :) | 02:37 |
wgrant | nigelb: Particularly when they aren't doctests. | 02:37 |
nigelb | Yeah, I'm wondering why StevenK's deletion spree doesn't delete doctests yet :D | 02:38 |
wgrant | He spent a week deleting lots of doctests a while ago. | 02:39 |
nigelb | So there is hope. | 02:40 |
nigelb | btw, lifeless is proud daddy yet? :) | 02:40 |
wgrant | How was about last night, so I suspect not, but have not heard either way. | 02:42 |
nigelb | Ah, ok. | 02:43 |
=== jtv changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: jtv | Critical bugs: 244 - 0:[#######=]:256 | ||
nigelb | And I've picked up bug 684548 | 02:53 |
_mup_ | Bug #684548: Display Edit Patch Flag More Prominently <easy> <lp-bugs> <ui> <Launchpad itself:Triaged by nigelbabu> < https://launchpad.net/bugs/684548 > | 02:53 |
nigelb | Morning jtv! I shall be troubling you in a bit. | 02:53 |
* jtv rushes to change the topic :) | 02:53 | |
nigelb | heh | 02:54 |
=== pjdc_ is now known as pjdc | ||
nigelb | Should. Stop. Looking. At. Ivanka's. Pictures. | 02:58 |
LPCIBot | Project devel build #1,015: STILL FAILING in 3 hr 58 min: https://lpci.wedontsleep.org/job/devel/1015/ | 04:01 |
StevenK | Text conflict in test_notification between stable and db-devel. Orsum. | 04:18 |
adeuring | good morning | 04:40 |
adeuring | wgrant: could you help me with qa for r13826? It's too early in the morning for me to even understand the related bug... problem is: I am a bit desperate to deploy a revision >= 13822 | 04:44 |
wgrant | adeuring: It's been broken for nearly 18 months; is it really urgent? | 04:57 |
adeuring | wgrant: yes, unfortunately | 04:57 |
wgrant | Intriguing. | 04:57 |
wgrant | Looking. | 04:57 |
wgrant | Ah, need to resolve the conflict first, since DF runs db-devel... | 04:58 |
wgrant | jtv: Are you still using dogfood? | 05:07 |
jtv | wgrant: no, I use a piece of cloth now. It doesn't absorb as well but it muffles more effectively. | 05:08 |
wgrant | Hah. | 05:09 |
jtv | So no. | 05:10 |
jtv | Meanwhile, I see we have a wonderful merge conflict. | 05:10 |
wgrant | I'm pushing a branch for that. | 05:10 |
jtv | Cool | 05:11 |
wgrant | But db-devel hasn't been merged in a while, so my 256kbps upstream is being painful... | 05:11 |
wgrant | adeuring: Hmm, this revision may be bad. We'll see shortly. | 05:19 |
adeuring | ok... | 05:19 |
wgrant | Well, maybe not so shortly, since mawson is mawson. | 05:22 |
wgrant | jtv: http://librarian.dogfood.launchpad.net/71107310/bRhzSbgpU9MP0WU1BbgvqBNgitQ.txt is worrying. | 05:24 |
wgrant | jtv: The DSDJ runner can't check packageset membership... | 05:24 |
wgrant | I wouldn't think that would be a new thing. | 05:25 |
jtv | That sounds familiar somehow. | 05:25 |
jtv | I would suspect that a cowboyed privilege dropped out of the db without the permanent privilege making it in. | 05:26 |
jtv | Either because security.py wasn't run, or it failed, or it did not contain that required permission. | 05:26 |
wgrant | There is no permanent privilege. | 05:27 |
wgrant | I just reran security.py and checked security.conf :( | 05:27 |
wgrant | granted select on flatpackagesetinclusion and packagesetsources, and it works. | 05:27 |
wgrant | And packagesetgroup, it seems. | 05:29 |
wgrant | Does anybody know how to use Thunderbird's account creation wizard? | 05:41 |
wgrant | They've removed manual setup, and I can't work out how to use an account on a provider that they don't know about. | 05:41 |
nigelb | Spend 5 minutes why launchpad.dev wasn't working. Sigh. | 05:45 |
nigelb | *debugging | 05:45 |
wgrant | Was it running? | 05:46 |
nigelb | Yeah, https | 05:46 |
nigelb | I can do a create_initilized_view for all the portlets too? | 05:47 |
wgrant | In general that should work. | 05:47 |
nigelb | tdd is weird, at last at first. | 05:47 |
wgrant | For some it won't. | 05:47 |
nigelb | *least | 05:47 |
wgrant | adeuring: I think that rev is good. | 05:53 |
wgrant | Which means we can deploy. | 05:53 |
adeuring | wgrant: great, thanks for your checks! | 05:53 |
wgrant | Sorry it took so long. High startup time and lots of checks to do. | 05:53 |
nigelb | so, I create a bug. | 06:06 |
nigelb | I add an attachment | 06:06 |
nigelb | now, how do I get the comment of that attachment? | 06:06 |
nigelb | (I feel more lost writing tests first) | 06:08 |
wgrant | nigelb: BugAttachment.message | 06:13 |
nigelb | ah | 06:13 |
nigelb | need to look at models deeper. | 06:13 |
wgrant | nigelb: I often find it's clearer to check the DB structure. | 06:14 |
wgrant | \d bugattachment | 06:14 |
nigelb | I'm not well versed with postgres enough.' | 06:15 |
nigelb | yet. | 06:15 |
wgrant | psql launchpad_dev | 06:15 |
wgrant | \d bugattachment | 06:15 |
wgrant | Done :) | 06:15 |
nigelb | wow | 06:15 |
nigelb | I did not know about psql. | 06:16 |
nigelb | This, is neat. | 06:16 |
jtv | nigelb: I told you that exact same trick! | 06:28 |
=== jtv is now known as jtv-eat | ||
nigelb | jtv-eat: well, I didn't know how to use it correctly :) | 06:31 |
StevenK | psql is love | 06:35 |
nigelb | hehe, so with tests first, I can head desk first | 06:37 |
nigelb | and then when I fix it, there's more joy | 06:37 |
nigelb | Gah, I can't do this apparently. | 06:37 |
nigelb | html = create_initialized_view( self.bugattachment.message, name='+index', )() | 06:38 |
wgrant | nigelb: Why not? | 06:40 |
wgrant | nigelb: It's odd syntax, but it should work. | 06:40 |
wgrant | Oh, hmm. | 06:40 |
wgrant | There's no +index for Message itself. | 06:40 |
nigelb | ah. | 06:41 |
wgrant | You'll need to get the BugMessage. | 06:41 |
wgrant | (Message just represents an email in LP. May be on a bug, merge proposal, answer, mailing list...) | 06:41 |
nigelb | oh. | 06:42 |
nigelb | ForbiddenAttribute: ('BugMessage', <Message at 0xf402b0c id=51>) | 06:46 |
wgrant | getUtility(IBugMessageSet).getByBugAndMessage(some_bug, some_message) | 06:48 |
nigelb | hehe | 07:09 |
nigelb | awesome traceback | 07:09 |
wgrant | Oh? | 07:09 |
nigelb | http://dpaste.com/605694/ | 07:09 |
nigelb | wgrant: Thoughts? :) | 07:17 |
wgrant | nigelb: Hm, that's pretty nice. | 07:17 |
nigelb | Haha | 07:18 |
wgrant | nigelb: It looks like you're calling it with a bugattachment, not bugattachment.message. | 07:18 |
nigelb | aaah. | 07:18 |
nigelb | Sigh. | 07:22 |
nigelb | http://dpaste.com/605703/ | 07:22 |
nigelb | Why do I end up wasting more time than finding a fix in tests :| | 07:24 |
wgrant | Ah, it looks like you actually want BugComment:+index, not BugMessage:+index. And BugComment creation is not for the faint of heart :/ | 07:25 |
wgrant | You're possibly better just rendering BugTask:+index. | 07:25 |
nigelb | Well, the problem is the edit shows up in a portlet as wwell. | 07:26 |
nigelb | I don't watch to get that. | 07:26 |
nigelb | OR, I'll have to count the number of appearances. | 07:27 |
nigelb | Or add a class to the find and use soupmacheers | 07:27 |
wgrant | Or you can use BeautifulSoup/soupmatcher to look only in the comment list. | 07:27 |
wgrant | There should be an existing class/ID you can use. | 07:27 |
nigelb | Ah. | 07:27 |
nigelb | Ah, we deployed. | 07:29 |
* nigelb checks his fix. | 07:29 | |
wgrant | We did. | 07:29 |
wgrant | It looks good. | 07:29 |
nigelb | \o/ | 07:29 |
LPCIBot | Project devel build #1,016: STILL FAILING in 3 hr 55 min: https://lpci.wedontsleep.org/job/devel/1016/ | 07:57 |
nigelb | I have to agree with bigjools, soupmatches is quite rad. | 08:06 |
mrevell | Hello | 08:11 |
nigelb | Hello mrevell! Good morning :) | 08:13 |
mrevell | Hey nigelb! | 08:14 |
rvba | nigelb: I'm sure you will come to love soupmatchers ;) | 08:15 |
nigelb | rvba: Heh, already loving it! | 08:15 |
rvba | nigelb: ;) | 08:15 |
=== almaisan-away is now known as al-maisan | ||
nigelb | heh, I summoned bigjools? :P | 08:16 |
bigjools | I was rubbed | 08:16 |
nigelb | xkcd ruined that reference for me. | 08:17 |
nigelb | Anyway, I was mentioning how I like soupmatchers :) | 08:19 |
rvba | jtv: Could you please have a look at this (tiny) MP when you get a chance: https://code.launchpad.net/~rvb/launchpad/masscreate-bug-835040/+merge/73495 ? | 09:28 |
nigelb | wgrant: GAH. | 09:54 |
nigelb | I'm doing something wrong, I'm getting hideous tracebacks. | 09:54 |
jtv | wgrant: while you're being distracted, can I interest you in reviewing my DB privilege fix? https://code.launchpad.net/~jtv/launchpad/bug-837893/+merge/73502 | 09:55 |
=== jtv changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 244 - 0:[#######=]:256 | ||
nigelb | My nightmares with tests continue. Sigh. | 09:55 |
jtv | Or I could ask danilos, who is OCR'ing today. | 09:56 |
danilos | jtv, oh, he is? :) | 09:56 |
jtv | Apparently. | 09:56 |
jtv | At least on Gregorian Wednesday. | 09:56 |
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: danilos | Critical bugs: 244 - 0:[#######=]:256 | ||
jtv | :-) | 09:56 |
nigelb | jtv: You're marked under Europe? HA | 09:57 |
jtv | I'm sort of inbetween. | 09:58 |
danilos | jtv, r=me | 09:58 |
jtv | thanks danilos! | 09:58 |
danilos | jtv, which one of us? | 09:58 |
jtv | wgrant: it's done—you go help nigel or something. :) | 09:58 |
jtv | for danilo in danilos: danilo.thank() | 09:58 |
nigelb | heh | 09:58 |
nigelb | if I create a bug with factory, I can call its +index right? | 09:59 |
* nigelb checks zcml | 09:59 | |
nigelb | oh, I need to call the +index of the bugtask? | 10:00 |
wgrant | nigelb: Bug has no +index, right. | 10:00 |
wgrant | It redirects to default_bugtask's +index. | 10:00 |
nigelb | so, create_initialized_view(self.bug.default_bugtask, name='+index', )() | 10:01 |
nigelb | I got a scary traceback for that one. | 10:01 |
nigelb | http://dpaste.com/605821/ | 10:02 |
nigelb | I wonder if this has something do with layer = LaunchpadFunctionalLayer | 10:02 |
nigelb | I think I've mostly used DatabaseFunctionalLayer before. | 10:03 |
jtv | danilos: you'll notice I left one review on the queue. It looks like nobody's worked on it but it's got other reviewers' names on it. | 10:04 |
rvba | jtv: thanks for the review mon cher. | 10:04 |
jtv | rvba: ton /quoi/? | 10:04 |
rvba | Très cher jtv ;) | 10:04 |
bigjools | le horreur | 10:04 |
jtv | I thought I was doing this work at quite a reasonable rate. | 10:04 |
bigjools | jtv is actually cheap | 10:05 |
jtv | Oh now that's rich. | 10:05 |
jtv | And is it le horreur or l'horreur? | 10:05 |
rvba | hehe | 10:05 |
rvba | "l'horreur" indeed. | 10:05 |
rvba | FTR this "cher" was "dear". | 10:05 |
jtv | Funnily enough, "dear" can have both meanings in English. | 10:06 |
bigjools | I was enunciating all the syllables | 10:06 |
jtv | (although "expensive" is somewhat archaic) | 10:06 |
jtv | bigjools: I see. Maybe you should enunciate them twice in succession: le horreur, le horreur | 10:06 |
jtv | Wasn't until that bit in the book that I realized that the film was based on it. | 10:07 |
jtv | “le horreur, sans blague”? | 10:09 |
rvba | nigelb: I /think/ the problem you have is due to the fact that you don't pass any 'principal' to create_initialized_view. | 10:10 |
nigelb | rvba: principal being a person? | 10:11 |
rvba | nigelb: yes. | 10:11 |
wgrant | rvba, nigelb: It defaults to anonymous. | 10:11 |
wgrant | This is possibly another view that doesn't like being instantiated directly :/ | 10:11 |
wgrant | It's a fairly horrific view. | 10:11 |
nigelb | I tend to pick the fun ones, yeah. | 10:12 |
rvba | I'm pretty sure I had this exact same problem. | 10:12 |
nigelb | Someday I'll learn how to do this right :| | 10:12 |
nigelb | Ha, solution? | 10:12 |
rvba | nigelb: please try principal=factory.makePerson() | 10:13 |
nigelb | mmm | 10:15 |
nigelb | NoCanonicalUrl: No url for None because None broke the chain. | 10:15 |
rvba | nigelb: Looks like something is trying to redirect to None. | 10:19 |
nigelb | rvba: Oh. | 10:20 |
nigelb | That's wweird :| | 10:20 |
nigelb | I should have started with fixing the bug isntead of tests | 10:21 |
danilos | jtv, on line 84 of the diff on https://code.launchpad.net/~jtv/launchpad/bug-834388/+merge/73483, "removables" is not a ResultSet, right? | 10:21 |
nigelb | I've spend 8 hours and I've nothing to show for it, except a broken test :) | 10:21 |
jtv | danilos: no, it's a set that's first painstakingly constructed by hand. :/ | 10:22 |
jtv | Sorry, list! | 10:22 |
jtv | Not set. | 10:22 |
danilos | jtv, ok, fair enough (btw, I am surprised you didn't know about resultset.set() :P) | 10:23 |
jtv | Well, now I do! | 10:23 |
rvba | nigelb: It's a good habit to start with the tests. And its absolutely normal to have trouble to write tests at first. | 10:23 |
jtv | I have to leave very very soon btw | 10:23 |
danilos | jtv, sure, I am almost done with this second review | 10:24 |
jtv | Great, thanks | 10:24 |
danilos | jtv, just one more non-critical question, why the changes to logger statements? | 10:24 |
jtv | They annoyed me. | 10:24 |
jtv | Why have special provision for debug | 10:24 |
jtv | but none for the other log levels? | 10:24 |
jtv | Someone's going to do a logger.info or a self.warn and find it doesn't exist. | 10:25 |
jtv | Or do you mean the string interpolation? | 10:25 |
jtv | Apparently the "proper" way to do it is logger.info("format %s string", variable) | 10:25 |
jtv | Not logger.info("format %s string" % variable) | 10:25 |
nigelb | Hrm, I wonder what I do next. | 10:26 |
nigelb | I can't get the view to get a test. My test is supposed to just check the existence of a URL. | 10:26 |
G | btw guys, what is the best way to find out what handles/generates a particular page? | 10:26 |
nigelb | configure.zcml | 10:27 |
nigelb | it will be inside browser folder | 10:27 |
danilos | jtv, I meant both, the fact that logger.info considers the first string a format string doesn't make it proper in my book, but I don't care either way :) | 10:29 |
G | nigelb: ah ha, thanks! :) | 10:29 |
nigelb | G: :) | 10:29 |
danilos | jtv, it'd make sense if it was something like structured() or sqlvalues() where stuff needs to be interpolated some how | 10:29 |
danilos | s/ // | 10:29 |
jtv | danilos: I never bothered to ask really, it just allows for slightly better formatting. :) | 10:29 |
danilos | jtv, heh, sure, formatting is a good argument | 10:30 |
danilos | jtv, anyway, r=me already, but I assume you know what will this do for performance :) | 10:30 |
jtv | thanks! | 10:30 |
jtv | It'll improve the normal case, make the weird case worse. | 10:30 |
jtv | And it shows future engineers how to fix the weird case. | 10:31 |
=== jtv is now known as jtv-afk | ||
nigelb | wgrant / rvba: Anything more I could try? | 10:34 |
rvba | nigelb: please paste your diff. | 10:34 |
nigelb | http://dpaste.com/605832/ | 10:36 |
G | hmmm took a look at bug 61428 and I think I've identified a 3 line fix | 10:39 |
_mup_ | Bug #61428: Want a "subscribed to teams" portlet... <feature> <lp-bugs> <trivial> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/61428 > | 10:39 |
stub | The 'proper' way of interpolation with the logger API saves interpolation time, but has a habit of hiding interpolation bugs as we end up with untested code paths. | 10:40 |
G | ahhh actually, not that simple | 10:42 |
G | danilos: if you've got a moment, question about the above mentioned bug, the portlet while nearly identical for a subscribed bugs page, is nearly the same as the current assigned bugs (person-portlet-team-assignedbugs.pt) is the attitude to create a seperate portlet, or try and introduce logic to the current portlet | 10:49 |
stub | gmb: Bug comment lazy loading - what will search engines see if we turned this on for everybody? | 10:50 |
gmb | stub: Uhm... Well, at the moment it's just JS on top of what's currently there. But fair point; if we did it automatically then it would be not good for our Googlejuice. | 10:51 |
danilos | G: I am looking at it | 10:51 |
nigelb | gmb: Or using text-only browsers :) | 10:52 |
gmb | nigelb: also true. | 10:52 |
stub | gmb: Yer. We might need to be more intelligent. Default batched comments with a sane batchsize, and js magic to improve on that if you have js. | 10:52 |
gmb | Thankfully, we're talking about something I haven't done yet :). | 10:52 |
nigelb | heh | 10:52 |
gmb | stub: Agreed. It wouldn't be too hard to do that, actually. | 10:52 |
G | danilos: a second portlet, would basically be :%s/assigned/subscribed/g w/ a little bit of extra CSS for the new div class id's | 10:53 |
stub | For insane people who want to scroll through the entirety of Bug #1 | 10:53 |
_mup_ | Bug #1: Microsoft has a majority market share <iso-testing> <ubuntu> <Clubdistro:Confirmed> <Computer Science Ubuntu:Confirmed for compscibuntu-bugs> <dylan.NET.Reflection:Invalid> <dylan.NET:Invalid> <EasyPeasy Overview:Invalid by ramvi> <GenOS:In Progress by gen-os> <GNOME Screensaver:Won't Fix> <Ichthux:Invalid by raphink> <JAK LINUX:Invalid> <LibreOffice:In Progress by bjoern-michaelsen> <Linux Mint:In Progress> <The Linux OS Project:In Pr | 10:53 |
G | (at least my intpretation) | 10:53 |
nigelb | argh! | 10:53 |
nigelb | But there are probably Ubuntu bugs worse than that. | 10:54 |
nigelb | rvba: Were able to spare a minute to look into that diff? | 10:54 |
danilos | G: right, I think you are better off reusing it, and just introducing a few variables like CSS class and target view to decide what to do in the template | 10:54 |
danilos | G: though, that entire portlet looks like a very bad UI, but if you find it useful, it's better than no UI :) | 10:54 |
rvba | nigelb: Yes, nothing seems bad with your diff but this "NoCanonicalUrl: No url for None because None broke the chain." is a tricky error. | 10:55 |
rvba | nigelb: hang on. | 10:55 |
nigelb | okay, so I'm not going completely crazy :) | 10:55 |
G | danilos: so just cp it, and change where it's needed | 10:56 |
danilos | G: nope, with "reusing" I meant use the same template (perhaps rename it), but modify it so you can pass in the bits like the div ID and "+assignedbugs" part of URL from the view | 10:57 |
G | ahh yep, I get you | 10:57 |
G | so basically the second option (introduce logic/pass variables) | 10:57 |
danilos | G: btw, would it not be better if there was a page listing all the actual bugs any of your teams is assigned to/subscribed to? | 10:58 |
danilos | G: yes | 10:58 |
G | danilos: you mean something like +subscribedbugs as is, and then something like +subscribedbugs/+all ? | 10:59 |
danilos | G: yeah, something like that | 10:59 |
G | actually, +indirectsubscribedbugs | 10:59 |
G | danilos: couldn't that be quite 'expensive' if someone did that against say Mark Shuttleworth who I'm guessing is a member of a lot of teams? | 11:00 |
danilos | G: it could be nontrivial, sure, but if that's the question you really want answered with this page, it should be doable, imho | 11:01 |
G | (expensive as in time to generate & amount of data that could be retrieved from the DB for some people) | 11:01 |
danilos | G: of course, I am not suggesting you should block on this, but just wondering if that's what you really want? | 11:02 |
danilos | G: also, as far as data being transferred from the DB, we do batch most of the big requests | 11:02 |
rvba | nigelb: Why are you rendering a view on bugTask in test_bugattachment_edit_view? | 11:03 |
nigelb | rvba: I should move it to another file, but I wanted to write it some place where attachment bits existed. | 11:03 |
nigelb | Is there a better place already existing? | 11:03 |
G | danilos: actually seems +bugs does that already | 11:04 |
rvba | nigelb: I don't know that code (bugs) very well but I /think/ the bug is not properly setup for you to render bugTask:+index | 11:04 |
nigelb | hmm. | 11:04 |
nigelb | I should perhaps tell you what I'm testing so you can suggest a better, working alternative. | 11:05 |
rvba | nigelb: My advice would be to find in the code a properly setup bug (one that ressembles what you want to test). | 11:05 |
nigelb | When you attach a patch on LP, it shows up in the comments, but the edit link is a portlet on the left. I'm adding that edit link to the link in the patch as well. | 11:06 |
nigelb | Ah, perhaps I should try that. | 11:06 |
danilos | G: yeah, though I'd never claim to know what exactly "related" means there | 11:06 |
rvba | nigelb: I see. | 11:06 |
danilos | G: at least not before reading the code carefully :) | 11:06 |
G | danilos: I think 'related' is something all could easily be lost in translation | 11:07 |
danilos | G: I also dislike the concept of me being related to a bug ;) | 11:07 |
wgrant | G, danilos: "Related" is a combination of all the filters. | 11:07 |
wgrant | s/combination/union/ | 11:07 |
G | danilos: but the way I see it is: all bugs (x) has had something to do with | 11:07 |
wgrant | Stuff you're subscribed to, or assigned to, or reported, or commented on. | 11:07 |
nigelb | hrm, I could do a browser test I guess. | 11:08 |
danilos | wgrant, that simple? no team subscriptions considered? | 11:08 |
wgrant | danilos: Correct. | 11:08 |
danilos | wgrant, right, thanks | 11:08 |
G | ahhh so it doesn't consider via teams | 11:08 |
rvba | nigelb: that's already what you tried to do. | 11:08 |
StevenK | G: Good to see you tackling more issues. :-) | 11:08 |
G | StevenK: seems a bit of a waste to sign a document to contribute and stop after one issue :) | 11:09 |
nigelb | rvba: No, the from lp.testing.BrowserTestCase | 11:09 |
nigelb | StevenK: Isn't it fun that there are two new people contributing and both of us have the same first name ;) | 11:09 |
danilos | G: so, my gut feel is that we should be able to generate a single pages with all related bugs for any of the filters which includes your team subscriptions: basically, the "only" difference would be a join through TeamParticipation table :) | 11:09 |
StevenK | nigelb: That isn't confusing *at all* | 11:10 |
nigelb | heh | 11:10 |
danilos | G: s/single pages/self-contained pages/ | 11:10 |
G | StevenK: that and, I really like Launchpad, and the code is much better than another unnamed set of tools are :) | 11:10 |
nigelb | wgrant: Can I hope for mildly better success with BrowserTestCase? :) | 11:11 |
=== henninge is now known as henninge-lunch | ||
G | danilos: actually, what I was wondering is if the best way is to create an AJAXy portlet that uses the team list, to basically: "Also show bugs assigned to: <set of checkboxes>" | 11:12 |
G | or even a "Showing directly (assigned|subscribed) bugs, [link: include indirectly (assigned|subscribed) bugs] | 11:13 |
danilos | G: yeah, though choosing through a bunch of checkboxes is a nightmare imho :) | 11:14 |
G | danilos: yeah, I agree | 11:15 |
G | but with an on/off type thing, it'd also be possible to still list the user's teams that implements the existing behaviour as well | 11:15 |
danilos | G: yeah, though user's teams are listed elsewhere as well (I'd even argue that it's misplaced on +assignedbugs now) | 11:17 |
G | danilos: well for someone with a lot of team memberships, it allows drilling down to individual teams easily, but I agree to that view as well | 11:18 |
danilos | G: true, true | 11:18 |
danilos | G: well, I think providing the list won't be bad or wrong, so I suggest you just go for it :) | 11:18 |
G | (I just realised as well, that it'd likely have to be a non-AJAXy because the searching is also non-AJAXy | 11:19 |
rvba | nigelb: I think the only place where this (adding a comment with a attachement) is tested is bugtarget-filebug-views.txt | 11:20 |
=== al-maisan is now known as almaisan-away | ||
nigelb | doctest :( | 11:21 |
rvba | Indeed. | 11:21 |
G | Maybe just a portlet that basically has: http://dev.nigelj.com:81/bugportlet.txt | 11:22 |
rvba | nigelb: my advice would be to see what your fix does to that test. If you only need to add a couple of lines in there, it's fine. | 11:23 |
G | or is that getting a little too complex? | 11:23 |
bigjools | anyone else seeing update-sourcecode breaking when run from rf-get? | 11:23 |
nigelb | bigjools: the cache file? | 11:23 |
bigjools | yes | 11:23 |
nigelb | yeah, I saw that yesterday | 11:23 |
nigelb | I was told to just use the merged version in devel | 11:23 |
nigelb | there's a conflict | 11:24 |
wgrant | Someone probably updated it on an i386 machine. | 11:24 |
wgrant | So the order is different. | 11:24 |
rvba | nigelb: I'm sorry but I'll have to leave you to it now. Maybe danilos can give you a hand if you need more help. | 11:24 |
nigelb | rvba: Sure, no problem, I'll dig deeper. | 11:24 |
bigjools | bzr resolve --take-other FTW | 11:25 |
nigelb | yeah, that's what I did | 11:25 |
nigelb | *too | 11:25 |
G | danilos: does that look semi-sane, or a bit too long? | 11:25 |
nigelb | This may come off as exceedingly stupid. How do I run a doctest? | 11:25 |
danilos | G: I think it'd be fine | 11:26 |
bigjools | nigelb: bin/test -t <name of doctest> | 11:26 |
danilos | G: and definitely an improvement over what we have now | 11:26 |
nigelb | bigjools: ah, thanks! | 11:26 |
G | danilos: and basically the idea is for it be no-AJAX, and just add a includeindirect=1 to the request to +subscribedbugs | 11:27 |
bigjools | nigelb: remember that doctests are loaded by unit tests | 11:27 |
rvba | nigelb: ./bin/test -cvv -t xx-doctest.txt | 11:27 |
G | (or assignedbugs for that matter) | 11:27 |
danilos | G: I'd also do it in two steps (branches) to make it easier: generalize what we have in one branch and make it work for the subscribed bugs case, and then another one to provide the indirect bug searches | 11:27 |
danilos | G: yeah, that sounds good, though that may conflict with the search parameters | 11:28 |
G | danilos: so basically 1 branch to include it for subscribedbugs, and then a second branch to implement show indirect | 11:28 |
jelmer | hmm, is something up with loggerhead on staging? | 11:28 |
nigelb | bigjools: oh. that's why everyone tells me doctests having a slightly weird loading. | 11:28 |
danilos | G: yep, that also ensures you solve at least one problem | 11:28 |
G | danilos: ahhh a good point | 11:28 |
=== matsubara-afk is now known as matsubara | ||
danilos | G: (if the "include indirect" turns out to really be too expensive) | 11:29 |
wgrant | jelmer: Probably. asuka has been in swapdeath twice in the last 24 hours. | 11:29 |
wgrant | jelmer: Stuff may need restarting. | 11:29 |
wgrant | jelmer: although codebrowse is tellurium, so I am stupid. | 11:29 |
nigelb | Gah, I fixed it and I don't see a text breakage. | 11:29 |
nigelb | *test | 11:29 |
nigelb | The one time I'm unhappy a test didn't break. | 11:29 |
bigjools | nigelb: this is an example of one: lib/lp/archivepublisher/tests/test_publisher_documentation.py | 11:29 |
jelmer | wgrant: ah, ok | 11:29 |
G | danilos: alright I'll type it up in launchpad | 11:29 |
jelmer | wgrant: either way, I guess should ask a losa | 11:29 |
jelmer | wgrant: what was up with asuka? | 11:30 |
danilos | G: cool, I'll be switching locations soon, but if you want me to comment on the bug as well, just let me know :) | 11:30 |
wgrant | jelmer: I'm not sure that was ever determined. | 11:30 |
nigelb | bigjools: Ooooh. thanks! | 11:30 |
G | danilos: thanks! | 11:30 |
jelmer | wgrant: hmm, that makes me feel a bit uneasy about the stuff that is currently on staging.. | 11:32 |
wgrant | jelmer: You could obtain process listings. | 11:33 |
wgrant | jelmer: I believe they are taken every minute or 5. | 11:33 |
G | danilos: does person-portlet-team-bugs.pt should better than ...-team-assignedbugs.pt for a generic version? | 11:33 |
danilos | G: it does, yeah | 11:34 |
bigjools | it's quite amazing when DF manges to load a page that [qa]staging is timing out on | 11:35 |
wgrant | bigjools: You used TRUNCATE, didn't you? | 11:35 |
bigjools | hmm? | 11:35 |
wgrant | The only explanation for that is that you TRUNCATEd the table. | 11:36 |
bigjools | nope | 11:36 |
wgrant | Lies. | 11:36 |
nigelb | heh | 11:37 |
nigelb | Is asking for a review of a branch I couldn't successfuly write a test cheating? | 11:38 |
nigelb | :) | 11:39 |
nigelb | wgrant: Is this fix released? bug 833743 | 11:43 |
_mup_ | Bug #833743: test_versioninfo fails when system has bzr 2.4 <test-system> <Launchpad itself:In Progress by nigelbabu> < https://launchpad.net/bugs/833743 > | 11:43 |
wgrant | nigelb: Indeed. | 11:44 |
nigelb | woah, too fast. | 11:45 |
bigjools | what are the runes to make bin/test pick up the failing tests in a testr repo? | 11:48 |
nigelb | testr init ; zcat ~/Downloads/4595-upgrade-bug-linking-r13582.subunit.gz | testr load; testr run --failing | 11:49 |
nigelb | where the ~/Downloads path is the subunit file. | 11:49 |
nigelb | bigjools: is ^ that what you meant? | 11:50 |
bigjools | nigelb: perfect, thanks | 11:50 |
nigelb | :) | 11:50 |
bigjools | how does it know to use bin/test? | 11:50 |
jelmer | bigjools: the .testr.conf file | 11:50 |
nigelb | I just assumed StevenK's magic would work. | 11:51 |
bigjools | which begs another question ... :) | 11:51 |
bigjools | how did I have that config already | 11:51 |
jelmer | bigjools: it's part of the launchpad tree | 11:51 |
jelmer | :) | 11:51 |
bigjools | ah! | 11:52 |
nigelb | heh | 11:52 |
bigjools | that would make some sense, yes | 11:52 |
nigelb | danilos: Could I add https://code.launchpad.net/~nigelbabu/launchpad/patch-edit-684548 to your list? :) | 11:55 |
nigelb | I've been unsucessful in getting tests for it sadly. Any help appreciated :) | 11:55 |
stub | Is there a helper to make non-blocking reads on a Python file object, or am I stuck with select() boilerplate? | 11:57 |
bigjools | Twisted? :) | 11:59 |
bigjools | are you in a loop that keeps checking? | 12:00 |
nigelb | excellent, TDD dream works | 12:07 |
G | danilos: hey quick question, I can seem to find any other pages that does the whole pass variables to a portlet thing, do you know of any so I can have a look at one | 12:09 |
nigelb | GAH, qastating. Y U NO let me file bug. | 12:11 |
=== almaisan-away is now known as al-maisan | ||
nigelb | bigjools: is bug 284707 still trivial? | 12:28 |
_mup_ | Bug #284707: When Launchpad Janitor closes a bug due to a package upload, the message should link to that upload page <lp-soyuz> <trivial> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/284707 > | 12:28 |
wgrant | nigelb: Yes. Should just need the template changed to insert a link -- which can be easily generated using canonical_url. | 12:29 |
bigjools | nigelb: mostly, you just need to get the DSPR and use canonical_url() on it | 12:29 |
nigelb | But how do I test... | 12:29 |
bigjools | find the existing test | 12:29 |
nigelb | I mean, not programmatically | 12:29 |
bigjools | do an upload locally | 12:30 |
bigjools | and run process-upload.py | 12:30 |
nigelb | hm, this is going to be fun. | 12:30 |
wgrant | nigelb: Nah, it was fun 2 years ago. | 12:30 |
wgrant | Now it's well-documented and partially scripted :) | 12:30 |
wgrant | https://dev.launchpad.net/Soyuz/HowToUseSoyuzLocally | 12:30 |
nigelb | wgrant: I'm still stuck on the test for that bug. The "fix" turned out to be 2 lines. Once again haunted by tests. | 12:31 |
StevenK | nigelb: Is your TDD experiment working? | 12:31 |
nigelb | StevenK: I failed spectacularly. | 12:32 |
bigjools | do it for this one, really | 12:32 |
nigelb | The second bug I picked up turns out to have been fixed by wgrant a few months back. | 12:32 |
nigelb | Also, what kind of box does qastaging run on? netbook? | 12:33 |
nigelb | My local instance seems fast than that. | 12:33 |
StevenK | Hahaha | 12:33 |
bigjools | staging is timing out today | 12:33 |
StevenK | nigelb: qastaging *and* staging both run on asuka. The poor thing is running *two* Launchpads | 12:33 |
G | hmmmm I don't get how I can pass data to a template portlet | 12:34 |
=== danilo_ is now known as danilos | ||
bigjools | G: "view" and "context" contain what you think. So you can do view/property or context/property | 12:34 |
nigelb | mrevell: "The Great Dismal Swamp" isn't some part of Launchpad? ;) | 12:35 |
* nigelb runs | 12:35 | |
bigjools | I read "The Great Dismal Swamp" but said "Soyuz" | 12:35 |
nigelb | heh | 12:36 |
nigelb | I was thinking of blueprints though | 12:36 |
wgrant | nigelb: What did I fix? | 12:36 |
nigelb | bug 667413 | 12:37 |
_mup_ | Bug #667413: "HowToTriage" URL in "thankyou for reporting this ubuntu bug" box should be a link <lp-bugs> <trivial> <Launchpad itself:Fix Released> < https://launchpad.net/bugs/667413 > | 12:37 |
G | bigjools: basically I'm trying to generic-ize the person-portlet-team-assignedbugs.pt portlet, (/+assignedbugs) but I can't see any way to pass "+assignedbugs" etc to the portlet | 12:38 |
G | unless I'm lost somewhere | 12:38 |
wgrant | nigelb: qastaging and staging share an appserver (asuka) and a DB server (sourcherry). I don't know asuka's specs, but a fair bit of the bottleneck is the DB. sourcherry has 32GiB of RAM and has two LP DBs. The production DB servers have 132GiB of RAM (I believe), a single DB, and there are three of them. | 12:38 |
wgrant | nigelb: So I did. Thanks for finding that. | 12:38 |
nigelb | wgrant: 32 GiB of RAM? | 12:38 |
G | 132GiB of RAM? nice :) | 12:39 |
nigelb | Oh, right. It has the eentire prodcution data | 12:39 |
StevenK | nigelb: The production database is like 240GiB | 12:39 |
wgrant | nigelb: Yes. The LP DB is hundreds of gigabytes, so... | 12:39 |
bigjools | G: that's a traversal, you need to define that in zcml. | 12:39 |
bigjools | and there be dragons | 12:39 |
bigjools | oh look, it's lunchtime! | 12:39 |
nigelb | tea time! | 12:39 |
StevenK | Wow. I reviewed that when I was still being mentored. | 12:40 |
nigelb | StevenK: wgrant's branch? | 12:40 |
StevenK | nigelb: Yup | 12:40 |
nigelb | Neat :) | 12:40 |
G | bigjools: so is traversals for this a good thing, or a bad thing (i.e. if it's a bad thing, something that should not be generic-ized) | 12:40 |
nigelb | I didn't know you were a full reviewer only recently. | 12:40 |
StevenK | nigelb: Commit message for that revision you linked in the bug starts with [r=stevenk, thumper] | 12:40 |
StevenK | nigelb: Graduated 15/03 | 12:41 |
bigjools | G: I don't know what you're trying to do exactly, but normally if you want a generic portlet you need to attach the template to a view in zcml, and then you can use /@@ in the other template that needs the portlet | 12:42 |
nigelb | StevenK: 2003? | 12:42 |
nigelb | Or March of 2011 | 12:42 |
bigjools | but I am vastly simplifying | 12:42 |
StevenK | nigelb: No, March. | 12:42 |
=== henninge-lunch is now known as henninge | ||
nigelb | Fairly recent :) | 12:42 |
nigelb | I remember wgrant being a full reviewer. | 12:42 |
nigelb | err, getting full review | 12:42 |
nigelb | GRAR | 12:43 |
nigelb | *reviewer | 12:43 |
StevenK | Almost six months | 12:43 |
nigelb | I now know I've learned quite a bit in the last 9 MPs. | 12:43 |
nigelb | Especially when I see G go through what I as going through branches 2 to 5 ;) | 12:43 |
G | haha | 12:44 |
StevenK | And what I went through for branches 2 until 30 | 12:44 |
henninge | danilos: Hi! Can you please review my branch? | 12:44 |
henninge | https://code.launchpad.net/~henninge/launchpad/bug-824435-failure-reporting-4/+merge/73507 | 12:44 |
G | ohhhhh I think I get what I'm trying to do :) | 12:44 |
StevenK | (I was working on Soyuz, give me a break. :-) | 12:44 |
nigelb | heh | 12:44 |
G | (as crazy as that sounds) | 12:44 |
nigelb | G: I think most of us know exactly what you mean :D | 12:45 |
G | nigelb: yeah, I'm a bit of a zope newbie | 12:45 |
nigelb | StevenK: I still don't know lots. I'm frequently getting stuck at tests as evidenced today. | 12:45 |
nigelb | G: Join the club! :) | 12:45 |
G | nigelb: but I think I just worked out the solution to my question, even though I'm still not 100% sure I've been asking the right question (or at least the question the right way) | 12:45 |
nigelb | That sounds /very/ familiar. | 12:46 |
mrevell | nigelb, Heh :) | 12:46 |
* nigelb heads for tea. | 12:48 | |
deryck | Morning, all. | 12:59 |
henninge | Hi deryck! ;) | 12:59 |
danilos | henninge, sure | 13:00 |
henninge | I am getting this error from the LibrarianLayer. It seems that something is wrong with my local python2.6 installation, specifically setuptools. | 13:00 |
henninge | http://paste.ubuntu.com/678866/ | 13:00 |
henninge | danilos: cool, thanks | 13:01 |
henninge | What can to to fix that? | 13:02 |
wgrant | henninge: https://bugs.launchpad.net/ubuntu/+source/python-setuptools/+bug/834698 | 13:24 |
_mup_ | Bug #834698: setuptools.egg-info can end up as a directory when it is meant to be a symlink <python-setuptools (Ubuntu):New> < https://launchpad.net/bugs/834698 > | 13:24 |
wgrant | henninge: rm -rf /usr/lib/python2.6/dist-packages/setuptools.egg-info, and apt-get install --reinstall python-setuptools if it is installed. | 13:24 |
henninge | wgrant: ah thanks. I alread tried re-installing but did not remove first. | 13:25 |
henninge | yes, now it is a symlink | 13:27 |
henninge | and the LibrianLayer works, too .. :-D | 13:28 |
wgrant | This broke buildbot a bit, and is causing delights in the staging mailbox. | 13:29 |
wgrant | A dozen emails a minute or so. | 13:29 |
wgrant | And launchpad-error-reports is getting similar, although not quite so frequent. | 13:29 |
G | hmmm so I think StevenK was right, I can't do this the way I was thinking | 13:41 |
deryck | adeuring, don't worry about marking bugs fix released. looks like wgrant got them all. | 13:42 |
adeuring | ah, thanks wgrant and deryck! | 13:42 |
rvba | danilos: Hi, can you please have a look at https://code.launchpad.net/~rvb/launchpad/dsd-api-bug-833080/+merge/73532 ? | 13:47 |
G | although it does seem to me a bit odd that I can't access variables from view/foo from a portlet that is included via tal:content | 13:47 |
=== al-maisan is now known as almaisan-away | ||
lifeless | \o/ | 14:07 |
bigjools | lifeless: I can only assume that means one thing | 14:07 |
lifeless | :) | 14:07 |
bigjools | congrats :) | 14:07 |
lifeless | sleep now. details later | 14:07 |
bigjools | details? | 14:07 |
bigjools | gah! | 14:07 |
G | lifeless: congrats | 14:07 |
nigelb | lifeless: Congrats! | 14:08 |
mrevell | hey, congrats Daddy Lifeless :) | 14:11 |
rvba | lifeless: félicitations ! | 14:13 |
danilos | henninge, r=me, sorry for taking this long | 14:13 |
james_w | congratulations lifeless | 14:13 |
danilos | rvba, looking at yours now | 14:14 |
rvba | danilos: Great! | 14:14 |
nigelb | This calls for a party at next sprint/summit lifeless attends? ;) | 14:14 |
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 244 - 0:[#######=]:256 | ||
danilos | rvba, is this how we generally export SPNs? | 14:17 |
nigelb | danilos: ouch, I had a small branch I needed a review :) | 14:18 |
rvba | danilos: yes, I took the code from somewhere. | 14:18 |
danilos | nigelb, if it's really small, I might be convinced :) | 14:18 |
danilos | rvba, cool, just wondering | 14:18 |
nigelb | https://code.launchpad.net/~nigelbabu/launchpad/patch-edit-684548 | 14:18 |
nigelb | I really tried my best to write tests for that, but failed. | 14:19 |
danilos | rvba, I also assume all of these are public, and no concern should be for privileges? | 14:19 |
rvba | danilos: that's right. | 14:19 |
nigelb | Gah, I mean - https://code.launchpad.net/~nigelbabu/launchpad/patch-edit-684548/+merge/73514 | 14:19 |
danilos | rvba, cool, everything else is nice and simple, r=me | 14:20 |
rvba | danilos: Thanks a lot! | 14:20 |
danilos | nigelb, have you looked at lib/lp/bugs/stories/bugattachments/xx-attachments-to-bug-report.txt for testing? | 14:22 |
danilos | nigelb, (I wouldn't be surprised if that starts failing with your change) | 14:22 |
nigelb | danilos: It didn't fail :( | 14:22 |
nigelb | wait. | 14:23 |
nigelb | that's not the one I tried. | 14:23 |
nigelb | *checks* | 14:23 |
danilos | nigelb, you might still be right, but it shouldn't be hard to extend it to test for this as well | 14:25 |
nigelb | danilos: I'll do that. I never thought I'd be writing doctests :) | 14:25 |
nigelb | Yup, I broke that. | 14:25 |
danilos | nigelb, heh, well, if you really want, you can start a new view test if you want :) | 14:26 |
nigelb | danilos: Tried for about 4 to 5 hours :) | 14:26 |
nigelb | failed. | 14:26 |
danilos | nigelb, anyway, please extend the test to assert that the link is right as well | 14:28 |
danilos | nigelb, oh, I've noticed you've been discussing that with a few people, fair enough | 14:28 |
nigelb | danilos: Just fix what I broken right? [I've been at this for 12 hours now :P] | 14:28 |
danilos | nigelb, you should try to at least extend the pagetest to make sure it works | 14:28 |
nigelb | pagetest? | 14:28 |
danilos | nigelb, well, not really, I think that is only using extract_text which strips all the tags | 14:28 |
henninge | danilos: thank you very much! ;) | 14:29 |
danilos | nigelb, yeah, all the doctests in stories/* subdirectories are what we used to call "page tests" | 14:29 |
nigelb | so, I added an (edit) in the doctest now, it passes. | 14:29 |
nigelb | do I need to add another new test? | 14:29 |
danilos | nigelb, well, you can at least check the actual link tag in there as well | 14:30 |
nigelb | ah, right. | 14:30 |
nigelb | let me look at other tests and figure out how | 14:30 |
danilos | nigelb, in that same spot there is a getLink call, you should be able to emulate that | 14:31 |
danilos | nigelb, something like browser.getLink('(edit)') | 14:32 |
danilos | nigelb, or well, just "edit" since that's what the link is | 14:32 |
nigelb | yeah, got that bit. | 14:33 |
henninge | gary_poster: Good morning! ;) | 14:33 |
nigelb | Now I'm looking around to figure out the pattern to the dit link | 14:33 |
nigelb | *edit link | 14:33 |
gary_poster | hey henninge, good afternoon. :-) | 14:33 |
henninge | ;) | 14:33 |
danilos | nigelb, "sprite edit" on the containing <span> might be enough | 14:34 |
henninge | gary_poster: I am not sure if you are aware but that ZConfig change I made a few weeks ago actually helped. | 14:34 |
henninge | gary_poster: Now I think it is time to submit it upstream. | 14:34 |
danilos | nigelb, or <a> itself (i.e. <a class="sprite edit"></a>) | 14:34 |
henninge | gary_poster: can you help me with that? | 14:34 |
gary_poster | henninge, I am most definitely aware! It is great! I made sure you were recognized on a team lead call :-) | 14:35 |
nigelb | danilos: Oh, I didn't add that class. | 14:35 |
henninge | gary_poster: thanks ;-) | 14:35 |
danilos | nigelb, that adds the edit icon on the link | 14:35 |
danilos | nigelb, also, considering you've got parentheses following the edit link now, the layout is not very pretty :) | 14:35 |
nigelb | danilos: Ah. I just copied the format of the edit in the right portlet as well | 14:36 |
nigelb | I'll add the class so I can grab it. | 14:36 |
gary_poster | henninge, help with upstream: /me cringes, but yes, can do. I would suggest that one of us email Fred Drake. He knows me, so I might be a better choice, but I'd be very happy to let you do it. He is the ZConfig author, and the author of that particular machinery. I'd ask him for a review and a merge if he's willing; or if he doesn't have the time, he can toss it back to me, and I'll do it. | 14:37 |
gary_poster | henninge, you want me to write that? | 14:38 |
* gary_poster starts email ;-) | 14:38 | |
danilos | nigelb, do you think you can finish these changes quickly? (I need to leave soon and have a few other things I need to finish, so if you can't do it quickly, we can perhaps come back to it tomorrow morning) | 14:39 |
nigelb | danilos: Please don't block on me, if I can't get finish it, I can start again tomorrow, no issues :) | 14:40 |
nigelb | *get it | 14:40 |
nigelb | *finished | 14:40 |
danilos | nigelb, cool, thanks | 14:40 |
danilos | nigelb, feel free to ping me tomorrow morning then :) | 14:43 |
henninge | gary_poster: sorry, phone call | 14:43 |
* henninge reads | 14:43 | |
nigelb | danilos: sure :) | 14:43 |
G | danilos: thanks for your help btw | 14:43 |
gary_poster | henninge, I'm three paras in by now ;-) | 14:43 |
henninge | gary_poster: no, was reading your explanation. that's only one para | 14:44 |
henninge | gary_poster: what are you reading? ;) | 14:44 |
gary_poster | henninge, I mean I'm three paras in to the email that I'm writing to Fred Drake | 14:44 |
henninge | ha! | 14:44 |
henninge | :-D | 14:44 |
henninge | gary_poster: can you please write the email ... ;) | 14:44 |
gary_poster | :-) | 14:44 |
henninge | gary_poster: thanks ;) | 14:45 |
gary_poster | welcome, henninge. thanks for the great fix | 14:45 |
bac | bigjools: how do i add an ArchivePermission for a user to a private PPA? can it be done via the UI? | 14:49 |
bigjools | bac: only on the API | 14:50 |
bac | bigjools: ok then, i'll stop looking | 14:50 |
bigjools | bac: good idea :) | 14:51 |
=== abentley changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: abentley | Critical bugs: 244 - 0:[#######=]:256 | ||
=== salgado_ is now known as salgado | ||
nigelb | I did wonder why a test wasn't failing. | 15:00 |
nigelb | I wasn running it in the WRONG branch! | 15:00 |
G | nigelb: whoops | 15:02 |
G | I think my understanding of the zope templating methods must be completely off | 15:03 |
deryck | bac, ping | 15:07 |
bac | hey deryck | 15:07 |
cjwatson | lifeless: congratulations! | 15:11 |
cjwatson | have we heard anything new regarding bug 809123? | 15:11 |
_mup_ | Bug #809123: we cannot deploy DB schema changes live <fastdowntime> <qa-ok> <Launchpad itself:Fix Committed by stub> < https://launchpad.net/bugs/809123 > | 15:11 |
benji | G: the ZPT reference is pretty good: http://docs.zope.org/zope2/zope2book/AppendixC.html or I might be bribed into answering a question or two | 15:16 |
G | benji: I think part of it is that I'm used to how other templating methods work, and just getting a tad confused about the boundries in ZPT | 15:18 |
G | benji: essentially in bug 61428 it'd be nice to make person-portlet-team-assignedbugs.pt reusable for both assigned and subscribed methods, but that portlet isn't the one that is the first template loaded (buglisting-embedded-advanced-search.pt) | 15:20 |
_mup_ | Bug #61428: Want a "subscribed to teams" portlet... <feature> <lp-bugs> <trivial> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/61428 > | 15:20 |
benji | G: I'm looking at the templates in question to see if I can get up to speed with you. | 15:21 |
=== jpds_ is now known as jpds | ||
nigelb | Is this lint error okay? " narrative uses a moin header." | 15:22 |
G | the idea is, in person.py, I was thinking it should be possible to tell the template that the backlink should be "+subscribedbugs" or "+assignedbugs" or "+somethinginthefuture", and I can certainly tell the buglisting-embedded-advanced-search.pt about it (by setting a variable in the python class) | 15:22 |
stub | cjwatson: Still blocked on RT #47040 | 15:22 |
_mup_ | Bug #47040: while booting initial kernel, progress bar looks like Win98 <gfxboot-theme-ubuntu (Ubuntu):Confirmed> < https://launchpad.net/bugs/47040 > | 15:22 |
stub | cjwatson: (Which had its one month birthday and nobody noticed! Happy Birthday!) | 15:23 |
G | but the portlet just seems to have no access to it | 15:23 |
benji | nigelb: it's not bad, or hard to fix (instead of "== Title ==" replace it with "Title\n=====" | 15:23 |
nigelb | benji: cool, thanks | 15:23 |
G | (I even tried: tal:define="link_back view/link_back" tal:content="existing loading of portlet-team-assignedbugs", without any luck | 15:24 |
G | (which reading the ZPT documentation, sounded like it should work | 15:24 |
nigelb | benji: BTW, Your quickstart guide helped me understand a lot of how things work :) | 15:25 |
benji | G: define "without any luck" and "work" :) | 15:25 |
benji | nigelb: I'm glad | 15:25 |
G | without any luck = "Expression: <PathExpr standard:u'link_back'> with a list of variables excluding link_back | 15:26 |
G | benji: work as in <div tal:content="link_back"> displays what I had set in the view | 15:26 |
benji | G: the first error makes no sense to me, so I will ignore it ;) the second should have worked with something like "<div tal:content="view/link_back"></div>" | 15:28 |
benji | (assuming that the view really has an attribute or method named "link_back" that holds/returns a string) | 15:28 |
G | that just makes it "Expression: <PathExpr standard:u'view/link_back'> | 15:29 |
G | benji: hold on, just pastebin'ing now | 15:29 |
G | benji: http://paste.ubuntu.com/678981/ | 15:29 |
* benji looks | 15:29 | |
benji | G: the first change in person-portlet-team-assignedbugs.pt looks like a typo; why the space and then "view/name"? | 15:31 |
G | (btw, I've had it with the same issue, with and without the nocall: (thought it might fix it) and with/without the seperate <tal:... define></ta/:...> | 15:31 |
G | benji: oh you can ignore that | 15:31 |
G | benji: you are right in pointing that out, but I thought the way I was joining the two variables together was the issue, it isn't actually trying to render view/name though | 15:32 |
G | flacoste: btw, thanks for sorting out the Contributor Agreement | 15:33 |
flacoste | G: thanks for you contribution! | 15:33 |
G | flacoste: no problem, I was originally confused about the agreement and the Code of Conduct thing, so it didn't click until late that I hadn't done it | 15:34 |
benji | G: if I apply that patch, what URL could I visit to trigger the error? | 15:34 |
G | on my system: https://launchpad.dev/~name16/+assignedbugs | 15:35 |
G | so really launchpaddomain/~user/+assignedbugs where ~user belongs to one or more teams | 15:36 |
deryck | bigjools, ping. | 15:36 |
* bigjools is in demand today | 15:36 | |
nigelb | abentley: Can I bring https://code.launchpad.net/~nigelbabu/launchpad/patch-edit-684548/+merge/73514 to your attention? | 15:37 |
abentley | nigelb: sure. Be with you in a moment. | 15:37 |
nigelb | thanks! | 15:37 |
benji | G: if I apply your patch but leave out the broken changes to person-portlet-team-assignedbugs.pt, I don't get any errors when rendering that page | 15:38 |
G | benji: yep, and if you add in the <div tal:content="link_back" /> the oops will occur | 15:39 |
G | (ignore the rest) | 15:39 |
G | and variants such as view/link_back also didn't work | 15:39 |
benji | G: each template has its own namespace, so that name isn't defined there, you can put "view/" on the front of "link_back" and it should work (assuming both templates have the same view object) | 15:40 |
benji | ah, so it may have a different view | 15:40 |
G | benji: thats the 'class="lp...."' bit in the .zcml file? | 15:42 |
benji | G: indeed, if you look to see where that template is wired up (lib/lp/bugs/browser/configure.zcml) it has a view class of lp.registry.browser.person.PersonView | 15:42 |
G | hmmmm I just changed it to the same as the handler for +assignedbugs | 15:42 |
G | and no oops | 15:42 |
G | and it looks correct | 15:43 |
benji | cool | 15:43 |
G | benji: thank you very much! | 15:43 |
benji | glad to help | 15:43 |
G | can't believe I was so close, but so far away at the same time | 15:46 |
G | benji: oh except it won't be generic still, because +assignedbugs and +subscribedbugs use different classes | 15:49 |
G | benji: I think you've got me in the right direction though | 15:49 |
benji | G: good luck, if you get in another bind feel free to ask for help | 15:50 |
abentley | nigelb: it looks like danilos is your reviewer on that one. | 15:53 |
nigelb | Yeah, I thought I'd finish it off. | 15:54 |
nigelb | You'd rather defer to him, I can put it off for tomorrow :) | 15:54 |
abentley | nigelb: I'd prefer that. | 15:54 |
nigelb | Cool, np | 15:54 |
nigelb | Onto next bug :) | 15:54 |
=== beuno is now known as beuno-lunch | ||
=== salgado_ is now known as salgado | ||
=== deryck is now known as deryck[lunch] | ||
adeuring | abentley, deryck[lunch]: could one of you review a small fix for a larger part of the HWDB hassles? https://code.launchpad.net/~adeuring/launchpad/fix-broken-comment-nodes-in-hwdb-reports/+merge/73552 | 16:11 |
abentley | adeuring: sure. | 16:11 |
adeuring | abentley: thanks! | 16:11 |
abentley | adeuring: ISTM that your re would match "<comment></comment><somethingelse></somethingelse><comment></comment>" | 16:15 |
adeuring | abentley: no, the '?' after '.*' prevents this | 16:15 |
abentley | adeuring, doesn't ? make the '.*' optional? | 16:16 |
adeuring | abentley: no, that means "non-greedy searching" | 16:17 |
adeuring | like "stop at the first match" | 16:17 |
abentley | adeuring: okay. I didn't realize that *? was a single entity. | 16:17 |
abentley | adeuring: could you add a test for that, please? Showing that "<comment></comment><somethingelse></somethingelse><comment></comment>" => "<comment/><somethingelse></somethingelse><comment/>" ? | 16:18 |
adeuring | abentley: not today.... I am really tired. I see the need but... | 16:19 |
abentley | adeuring: _fix_frequent_errors doesn't match our naming guidelines. | 16:20 |
adeuring | abentley: ouch, yes fixFrequentErrors, sure | 16:21 |
abentley | adeuring: with a test and the name change, this is okay to land. | 16:22 |
adeuring | abentley: thanks | 16:22 |
=== salgado_ is now known as salgado | ||
bigjools | mrevell: I requested your mince pies on a text change MP if you would be so kind | 16:30 |
mrevell | Haha, I'd be delighted to. | 16:30 |
nigelb | mrevell: Excellent email. | 16:32 |
bigjools | mrevell: splendid old bean | 16:32 |
nigelb | I'd be glad to be part of it as a contributor :) | 16:33 |
mrevell | Ah, thanks nigelb; you red fast! | 16:33 |
nigelb | heh | 16:33 |
mrevell | Very glad to have you on board :) | 16:33 |
nigelb | Wouldn't the blueprint bugs merge conflict with stakeholders? | 16:33 |
nigelb | Especially since Ubuntu uses it extensively. | 16:34 |
mrevell | nigelb, We won't throw away functionality that's important to stakeholders ... nor the distinction between a "blueprint" face and a "bugs" face, probably. It's more an under the hood thing that'll give us benefits such as bug dependencies. | 16:34 |
nigelb | Ah. | 16:35 |
=== deryck[lunch] is now known as deryck | ||
mrevell | And it'd bring some much needed love to blueprints. | 16:35 |
nigelb | heh | 16:35 |
nigelb | YEah | 16:35 |
mrevell | jml and mpt started that work at our Dallas sprint. | 16:35 |
nigelb | Yeah, jml told me about the merge at UDS | 16:36 |
bigjools | good night everyone | 17:13 |
=== matsubara is now known as matsubara-lunch | ||
=== beuno-lunch is now known as beuno | ||
LPCIBot | Project devel build #1,017: STILL FAILING in 4 hr 45 min: https://lpci.wedontsleep.org/job/devel/1017/ | 17:22 |
flacoste | deryck: your squad is on maintenance rotation this week? | 17:28 |
deryck | flacoste, yes. on interrupt duties, you mean? | 17:28 |
flacoste | yes | 17:29 |
deryck | flacoste, yeah, indeed we are. what's up? | 17:29 |
flacoste | did any of you guys picked up the email to Registry asking for https://launchpad.net/libreoffice/ and https://launchpad.net/df-libreoffice/ to be merged? | 17:29 |
flacoste | (in the latter) | 17:29 |
nigelb | Hi, what's the ideal way to test a validation change? | 17:31 |
nigelb | (I'm trying to fix bug 59301) | 17:31 |
_mup_ | Bug #59301: Don't give me a vague "URL is already registered by another blueprint" error <lp-blueprints> <trivial> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/59301 > | 17:31 |
deryck | flacoste, I don't think so. I can pick it up, though. I'm the only one left today. | 17:31 |
flacoste | deryck: ideally, this should come through a question | 17:32 |
flacoste | nigelb: where are you implementing the validation change? | 17:33 |
deryck | flacoste, should I ping back and ask for them to open a question? is that the normal way? | 17:33 |
flacoste | nigelb: iow, in the view, or the field validator | 17:33 |
nigelb | flacoste: In the interface | 17:33 |
flacoste | nigelb: field validator? or as an interface invariant? | 17:34 |
nigelb | er, I probably don't know what's the difference. | 17:34 |
nigelb | There's already validation | 17:34 |
flacoste | deryck: i'd suggest opening a question for it and pointing the user to the question for follow-up | 17:34 |
nigelb | I'm only changing the validation error | 17:34 |
deryck | flacoste, ack. thanks. | 17:34 |
flacoste | deryck: one aspect that needs follow-up is that we don't support project merging per se | 17:34 |
flacoste | deryck: we can make one inactive | 17:34 |
deryck | right. | 17:35 |
flacoste | deryck: but it would be their responsibility that all contents is moved across | 17:35 |
flacoste | so bugs / translations / code / whatever | 17:35 |
deryck | gotcha | 17:35 |
flacoste | nigelb: what file are you changing? | 17:35 |
nigelb | blueprints/interfaces/specification.py | 17:35 |
nigelb | specifically L136 | 17:36 |
nigelb | I'll be adding the specification title as well. | 17:36 |
nigelb | and if I can manage it, the URL. | 17:36 |
flacoste | nigelb: ok, looking for a decent suggestion | 17:41 |
nigelb | flacoste: :) | 17:41 |
nigelb | Is interface the Right Place™ for validation? | 17:42 |
nigelb | (Also, drat bigjools isn't here. Really wanted to poke him to look at cricket :P) | 17:42 |
flacoste | nigelb: yes, it's the right place | 17:42 |
nigelb | Ok, so theoretically, I should be able to look at other validation tests, if any. | 17:43 |
flacoste | nigelb: there is no interfaces/tests directory | 17:43 |
flacoste | nigelb: well, there is probably more bad examples of those than good ones | 17:43 |
nigelb | oh :( | 17:43 |
flacoste | especially in blueprints | 17:43 |
nigelb | heh | 17:43 |
nigelb | blueprints is especially unloved :) | 17:43 |
flacoste | so my suggestion is to add a unit test in blueprints/model/test_specification.py | 17:43 |
flacoste | ideally, i would go in interfaces/tests | 17:44 |
flacoste | but since that doesn't exists, might be more complicated to set-up | 17:44 |
flacoste | more cookie points to you if you go that extra miles | 17:44 |
flacoste | but the test should simply be something like | 17:44 |
flacoste | test_url_validation(self): | 17:44 |
flacoste | spec = self.factory.makeSpecification() | 17:45 |
flacoste | field = ISpecification['url'] | 17:46 |
flacoste | with ExpectedException(LaunchpadValidationError, regex_to_match): | 17:46 |
=== almaisan-away is now known as al-maisan | ||
flacoste | field.validate(the_value) | 17:46 |
flacoste | and that's it | 17:46 |
nigelb | s/url/specurl/g I think? | 17:46 |
flacoste | right | 17:46 |
flacoste | the above is a sketch :-) | 17:46 |
flacoste | you probably want one test per error condition you need | 17:47 |
nigelb | heh, ok. let me play with this | 17:47 |
flacoste | and you might want to validate a good one for completeness | 17:47 |
flacoste | that's how validation tests should be written | 17:47 |
flacoste | we probably have one example of those in the tree | 17:47 |
flacoste | but the more common cases was to test it through all the stack | 17:47 |
flacoste | which is bad practice | 17:47 |
flacoste | oh | 17:47 |
flacoste | you might want to use: | 17:47 |
flacoste | field = ISpecification['specurl'].bind(spec) | 17:48 |
nigelb | Also, another thing. | 17:48 |
nigelb | that above test will probably pass. | 17:48 |
flacoste | since that allow the field to look at the object itself | 17:48 |
flacoste | nigelb: regex_to_match is matched against the exception message | 17:48 |
flacoste | so probably not if that's what needs to change | 17:48 |
nigelb | because the test failure is when you try to create a new spec with apiurl which exists. | 17:49 |
nigelb | so I'll just do an empty makeSpecification before that. | 17:49 |
flacoste | indeed | 17:49 |
flacoste | good point | 17:49 |
flacoste | existing_spec = self.factory.makeSpecification(specurl='...') | 17:49 |
flacoste | ISpecification['specurl'].validate('...') | 17:50 |
flacoste | should trigger your error | 17:50 |
nigelb | yeah :) | 17:50 |
flacoste | validate() works for both new object and existing ones | 17:50 |
flacoste | so you probably want a test that shows that validate('a_url') when the current value is 'a_url' pass | 17:51 |
flacoste | you'll need to call .bind() with an existing instance for that test | 17:51 |
flacoste | (as outlined in my first example) | 17:52 |
nigelb | right! | 17:52 |
=== al-maisan is now known as almaisan-away | ||
flacoste | or correction to it :-) | 17:52 |
flacoste | that should get you started | 17:52 |
nigelb | so I get to do a success and failure. | 17:52 |
flacoste | let us know if you hit any snags | 17:52 |
nigelb | sure! :) | 17:52 |
=== abentley changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 244 - 0:[#######=]:256 | ||
nigelb | Excellent. Finally got TDD working. | 18:15 |
nigelb | My tests fail successfully. | 18:16 |
=== matsubara-lunch is now known as matsubara | ||
nigelb | flacoste: Almost a success. All I'm missing is that validation is automatically escaped. | 18:27 |
flacoste | nigelb: you could simply check that the exception message is a structured() instance | 18:28 |
nigelb | flacoste: No, I mean, not just in the test. also in the output | 18:28 |
nigelb | so, I get <a href=... instead of that getting linked | 18:29 |
flacoste | nigelb: i don't understand? | 18:29 |
nigelb | one sec | 18:29 |
nigelb | flacoste: http://people.ubuntu.com/~nigelbabu/validation.png | 18:30 |
flacoste | nigelb: i see | 18:31 |
flacoste | that's more tricky | 18:31 |
nigelb | Ouch. | 18:31 |
flacoste | as we don't want to become another XSS vector | 18:31 |
nigelb | Can I use one of the formatters instead? | 18:32 |
flacoste | i think we now have a way to have HTML in error message | 18:32 |
flacoste | but i don't know how off the top of my head | 18:32 |
nigelb | Could I use the FormattersAPI? | 18:34 |
flacoste | nigelb: you need to pass use structured() to wrap the message creation | 18:46 |
flacoste | so structured('%s is already registered by <a href="%s">%s</a>', value, canonical_url(spec), spec.title) | 18:48 |
flacoste | that will do the right thing | 18:48 |
nigelb | okay! | 18:49 |
flacoste | bonus points if you can figure out how to use the the link formatter from there | 18:51 |
flacoste | note though that in some way this is a violation of our layering | 18:51 |
flacoste | we are introducing display logic at a very low level | 18:51 |
nigelb | Oh. | 18:51 |
nigelb | Wait, link formatter? Here? | 18:51 |
flacoste | putting a link in the error message is | 18:52 |
flacoste | more so if we going to reuse the implementing behind fmt:link | 18:52 |
nigelb | But is there a better way to do this? | 18:52 |
flacoste | but this seems to be the pattern we follow | 18:52 |
flacoste | the better way would just be more work | 18:53 |
flacoste | and indirection | 18:53 |
flacoste | for no real benefit | 18:53 |
nigelb | heh :) | 18:53 |
flacoste | you would make a subclass of LaunchpadValidation specific to this error | 18:53 |
flacoste | and then in the view look for that error | 18:53 |
flacoste | and replace the better error message there | 18:53 |
flacoste | that would preserve the layering of concerns | 18:53 |
flacoste | one drawback here is that there "HTML-formatted" error message will appear on the API as well | 18:54 |
nigelb | ah | 18:54 |
flacoste | but not sure if that's arguably a bug :-) | 18:54 |
nigelb | heh | 18:54 |
flacoste | anyway, using structured() wiht LaunchpadValidationError has precents | 18:55 |
flacoste | as its ErrorView supports it | 18:55 |
flacoste | and grepping should find prior art | 18:55 |
flacoste | so that should work for you :-) | 18:55 |
flacoste | ntrtam | 18:55 |
flacoste | -> need to run to a meeting :-) | 18:55 |
nigelb | ciao :) | 18:55 |
nigelb | Thanks! | 18:55 |
=== salgado_ is now known as salgado | ||
bac | benji: could i bother you for a review? | 20:16 |
benji | bac: my pleasure | 20:16 |
bac | benji: thx: https://code.launchpad.net/~bac/launchpad/bug-828914-test/+merge/73585 | 20:17 |
benji | bac: looks good! | 20:19 |
bac | tahnks | 20:19 |
benji | vim protip: if you have ever lost some important edits down an undo/redo blind alley, look up the :earlier command | 20:44 |
benji | bac: do you have time for a very small review? | 20:55 |
bac | yep | 20:55 |
benji | here you go https://code.launchpad.net/~benji/launchpad/bug-810113/+merge/73591 | 20:55 |
=== matsubara is now known as matsubara-afk | ||
* benji probably should have mentioned bac's name. | 21:02 | |
bac | i saw it. | 21:03 |
bac | benji: done | 21:03 |
benji | ah!, thanks | 21:03 |
bac | flacoste: that's a good idea. i'll look at a sweep tomorrow | 21:04 |
soren | benji: Awesome review music. | 21:04 |
benji | soren: :) | 21:05 |
flacoste | bac: thanks for fixing this! | 21:05 |
benji | bac: "Your review would've been much faster if it weren't for the insane music." I LOLled | 21:06 |
soren | benji: Just bought the whole album. :) | 21:13 |
benji | soren: cool, he definately has some skill at what he does | 21:15 |
mwhudson | er | 21:17 |
mwhudson | would anyone like to talk about the lp javascript with me? | 21:18 |
mwhudson | ah | 21:19 |
LPCIBot | Project devel build #1,018: STILL FAILING in 3 hr 57 min: https://lpci.wedontsleep.org/job/devel/1018/ | 21:19 |
mwhudson | "These installation instructions apply to the new PostgreSQL database infrastructure as found in Ubuntu Breezy and later, and Debian Etch and later. " | 21:48 |
* mwhudson thinks this line of prose has probably outlived it's usefulness | 21:48 | |
lifeless | nuke from orbit | 21:48 |
=== micahg_ is now known as micahg | ||
wallyworld | mwhudson: did you find someone to talk about lp javascript? | 23:37 |
mwhudson | wallyworld: no | 23:37 |
wallyworld | did you have a question? not sure if i can help or not | 23:37 |
mwhudson | wallyworld: well, i dunno | 23:37 |
mwhudson | wallyworld: i sort of answered my own question | 23:37 |
wallyworld | ok | 23:38 |
mwhudson | wallyworld: do you know much about the ChoiceSource & related widgets? | 23:38 |
wallyworld | i know what i need to to use them | 23:38 |
mwhudson | there is code knocking around in there to replace icons with loading icons and so on | 23:38 |
mwhudson | but _most_ usages in lp now use sprites | 23:39 |
mwhudson | & so have to do different things | 23:39 |
wallyworld | yeah | 23:39 |
mwhudson | i was sort of vaguely wondering whether it makes sense to change the widget to assume sprites | 23:39 |
wallyworld | when you say loading icons, you mean display a spinner while loading takes place? | 23:39 |
mwhudson | wallyworld: yes | 23:39 |
mwhudson | wallyworld: the context for all this is that i've write a greasemonkey script for editing work items | 23:40 |
mwhudson | http://people.linaro.org/~mwh/work_item_editor.png | 23:40 |
wallyworld | the other pattern i've seen is to add "spinner" to the class of an item | 23:40 |
* wallyworld looks | 23:40 | |
mwhudson | i had to copy paste hack the source of ChoiceSource to get this to work | 23:40 |
wallyworld | and you want to show a spinner when you clock the yellow edit icon? | 23:41 |
mwhudson | and i'd like to get my changes into lp | 23:41 |
mwhudson | no | 23:41 |
mwhudson | i want to understand the code a bit to know if my changes will do damage :) | 23:41 |
wallyworld | ah right. ChoiceSource is used in only a few places from memory eg blueprints | 23:42 |
wallyworld | i can look at your branch and see if anything jumps out if you like | 23:42 |
mwhudson | bugtask this affects me uses it too | 23:42 |
mwhudson | but yeah, it's fairly isolated | 23:42 |
mwhudson | wallyworld: https://code.launchpad.net/~mwhudson/launchpad/ChoiceSource-flexibility | 23:43 |
* wallyworld looks | 23:43 | |
mwhudson | i should check if my greasemonkey script works with my changes too, or this is a bit pointless :) | 23:43 |
wallyworld | :-) | 23:44 |
mwhudson | hm | 23:48 |
mwhudson | wallyworld: why would LPS.WidgetPositionAlign be undefined on a blueprints.launchpad.dev page but there on production or staging? | 23:48 |
mwhudson | i guess the js is built differently? | 23:49 |
wallyworld | mwhudson: good question. i've recently noticed that too. the same source files are used in both dev and prod, but prod is minified, that's the only difference afaik | 23:50 |
wallyworld | mwhudson: we recently made a change to the build prcess so that yui is incuded as a tarball in downloadcahce and unpacked as part of the build | 23:51 |
wallyworld | so we can easily use a different version by modifying versions.cfg | 23:51 |
wallyworld | but i can't see offhand how that would account for the difference | 23:51 |
mwhudson | i can't really see how that would matter | 23:52 |
mwhudson | i think i can make it work by wrapping all my script in a LPS.use( '...', function (Y) { ... }); | 23:52 |
wallyworld | yeah, so something else is happening | 23:52 |
mwhudson | which is probably a better idea anyway | 23:53 |
mwhudson | (it may be an undeployed change) | 23:53 |
mwhudson | ah uh, could it be a race condition? | 23:54 |
wallyworld | your branch looks ok to me. you could run all the yui tests but i don;t think we have coverage for what you've changed | 23:54 |
mwhudson | i don't know when greasemonkey scripts run | 23:54 |
wallyworld | could be | 23:55 |
wallyworld | i can't recall the exact error i've seen in the firebug console wrt an undefined symbol | 23:55 |
mwhudson | no, that doesn't make sense | 23:55 |
wallyworld | mwhudson: just checked lp.dev and lp.net. both give this error: yui: NOT loaded: widget-position-ext. so i misremembered what i saw. not related to your issue perhaps | 23:58 |
mwhudson | ah yeah i see that too | 23:59 |
wallyworld | but there's no apparent problems | 23:59 |
mwhudson | i don't see that on devel though... | 23:59 |
wallyworld | i do | 23:59 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!