/srv/irclogs.ubuntu.com/2009/09/08/#launchpad-dev.txt

thumpermwhudson: where is the writable parameter coming from?00:01
mwhudsonthumper: the xml-rpc server00:01
mwhudsonthumper: which does check_permission(branch, 'launchpad.Edit')00:01
thumperhmm..00:02
thumperseems that something is wrong00:02
jmlsee lp.code.xmlrpc.codehosting and lp.code.interfaces.codehosting00:02
* thumper tries to work it out in his mind00:02
wgrantThis code is rather difficult to navigate :(00:03
lifelessthumper: I've spent as much time as I can afford on this. Sorry.00:03
thumperlifeless: ok00:03
lifelessthumper: its a safe operation, bzr does it automatically without blocking out other users, it will help your servers and your users.00:04
jmlwgrant, sorry. it's as easy as I could make it.00:05
lifelessthumper: oh, and if questions like 'how much will it help' are in your mind, use wget to mirror the public repo bit-for-bit, run a 1.17 server against it and fetch using bzr nightly00:06
lifelessthen pack it using 1.17 (with C extensions, of course), and repeat.00:07
jmlthumper, mwhudson: has someone addressed the broken test in db-devel?00:26
mwhudsonjml: thumper is, i mailed the list00:26
jmlmwhudson, ahh cool00:27
jmlsorry for missing it.00:27
mwhudsonnp00:27
=== Ursinha is now known as Ursinha-afk
jmlmwhudson, do you want to chat about how to fix bug 41969101:34
ubot3`Malone bug 419691 in launchpad-foundations "Many tests use unnecessarily expensive layers" [Undecided,New] https://launchpad.net/bugs/41969101:34
mupBug #419691: Many tests use unnecessarily expensive layers <build-infrastructure> <Launchpad Foundations:New> <https://launchpad.net/bugs/419691>01:34
mupBug #419691: Many tests use unnecessarily expensive layers <build-infrastructure> <Launchpad Foundations:New> <https://launchpad.net/bugs/419691>01:34
mupBug #419691: Many tests use unnecessarily expensive layers <build-infrastructure> <Launchpad Foundations:New> <https://launchpad.net/bugs/419691>01:34
mwhudsonuh01:35
mwhudsonjml: skype?  one sec in that case01:35
jmlbot wars :)01:35
spmthumper: lifeless: fyi. bzr pack initiated on db-devel, mirrors01:35
thumpermwhudson: I'm still confused01:42
thumperbut unfortunately out of time01:42
mwhudsonthumper: i'm on the phone01:42
mwhudsonlater i gues01:42
thumpermwhudson: the fix for the db-lp builder is not as trivial as I hoped01:42
thumperwill fix after class01:42
mwhudsonthumper: bugger01:42
spmthumper: lifeless: fyi. bzr pack completed on db-devel, mirrors - looks to have finsihed about... 25 mins ago. taking around... 15mins to do it.02:16
wgrantspm: Looks much better. Still not perfect, but much better.02:21
spmwgrant: the end result is ~ 120Mb - eyeball wag02:22
wgrantIs devel going to get the treatment too? That's the one that is going to reinforce people's thoughts about how much bzr sucks when they try to get LP's code.02:22
spmyeah - it will. juggling 3 things at once :-)02:22
wgrantGreat.02:22
spmneed to run jml's nifty get-branch-info script etc02:23
spmdevel is started02:24
wgrantWhat does that do? Tell you the ID/path?02:25
spmyarp. decodes the nice name into the 00/00/12/34 path02:27
spmhas a few other nifties that help verify you've got the right branch.02:27
wgrantYay, looks like Ohloh's LP import is still working.02:28
spmmwh's hack of sending an invalid .bzr location to codebounce is another used method02:28
wgrantOr even a valid one.02:28
wgrantSometimes it'll redirect you to the internal URL.02:29
wgrantNo idea why.02:29
spmwgrant: ha. you'll chuckle - straight from our "howto" notes: http://bazaar.launchpad.net/~wgrant/ivle/trunk-mirror/.bzr/ergasdf02:29
spmNooooo! it's ont working any more!!! mwhudson ^^02:30
wgrantIndeed, I believe I deleted that branch some time ago.02:30
spmahh. does still work - the branch needs to exist in the 1st place.02:30
spmhttp://bazaar.launchpad.net/~drizzle-developers/drizzle/development/.bzr/wibble by way of example02:31
wgrantIt got renamed to trunk when we moved to bzr.02:31
spmso the diff there; with jml's script; is the latter gives the full path on disk; vs just the 00/00/12/34 bit.02:32
wgrantAh.02:32
spmtho tbh, I can do the pre-path in my sleep I expect :-)02:32
* mwhudson lunchifies02:37
spmand devel is also el-packed. fnished about 4 mins ago. ~ 111Mb. So again, aruond 15mins to run.02:45
wgrantExcellent.02:46
thumpermwhudson: quick call?04:08
mwhudsonthumper: ok04:09
thumperomg skypes sucks04:10
thumpermwhudson: what is the revno of the puller fix?04:35
thumpermwhudson: I'm going to request a CP04:35
mwhudsonthumper: looking04:35
mwhudsonthumper: r935504:36
mwhudsonthumper: would be good to test it out on staging first i guess04:36
mwhudsonexcept that it's not in db-stable yet, of course04:37
thumperhmm..04:38
mwhudsonoh fucking hell04:39
mwhudsonmischan :)04:39
thumpermwhudson: buildbot?04:39
mwhudsonthumper: yeah04:40
thumpermwhudson: ok, lets wait for staging testing then04:40
thumpermwhudson: do I need to update the dev tools to get the latest ec2 image?04:41
jmlthumper, got a moment?04:41
mwhudsonthumper: no04:41
mwhudsonthumper: the current ec2 image is rather old though04:41
mwhudsonjml: so it turns out that the time 'initialize database' takes for buildbot slaves varies wildly04:46
mwhudsonjml: it's not usually 20 minutes, more often ~104:46
jmlmwhudson, wow.04:46
jmlmwhudson, I'm surprised04:46
mwhudsonjml: yeah04:46
thumperjml: yes(ish)04:47
* wgrant stabs Launchpad mailing lists in the face.06:13
wgrantStop. Breaking. Threading.06:13
* mwhudson eods06:45
jmlBjornT_, I assume all the bug mail you just generated was only unassigning yourself?08:19
BjornT_jml: yeah. and marking some bug as fix released, but it's safe to ignore everything08:24
jmlBjornT_, thanks.08:24
=== BjornT_ is now known as BjornT
adeuringgood morning08:28
* jml off08:32
mrevellMorning!09:17
jtvAre we in testfix?09:49
=== mrevell changed the topic of #launchpad-dev to: Launchpad Development Channel | Week 2 of 3.0 | https://dev.launchpad.net/ | Please use #launchpad for support. | Get it: https://dev.launchpad.net/Getting | http://paste.ubuntu.com/ | 3.0 goal is to convert all templates: http://people.canonical.com/~beuno/conversions.html | Buildbot is down
jtvmrevell: thanks09:51
bigjoolshttps://lpbuildbot.canonical.com/waterfall09:51
jtvbigjools: so it's the db_lp failure that put us in testfix mode?  All this usually happens overnight for me, so I haven't built up any real experience with it.09:52
saispohi09:53
bigjoolsjtv: mwhudson was fixing something with it, it might be bustifuct still09:54
thumperI don't know why pqm still thinks it is in testfix09:55
thumperI'm hoping the jscheck builder failure didn't tweak it09:55
* thumper looks at saispo09:55
lifelessjml: hai09:56
wgrantbigjools: AFAICT archiveuploader still doesn't apply any checks that binaries do not conflict.09:56
bigjoolswgrant: I've seen failed-to-upload errors for that though?09:57
wgrantbigjools: Right, sorry, I was ambiguous. There is a check that they are not older than the currently published version, but not that they have never existed before.09:58
bigjoolsthat's wrong then I guess09:58
thumpermy icy stare obviously scared him off :)09:58
bigjoolsthumper: I still have nightmares about your Halloween face!09:59
thumperbigjools: I need to replace my fluffy bunny picture with my halloween hackergochi10:00
wgrantbigjools: It should probably check that the version hasn't existed before, yes. It's unclear, however, whether one should be able upload an older version of either. I'm really not sure.10:00
mwhudsonwe shouldn't be in testfix per PQM10:01
bigjoolswgrant: yeah, it's not exactly consistent with the source processing10:01
mwhudsonif we are, something's not working right10:01
thumpermwhudson: something isn't working right10:01
mwhudsonthumper: luckily i'm not an osa so i can't help diagnosis or help10:02
mwhudsoni guess the buildbot-poll script is barfing for some reason10:03
BjornTjtv, thumper: in my experience, it's good to show the exact error message from pqm to others. it happened quite often that people thought that we were in testfix mode, just because pqm didn't accept their commit message10:12
thumperBjornT: Commit message [[rs=thumper][ui=none] Upgrade to bzr 1.18.] does not match commit_re [(?is)^\\s*\\[testfix\\]\\s*\\[(?:release-critical|rs?=[^\\]]+)\\]]10:13
bigjoolsregex hell10:13
thumperBjornT: that's the testfix regex10:13
intellectronicamaybe we need a UI for commiting10:13
thumperheh10:13
intellectronicathumper: why not. one day, when you can commit straight from a merge proposal, we could have all the fields that are relevant, and that will build the commit message for you10:14
wgrantintellectronica: I think that one day the commit message will be normal text.10:15
wgrantintellectronica: And the silly review metadata will be stored in the MP.10:15
BjornTthumper: indeed. did you submit it before or after stub's testfix commit?10:15
intellectronicawgrant: nah, you want it in bzr, but maybe it can be stored in bzr metadata (as long as there's a simple way to read it back)10:16
wgrantintellectronica: OK, bzr revision properties then.10:16
wgrantintellectronica: But automatic.10:16
thumperBjornT: stub submitted his testfix after I submitted my testfix10:16
intellectronicayeah10:16
thumperBjornT: and the last one was after stub's10:16
thumperBjornT: it appears there is something screwy somewhere10:16
BjornTthumper: how long after? it takes a while before we get out of testfix mode.10:17
thumperBjornT: about 40 minutes10:17
BjornTthumper: ok. i don't see a testfix for the current db-devel failure10:19
thumperBjornT: 4:42 on the waterfall10:20
BjornTthumper: there are build failures for db-devel after that commit10:21
BjornTthumper: the latest one is at 06:30:0510:21
thumperBjornT: fair enough10:21
* thumper chucks in the towel10:25
deryckMorning, all.11:01
jtvhi deryck11:13
mrevellyo dez11:19
danilosBjornT, thumper: heya, I've got a breadcrumbs issue I've been wondering about (I'll ultimately wait for salgado, but perhaps you guys know why this could be)11:59
danilosbasically, an object doesn't end up in request.traversed_objects, and I am not exactly sure why12:00
wgrantbigjools: The maximum time remaining should probably be exposed in each package row of the PPA index, as builds are undiscoverable.12:02
bigjoolsundiscoverable?12:03
noodles775on the new +packages traversal, perhaps.12:03
wgrantnoodles775: Probably.12:03
wgrantbigjools: I've seen people completely fail to understand that the build pages exist.12:03
bigjoolsif there's room in the new +packages table, we could potentially show it for each arch12:05
bigjoolsbut it would be nice to emphasis the links if people are missing them12:05
noodles775Maybe we could even link from the 'Latest updates' portlet that will be on the ppa index.12:06
wgrantIt would be useful anyway to show the remaining time, even if it's only the maximum of all pending builds.12:06
bigjoolsnoodles775: not sure that's the right place, it won't necessarily show all uploads with pending builds will it?12:06
noodles775bigjools: just the latest 5 published spph's (with their current build status)12:07
bigjoolsyeah, so it's probably best to fit something in the table12:07
=== Ursinha-afk is now known as Ursinha
=== mrevell is now known as mrevell-lunch
=== UBot-tn is now known as MaWaLe
DavieyHey, is there a technical reason why merge review email needs white space before the command?14:59
=== ursula_ is now known as Ursinha
intellectronicaDaviey: no, that's the ui. with space in front of the command it's easier to distinguish from the text. it's a quoting mechanism15:09
Davieyah!15:10
=== mrevell-lunch is now known as mrevell
Davieyintellectronica: The annoying thing is, an email that purely states "merge approve" is obviously not a normal comment.. but is seen as that :(15:11
kfogelsalgado: [transfer ping from #launchpad] :-)15:57
=== Ursinha is now known as Ursinha-afk
danilossalgado: heya, my breadcrumbs master16:01
salgadodanilos, otp16:01
danilossalgado: hang up and talk to me! :)16:02
kfogeldanilos: take a number, man16:04
daniloskfogel: heh :)16:09
rockstarabentley, call?16:17
abentleyrockstar: sure.16:18
danilossalgado: when do you expect to be available?16:52
salgadodanilos, in a few minutes16:53
=== matsubara is now known as matsubara-lunch
kfogelnoodles775: hey, re your Hacking Soyuz UDW session: it looked like it went well to me, but did any questions come up (especially re community development) that stumped?17:01
bigjoolskfogel: I was there, and I didn't see any, in fact there was only one guy interacting17:04
kfogelbigjools: well I think the questions arrive via backchannel, so it can look less active than it is.17:06
bigjoolskfogel: yeah I was on the chat channel as well17:06
kfogelbigjools: looking at the transcript, there were some questions.  Were they all the same person?17:07
bigjoolskfogel: mostly noodles himself :)17:07
kfogelbigjools: oh :-)17:07
salgadodanilos, pong17:11
salgadokfogel, pong17:11
danilossalgado: hey hey17:11
danilossalgado: so, attempt at a quick question: DistroSeriesLanguage, traversed via stepthrough, doesn't show up in request.traversed_objects, so I can't introduce a breadcrumb for it; is there way around it?17:11
kfogelsalgado: you were working on making launchpad-reviews public, but with exception for security branches.  I'm wondering where that's at.17:12
kfogelsalgado: dang, danilos beat me to it, and he didn't even take a number :-).17:12
kfogelsalgado: seriously, finish with danilos first, since my question is likely to take longe.r17:12
daniloskfogel: heh, let's see if salgado can multi-task :)17:12
salgadodanilos, yes, there's a bug open about that and I have a workaround in one of my branches17:12
salgadodanilos, basically, you have to define a Navigation class for DistroSeriesLanguage17:13
danilossalgado: ok, I am happy to wait for it to land, but can you point me at your branch so I make sure it works17:13
danilossalgado: ah, ok, any examples that might kick start me?17:14
danilossalgado: eg. does +source have that?17:14
salgadodanilos, I thought I'd done that for DistroSeriesLanguage but I didn't17:14
danilossalgado: there's also ProductSeriesLanguage, perhaps that's where you did17:15
salgado+class AnnouncementNavigation(Navigation):17:15
salgado+    """The navigation for `IAnnouncement`."""17:15
salgado+    usedfor = IAnnouncement17:15
danilossalgado: register it with browser:navigation, right?17:15
salgadodanilos, that's what you need, together with a browser:navigation zcml declaration17:15
danilossalgado: ok, cool, thanks17:16
salgadokfogel, I never got around to it, sorry17:16
salgadodanilos, bug 42389817:17
mupBug #423898: Should not rely on Navigation._publishTraverse() to have objects appended to request.traversed_objects <Launchpad Foundations:Triaged> <https://launchpad.net/bugs/423898>17:17
ubot3`Malone bug 423898 in launchpad-foundations "Should not rely on Navigation._publishTraverse() to have objects appended to request.traversed_objects" [Undecided,Triaged] https://launchpad.net/bugs/42389817:17
mupBug #423898: Should not rely on Navigation._publishTraverse() to have objects appended to request.traversed_objects <Launchpad Foundations:Triaged> <https://launchpad.net/bugs/423898>17:17
mupBug #423898: Should not rely on Navigation._publishTraverse() to have objects appended to request.traversed_objects <Launchpad Foundations:Triaged> <https://launchpad.net/bugs/423898>17:17
kfogelsalgado: hey, we're all busy, I understand.  Can you tell me what's left on it?  Maybe I can help unblock.17:17
daniloswhoa, whoa, ubot3`, mup, I hear you17:17
danilossalgado: thanks17:17
kfogeldanilos: :-)17:17
salgadokfogel, I need to read the thread again to see what should be done17:18
salgadokfogel, I'll do that today and get the ball rolling there17:20
kfogelsalgado: thank you, much appreciated.  If it's a matter of seeing which way the ball has to roll, but not having time to roll it, please don't hesitate to say so -- I'm happy to do what I can (& to help find other people to do what I can't) if needed.17:21
salgadokfogel, will do, thanks17:21
salgadoout to lunch now, back soon17:22
=== salgado is now known as salgado-lunch
=== Ursinha-afk is now known as Ursinha
=== matsubara-lunch is now known as matsubara
=== kfogel is now known as kfogel-lunch
=== salgado-lunch is now known as salgado
barryoowww!  did --headless suddenly get much faster?18:35
barrysalgado: ping18:42
salgadohi barry18:42
barrysalgado: hi.  about the not found error page title18:42
rockstarWhat is the url that gives me all the icons available in LP?18:43
barrysalgado: i think i should move pagetitles.py/launchpad_notfound into a page_title attribute on NotFoundView18:43
salgadorockstar, https://edge.launchpad.net/+graphics18:43
barrysalgado: but i also think i should move the other error related pagetitle.py attributes onto their respective classes in error.py.  what do you think?18:43
rockstarsalgado, thanks18:43
barrysalgado: and also, should we put a page_title attribute on SystemErrorView?18:44
salgadobarry, good question; let me check18:45
salgadobarry, I think that's a good idea, together with moving titles into webapp/error.py18:48
barrysalgado: cool.  let me make that change and i'll send you the incremental18:49
=== gary_poster is now known as gary-away
kfogel-lunchflacoste: voice of sanity on "offer mentorship" ui, thank you19:33
barrysalgado: ping19:43
salgadobarry, pong19:43
barrysalgado: i wanted to talk about @@+page-title/has_custom_title again19:45
barryi'm not sure the check is quite right.  the problem is, if you check for the existence of breadcrumbs, then putting a page_title on your view isn't enough to override19:45
barrysalgado: ^^19:47
barrysalgado: so the question is whether a view should have to specifically say "i don't have breadcrumbs, and oh yeah here's my page title" or just the latter.19:48
barrysalgado: i think it should be just the latter.  what do you think?19:49
=== kfogel-lunch is now known as kfogel
salgadobarry, I think it's the latter, but all views must specify their title; either in pagetitles.py or through an attribute19:53
salgadoI suggest something along these lines:19:53
salgadoAll view classes either define a .title attribute or have an entry in pagetitles.py19:53
rockstarabentley, I'm trying to use the factory to create some revisions for a branch, but they don't seem to be showing up.19:54
rockstarabentley, do you have any insight as to what I might be missing?19:54
abentleyrockstar: You're looking for them on the database class, right?19:55
salgadobarry,  but some views may also define a .page_title, which takes precedence over the title generated by PageTitleView()19:55
rockstarabentley, no, through the web ui.19:55
barrysalgado: what's the purpose of the view.title attribute then?19:56
abentleyrockstar: Do they show up in the console in make harness?19:56
rockstarabentley, good question, lemme check.19:56
rockstarabentley, I'm using makeRevisionsForBranch in this context, for YOUR context.19:56
salgadobarry, that's the text for the breadcrumb's last item19:56
barrysalgado: is that there now, or you're proposing that to be added?19:57
salgadobarry, my idea was to rename AnyView.page_title to title19:59
barrysalgado: and that would be added as the last component to the breadcrumb, if it exists?20:00
salgadobarry, yes, and if it doesn't exist it must be in pagetitles.py20:01
salgadoso, in summary, View.title or an entry in pagetitles.py would be required20:01
barrysalgado: i'm still not sure how best to override the <title> though, so that a view can say "don't use breadcrumbs even if they're available"20:02
salgadobarry, some views would also define a page_title for that20:02
barrysalgado: so the presence of a .page_title would be enough to override the reverse breadcrumbs20:03
salgadoyes, or html_title, or do_not_use_breadcrumbs_for_title20:03
salgadoI guess a boolean that specified not to use breadcrumbs in the title would be best20:04
barrysalgado: i see.  so as not to repeat .title20:06
salgadoyep20:07
barrysalgado: my only concern is that that's a fairly large change for a branch i'm already overdue to land ;)20:09
rockstarabentley, so the revision_count attribute on the branch object is populated correctly.  I still don't have revisions in the UI though. :(20:09
barrysalgado: maybe we can do part of this now?  add .page_title to override breadcrumbs now, and then in a follow on branch do the .page_title -> .title change?20:09
rockstarabentley, wait, cancel that.  I'm seeing them now.  Not sure what changed, but everything works now.20:10
abentleyrockstar: Odd.20:10
salgadobarry, actually, there's no need for the .page_title -> .title change20:10
salgadoif we add the boolean20:10
salgadoand adding this boolean should be a simple change, no?20:11
barrysalgado: i think it would be.  so: "override_breadcrumbs = True" in the view means to use .page_title or pagetitles.py entry instead of breadcrumbs even if they exist?  if breadcrumbs don't exist, the boolean is obviously not necessary20:12
salgadobarry, yes, that's how I envisioned it20:13
barrysalgado: agreed.  let me see if i can make that work.  thanks!20:14
salgadobarry, thank you for bringing this up20:14
barrysalgado: thanks for the time to discuss it; i'll have to remember to add this to the wiki rules20:15
barrysalgado: small correction: override_title_breadcrumbs = True is better i think20:15
salgadobarry, agreed20:16
barrycool, thx20:16
=== gary-away is now known as gary_poster
barrysalgado: so the problem is; context/@@+page-title gives us a view, but override_title_breadcrumbs is on the original view and i don't know how to get from the PageTitleView back to the original view to check the attribute20:44
barrysalgado: i suppose i can write a more complicated condition in base-layout.pt, but that seems a bit ugly20:44
salgadobarry, yeah, that wouldn't be nice indeed20:46
barrysalgado: can you think of any zope magic to the rescue? ;)20:49
salgadobarry, a tales formatter20:49
salgadoview/fmt:pagetitle20:50
barryhmm....20:50
* barry hacks20:50
barrysalgado: i think this is going to work very nicely.  i will have to file a bug so that when main-template.pt is removed or updated, we can get rid of CONTEXTS/fmt:pagetitle and PageTemplateContextsAPI;  that's to much work to do now though21:42
salgadobarry, that's great news21:44
=== salgado is now known as salgado-afk
barrysalgado-afk: i have to write some tests but here's the diff so far http://pastebin.ubuntu.com/267554/22:14
mwhudsonthumper: morning22:15
thumpermwhudson: morning22:15
mwhudsonskype?22:16
=== matsubara is now known as matsubara-afk
wgrantgary_poster: around?22:18
gary_posterwgrant: now I am22:36
wgrantgary_poster: You might remember that branch of mine that you reviewed nearly two weeks ago. ec2test kept vanishing, so I wasn't able to fix the test failures until recently. Can you please land it?22:37
wgranthttps://code.edge.launchpad.net/~wgrant/launchpad/structural-subscription-security/+merge/1077622:37
gary_posterwgrant.  I'll be happy to.  Do you happen to know the procedure we're using to do so, so that you get in the message properly?  If not I'll ask around.22:38
gary_posterthe pqm commit message I mean, sorry22:39
wgrantgary_poster: There is no standard, but the one that I've stuck on the MP is a common one.22:39
gary_posterOIC22:40
gary_posterk22:40
gary_posterwgrant: in pqm...23:28
thumperrockstar: ping23:29
wgrantgary_poster: Thanks.23:30
rockstarthumper, pung23:35
rockstarEr, pong23:36
gary_posterwgrant: through pqm, and buildbot sees it.  I'm signing off23:43
thumperrockstar: call?23:43
gary_posternight all23:43
thumperby gary_poster23:43
thumperbye23:43
thumperdamn23:43
gary_poster:-) bye23:43
rockstarthumper, yes23:43
barrybac: ping23:46
bachi barry23:46
barryhi bac.  it's unlikely i'll be able to do that ui review for you.  i'm dashing like mad to get this branch landed and tomorrow i'm chr.  if you can't find anybody else to do it for you, i'll see what i can do tomorrow, depending on how heavy a day it is (usually, following sinzui is pretty light :)23:47
bacnp, barry.  didn't realize you were chr.23:48
barryyeah.  kind of sucks.  with the short week it's gonna be a death march to get this branch landed23:48
wgrantkfogel: I think you want your contributions script to sort the revisions chronologically, to make that page a bit more useful.23:49
wgrant(ATM they don't seem to be sorted, so they are ordered differently each time the page updates)23:50
kfogelwgrant: agreed.  really, just sorting them by revnum should work23:52
kfogelwgrant: if you whip up a patch, I'm sure it'll be correct :-), but if not, no worries, I'll try to do it later tonight.23:52
wgrantkfogel: I've got enough uni stuff on my plate, sorry.23:54
kfogelwgrant: no problem at all.  Thanks for the suggestion; I'll take it from here.23:54
kfogelshould just be the addition of a sort() call, really.23:55
wgrantYep.23:55
=== Ursinha is now known as Ursinha-afk

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!