[00:06] cody-somerville: Hi, can you QA your authorized_size thing? [00:06] And jelmer's thing [00:07] jelmer's QAed half of his, but bug #296153 is still pending [00:07] <_mup_> Bug #296153: does not mirror bzr branches over ftp < https://launchpad.net/bugs/296153 > [00:08] wgrant: Your testfix switched to rSP() in the factory? [00:08] No, rSP doesn't work there. [00:09] I logged in as an admin instead. === matsubara is now known as matsubara-afk [00:22] abentley: hi, with the mustache/handlebars template in a file, i notice there's no reference to it in the buglisting yui tests [00:24] so it doesn't appear the rendering aspects are tested in that case, whereas in the pillar sharing stuff, i have yui tests for the rendering and therefore need the load the template in the tests [00:25] that was one of the reasons for having the template in the javascript [00:25] i guess i could pull in the template in the test html [00:30] StevenK, wgrant: bug 296153 is qa-ok [00:30] <_mup_> Bug #296153: does not mirror bzr branches over ftp < https://launchpad.net/bugs/296153 > [00:31] wallyworld: yea, that's a big issue we've got to figure out for JS testing as we move more client side rendering [00:33] rick_h_: i'll seeing how it flies pulling it out in a file, as per the code review request. i was happy enough to leave it in the js for now but there's been a couple of objections [00:33] rick_h_: in this case, there's NO server side rendering, it's all client [00:34] wallyworld: right, but you want the tests and the live site using the same template if possible so that they match and test correctly [00:34] but it'sa bit tough/pia [00:34] pita that is [00:35] rick_h_: of course i want to use the same stuff :-) that's why it was in the js [00:35] i think i can put in a file and load the file in the test html [00:35] trying that now to see if it has legs [00:46] jelmer: Thanks. [00:48] wallyworld: yea, that's what I've done in my app is create a jstemplate file that I include in both places [00:53] rick_h_: if i have a script element with a src attribute, what's the magic to get yui to be able to get at the contents of the referenced file? [00:54] Y.one('#id').getContent() I think [00:54] oh, it's got a src attribute? hmmm, not sure if that works [00:54] yeah, getContent() fails [00:55] well, i used src since i wanted to reference the single copy of the mustache template file [00:55] that same copy that the view passes to the js in prod [00:57] maybe ScriptNodeDataSource [00:59] wallyworld: I would hope that you couldn't get at the content. [00:59] That would be a security issue unless very carefully restricted. [00:59] wgrant: it's in the test html [00:59] to load the mustache template data from a file to pass to the widget [01:00] on prod, the pythov view does this [01:00] but i want to use the same template for testing [01:00] Ah, interesting. [01:00] i currently have the template in the js but people don't like this [01:01] so i'm trying to find another way [01:01] buglistings does it this way but there' no yui rendering tests using the template [01:01] so they didn't need to solve this [01:05] so it appears html5 has a File api which may be useful [01:07] rofl [01:07] glwt [01:08] well spec draft is from oct 2011 so it's "ancient" :-) [01:28] Hmm [01:28] I can't talk to bits of the DC [01:30] Ah, there we go. [01:33] wallyworld: hi [01:33] lifeless: hello [01:33] wallyworld: you should deliver the template via the API/view involved - combo loader eventually [01:33] wallyworld: is there a reason that that won't work ? [01:34] lifeless: that's all well and good but i need the same content for yui tests [01:34] I don't see the problem [01:34] that's the issue here [01:34] tests have a html file and a js file [01:34] There's no API or view in a YUI test. [01:34] the yui tests are loaded and run by the lp test driver which is part of our regular python stack [01:35] how will the yui tests work in a non-launchpad.js world ? [01:35] yui tests don't have our python stack, just html and javascript [01:35] the yui tests are just calling .html files iwth JS that runs on them [01:35] our test stack is just a vessel to load .html files and parse response [01:35] eg you can load the test html file in a browser [01:35] rick_h_: and the html5-browser wrapped around that [01:35] and the tests will run [01:35] with no lp running at all [01:36] just pure js [01:36] we'd need to find some way to write templates to a .html file and include it into the test.html file (iframe or something?) and pull that html file into the zope template as required for the JS on page to use [01:36] no yui ? [01:36] yui, yes [01:36] rick_h_: guh what [01:36] but reasd off disk locally [01:36] I've not had a chance to think it through 100% yet. I just know I hit it when updating the tests and it's on my list. [01:37] lifeless: so you see the problem now? [01:37] rick_h_: so lets skip mustache [01:37] wallyworld: I see the corner we've painted ourselves into [01:37] so for instance, in my outside application, tests are run via the application so that I can import the same template file in the tests that the application uses [01:37] wallyworld: we've violated abstractions and are now suffering [01:37] lifeless: well, it's how yui tests have been written since day 1 [01:38] lifeless: You might be thinking of YUIXHR [01:38] Which uses an appserver. [01:38] I might be [01:38] so, lets break this into bits [01:38] lifeless: there's no server side rendering here [01:38] unit tests should not be testing the template outputs; thats orthogonal [01:38] so involing the view is bogus [01:39] testing that a template is rendered and executed is sensible, but the code under test is supplied the template by the server [01:39] the view unit tests do need to test the rendering of data [01:39] sure, but we need a way to test without the server where the yui unit tests can get at the template [01:39] single sourced [01:39] and that's the issue [01:40] so, I think I'm going to get my nose out of this discussion, because I clearly have a different model for whats going on [01:40] lifeless: What about the unit tests for the template rendering? [01:40] Surely they need to be testing the template output. [01:40] I will throw a few key constraints in though to save us later [01:41] firstly, the templates -must not- be inline in our js or tal files [01:41] impossible to write yui unit tests without code copying then [01:41] we will be compiling them and shipping the compiled result as js to use, accessed probably via the combo loader, or in a pinch via the json cache [01:42] if the template is inline in our js or tal, that won't work, and we'd be screwed. This is just around the corner when the combo loader comes live && YUI 3.5 [01:42] nope, the combo loader can handle that ust fine [01:42] orly [01:43] the template is built up inside our javascript [01:43] and accessed via a method on the view widget [01:43] it will extract the template from another file, compile it with nodejs, write that to a temp file and then we'll serve that? [01:44] I feel very confused. [01:44] no, and we use this in several places, we use Node.create(template) where template is a concatenated string of html [01:44] I'm talking about handlebars templates. [01:44] on in the case of mustache, to_html(template) [01:44] wallyworld: The template is rendered [01:44] same thing [01:44] The rendered template is given to Node.create [01:44] yes, i was using an example [01:44] wallyworld: its not the same thing, the template gets *compiled* [01:44] wallyworld: it comes down as javascript, in its own source file. [01:45] i was trying to issultrate that the template does not have to come from server side [01:45] it can be constucted the the js [01:45] we use that right now in the code [01:45] The template has to. [01:45] no [01:45] The JS can't calculate it client-side. [01:45] yes, it does [01:46] No. [01:46] we use it now [01:46] wgrant: handlebars compiler can run client-side, but it is overhead [01:46] It can't, because we have to specify it somehjow. [01:46] I mean a (potentially compiled) template. [01:46] Has to be transmitted from the server [01:46] at some point. [01:46] no, let me find the example [01:46] we wouldn't want a compiled template from a foreign site, but from LP itself, we want compiled templates I think. [01:47] this 'no' business doesn't really elucidate the issues [01:47] wallyworld: You are *rendering* the template client-side. [01:47] we concatentate strings to form a mustache template and then call to_html [01:47] Oh god [01:47] /wrists [01:47] wallyworld: thats a creative use of mustache [01:47] wallyworld: its not how it is intended to be used though, so I'm curious why that is done [01:47] lifeless: it's an extenstion of a prior "pattern" in our js [01:48] wallyworld: Possibly, but humour me [01:48] wallyworld: assume I've no prior knowledge and need to be taught why we do this to a mustache template [01:48] lifeless: going way back, people used Y.Node.create(html) where the html was ['stuff', 'stuff'].join(' ') [01:49] wallyworld: ok; but what joins that into how we use mustache? why is it relevant? [01:49] then, in some previous code review, it was suggested that a mustache template be used to get the html [01:49] so, html = Y.lp.mustache.to_html(template) where template = [xxx].join(' ') [01:49] wallyworld: ok, I'm clear on what is being done, I'm not clear on why. [01:49] it was used for a local popup dialog or something [01:50] wallyworld: you may not know, which is fine. [01:50] wallyworld: if you don't, we can skip trying to understand as a group, and move on; if you do know, I'd really like to grok this. [01:50] lifeless: so, it wasn't for main view content, but for a confirmation dialog [01:51] where the data to ask for confirmation for was best rendered using mustache [01:51] since it contained a list of things [01:51] easier than building the html by hand [01:51] wallyworld: that would normally be to_html(template, data) [01:51] yes [01:51] where data has that list in it [01:51] yes [01:51] so why was this done differently ? [01:51] define "this"? [01:51] 14:49 < wallyworld> so, html = Y.lp.mustache.to_html(template) where template = [xxx].join(' ') [01:52] i left out the data param [01:52] pseudo code and all that [01:52] why isn't template static though ? [01:52] it is [01:52] Perhaps I misunderstand [01:52] it is, but it has to live somewhere. Usually, you write out a [20:39] oh, I see [20:39] james_w: vala backend returning non-integer [20:39] bac, hmm, odd [20:39] rick_h_, let me double check, but I guess it'd fail if I had it wrong (I copied from another test.html file) [20:39] bac, did it say what it did return? [20:40] salgado: you should be good then if you copied since I updated them all recently [20:40] rick_h_, yep, it looks just like the others in that template :) [20:40] salgado: coolio [20:41] james_w, wait that seems to be another permission problem with with auto_conf_config [20:42] james_w, i'll go forward fixing the execute privileges [20:42] bac, ah, helpers/* will need to be +x too [20:42] ok [20:44] deryck: jcsackett had to run, can you second my ok on this please? https://code.launchpad.net/~salgado/launchpad/bug-415365/+merge/95447 [20:46] rick_h_, done. [20:46] ty [20:46] I'm trying to run js tests inside an lxc and am getting "RuntimeError: Gtk couldn't be initialized". any ideas what I'm missing? [20:49] salgado: http://bazaar.launchpad.net/~sinzui/html5-browser/trunk/view/head:/README installed? [20:49] rick_h_, I think I do; I get that when import html5browser [20:49] ok [20:50] so most of these things need xvfb but not sure why you'd get a gtk issue [20:50] sinzui: any ideas? ^ [20:50] salgado: have a traceback to paste perhaps? [20:51] this is what actually happens when the test imports html5browser: http://paste.ubuntu.com/864114/ [20:51] folk who would like a nicer deploy report should check out lp:~james-w/+junk/deploy-tracker [20:52] rick_h_, seems to work with xvfb-run [20:53] http://ec2-23-20-113-165.compute-1.amazonaws.com/ - turn on 'team info' during SSO handshaking [20:56] salgado, that looks like the wrong screen. [20:57] salgado, does html5browser work when run from a console on out owne machine? [20:57] * sinzui should have added the show_browser option so we could see it run [20:58] sinzui, I tried 'bin/test -t inline_edit' inside a container and it failed with that traceback when html5browser tried to import Gtk. running with xvfb-run worked [20:58] I don't have html5browser installed on my machine; only on that container where I run LP [20:59] salgado, okay. This is a bit out of my realm of confidence [20:59] salgado, Is this lucid, oneiric or precise in the container [20:59] sinzui, oneiric [21:00] okay, that is the version I wrote first and actually expect to work [21:04] salgado, the official answer is that Gtk cannot find the display. If you always run in a container you may need to pass the display in the env. Maybe we need to smarten up our test script to warn if there is no display set [21:04] rick_h_, would you mind landing https://code.launchpad.net/~salgado/launchpad/bug-415365/+merge/95447 for me as well? :) [21:07] I think html5browser should catch the check error and explain the display it thinks it has. [21:08] sinzui, indeed, with the DISPLAY set it works [21:12] salgado, I reported Bug #944348 about this [21:12] <_mup_> Bug #944348: warn when display is not set. < https://launchpad.net/bugs/944348 > [21:14] sinzui, nice, thanks! [21:16] salgado: ok, working on getting landing going [21:23] rick_h_, great, thanks again :) [21:24] salgado: np [21:37] deryck: There's no OCR. Would you be able to review https://code.launchpad.net/~abentley/lp-dev-utils/ec2/+merge/95468 ? [21:37] abentley, sure. [21:38] deryck: thanks. === salgado is now known as salgado-afk [21:42] abentley, that's alot of python. :) Is it all straight cut over from lp tree, except for the change about commit tags in MPs? [21:44] deryck: Here are the changes I made: http://pastebin.ubuntu.com/864191/ [21:44] abentley, ah, that's very helpful thanks. [21:45] deryck: Mostly it's import name changes, but there are some minor tweaks. [21:49] abentley, looks fine. And we know it works. :) r=me [21:51] deryck: thanks! [21:52] abentley: btw the location of trunk has changed [21:52] abentley: its now lp:~canonical-launchpad-branches/lp-dev-utils/trunk (if you aren't using hte lp:lp-dev-utils alias) [21:52] lifeless: I used lp:lp-dev-utils [21:58] lifeless: hey! is it worth filing a ticket about slowness of mailing list messages? [21:59] no [21:59] we like it slow [21:59] awesome [21:59] mtaylor: actually, there is one I think, and its a well known issue [21:59] mtaylor: I can point you at the discussion on the -dev list if you like [21:59] we're || close to a solution [22:00] I'll just take your word for it that you're aware and have it almost fixed [22:00] as you rarely lead me astray [22:00] quadratic archive page writes [22:00] sinzui has a grackle. [22:00] jeez [22:00] has he seen a doctor? [22:00] that doesn't sound good [22:01] I have not, but having spent about 9 hours out of my skull I think I might [22:01] I still fear that If I yawn, the a hole in the universe will open and I will fall though it again [22:02] Later on, everyone. [22:02] mtaylor, There is a specific critical bug that is the causes of slowness. I speculated about how to address the immediate concern [22:04] sinzui: awesome [22:04] mtaylor, lifeless, wgrant: I think this bug needs fixing: bug #942305 right away [22:04] <_mup_> Bug #942305: forster is load spiking due to LP mailman integration < https://launchpad.net/bugs/942305 > [22:05] I have an idea in it that need validation [22:10] looking [22:10] sinzui: looking as well - as is jeblair [22:10] sinzui: which lists are key? [22:11] ubuntu-x-swat is the leading cause [22:11] It was a few months ago, at least. [22:11] By a significant margin. [22:12] Similar to the way we don't generate ubuntu-bugs@lists.u.c HTML archives. [22:12] we can look at the messages in the arch queue to see which are the pathological lists [22:14] lifeless: Heh, slony takes 80%+? Try 98-99.5% [22:14] wgrant: understate overdeliver === wallyworld changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: wallyworld | Firefighting: - | Critical bugtasks: 4*10