[00:20] <Takyoji> Anyone favor a specific networked message queue system/protocol?
[00:20] <Takyoji> Was looking at RabbitMQ and MemcacheQ
[02:48] <Takyoji> HAAAH http://games.slashdot.org/story/10/03/08/004219/Ubisofts-Authentication-Servers-Go-Down
[02:57] <mr_steve> heh
[02:58] <mr_steve> Too bad no one warned them that could happen.  :P
[03:00] <Takyoji> This game is just a pure example of DRM horror
[03:00] <Takyoji> I'll surprised if they continue to rape further games with such DRM
[03:00] <Takyoji> I'll be surprised*
[03:01] <Takyoji> I'm looking at Ubisoft's forums and apparently it's quite flooded with people pissed off, and implying they're never buying from Ubisoft anymore, etc.
[03:43] <Takyoji> May 4th, Day Against DRM; by defectivebydesign.org
[03:44] <Takyoji> http://www.defectivebydesign.org/decade-in-drm
[04:44] <Takyoji> http://trololololololololololo.com/ :D
[21:27] <Takyoji> When are they ever going to make GRUB2 shiny?
[21:28] <Takyoji> I think it's considerably the most "user unfriendly" thing in the Ubuntu stack right now; yes, it's very usable, but quite verbose with the details of the options and so forth (to a general user)
[21:31] <Takyoji> and yay http://www.starryhope.com/linux/ubuntu/2010/ubuntu-lucid-makes-scanning-simple/
[21:46] <Takyoji> I also wonder if Google Chrome will ever be in the Ubuntu repositories...
[21:51]  * Takyoji tries to decide between AMQP and SNMP
[21:55] <tonyyarusso> Takyoji: "Chrome" can't be, as it's not FLOSS.
[21:55] <Takyoji> However Chromium could be.
[21:55] <tonyyarusso> right
[21:56] <Takyoji> Yet neither is provided
[21:56] <Takyoji> So then would that imply that Firefox is not FLOSS, and Iceweasel is? :P
[21:57] <tonyyarusso> Uh, perhaps you should do your homework before asking such questions Takyoji :P
[21:57] <tonyyarusso> http://archive.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/
[21:58] <Takyoji> It's primarily the branding that sets the two examples apart, correct?
[21:58] <tonyyarusso> yes
[21:58] <Takyoji> But what about the poor confused souls? :P
[21:59] <tonyyarusso> Too bad for them?
[21:59] <tonyyarusso> We can't control trademark law.
[22:00] <Takyoji> Then I guess I'll complain about Songbird. :P
[22:02] <Takyoji> otherwise is there any specific date for the installfest at TIES yet?
[22:07] <tonyyarusso> no
[22:12] <Takyoji> Ooo, an octacore CPU
[23:56] <ripps> Takyoji: if you want a shiny grub2, install the burg ppa. Very shiny indeed.


[00:18] <philip__> Hello. I'm using devede 3.21 and i'm getting the spumux bug when trying to create dvd from mkv container with subs in it. It won't let me attach external subs either. Any ideas?
[00:20] <CFHowlett> philip__   attendance in this channel is unpredictable.  devede is an app that most ubuntu users don't ever use.  Best bet is in the multimedia or ubuntustudio forums
[00:22] <philip__> Hi again. :) I see. Could you suggest an alternative application? Except for the dvd styler, doesn't work for me.
[00:23] <CFHowlett> philip__   I've never made an DVD = suggest you do a software center search.  Many choices there.
[00:26] <philip__> I think i'm running out of options as i already searched through synaptic, google, etc. That's why i asked. I will try once more just to get the job done, and then i'll start a thread on the forums as i need the devede to be working. Thanks a lot.
[00:28] <CFHowlett> philip__   god luck
[00:28] <philip__> Thank you. :)
[15:56] <kephren> Hi everyone. Just wondering if ubuntu studio is still being maintained/developped?
[15:56] <holstein> sure
[15:56] <holstein> theres an 11.10 release, and 12.04 dailies
[15:57] <kephren> Thanks Holstein. Is it still backed by Canonical or have they left it on the curb for the community to maintain like kunbuntu? ;)
[15:58] <holstein> ?
[15:59] <holstein> maybe you are not totally familiar with how the 'derivitives' work
[15:59] <holstein> the repos are maintained
[15:59] <holstein> the packages are maintained by the community, or the paid devs
[15:59] <holstein> the bills are paid by canonnical
[15:59] <holstein> all of us take advantage of those bills that are paid
[16:00] <holstein> we have no 'paid' developers, nor do any of the others per se
[16:00] <holstein> but, a lot of the dev's are envolved, and help as-neede, and as time allows
[16:00] <holstein> i dont think anything is kicked to the curb
[16:01] <holstein> i think the one guy that was on salary at kubuntu is not working on kubuntu anymore
[16:01] <holstein> that could be good or bad
[16:01] <holstein> would i like for ubuntustudio to have a paid dev?... sure
[16:01] <holstein> do we need one? ...not really
[16:02] <kephren> Thanks for your informations. I didn't mean to sound rude, probably I am ignorant as to how the derivatives are managed. The fact is that I'm a long time linux user (mainly gentoo and others) and I'm looking into Ubuntu Studio right now as a tool for a presentation on the theory of sound and music that I'd like to give to teens that have access to a pc but probably not to pricey music software
[16:02] <holstein> if you arent using JACK, ubuntustudio is likely overkill
[16:03] <kephren> That's why I thought of Ubuntu Studio as a medium to deliver my content
[16:03] <holstein> JACK is likely overkill for most 'consumer' grade tasks, but if you need it, you'll know
[16:03] <holstein> you dont have to choose either
[16:03] <holstein> we have metapackages for ubuntustudio that include software
[16:04] <holstein> you can install ubuntu, xubuntu, lubuntu.. kubuntu... whatever... and install those meta packages, or just install the software you want
[16:04] <holstein> you can have kubuntu for example, and use the software we have in KDE or whatever else you choose
[16:06] <holstein> kephren: i didnt find you rude
[16:06] <kephren> I'm probably going to download an ISO and load it up in VirtualBox to see but I'm assuming I could build upon what have already been done with UbStudio to deliver a CD/USB solution that the teens could load on their home PC to tinker and see if they have enough interest
[16:06] <holstein> i just wanted to set the tone here... i dont slam canonnical for buisness decisions that dont really effect our community
[16:07] <holstein> thats just my personal opinion though... and i understand frustrations
[16:07] <holstein> kephren: our newer 12.04 release can be run live
[16:08] <kephren> And I understood well. I didn't mean to seem like I was blaming anyone for anything. It's just that english is my second language and I like british humor so I tend to be naturally sarcastic even when I don't want to ;) eheheh
[16:08] <holstein> kephren: right on! :)
[16:08] <holstein> glad you found us
[16:09] <holstein> theres a really nice community over at #opensourcemusicians as well that you might find helpful
[16:09] <holstein> ubuntu users, and others... lots of audio pros
[16:09] <kephren> anyways, as I said, I appreciate the informations you gave me, it pretty much confirmed what I thought but there's nothing like real people on good ole IRC to get quick and clear answers ;)
[16:12] <kephren> great I'll make sure to visit! I'm thinking of releasing the presentation material under a common license
[16:12] <holstein> cool
[16:12] <kephren> Thanks again!\
[16:12] <holstein> i did one for my LUG group
[16:12] <holstein> on JACK and ardour... rakarrack... some softsynths
[16:12] <holstein> and other effects
[16:16] <kephren> What I aim with my presentation is just to introduce and hopefully interest teens into sound and music. Teens who would otherwise be bored out of their mind, hanging out in the streets and doing mischief just to entertain themselves. I'm thinking of showing them simple enough ways to have fun with Hydrogen, Audacity and such
[16:18] <kephren> Nothing very complicated for my first presentation, just enough theory to get them to read more. The key will be to support my speech with a lot of nifty visual material to keep them awake until the end... ;)
[16:18] <holstein> cool
[16:18] <holstein> i did a little jamming ;)
[16:18] <holstein> routed a couple of instruments in
[16:18] <holstein> and did a few loops
[16:18] <holstein> it was fun
[16:19] <kephren> maybe if enough interest is shown I will end up learning more myself and make some more in depth presentations but for now I just want to scratch the surface and show them that there's a lot of fun to be had if you mix Art and Maths together ehhehe
[16:20] <kephren> fun <- that's what its about imho
[16:21] <kephren> and as a kid I used to have fun making myself a different drum daily with empty boxes that were used for grocery shopping... Hell... Now we have Hydrogen and a whole bunch of drum sets, if we can't find any fun in that I might as well just give up on humanity right now... ;)
[16:21] <kephren> ehehhe
[16:21] <holstein> hehe
[16:21] <kephren> anyway I gotta go for now, thanks again for your info!
[16:21] <kephren> See you around
[18:49] <ssfdre38> hey just a heads up, who ever can work on the main site, should fix the logos cause they are messed up
[18:50] <ssfdre38> its missing http://ubuntustudio.org/images/background.png
[18:58] <holstein> lol
[21:14] <kf7ays> Hey all
[21:14] <kf7ays> Any Experts here?
[21:16] <kf7ays> I am trying to get networking running on Studio and it is not going well. Anyone have any thoughts on what needs to be done? I have tried to follow the instructions on the site, but they are vague at best.
[23:53] <magpii> I am having a legal issue with youtube. i made a stopmotion animation using stopmotion and the music using lmms in ubuntu studio. heres the link to the email i recieved, any help please? http://codepad.org/CiDploPK
[23:54] <magpii> I am wanting to monitarize the video i made, but i am unsure as to what information I need if any so that youtube can stop being arsey and post it


[10:36] <arraybolt3> tomreyn: Thank you!
[10:36] <arraybolt3> re: (it's not clear which channel you're referring to, or what time.
[10:36] <arraybolt3> if it's about #ubuntu,the right channel to ask this would be #ubuntu-ops)


[11:27] <lalo> hahahahahahaha... I think I broke my gentoo in a way that's going to be interesting to repair :-P
[11:29] <kiko> you use that word?
[11:29] <kiko> normally I say "disgraceful"!
[11:29] <lalo> interesting is the right word here
[11:30] <lalo> I, hmm, broke my gcc :-P so I can't install another gcc because, you see, I have no gcc... it's kind of like breaking dpkg in debian
[11:30] <lalo> you can get around a broken dpkg with "ar" and "tar"... and equivalently I'm pretty sure there is a way to get out of this situation... just have to think about it for 10 minutes
[11:31] <kiko> how broken, and how did you break it?
[11:32] <lalo> oh, I was trying to downgrade from 3.4 to 3.3; then I found that I had both installed (using slots), and just removed 3.4. But /usr/bin/gcc seemingly was part of the 3.4 package... so I have all the bits and pieces, except the thing that puts them together
[11:33] <kiko> lalo, just copy the gcc-3.4 binary from somewhere else
[11:33] <lalo> that's the plan
[11:51] <lalo> ah
[11:51] <lalo> as I expected, much simpler than that
[11:51] <lalo> just had to edit a config file to point to the right version
[11:52] <lalo> and now to compile directfb :-)
[11:52] <lalo> funny, where is everyone? we have a meeting in a few minutes
[11:56] <kiko> lalo, what timezone are you in?! the meeting is in 1:30h
[11:57] <lalo> 1:30? I thought it was 11:30
[11:57] <lalo> and rosetta's is 45m earlier, whatever time is the launchpad one
[11:58] <kiko> it *is* at 11:30, which is.. oh.
[11:58] <kiko> well, I'm here (no sleep last night though :)
[11:59] <lalo> ah, you said "in" 1:30, I read "at" 1:30 :-) we're talking the same thing
[12:07] <lalo> carlos: good morning
[12:07] <carlos> morning
[12:39] <SteveA> aren't we ten minutes into a rosetta meeting now?
[12:40] <lalo> SteveA: just what I was thinking. Looks like something happened with daf
[12:40] <carlos> SteveA: in 5 minutes
[12:40] <daf> morning all
[12:41] <carlos> daf: morning
[12:42] <SteveA> what happened?
[12:43] <daf> the meeting is scheduled for 10:45
[12:44] <daf> shall we start?
[12:45] <lalo> ok
[12:46] <carlos> daf: sure
[12:46] <daf> let's start off by discussing the Alpha release
[12:46] <daf> then what work we've done since the last meeting
[12:47] <daf> then what we're going to do for the rest of today
[12:47] <carlos> ok
[12:48] <daf> I think we're more or less ready for Alpha
[12:48] <daf> the two things I know I need to do are:
[12:49] <daf> - disable the advanced search page, since it doesn't work
[12:49] <daf> - send out the announcement email
[12:49] <daf> now's the time to list anything else that needs doing
[12:50] <carlos> daf: perhaps improve the message about the plural forms with a mailto: link
[12:50] <carlos> so they know they should send use the information
[12:50] <carlos> so they could translate into that language?
[12:50] <daf> good idea
[12:50] <daf> where should they send it to?
[12:51] <daf> me? the Rosetta Testers list?
[12:51] <carlos> hmmm
[12:51] <carlos> perhaps to the list
[12:51] <SteveA> daf: rosetta.ubuntulinux.org goes to the launchpad front page.  this has links to soyuz and malone on it.
[12:51] <carlos> so anyone could add it?
[12:52] <SteveA> maybe the virtual hosting should be changed so that it goes to the rosetta front page only
[12:52] <daf> SteveA: good idea
[12:52] <SteveA> we can then use the package overrides system to put the special ubuntu front page as the default page for that rosetta
[12:52] <daf> I think it would be a good idea to hide away Malone andd Soyuz
[12:52] <SteveA> so, we can use an override for that
[12:53] <daf> can you either do that, or explain to one of us how to do it?
[12:53] <SteveA> that is, a file in override-includes that redefines the default page for the root object, and for the rosetta front page
[12:53] <lulu> can the link to launchpad be launchpad.ubuntulinux.org, rosetta = rosetta. ubuntulinux.org etc...
[12:53] <daf> SteveA: so it's a normal ZCML file?
[12:53] <SteveA> what do you mean "link to launchpad", lulu ?
[12:54] <SteveA> daf: yes, it is a normal zcml file.  Its directives override those already in the system.
[12:54] <lulu> so we have the 3 tools in launchpad.ubuntulinux.org instead of rosetta - isolate links
[12:54] <SteveA> for the rosetta alpha, we want just rosetta to appear at rosetta.ubuntulinux.org
[12:55] <lulu> yes agreed
[12:55] <SteveA> I don't see any reason to have a launchpad.ubuntulinux.org at this time
[12:55] <lulu> fine - but how can I publicly access all 3?
[12:56] <SteveA> you can't, because we're releasing only rosetta
[12:56] <daf> lulu: you can still acccess the development server
[12:56] <lulu> through rosetta.ubuntulinux.org?
[12:56] <SteveA> we're talking about a specific "override" for the rosetta.ubuntulinux.org site.  This is the site that uses the "alpha" database.
[12:56] <daf> through rosetta.warthogs.hbd.com
[12:56] <carlos> lulu: no, old url rosetta.warthogs...
[12:57] <SteveA> There's still rosetta.warthogs.hbd.com, that has all of launchpad on it
[12:57] <SteveA> and does not use the "alpha" database
[12:57] <SteveA> this is our "development server"
[12:57] <SteveA> and, it will not have any overrides in it
[12:57] <lulu> SteveA: currently when I type in https://rosetta.ubuntulinux.org/ I gte the 3 launchpad tools
[12:58] <SteveA> yes, we are discussing that you should not do so, and how to fix it
[12:58] <daf> lulu: right, and we're going to change that
[12:58] <lulu> daf: cool - that's why I suggested that to be launchpad.ubuntulinux.org.... - no worries
[12:59] <daf> so we have two extra tasks before the alpa
[01:00] <daf> - put an email address in the plural form error message
[01:00] <SteveA> is the "ubuntu linux package list" page finished?
[01:00] <daf> - hide/remove Malone and Soyuz from the alpha server
[01:01] <SteveA> what about the "ubuntu list of packages" front page?
[01:01] <daf> SteveA: we don't have a separate page for it
[01:01] <SteveA> I thought that was the plan
[01:02] <daf> right, for the Alpha it was decided that we have a very small number of packages
[01:02] <carlos> SteveA: we have only two packages for the alpha
[01:02] <daf> from discussions with Mark and from the practical didfficulty of importing many packages
[01:03] <carlos> SteveA: we are going to improve and expand that list before the beta
[01:03] <SteveA> ok
[01:03] <daf> the bug should have been updated with this information
[01:04] <carlos> daf: my fault
[01:04] <daf> carlos: mine also
[01:04] <daf> SteveA: bug #1915 is still marked as depending on #1907 and #1908, which are assigned to you
[01:05] <daf> SteveA: I don't think they block the release, but it would be nice to have them closed
[01:05] <SteveA> ok, noted
[01:05] <daf> thanks
[01:06] <daf> another thing:
[01:06] <SteveA> I propose for the alpha server, we make the front page of launchpad a redirect to /rosetta.  This will serve until the virtual hosting configuration is updated.   But, if the virtual hosting stuff can be updated now, there's no need to change the front page.
[01:06] <SteveA> because the front page will not be visible
[01:06] <daf> - I shuold apply Carlos' DB changes to the Alpha DB
[01:07] <daf> (sorry for typos, link is slow)
[01:07] <carlos> daf: not yet, I'm doing more testing today
[01:07] <daf> carlos: ok
[01:07] <carlos> and they could be added at any time
[01:07] <carlos> later
[01:07] <daf> carlos: I'd like to do it before the GNOME Panel import
[01:07] <carlos> I'm getting bad numbers today
[01:08] <carlos> and I need to understand why, I will know it after the meeting, my laptop is working now on it
[01:08] <daf> ok, perhaps I should make a task to test the changes on the development server
[01:08] <carlos> that will be good
[01:09] <daf> ok
[01:09] <daf> anything else that needs to be done?
[01:09] <daf> if not, let's discuss our tasks
[01:10] <carlos> nothing from here
[01:10] <daf> (we are scheduled to finish in 10 minutes)
[01:10] <daf> ok
[01:10] <daf> tasks done since yesterday's meeting?
[01:10] <daf> lalo: care to go first?
[01:11] <lalo> ok
[01:11] <lalo> I fixed #2022 in the few minutes after the meeting, or was it right before?
[01:12] <lalo> then I slept :-) when I woke up, I sanity-checked the fix and committed it
[01:12] <daf> great
[01:12] <daf> carlos?
[01:12] <carlos> lalo: I will test it after this meeting to confirm the fix
[01:12] <lalo> carlos: thanks
[01:13] <carlos> daf: I was working on more testing, I have almost finished the report SteveA asked yesterday
[01:13] <daf> great
[01:13] <carlos> daf: and answer your questions to the mailing list about the indexes
[01:13] <carlos> hmm, I think that's all
[01:13] <daf> ok
[01:13] <daf> I fixed #2023 last night
[01:14] <daf> and replaced the placeholder "About Rosetta" text with something useful
[01:14] <daf> (with input from Lu and Mark on that)
[01:15] <daf> ok, and very quickly -- what are we going to work on today?
[01:16] <carlos> I will work finishing the report, and will start doing more improvements to the queries
[01:16] <carlos> and use your profile information to try to improve it more
[01:16] <daf> I will work on completing the Alpha tasks
[01:16] <daf> carlos: do you need information from me about how I profiled it?
[01:16] <lalo> if no greater priorities arise, I'm going to work on 1944 (the dreaded import/export tests)
[01:17] <carlos> daf: not now, let me read your report and I will be back to you if I see I need it
[01:17] <daf> carlos: ok
[01:17] <daf> lalo: that's fine by me
[01:17] <daf> any other business?
[01:18] <carlos> daf: I suppose I will not have enough time
[01:18] <lalo> do you think 1944 has greater priority than 2021?
[01:18] <carlos> but If I'm able to finish my tasks, I want to start with the scripts we were talking last week
[01:18] <carlos> with steve
[01:19] <daf> lalo: actually, I think it would be nice to get #2021 fixed first
[01:19] <lalo> ok
[01:19] <daf> carlos: ok
[01:19] <lalo> I'm happier that way too :-)
[01:19] <daf> great :)
[01:19] <daf> right, I declare End Of Meeting
[01:19] <daf> thanks, it was a good one
[01:20] <daf> even if we ran a little over
[01:20] <carlos> :-)
[01:21] <lalo> me too
[01:22] <stub> Someone ping me for the meeting - I havn't got an alarm on this thing yet
[01:22] <SteveA> can you get to http://rince.africaninspace.com/mailman/listinfo/activity ?
[01:24] <kiko-fud> me2
[01:27] <stub> No, but my network has been shitting me all night
[01:29] <SteveA> it's okay, mark screwed up a server upgrade.  mail archives are off until it is sorted out.
[01:30] <SteveA> it is 14:30
[01:30] <SteveA> stub, kiko-fud: time for the meeting!
[01:30] <kiko-fud> do you know where your children are?
[01:30] <SteveA> or even what timezone they're in
[01:30] <kiko> behold the great debonzi has entered the room
[01:31] <debonzi> kiko, lol
[01:31] <kiko> soyuz is here
[01:31] <stub> Yo
[01:32] <SteveA> kiko, debonzi, spiv, cprov: all here?
[01:32] <kiko> [x]  yes
[01:32] <stub> And Malone, on his lonesome :-)
[01:32] <debonzi> [x]  yes
[01:32] <SteveA> stub, justdave: ?
[01:32] <spiv> Yep.
[01:32] <SteveA> we're starting a little early for justdave's timezone
[01:33] <SteveA> I'll catch up with him later
[01:33] <kiko> he pulled an all-nighter afaik
[01:33] <kiko> just like me
[01:33] <justdave> I'm here
[01:33] <SteveA> oh, hi!
[01:33] <SteveA> daf, carlos, lalo?
[01:33] <carlos> SteveA: I'm here
[01:34] <SteveA> limi will be traveling back to Norway from Vienna today
[01:34] <spiv> daf is in the middle of breakfast; he'll be here very shortly.
[01:34] <SteveA> lulu: ?
[01:34] <SteveA> let's start
[01:34] <SteveA> soyuz
[01:35] <SteveA> What's happened since last week?
[01:35] <kiko> yes
[01:35] <kiko> we've filed half a million bugs
[01:35] <kiko> fixed about half of them
[01:35] <cprov> kiko: aha
[01:35] <kiko> pestered people on the mailing list about the tough issues
[01:35] <lulu> SteveA: her :o)
[01:35] <kiko> had rosetta and malone integration meetings
[01:35] <lulu> here!
[01:35] <kiko> did QA and polished the UI of bits missing
[01:36] <SteveA> I'll be looking at the bugs you mailed me about during today
[01:36] <kiko> started sorting out the pickles that we got some traction on
[01:36] <SteveA> how did the integration meetings go?
[01:36] <kiko> which are the person identifying issue and some bits of package info that were missing
[01:37] <SteveA> what is the decision on the person identifying issue?
[01:37] <kiko> the integration meetings went well, stub was killer and let us file bugs on portlets that we need
[01:37] <kiko> stub is the man to answer that I suspect :)
[01:37] <stub> I'm just easy
[01:38] <kiko> we add a shortname/nick whatever to the database
[01:38] <kiko> stub and soyuz agree on that, I can't remember if we are waiting for approval of the gods before hitting the database
[01:38] <kiko> do you stub?
[01:38] <stub> Outcome of the Malone/Soyuz integration meeting was I make the relevant portlets in Malone and stick them into the relevant Soyuz pages. Three seperate portlets are needed.
[01:39] <SteveA> I think the nickname thing may have an implication on the plone websites / xml-rpc authserver
[01:39] <stub> Yes - I think we need a Person.name - unique, lowercase
[01:39] <SteveA> ok, so we integrate between launchpad applications at the portlet level.
[01:39] <SteveA> malone makes portlets available to soyuz
[01:39] <kiko> SteveA, at least between malone and soyuz.
[01:40] <kiko> SteveA, we don't know about rosetta well because the issues are a bit different
[01:40] <stub> SteveA: We don't have to use it for auth if we don't want to. That is a different use case for the same info
[01:40] <kiko> stub, is there an eta for the portlets
[01:40] <kiko> stub, yes, exactly what I was going to say
[01:40] <stub> Two days ago
[01:40] <SteveA> stub: sure, we don't need to use it for auth. but, is it an essential field?  will it need to be requested when people sign up with the ubuntu site?
[01:41] <kiko> SteveA, IMO it is essential and it is silly to skimper around this issue
[01:41] <kiko> SteveA, nobody wants to traverse on email or a number
[01:41] <stub> SteveA: We can generate one if we want to avoid that and we don't want to ask the question
[01:41] <kiko> so this is really the only solution. we can suggest one if we like
[01:42] <kiko> so<EMAIL_ADDRESS>-> kiko for nick
[01:42] <SteveA> ok, so we can keep the plone stuff and xml-rpc stuff that is now deployed the same
[01:42] <SteveA> kiko1 if kiko is taken already?
[01:42] <cprov> I agree on automatic (safety) generation of a unique name
[01:42] <stub> I have code lying around somewhere that can safely generate unique names from an email address.
[01:42] <kiko> or kiko_async or kiko_x or some options but yes
[01:43] <cprov> SteveA: whatever :)
[01:43] <SteveA> we need to decide on this before we make the change that we depend on this nick.
[01:43] <SteveA> let's not decide now, though
[01:43] <stub> Oh... sorry. It is givenname/surname/email so isn't appropriate
[01:43] <lulu> SteveA: Authentication - we're having problems with email from Zope/Plone
[01:44] <SteveA> but, someone must take responsibility for the issue
[01:44] <SteveA> any volunteers?
[01:44] <SteveA> lulu: we'll talk about the website/launchpad stuff in a bit
[01:44] <stub> I'll add the field to the table :-)
[01:44] <kiko> SteveA, well, if it's just adding a field, it's stub
[01:44] <kiko> SteveA, I have no idea where users are created or authenticated in this launchpad creature.
[01:44] <kiko> does anyone?
[01:45] <SteveA> that's ok.  but if it is adding a field and a constraint, then we need to decide how we are coming up with these nicknames
[01:45] <SteveA> the launchpad does not register users at present
[01:45] <kiko> we can just add the constraint later, can't we?
[01:45] <stub> The adduser script needs to do the username address validation though (and I don't know this either).
[01:46] <SteveA> stub: will you take on getting the nickname stuff sorted out thoroughly?
[01:46] <carlos> kiko: we have a script to create the users at rosetta/scripts/createuser.py
[01:46] <SteveA> (hmm, maybe it should be someone who will be at the soyuz sprint)
[01:46] <stub> kiko: It would be painful doing that.
[01:47] <SteveA> what I'm looking for is a library function to create suitable nicks, if none is given
[01:47] <kiko> oh.
[01:47] <SteveA> someone needs to decide on the policy for this, as in how it works, and then write it
[01:47] <SteveA> we'll all use the same function
[01:48] <kiko> I suspect mark will want to have input on this?
[01:48] <SteveA> also, who will check with mark that he is okay with the nickname thing?
[01:48] <stub> SteveA: It is a simple algorithm - take the bit before '@' from the email, remove any ugly characters, and add a number on the end until there are no conficts when you insert.
[01:48] <SteveA> I think a message to the launchpad list would be good
[01:48] <kiko> I can do that and pester sabdfl on irc
[01:49] <SteveA> I don't know that this is *urgent*.  so, a mail to the list should be sufficient.
[01:49] <SteveA> thanks kiko
[01:49] <SteveA> I think that wraps up nicknames, for now
[01:49] <kiko> yes
[01:50] <SteveA> do you think we should have another soyuz walkthrough this week, before the sprint?
[01:50] <SteveA> maybe tomorrow?
[01:50] <kiko> nah, not really.
[01:50] <kiko> we travel saturday.
[01:50] <SteveA> ok
[01:50] <SteveA> so, we can have one at the start of the sprint
[01:50] <SteveA> in person
[01:50] <kiko> yes, that would be perfect.
[01:50] <spiv> I think that's a better idea.
[01:51] <SteveA> ok.  are all travel arrangements to the sprint okay?
[01:51] <kiko> [x]  soyuz
[01:51] <SteveA> any other issues?
[01:52] <kiko> uhm, let me try and recall
[01:52] <kiko> cprov, is there anything open?
[01:52] <SteveA> I still need to get you a zodb
[01:52] <kiko> yes, that's bugged on you IIRC
[01:53] <SteveA> it is at the top of my list
[01:53] <cprov> kiko: yep the complicated issues on person/team add action ...but I preffer to talk on sprint, I think
[01:53] <kiko> okay.
[01:53] <SteveA> ok, let's move on to the plone<-->launchpad sites
[01:53] <kiko> debonzi, cprov, packaging issues perhaps?
[01:53] <SteveA> longer
[01:53] <cprov> I'll commit some changes today and would apreciatte SteveA and Spiv revision on that, ok ?
[01:54] <SteveA> cprov: send an email?
[01:54] <kiko> okay, cool.
[01:54] <spiv> cprov: sure; email or poke me on irc.
[01:54] <cprov> SteveA: of course
[01:54] <SteveA> ok
[01:54] <SteveA> ok, let's move on to the plone<-->launchpad integration
[01:55] <SteveA> lulu: you said there is an email problem
[01:55] <cprov> spiv: I think I need a private help after meeting (10 min, again) ?
[01:55] <spiv> cprov: Sure.
[01:55] <lulu> yes - Roche is not getting plone emails
[01:55] <cprov> spiv: great
[01:55] <SteveA> what do you mean by "plone mails" ?
[01:55] <SteveA> mails sent out from plone?
[01:55] <kiko> okay, I'm on standby then
[01:55] <lulu> yes - once a user is registered, he is not getting the email
[01:56] <lulu> saying welcome - but I did.
[01:56] <lulu> elmo says Gentoo is set up fine
[01:56] <SteveA> you got one to you @canonical.com address?
[01:56] <SteveA> it is conceivable that mail to @canonical.com addresses works while other addresses do not.
[01:57] <lulu> yes....
[01:57] <SteveA> do you know how the mail service on plone is configured?
[01:57] <cprov> spiv: if we have finished here, please join #soyuz. kiko you are suposed to be there too
[01:57] <SteveA> that is, which machine it uses to send email?
[01:57] <SteveA> ok, let's talk about this in detail after the meeting
[01:58] <lulu> have asked elmo to join in
[01:58] <SteveA> is there anything else amiss with the launchpad<-->plone site?
[01:58] <kiko> cprov, I am
[01:58] <kiko> ?
[01:58] <lulu> Roche couldn't test last night as a result
[01:59] <SteveA> ok, we'll get this diagnosed properly after this meeting.  anything else we need to do on the plone sites?
[01:59] <lulu> so we have to do extensive testing today to get it up
[01:59] <lulu> permissions are not great - but the plone workflow limits what we can do
[02:00] <lulu> i need Limi to do some work
[02:00] <lulu> otherwise - after testing we can assess what still needs to be done
[02:00] <SteveA> ok.
[02:00] <SteveA> can we move on to malone?
[02:01] <SteveA> stub: anything new with malone since the last meeting?
[02:01] <stub> I'm now on a new machine and started belting Malone back into shape after the changes made when I was away (schema changes and auth system).
[02:01] <SteveA> you know that andrew v. won't be working on it?
[02:01] <stub> I now need to know about the auth stuff since the next lot of exceptions to fix are all Unauthorized errors
[02:02] <stub> Yes - Andrew emailed me when I was in Japan
[02:02] <SteveA> ok, why don't you and I talk about auth stuff tomorrow morning my time?
[02:02] <elmo> hmm?  is andrew no longer contracting with us?
[02:02] <SteveA> elmo: yes
[02:02] <stub> Your at UTC+4? Sure.
[02:03] <SteveA> UTC+3
[02:03] <stub> elmo: Possibly short gigs. He is in the unfortunate position of having a new child and work coming out of his ears :-)
[02:04] <SteveA> I can manage 6am UTC onwards
[02:04] <stub> SteveA: Ok. I'll look out for you online.
[02:04] <SteveA> ok
[02:04] <SteveA> anything else other than auth?
[02:05] <stub> I don't think so
[02:06] <stub> Oh - anyone got an intelligent 'select a sourcepackage' widget written yet?
[02:06] <SteveA> let's talk tomorrow also about moving malone along the route to using it for bugtracking launchpad and then the warty team
[02:06] <stub> Something like the typeahead textbox in Bugzilla
[02:06] <kiko> stub, no, nothing like that at all.
[02:07] <kiko> stub, we want a package browser (with sections) but so far nothing.
[02:07] <SteveA> file a bug on limi
[02:07] <stub> And sabdfl is happy with the assignee stuff I mentioned back in London, and the schema mods are in.
[02:08] <SteveA> so, when will assignee be working?
[02:09] <stub> The screen I have to update to do it (assignee is mandatory - it will default to the package/product owner) is one of the ones raising an Unauthorized error :-)
[02:09] <SteveA> ok, let's do that tomorrow
[02:09] <SteveA> next, rosetta
[02:10] <stub> I want to have the malone basic functionality and the soyuz portlets done by my Monday.
[02:10] <SteveA> great.
[02:10] <kiko> stub, that would fit in nicely with the beginning of our sprint
[02:10] <SteveA> do you have bugs in bugzilla for "malone basic functionality" ?
[02:11] <stub> (although the soyuz portlets might get reprioritized since they are not essential)
[02:11] <SteveA> have you a clear idea on how the portlets will work with soyuz?
[02:11] <stub> SteveA: The use cases on the wiki - nothing formal in Bugzilla
[02:11] <SteveA> we can talk about portlets tomorrow too
[02:12] <SteveA> rosetta
[02:12] <SteveA> daf: progress of rosetta
[02:12] <stub> SteveA: Yes. I'm doing something similar in Malone already. The major problem is generating URLS - I don't want to use absolute URL's since it will screw up virtual malones down the road, so they are context sensitive.
[02:13] <daf> since the last meeting, we've mostly been working on improving the importer
[02:13] <SteveA> stub: we should make absolute url work with virtual malones
[02:13] <daf> we found some problems with it in the run up to the Alpha release
[02:13] <stub> (erm... I mean they can only be used on a single screen - not any page you feel like)
[02:13] <daf> we've fixed several bugs in it since then
[02:13] <SteveA> stub: but, I also talked with people about this at the sprint
[02:13] <SteveA> daf: what bugs remain before getting the alpha used by people?
[02:14] <stub> SteveA: Yes - we need IAbsoluteURL functioning to do that
[02:14] <daf> SteveA: in terms of bugs against Rosetta itself, none
[02:14] <SteveA> in terms of issues blocking rosetta alpha
[02:15] <daf> in terms of issues
[02:15] <daf> #2025 -- add option to user creation script to email the new user with account details
[02:16] <daf> we also need to make some changes to hide Soyuz and Malone on the Alpha Launchpad instance
[02:16] <SteveA> that's mainly a virtual hosting change.  can you mail elmo about it?
[02:16] <daf> I can
[02:16] <SteveA> ok
[02:17] <daf> but I think we can work around it if the virtual host is not changed
[02:17] <SteveA> who is doing the addition to the user creation script, and when?
[02:17] <daf> I'm working on that now
[02:17] <SteveA> when will it be done?
[02:17] <daf> I'm estimating about 20 minutes of work
[02:18] <SteveA> ok
[02:18] <SteveA> anything else on rosetta?
[02:18] <SteveA> I know there's been some work on profiling the database to add indexes
[02:18] <daf> there's a minor change outstanding to one page
[02:18] <daf> right
[02:19] <SteveA> what's the minor change?
[02:19] <carlos> daf: I could do it now, so we speed up the launch
[02:19] <daf> adding an email address to an error message
[02:19] <SteveA> ok
[02:19] <daf> carlos: you're going to do that?
[02:19] <carlos> daf: yes
[02:19] <daf> carlos: thanks
[02:19] <daf> indexes:
[02:19] <daf> in the run up to the Alpha, we discovered performance problems
[02:20] <daf> we've spent some time trying to analyze the problem
[02:20] <daf> and we have some ideas on how to improve things
[02:20] <SteveA> does it look like these are in the database itself, or in the launchpad application, or a mixture?
[02:20] <daf> most of the discussion is on #1973
[02:20] <daf> I think that part of it is the database itself
[02:20] <daf> and part of it is in the way the database is being used
[02:21] <daf> so part of it is that the queries are running slowly
[02:21] <daf> and part of it is that the queries could be improved
[02:21] <SteveA> we could run some specialized queries that do a lot of work at once
[02:21] <SteveA> where we need to
[02:22] <daf> I think we understand the problem much better than we did a week ago, and we've learned things that will be useful in tackling future performance problems
[02:22] <daf> SteveA: right, that's definitely something we should look into
[02:22] <SteveA> UI issues on rosetta...
[02:22] <SteveA> there's still the "development legend" at the bottom of screens
[02:22] <SteveA> we can probably lose that with an override, but maybe it isn't still needed
[02:22] <daf> I don't consider that a problem, but it can be remvoed
[02:23] <lulu> and link to dashboards?
[02:23] <daf> yes, it might actually be redundant
[02:23] <SteveA> there are still tabs for soyuz and malone
[02:23] <daf> lulu: we have links to the dashboards in the top right-hand corner
[02:23] <daf> SteveA: yes, those are going to be removed
[02:23] <SteveA> do we want a "project maintainer dashboard" for rosetta?
[02:23] <SteveA> for the alpha
[02:24] <SteveA> are there bugs filed on tidying up the UI in this way for the alpha?
[02:24] <daf> no, there aren't
[02:24] <daf> let's do that
[02:24] <SteveA> there's site map and legal too, with no content
[02:25] <SteveA> I suggest to add a sober explanation of what should go there, or remove them
[02:25] <SteveA> or implement them properly
[02:25] <daf> agreed
[02:26] <lulu> I suggest all redundant links be reoved - site map and legal are covered in the ubuntu site
[02:26] <lulu> removed!
[02:26] <SteveA> when I search, a search with 1 or 2 characters gets a system error
[02:27] <daf> https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=2026
[02:27] <SteveA> ok, thanks
[02:28] <SteveA> daf, let's you and I have a chat in a few hours, to see how things are going
[02:28] <daf> let's
[02:28] <lulu> SteveA: why is it conceivable for non- canonical emails not to be working?
[02:28] <SteveA> I'm concerned that we keep thinking we're almost ready to do the alpha, and then finding other things that need to be done.
[02:28] <carlos> should we create accounts for lulu to do also as alphatester?
[02:29] <SteveA> we need to spend a little time carefully going over everything we need to do.
[02:29] <daf> SteveA: you're right
[02:29] <lulu> carlos: yes please....
[02:29] <SteveA> lulu: want to translate into afrikaans?
[02:29] <carlos> and any other Canonical person?
[02:29] <lulu> mark should be on there too
[02:29] <carlos> ok
[02:29] <daf> carlos: I don't want to see code like this:
[02:29] <daf>  email = RosettaEmailAddress(person=person, email=options.email, status=1)
[02:30] <SteveA> ok, that's it
[02:30] <carlos> daf: to simplify things I will add them to the alphatesters list
[02:30] <daf> 1 is a constant that should be imported from the dbschema module
[02:30] <SteveA> end of meeting?
[02:30] <SteveA> any other business?
[02:30] <SteveA> 5
[02:30] <SteveA> 4
[02:30] <daf> carlos: Mark already has an account
[02:30] <SteveA> 3
[02:30] <SteveA> 2
[02:30] <carlos> SteveA: it's ok for me
[02:30] <SteveA> 1
[02:30] <carlos> daf: hmmm, I'm not completely sure how to use the python schema
[02:30] <SteveA> ok, done.  Thanks for coming.  we managed it in 1 hour this time
[02:30] <spiv> We can all sit down now ;)
[02:30] <carlos> daf: but without password
[02:31] <daf> carlos: ok, that's a special case, I think
[02:31] <carlos> spiv: upps, I forgot that :-P
[02:31] <daf> carlos: perhaps we need a script to change passwords
[02:31] <SteveA> lulu: I'll take a short break, and then we can look into why the email isn't working.  I note that elmo sent a test message to me at a non-@canonical address
[02:31] <carlos> SteveA: should we handle the case when the password is NULL?
[02:32] <SteveA> carlos: is it defined what the meaning of password == NULL is?
[02:32] <carlos> SteveA: seems like rince mail is broken now
[02:32] <stub> spiv: More like stand up! I think I've been welded to the couch for two days :-)
[02:32] <lulu> SteveA: yes it appears to be fine our side - we need to change the webmaster address to be coming from<EMAIL_ADDRESS>rather than canonicla.com
[02:32] <SteveA> carlos: I think that means it is being fixed ;-)
[02:32] <carlos> SteveA: it's only because old sample data did not have a password
[02:32] <carlos> all accounts created with our script will have always a password
[02:32] <SteveA> maybe password as NULL means that there is no password that can work
[02:32] <carlos> and there is no way to reset it to null from the UI
[02:32] <SteveA> as in, the account it "locked"
[02:33] <spiv> Well, we will have that for people we "import", rather than people who sign up.
[02:33] <carlos> spiv: the script creates automatically a password
[02:33] <carlos> and will send an email
[02:33] <carlos> with it
[02:33] <stub> Some accounts will be created without passwords (such as when Malone gets an email from an unknown address it will create one). The NULL password flags this.
[02:33] <carlos> using pwgen
[02:34] <spiv> (e.g. package maintainers for debian packages.)
[02:34] <carlos> hmm, so we want to have a "disabled" account, ok
[02:34] <daf> carlos: from canonical.lp.dbschema import EmailAddressStatus
[02:35] <daf> carlos: int(EmailAddressStatus.NEW)
[02:35] <carlos> daf: ok
[02:35] <SteveA> justdave: please reply to my email about the top 100 bugzillas
[02:35] <spiv> We don't really want to send an email to every debian package maintainer, spamming them with a password for an account they might not care about at all, or have even heard of :)
[02:36] <carlos> spiv: ok
[02:36] <justdave> SteveA: will do
[02:36] <carlos> SteveA: mail lists seem to be alive again
[02:36] <lalo> "here's your password for Rosetta, a fabulous, completely free i18n system. You can also use this password to download photos of beautiful young women..."
[02:37] <carlos> daf: I will write an option to the createuser.py script to change the password so we can set it as admins
[02:37] <carlos> lalo: Sabrina!!!
[02:37] <carlos> :-P
[02:37] <daf> carlos: I think I'd prefer a new script
[02:37] <carlos> daf: ok
[02:37] <daf> carlos: changing a password is different to creating a user
[02:38] <daf> it might be useful to have an option to unset the password
[02:38] <daf> effectively locking the account
[02:38] <sabdfl> SteveA: lists back up i believe. blush
[02:38] <carlos> daf: ok
[02:42] <SteveA> sabdfl: works for me now, thanks
[02:45] <SteveA> lulu: from recent email, it looks like there is no problem with how the mail services are set up, but that there is some problem with how plone is using them.
[02:46] <SteveA> roche seems to be on the case.  thanks to elmo to checking into it.
[02:46] <lulu> yup - Roche is investigating now - please could you also impress on him that we HAVE to have this working today.
[02:47] <lulu> Elmo has doen all his testing - fine our side
[02:49] <SteveA> in these situations, looking for a problem that shouldn't be there, extra pressure tends to make programmers work less well.  I'll offer roche a second pair of eyes if he wants them.  I'll ask him about a contingency plan if the usual plone mail just won't work in a resonable time.
[02:50] <SteveA> can I get an admin account on the plone server, so I can take a look around?
[03:00] <carlos> grr, my merge request were ignored because my mail server does not accept my mails from outside my home...
[03:07] <carlos> daf: The .po export takes also too long, perhaps we should think on some way to cache it
[03:09] <daf> carlos: file a bug :
[03:09] <daf> s/:/:)/
[03:09] <carlos> daf: I'm on it
[03:09] <carlos> :-D
[03:11] <SteveA> daf, carlos: I'll be turning the zodb on soon, so we can use that to cache these things.
[03:11] <SteveA> the important thing is to work out what the cache key should be
[03:11] <SteveA> that is, the things that, if they change, we need to re-generate the data
[03:12] <carlos> ok
[03:13] <carlos> lalo: did you changed your bugzilla id?
[03:14] <lalo> carlos: yes
[03:14] <carlos> ok, I see it now
[03:26] <carlos> daf: I sent the merge request to add the mailing information for the missing plural form data
[03:26] <carlos> lalo: which one is the code for the "other" language you know to translate?
[03:26] <carlos> lalo: I don't remember it, and I'm going to add its plural form information
[03:26] <lalo> hmm
[03:26] <daf> carlos: thanks
[03:27] <lalo> I don't remember either :-P let me check
[03:27] <carlos> lalo: the name is enough
[03:27] <carlos> :-)
[03:27] <carlos> lalo: it was "n = 0" right?
[03:27] <lalo> here's the whole sql statement I used: update language set pluralforms = 1, pluralexpression = '0' where englishname='Lojban';
[03:28] <lalo> damn, it doesn't have the code :-/
[03:28] <lalo> jbo
[03:28] <carlos> lalo: don't worry
[03:29] <carlos> are you sure 0 is correct?
[03:29] <lalo> yes
[03:29] <carlos> perhaps n >= 0
[03:29] <carlos> :-)
[03:29] <lalo> no, it's not a bool
[03:29] <lalo> the pluralexpression is not supposed to result a bool, but an int
[03:29] <lalo> (the index of the plural form you want)
[03:29] <daf> lalo: but C boolean expressions evaluaate to ints
[03:30] <lalo> yes
[03:30] <lalo> and a lot of pluralexpressions abuse this by returning a bool when there are only 2 forms :-)
[03:30] <carlos> lalo: the Spanish one is n !=1
[03:31] <lalo> carlos: as I just said :-) the correct would be something like "n != 1 ? 1 : 0" but this is silly in C
[03:31] <carlos> hmm, we don't have the information for pt_BR, could you give me it ?
[03:31] <carlos> lalo: ok
[03:32] <carlos> lalo: the code is 'jbo'
[03:32] <lalo> pt_BR is the same as Spanish although there is some controversy :-)
[03:33] <carlos> lalo: you said it's different
[03:33] <carlos> Spanish == to portuguese
[03:33] <carlos> as pt
[03:33] <lalo> the fact is that we never say either "0 foo" or "0 foos", we say "no foo"
[03:33] <carlos> ok
[03:34] <carlos> lalo: for Lojban. npluralforms = 1 expression = 0
[03:34] <carlos> lunch time, we will continue later
[03:34] <lalo> so a translator who wants to be really strict would create a third plural form for the 0 and use "nenhum" for that case... but that's rare
[03:34] <lalo> carlos: (lojban) yes
[03:35] <carlos> lalo: so, should I use the same or not for pt_BR?
[03:35] <carlos> you decide :-)
[03:57] <spiv> carlos: Have you been crossing the streams or something?  You keep showing up in the PQM merge logs :)
[04:04] <kiko> spiv, carlos is the master, he hacks on all trees.
[04:06] <lalo> the problem seems to be that your tla doesn't think you have the patches... I ran sync-tree and it stopped appearing for me
[04:06] <lalo> IIRC something like tla sync-tree<EMAIL_ADDRESS>[04:43] <lulu> spiv:ping
[04:44] <spiv> lulu: pong
[04:45] <lulu> spiv: hi hon. Authentication  - I just sent u an email on password changing and forget your password functionality in launchpad - please could u get back to me on this urgently. tx
[04:46] <spiv> Ok.
[04:48] <lulu> spiv: cheers.
[04:50] <spiv> I haven't got it yet -- which address did you send it to?
[04:51] <spiv> lulu: ^
[04:53] <carlos> spiv: I had some problems with my smtp server and some merge requests were droped, I suppose it's that
[04:54] <lulu> spiv: my mistake - there now.
[04:54] <spiv> carlos: Ah, right... you merged rocketfuel into your archive before waiting for merge request finished?
[04:55] <carlos> spiv: technically, yes, I did not saw that my postfix was sending my merge requests to /dev/null until this morning
[04:59] <spiv> lulu: quick answer: Rroche is correct.  I'm mailing a full answer.
[05:05] <SteveA> spiv: can you extend the xml-rpc api to allow changes of password?
[05:05] <SteveA> this can be an optional arg in editUser
[05:06] <kiko> spiv's on the launchpad today, did you see cprov?
[05:06] <kiko> trying to catch a rockettail
[05:09] <spiv> SteveA: Heh, just sent mail.
[05:09] <spiv> SteveA: We have no editUser method.
[05:10] <spiv> I just proposed a changePassword method, but I'd be equally happy to implement it as an editUser method, that takes (login_id, current_ssha_digested_password) as positional arguments, and the new password (and potentially other fields) as keyword arguments.
[05:10] <SteveA> what about adding a changePassword(user_id, current_password, new_password)
[05:11] <spiv> That's what I proposed in email :)
[05:11] <spiv> But I think editUser is a little more forward-looking.
[05:11] <lulu> guys -  is it better for us to do it or for Roche to extend the API?
[05:11] <lulu> what is the long term fix and most robust?
[05:11] <spiv> lulu: he can't extend the API of the authserver, we have to do that.
[05:12] <spiv> SteveA: anyway, I'll start work on the guts of it right now, then, and worry about the interface later ;)
[05:12] <lulu> spiv: ok - let me read your mail :o)
[05:12] <SteveA> I'm on the phone to roche
[05:13] <SteveA> he is looking at what is needed on his end
[05:13] <lulu> thanks guys :o)
[05:18] <SteveA> spiv: roche can work with your api, so please make the change, and get it put on macquarie
[05:18] <SteveA> and on the test server too
[05:18] <spiv> Ok.
[05:21] <SteveA> roche will be testing the change password functionality on the test server, and then deploying it
[05:21] <SteveA> he asked when the new api would be on the test server, and I said you were expecting 1 hour
[05:22] <spiv> Ok.
[05:23] <SteveA> are you able to install it on macquarie, or does elmo need to do that?
[05:24] <spiv> I can do that.
[05:25] <spiv> I asked elmo to leave my access on there for a week or so, in case of problems :)
[05:25] <SteveA> great
[05:33] <dilys> Bug 2025 resolved: add option to user creation script to email the new user with account details
[05:34] <SteveA> daf: we are using the ++vh+ stuff on rosetta.ubuntulinux.org aren't we?
[05:34] <daf> ok, perhaps I worded it badly
[05:45] <daf> carlos: you are inserting tabs into things :)
[05:45] <carlos> daf: really?
[05:46] <carlos> daf: hmm
[05:46] <daf> yeah, the translation template was the last one
[05:46] <carlos> shit, I need to change the gvim mode for .pt
[05:46] <carlos> daf: true, it's done by gvim automatically :-(
[05:46] <carlos> I forgot it
[05:47] <spiv> We should add style guide, complete with vimrc settings, for .pt to the wiki...
[05:48] <carlos> daf: I have autocmd BufNewFile,BufRead *.py set tw=78 ts=4 sts=4 sw=4 expandtab for python
[05:48] <daf> spiv: s/We should/Who will/ :)
[05:48] <carlos> I suppose that the same with *.pt should be enough, right?
[05:48] <daf> carlos: I have something similar
[05:48] <daf> carlos: and I think the same for .pt, yes
[05:48] <carlos> ok
[05:49] <carlos> and the same for .zml
[05:49] <daf> by the way, the rosetta-testers list has been renamed to rosetta-users
[05:49] <carlos> zcml
[05:49] <daf> I'm changing the references in Rosetta
[05:49] <carlos> ok
[05:49] <carlos> daf: then, will you fix the tab?
[05:51] <daf> yep
[05:51] <carlos> ok
[05:53] <SteveA> daf: bookmarks are still enabled on the alpha server
[05:53] <daf> bookmarks?
[05:53] <SteveA> duh... I meant breadcrumbs
[05:53] <daf> oh, right
[05:53] <daf> well spotted
[05:54] <SteveA> but I see that rosetta.ubuntulinux.org now points at rosetta
[05:54] <daf> gosh, so it does
[05:54] <SteveA> nothing like sending a unified diff to motivate a sysadmin :-)
[05:54] <daf> :)
[05:55] <daf> that's something to bear in mind
[05:57] <daf> SteveA: ok, I think I've stripped off everything that needs to go for the alpha
[05:58] <daf> SteveA: did I miss anything that you can see?
[05:58] <SteveA> where should I look?
[05:59] <SteveA> devel server, or alpha server?
[06:01] <daf> alpha server
[06:01] <daf> I've been making the changes locally for now
[06:01] <daf> I've been considering the possibility of having a launchpad--rosetta-alpha--0 branch
[06:02] <dilys> Bug 2027 resolved: Default header comments for new pofiles created with Rosetta are wrong
[06:02] <SteveA> https://rosetta.ubuntulinux.org/rosetta/translator doesn't work
[06:02] <SteveA> https://rosetta.ubuntulinux.org/rosetta/prefs doesn't work
[06:02] <SteveA> I'm not logged in
[06:02] <daf> hmm, those links are wrong
[06:02] <SteveA> the link in the tab to "rosetta" doesn't work
[06:02] <daf> the /rosetta shouldn't be there
[06:03] <SteveA> the title for the "about rosetta" link shows an odd character / spaces
[06:03] <SteveA> in its tooltip
[06:03] <SteveA> https://rosetta.ubuntulinux.org/projects/gnome/gnome-panel doesn't work
[06:04] <SteveA> https://rosetta.ubuntulinux.org/projects/gnome/gnome-applets works, but appears to be entirely unstyled
[06:04] <carlos> dilys: lalo?
[06:04] <SteveA> hmm, because the base href is wrong
[06:04] <SteveA> href="https://rosetta.ubuntulinux.org/rosetta/projects/gnome/gnome-applets/index"
[06:04] <lalo> carlos: hm?
[06:05] <dilys> carlos: I'm not lalo
[06:05] <carlos> dilys: did you fixed that bug?
[06:05] <lalo> dilys seems to be a bot of daf's
[06:06] <SteveA> and all manner of links are wrong
[06:06] <SteveA> ok, there's major breakage with the virtual hosting, and I'll need to find out why that is
[06:06] <carlos> lalo: I see it? as comming from daf's machine
[06:06] <carlos> and I'm still confused :-D
[06:06] <daf> SteveA: there's lots of hardcoding of "/rosetta/..." in the main template
[06:07] <SteveA> for now, I think we need to use the backup plan of asking the sysadmins to revert the change in the vhosting configuration, and adding a redirect on the front page...
[06:07] <lalo> which is why I suppose it's a bot :-)
[06:07] <SteveA> unless fixing the main template will help
[06:07] <daf> SteveA: I've made some changes -- is anything still broken?
[06:07] <SteveA> ah...
[06:07] <lalo> dilys: hello
[06:07] <SteveA> I think the vhosting directive is wrong
[06:07] <dilys> lalo: hola!
[06:08] <carlos> daf: your boot is not utf-8 friendly :-)
[06:08] <SteveA> I'm sure it is wrong
[06:08] <daf> carlos: yeah, that's weird
[06:08] <dilys> daf: donde estas?
[06:11] <carlos> daf: about our rosetta alpha release... I forgot to mention in the meeting that we need a bts for our alpha testers...
[06:12] <SteveA> daf: the rosetta part needs to be inside the virtual hosting thing
[06:12] <SteveA> http://dev.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/Zope3Book/virtualhosting.html
[06:14] <SteveA> So, I think it should be http://localhost:9010/++vh++https:rosetta.ubuntulinux.org:443/rosetta/++/
[06:14] <SteveA> and not  http://localhost:9010/++vh++https:rosetta.ubuntulinux.org:443/++/rosetta/
[06:14] <SteveA> then the base hrefs will be correct
[06:15] <daf> ok
[06:15] <daf> so should I revert the changes I made to the main template, or leave them?
[06:15] <SteveA> depends what changes you made
[06:15] <daf> and will you send a diff to the admins, or shall I? :)
[06:15] <SteveA> there should be no hardcoded /rosetta/
[06:16] <sabdfl> is there a test account for rosetta.ubuntulinux.org?
[06:16] <SteveA> you can test this on rosetta running on your machine
[06:16] <daf> there's not only hardcoded /rosetta, there's hardcoded /soyuz and /malone also
[06:16] <daf> SteveA: who can test what?
[06:16] <SteveA> give rosetta a URL with the VH stuff in it, and then look at the source -- see if the base href is okay
[06:16] <daf> ah, right
[06:16] <daf> sabdfl: yes, there is
[06:16] <sabdfl> test@ and test?
[06:17] <SteveA> daf: why is there hardcoded /soyuz etc. in the main template for rosetta?
[06:17] <sabdfl> it no work
[06:17] <daf> sabdfl<EMAIL_ADDRESS>:)
[06:18] <daf> SteveA: presumably because the person who wrote it didn't know better
[06:18] <daf> SteveA: what's the correct solution?
[06:18] <SteveA> but I mean, where is it linking to?
[06:18] <SteveA> we don't want the tabs etc. in the rosetta alpha
[06:18] <daf> we don't, and I've removed them
[06:19] <SteveA> so, where is the hardoded soyuz ?
[06:19] <daf> it's not there on rosetta.ul.o
[06:19] <SteveA> then that is okay
[06:19] <daf> right
[06:20] <daf> what I meant was that the locations of Rosetta, Soyuz and Malone are hardcoded relative to /
[06:20] <SteveA> what does proxypassreverse do?
[06:20] <daf> no idea
[06:21] <dilys> New bug 2029 for Launchpad/Rosetta: Languages with country codes are not working
[06:21] <carlos> dilys: sshh, it's a secret
[06:21] <carlos> :-P
[06:21] <carlos> daf: is it the mozilla boot?
[06:21] <dilys> carlos: you shouldn't have filed a bug, then :)
[06:22] <daf> carlos: "boot"?
[06:22] <carlos> bot
[06:22] <carlos> :-P
[06:22] <daf> no, it's something I hacked up myself
[06:23] <SteveA> daf: are you happy with checking that the VH things work on your machine?
[06:23] <daf> SteveA: yep, about to do that
[06:25] <daf> SteveA: no, it doesn't seem to be working
[06:27] <SteveA> can you be more specific
[06:27] <daf> I can, and I will :)
[06:28] <daf> http://localhost:8085/++vh++http:localhost:8085/rosetta/++/ takes me to the Launchpad! page
[06:28] <SteveA> ok, try it with the /rosetta/ before
[06:28] <SteveA> as in,
[06:28] <daf> before what?
[06:28] <SteveA>   http://localhost:8085/rosetta/++vh++http:localhost:8085/++
[06:29] <daf> yes, that works
[06:29] <SteveA> how have you tested that it works?
[06:29] <daf> I loaded it in my browser and it took me to the correct page
[06:29] <SteveA> it goes to the rosetta front page.  have you checked whether there is a base href given?
[06:30] <daf> checking...
[06:32] <SteveA> for example, on the rosetta alpha site, https://rosetta.ubuntulinux.org/projects/gnome/gnome-applets has a stray "rosetta" in the base href
[06:32] <daf> where is the base href found?
[06:32] <SteveA> in the source
[06:32] <SteveA> just after <head>
[06:32] <daf> no, there isn't one
[06:33] <SteveA> https://rosetta.ubuntulinux.org/projects/gnome/gnome-applets/index looks fine
[06:33] <SteveA> https://rosetta.ubuntulinux.org/projects/gnome/gnome-applets doesn't
[06:34] <daf> <base href="http://localhost:8085/projects/gnome/evolution/index" />
[06:34] <SteveA> what was the URL ?
[06:34] <daf> for a GET of http://localhost:8085/rosetta/++vh++http:localhost:8085/++/projects/gnome/evolution
[06:34] <SteveA> can you try this GET:
[06:35] <SteveA>   http://localhost:8085/rosetta/++vh++http:localhost:9999/++/projects/gnome/evolution
[06:35] <SteveA> this should give you a base with :9999 in it
[06:35] <daf> <base href="http://localhost:9999/projects/gnome/evolution/index" />
[06:35] <SteveA> ok, great
[06:35] <daf> is the trailing "index" supposed to be there?
[06:36] <SteveA> so, you can send another diff to the admins, and this stuff should work
[06:36] <SteveA> yes, that's meant to be there
[06:36] <SteveA> that's the default page
[06:36] <daf> ok
[06:37] <daf> "signalizes"?!
[06:37] <daf> (from the VH doc)
[06:38] <SteveA> it is written by someone whose native language is german
[06:39] <daf> with contributions from Marius :)
[06:40] <SteveA> yes, marius implemented the virtual hosting, along with albert and vika iirc
[06:43] <daf> ok, I've sent another request
[06:45] <SteveA> spiv: can you delete my account from launchpad that I registered with the email address<EMAIL_ADDRESS>?  (if that's the done thing to do, I mean)
[06:49] <spiv> SteveA: ok.
[06:50] <SteveA> daf: might want to ping elmo too, to let him know to expect another udiff in the mail
[06:51] <spiv> SteveA: done.
[06:51] <SteveA> thanks
[06:56] <daf> SteveA: elmo *is* here, by the way :)
[06:56] <SteveA> here is where?  on this channel you mean?
[06:57] <daf> yes
[06:57] <SteveA> I like the bootstrapping kind of thing where suggesting to ping someone actually pings them.
[06:59] <daf> elmo: ping?
[07:11] <SteveA> daf: do you want rosetta.ubuntulinux.org to be linked to as a tab from the UL website?
[07:11] <SteveA> do you want this during the alpha?
[07:11] <daf> lulu: did you say Limi was returning today?
[07:11] <daf> SteveA: I don't care much either way
[07:11] !lilo:*! Hi all.  Again I will mention that we are still behind on verifying group contact forms you've submitted, and that we've instituted a "squeaky wheel" policy to try to improve response time....if you want to get your service expedited, just message me and I'll try to up your priority.  Thanks!
[07:12] <SteveA> will random people be able to get value from rosetta.  is it clear that they need to apply to be a tester at this stage?
[07:12] <SteveA> is it clear that there are a different set of logins?
[07:12] <SteveA> limi should be around tomorrow
[07:12] <daf> it is a matter of policy that people are approached for testerhood
[07:13] <ddaa> spiv: I need some help to get started with the twisted-in-pyarch problem.
[07:13] <spiv> ddaa: Ok
[07:13] <spiv> What can I do for you?
[07:13] <ddaa> help clarify my ideas
[07:14] <ddaa> roughly, pyarch uses synchronous interfaces
[07:14] <ddaa> problem has been found to occur even when the reactor is not running
[07:14] <ddaa> although that is probably only a concern in test cases
[07:15] <spiv> That's intriguing.  That means it's not related to the signal handlers.
[07:15] <ddaa> So, internal twisted support needs to be enable only when the reactor is running or some magic variable is set to mean "we are running a test case in a process which uses twisted"
[07:15] <spiv> I can't think of any other global-state influencing things Twisted does, though.
[07:15] <SteveA> daf: ok, but consider youself someone who saw an article in LWN, or slashdot, then came to ubuntulinux.org, and sees a "rosetta" tab
[07:16] <ddaa> spiv: that's the problem you tried to work around at Oxford.
[07:16] <SteveA> daf: if this person clicks there, will they be given something useful, if they're not a tester?
[07:16] <ddaa> The problem test cases did not use twisted themselves, that's why it was possible to segregate them.
[07:16] <spiv> So, the problem here is that we don't know what part of Twisted is interfering.
[07:16] <SteveA> if yes, then we should have a tab linking to rosetta
[07:16] <SteveA> if no, we should not
[07:16] <spiv> So we don't know how to test for its presence.
[07:17] <ddaa> spiv: that's the root of the problem yes
[07:17] <spiv> There's always the crude "if 'twisted' in sys.modules: ..." approach.
[07:17] <ddaa> but I'm looking for a low-risk solution that I can implement before saturday evening.
[07:17] <ddaa> twisted does magic things at module import?
[07:18] <spiv> Nope.
[07:18] <spiv> Well, there's minor magic for the import of twisted.internet.reactor, but otherwise, no.
[07:18] <spiv> (and I doubt that magic is the problem)
[07:18] <ddaa> So, a reasonable solution seems to test for reactor.running (real world) and some magic flag internal to pyarh (test cases)
[07:19] <spiv> But I don't know of any other meaningful way to test for the presence of Twisted, if reactor.running is apparently not enough.
[07:19] <ddaa> I'm going to brain dump random thoughts now. Do not try to make sense of them at first.
[07:20] <spiv> Ok :)
[07:20] <ddaa> One problem is that the pyarch code is essentially synchronous.
[07:20] <ddaa> So I will have to wrap the async twisted interfaces into a synchronous interface.
[07:21] <ddaa> Yes that's evil.
[07:21] <ddaa> Since it is synchrounous, it might be a reasonably assumption that if a reactor is running, the pyarch stuff is running in a thread.
[07:21] <daf> SteveA: oh!
[07:21] <daf> SteveA: no, there shouldn't be a Rosetta tab
[07:22] <ddaa> Also, I need my test cases to run in a running reactor.
[07:22] <daf> SteveA: the alpha is not going to be announced to the public
[07:22] <ddaa> Yet they essentially have nothing async to them.
[07:22] <ddaa> The running reactor is going to be needed for two things at least.
[07:23] <ddaa> To set the reactor.running flag so pyrach internal will know to use twisted.
[07:23] <spiv> (test cases involving Twisted rarely need to run the reactor; iterating it manually usually enough)
[07:23] <spiv> (and there are utility functions like deferredResult to help with this)
[07:23] <SteveA> daf: ok, then no need for links from the UL site at this time.
[07:23] <daf> SteveA: right
[07:24] <ddaa> Another relateh problem is the wrap-in-sync problem.
[07:24] <SteveA> daf: I think it would be good to send a mail to the LP list clearly pointing this out
[07:24] <ddaa> One major idiom in pyrach is the use of iterators over tla stdout.
[07:25] <SteveA> otherwise, the enthusiastic UL website team might link to you, or add a tab
[07:25] <ddaa> Right now I can see two ways which might me able to do it.
[07:25] <daf> SteveA: good idea
[07:25] <ddaa> 1. assuming we are in a thread, and the reactor push the output in a syncqueue which is used in the iterator.
[07:26] <ddaa> 2. manipulate the process by hand, that might be possible if processes provide a nice deffered interface
[07:26] <spiv> 1. sounds reasonable to me.
[07:27] <ddaa> 3. use reactor.iterate, but that might not be possible if the reactor is already running somewhere else.
[07:27] <spiv> I'm not sure what you mean in 2 by "manipulate the process by hand", but it doesn't sound good :)
[07:27] <spiv> And 3 definitely sounds wrong.
[07:27] <spiv> I think 1 is the right approach here.
[07:27] <spiv> You u
[07:28] <ddaa> spiv: can you work with a process with an interface which is based only on deferreds?
[07:28] <daf> SteveA: ok, looks like r.ul.o's vhosting is working now
[07:28] <SteveA> daf: cool -- elmo made the change to VH.  rosetta pages now look correct.
[07:28] <spiv> ddaa: I think the answer is yes, but I'm not convinced the question makes sense ;)
[07:28] <daf> SteveA: ok, do you think #2026 can be closed?
[07:28] <ddaa> What I want to do barely make any sense to start with...
[07:29] <ddaa> I am thinking about using the twisted process handling code w/o involving the reactor at all.
[07:29] <spiv> Oh, I see.
[07:29] <ddaa> Since the code that need to work with process is synchronous to start with.
[07:29] <SteveA> daf: looks like all those things are done
[07:30] <spiv> No, the twistd process handling code very much depends on the reactor.
[07:30] <spiv> s/twistd/twisted/
[07:30] <spiv> SteveA: There is an IReactorCore :)
[07:30] <spiv> (which has a .crash method, even)
[07:31] <ddaa> Then, what if pyarch code is invoked from the reactor thread?
[07:31] <spiv> Well, it shouldn't be.  Just like blocking socket reads shouldn't be :)
[07:31] <ddaa> Can you think of any way that will not cause a deadlock?
[07:32] <dilys> Bug 2026 resolved: clean up UI for Rosetta alpha
[07:32] <spiv> I don't see what's wrong with option 1 -- pyarch is in its own happy thread, and twisted's event loop is in its own happy thread, and they communication via the usual inter-thread methods.
[07:32] <ddaa> Because, according to murphy's law, you can be pretty sure there is some code somewhere in production which calls pyrach from the reactor thread.
[07:32] <spiv> Well, that code is almost certainly buggy :)
[07:33] <ddaa> It's not buggy according to the current contract, which is "pyarch does not fuck around with reactors"
[07:33] <spiv> Right, the bug wouldn't lie in pyarch.
[07:34] <spiv> Or in twisted... it would be in the code that is incorrectly integrating them.
[07:34] <spiv> You can't stop people writing buggy software with your library ;)
[07:34] <ddaa> see, my goal is get production importd up and running as fast as possible, not to uncover new design flaw that will manifest themselves by random deadlocks...
[07:35] <spiv> Right.  So I don't see where the deadlocks are yet.
[07:35] <ddaa> Are you familiar with importd?
[07:35] <spiv> What makes you think deadlocks are a problem?
[07:35] <spiv> Somewhat.
[07:35] <ddaa> I have no specific idea.
[07:35] <spiv> Ok, so, forget about the reactor for a moment :)
[07:36] <ddaa> Just that currently, nothing prevents from calling pyarch from the reactor thread.
[07:36] <ddaa> So it's almost certainly done somewhere.
[07:36] <ddaa> Somewhere = in the canonical code
[07:36] <spiv> That's not too hard to fix.
[07:37] <spiv> give me a sec
[07:37] <ddaa> Okay. Forget about reactors. I think you have a pretty clear idea of the problem,
[07:37] <ddaa> What's your take on the problem?
[07:38] <spiv> Ok, twisted.python.threadable.isInIOThread() will tell you if you're in the reactor's thread.
[07:38] <ddaa> kewl
[07:38] <spiv> And should be safe to call even if the reactor isn't running.
[07:38] <ddaa> Okay. That's solving it.
[07:39] <spiv> (it probably should be a method on the reactor, but oh well...)
[07:39] <ddaa> wait a min...
[07:39] <ddaa> gotta meditate a bit about it. ..
[07:40] <spiv> Sure :)
[07:40] <spiv> Unfortunately, I'll have to go in a few minutes (same time as daf).
[07:41] <ddaa> When are you back?
[07:41] <spiv> After dinner, we're going out to a thai restaurant.
[07:42] <spiv> I'm not sure precisely how long it will be, sorry :(
[07:42] <ddaa> more like 4h than 8h
[07:43] <spiv> I hope to be sleeping 8h from now :)
[07:43] <ddaa> as you might guess, I'm not planning to go bed before that's fixed or I am unable to think...
[07:43] <spiv> Ah, right.
[07:45] <ddaa> (lightbulb)
[07:46] <ddaa> as a quick hack, I can degrade to "non-incremental" if reactor is running...
[07:46] <ddaa> i.e. just slurps the stdout
[07:46] <SteveA> spiv: roche has a question
[07:47] <ddaa> then I can build on top of that later
[07:48] <ddaa> spiv: is the reactor code reentrant?
[07:51] <ddaa> no... that would probably not make sense...
[08:50] <carlos> spiv: are you here?
[09:48] <carlos> funny
[09:48] <carlos> SteveA: ping?
[10:00] <kiko> spiv, is the auth bustage landed yours?
[10:45] <SteveA> carlos: hey
[10:45] <SteveA> I'm about to go to sleep
[10:51] <SteveA> I read your email about authentication
[10:51] <SteveA> I'll look into it tomorrow morning, if no-one else has tracked it down by then
[10:53] <daf> carlos: which server are you having trouble with?
[10:54] <daf> carlos: or is it both?
[11:04] <carlos> SteveA: ok
[11:04] <carlos> daf: with my local server
[11:04] <carlos> and with warthogs one
[11:05] <carlos> rosetta.warthogs.hbd.com
[11:05] <carlos> SteveA: night
[11:06] <carlos> spiv: I'm using alternateID instead of normal selectBy methods
[11:07] <carlos> spiv: I suppose it should improve the SQLObject use, right?
[11:07] <carlos> spiv: should I add it to the Wiki?
[11:07] <SteveA> carlos: can you file a bug on the authentication problems you're seeing?
[11:07] <carlos> SteveA: sure
[11:07] <SteveA> that way, it will be plain whether I need to look into it tomorrow, and what others have found out
[11:08] <carlos> ok
[11:08] <spiv> carlos: Yes, please.  I forgot about that feature!
[11:08] <carlos> spiv: also, I don't see a way to "map" a INNER JOIN inside SQLObject queries
[11:09] <carlos> spiv: do you know if it exists?
[11:09] <daf> carlos: what query do you want to do?
[11:09] <spiv> Because you want to return columns from multiple tables at once?
[11:10] <spiv> ddaa: No, the reactor is definitely not re-entrant!
[11:11] <carlos> results = RosettaPOMessageSet.select('''
[11:11] <carlos>             pofile = %d AND
[11:11] <carlos>             primemsgid = %d
[11:11] <carlos>             ''' % (self.id, msgid.id))
[11:11] <carlos> that query
[11:11] <carlos> with normal selects could be improved with INNER JOIN
[11:11] <carlos> hmmm
[11:12] <carlos> wait, bad example
[11:12] <carlos> seqzero = RosettaPOMessageSet.select('''
[11:12] <carlos>             poSet.pofile = %d AND
[11:12] <carlos>             poSet.primemsgid = potset.primemsgid AND
[11:12] <carlos>             poSet.potemplate = potset.potemplate AND
[11:12] <carlos>             potSet.pofile IS NULL AND
[11:12] <carlos>             poSet.sequence <> 0 AND
[11:12] <carlos>             potSet.sequence = 0''' % self.id,
[11:12] <carlos>             clauseTables = [
[11:12] <daf> grrrrrrrrr!
[11:12] <carlos>                 'POMsgSet poSet',
[11:12] <carlos>                 'POMsgSet potSet',
[11:12] <carlos>                 ] )
[11:12] <carlos> this one is better
[11:13] <daf> I can't wait for .sorted()
[11:13] <carlos> spiv: it's only to improve the queries, instead of a FROM with a list of tables
[11:13] <carlos> daf: what's the problem?
[11:13] <daf> carlos: I have to do
[11:14] <daf> somelist = blah.blarg()
[11:14] <daf> somelist.sort()
[11:14] <daf> return somelist
[11:14] <daf> instead of:
[11:14] <daf> return blah.blarg().sorted()
[11:15] <daf> this is one thing Ruby has right: .sort for non-destructive sorting, .sort! for destructive sorting
[11:15] <spiv> daf: return (lambda l=somelist: l.sort() or l)()   ;)
[11:16] <daf> spiv: :D
[11:16] <ddaa> spiv: yeah... I was high on crack...
[11:16] <spiv> (yes, that's unnecessarily compless :)
[11:16] <spiv> er, complex
[11:16] <ddaa> You know twisted is heavy crack ;-)
[11:17] <daf> I don't think Steve would approve :)
[11:17] <daf> what's the simpler version?
[11:17] <spiv> return somelist.sort() or somelist
[11:17] <daf> ewww
[11:17] <daf> that's still smelly
[11:18] <spiv> Well, yes :)
[11:18] <carlos> :-P
[11:18] <spiv> sorted = lambda l: l.sort() or l; return sorted(l)  is slightly better, but no longer one statement.
[11:18] <ddaa> somelist.sort() or return somelist
[11:18] <spiv> ddaa: return is statement, not an operator.
[11:19] <ddaa> right....
[11:19] <spiv> Oh, I get your point.  Yuck :P
[11:19] <ddaa> What about just using two statement?
[11:20] <daf> ddaa: that's what I'm doing :)
[11:20] <daf> ddaa: I'm just saying I don't like it :)
[11:20] <daf> bah!
[11:20] <daf> ForbiddenAttribute: ('sort', ...
[11:21] <ddaa> daf: I'm pretty there are for python programmers with weird fetishes, like ternary operators and sort return values :
[11:21] <ddaa> * there are clubs
[11:21] <daf> an aversion to destrcutivity is not a weird fetish :)
[11:23] <daf> Python does have a ternary operator -- it looks like this: [value1, value2] [condition]
[11:23] <dilys> New bug 2030 for Launchpad/Launchpad: After authenticate, launchpad fails with a system error
[11:25] <daf> carlos: you say running on port 8089 doesn't work?
[11:25] <carlos> daf: it works
[11:25] <carlos> daf: but as anonymous
[11:25] <daf> or rather, it doesn't produce an error
[11:25] <carlos> so you cannot debug the problem
[11:25] <daf> hrm
[11:26] <carlos> same problem with ++skin++Debug
[11:26] <daf> I know why ++skin++Debug is a problem, but not the PDB
[11:26] <carlos> daf: you can try it, rosetta.warthogs.hbd.com has the same problem
[11:26] <carlos> hmm
[11:27] <carlos> well, I did not check the pdb with the rosetta server because I don't see a way to test it :-)
[11:27] <daf> of course :)
[11:27] <carlos> but I assume that as it has the same bug, you will get the same problem
[11:27] <carlos> :-)
[11:28] <daf> I do get the same problem
[11:28] <carlos> perfect, I thought I broke anything with my sqlobject changes
[11:28] <daf> one techique I use is to switch the ports around
[11:28] <elmo> eww, ternary operator's in python?  please tell me you guys aren't using that
[11:28] <ddaa> There is a widthdrawn pep about that.
[11:29] <daf> elmo: not really
[11:29] <daf> elmo: but ['foo', 'bar'] [True]  == 'bar' and ['foo', 'bar'] [False]  == 'foo'
[11:29] <daf> elmo: so you can emulate it
[11:30] <ddaa> Guido said "as people are unable to come to an agreement about ternary operators, I'll just reject the proposal"
[11:30] <ddaa> Or something just as smooth to the same effect.
[11:31] <daf> I didn't like any of the proposals
[11:31] <daf> they were all a bit ugly
[11:32] <ddaa> daf, btw methink that's a case for using a tuple instead of a list...
[11:32] <daf> spiv: any word on DISTINCT support in SQLObject?
[11:33] <spiv> daf: None yet... is it a performance problem yet?
[11:33] <daf> ddaa: yeah, a tuple would work, but is there any practical difference?
[11:33] <daf> spiv: no, merely annoying :)
[11:33] <ddaa> daf: no practical difference, but it's not intended to be mutable, so it should be a tuple. That's the most appropriate type for the use.
[11:33] <daf> need to do list(Set(Foo.select(...)))
[11:34] <daf> ddaa: agreed
[11:35] <spiv> carlos: Hmm, I think there's a better way to write that example without needing to change SQLObject.
[11:35] <daf> spiv: launchpad/lib/sqlobject/dbconnection.py(510)iterSelect(): TypeError: iteration over non-sequence
[11:35] <daf> spiv: this is the error behind #2030, I think
[11:36] <spiv> daf: Ok, I'll take ae look at that... I've got a workaround for that, but I want to think about it first :)
[11:36] <daf> spiv: actually, I might have got the location wrong -- this traceback is confusing
[11:36] <carlos> spiv: which one? Do you have it ? or where could I read about it?
[11:36] <spiv> carlos: Just a sec
[11:37] <carlos> sure
[11:37] <spiv> carlos: RosettaPOMessageSet.select('''
[11:37] <spiv>             POMsgSet.pofile = %d AND
[11:37] <spiv>             POMsgSet.iscomplete=TRUE AND
[11:37] <spiv>             POMsgSet.primemsgid = potset.primemsgid AND
[11:37] <spiv>             POMsgSet.potemplate = potset.potemplate AND
[11:37] <spiv>             potSet.pofile IS NULL AND
[11:37] <spiv>             potSet.sequence <> 0''' % self.id,
[11:37] <spiv>             clauseTables = [
[11:37] <spiv>                 'POMsgSet potSet',
[11:37] <spiv>                 ] )
[11:38] <spiv> EXPLAIN expects that to be twice as fast... I don't know if that's really the case or not :)
[11:38] <carlos> hmm, that change will speed the query?
[11:38] <spiv> It's also not as clear :(
[11:39] <carlos> spiv: interesting
[11:39] <spiv> Well, EXPLAIN in psql thinks so.  I'd appreciate testing :)
[11:40] <spiv> (In fact, I suspect the previous query might be outright buggy...)
[11:40] <daf> spiv: buggy?
[11:41] <carlos> spiv: no, it looks correct
[11:41] <carlos> but If it improves the speed... the postgres parser is really bad :-)
[11:42] <carlos> under my point of view, of course
[11:42] <spiv> carlos: No, it's SQLObject's fault...
[11:42] <spiv> If I'm correct, the currently generated query is:
[11:42] <spiv> select * from POMsgSet, POMsgSet poSet, POMsgSet potSet WHERE poSet.pofile = 1 AND poSet.primemsgid = potset.primemsgid AND poSet.potemplate = potset.potemplate AND potSet.pofile IS NULL AND poSet.sequence <> 0 AND potSet.sequence = 0;
[11:42] <spiv> vs.
[11:43] <spiv> select poSet.* from POMsgSet poSet, POMsgSet potSet WHERE poSet.pofile = 1 AND poSet.primemsgid = potset.primemsgid AND poSet.potemplate = potset.potemplate AND potSet.pofile IS NULL AND poSet.sequence <> 0 AND potSet.sequence = 0;
[11:43] <carlos> oohh, I see
[11:43] <spiv> (actually, my proposed change will generate a slightly different, but equivalent, query to the last one, I'm just too lazy to retype it ;)
[11:44] <carlos> spiv: I see your point
[11:44] <spiv> I admit to being mildly concerned that the origial query returns twice as many columns!
[11:45] <carlos> spiv: I'm looking at the logs now
[11:45] <carlos> spiv: to check for it
[11:45] <daf> spiv: oh, ouch
[11:45] <spiv> carlos: The reason I was initially confused is that it's my understanding that INNER JOIN is the default behaviour when you say "SELECT * FROM TableA WHERE TableA.b = TableB.id;"
[11:45] <daf> spiv: can you tell we're SQL amateurs? :)
[11:45] <spiv> I could be wrong, of course :)
[11:46] <spiv> daf: Well, the problem here is that SQLObject provides no nice way to do this, so it's easy to get confused :(
[11:46] <carlos> spiv: well, it's the same thing, but postgres manual says that it's faster with INNER JOIN
[11:46] <spiv> carlos: Ooh, where does it say that? :)
[11:46] <spiv> Now it's my turn to bitch about it's parser ;)
[11:47] <carlos> This is the query that sqlobject generates:
[11:47] <carlos> SELECT POMsgSet.id, POMsgSet.potemplate, POMsgSet.pofile, POMsgSet.primemsgid, POMsgSet.sequence, POMsgSet.iscomplete, POMsgSet.fuzzy, POMsgSet.obsolete, POMsgSet.commenttext, POMsgSet.filereferences, POMsgSet.sourcecomment, POMsgSet.flagscomment FROM POMsgSet poSet, POMsgSet potSet, POMsgSet WHERE
[11:47] <carlos>                     poSet.pofile = 2 AND
[11:47] <carlos>                     poSet.primemsgid = potset.primemsgid AND
[11:47] <carlos>                     poSet.potemplate = potset.potemplate AND
[11:47] <carlos>                     potSet.pofile IS NULL AND
[11:47] <carlos>                     poSet.sequence <> 0 AND
[11:47] <carlos>                     potSet.sequence = 0
[11:47] <carlos> spiv: so you are right we get a lot of extra rows
[11:47] <daf> s/rows/columns/
[11:47] <daf> ?
[11:47] <spiv> carlos: Extra rows, too?  Ouch.  I don't have the sampledata to test with, so I merely noticed extra columns.
[11:47] <spiv> (I'm not surprised, though...)
[11:49] <carlos> I think so
[11:49] <carlos> let me check it
[11:49] <daf> yeah, PDB claims the error is at
[11:49] <daf> 509             return iter(list(Iteration(self, self._connection,
[11:49] <daf> 510  ->                               select, keepConnection=True)))
[11:50] <daf> which looks vaguely familiar :)
[11:50] <carlos> hmmm, seems like I was wrong and we only get extra columns
[11:51] <carlos> I don't know why but I saw a way to get extra rows... but that's an offtopic now :-)
[11:51] <carlos> spiv: http://www.postgresql.org/docs/7.4/static/tutorial-join.html
[11:52] <carlos> spiv: a "normal" INNER JOIN is the same thing than a list of tables at FROM
[11:52] <carlos> but you can handle it in a better way with INNER JOIN so the query is faster
[11:53] <carlos> with LEFT/RIGHT options
[11:53] <carlos> so you can select which table will be the pivot
[11:53] <daf> I thought LEFT and RIGHT are for OUTER joins only
[11:54] <carlos> daf: we have lots of those queries
[11:54] <carlos> about msgid and translations
[11:54] <carlos> I should look at it closer
[11:55] <spiv> Except the SELECT * FROM TableA WHERE TableA.b = Tableb.value; case is a different case to SELECT * FROM TableA, TableB WHERE TableA.b = Tableb.value;
[11:57] <daf> humph -- even list.sort is a Forbidden value :(
[11:57] <carlos> spiv: From where do you get the Tableb for the first query?
[11:57] <carlos> daf: zope error?
[11:57] <daf> carlos: yeah :(
[11:57] <spiv> carlos: Nowhere -- I'm not selecting values from tableB.
[11:58] <spiv> carlos: I'm selecting rows on tableA by joining with tableB...
[11:58] <carlos> daf: you could try to wrap it inside a browser.py method
[11:58] <spiv> I think it's a dodgy shorthand, but it's a convenient one ;)
[11:58] <daf> carlos: this is inside browser.py :)
[11:59] <carlos> spiv: hmm, so you have that concrete value for Tableb before the query, right?
[11:59] <carlos> daf: then I don't understand why are you getting it :-)
[11:59] <spiv> carlos: Nope.
[11:59] <daf> carlos: browser.py runs under the same security restrictions as the page templates themselves
[12:00] <spiv> carlos: I believe it's equivalent to SELECT * FROM TableA INNER JOIN TableB ON (TableA.b = TableB.value);
[12:00] <carlos> spiv: are you telling me that if I execute that query from psql it will work?
[12:00] <spiv> carlos: Absolutely:


[16:05] <firl> frankban you around?
[16:07] <frankban_> firl: yes
[16:07] <firl> I tried the latest juju-deployer, and it didn’t work with the constraints. It seemed to ignore it just like dragging it to the UI did
[16:08] <frankban> ignore the tags constraints, or just all constraints?
[16:08] <firl> I am only using tags constraints
[16:08] <firl> so I don’t know
[16:08] <frankban> firl: I see
[16:08] <firl> but the juju-deployer passed validation for the file where it didn’t before
[16:09] <frankban> firl: yes I fixed the fact that tags were passed as a string, butl a list was required instead.
[16:09] <frankban> firl: I'll investigate that further
[16:10] <firl> kk, let me know if there is anything I can do.
[16:12] <frankban> firl: could you please point me at the YAML again?
[16:12] <firl> http://pastebin.com/fxHJi5ue
[16:12] <firl> ( had a feeling you might have wanted the one I was using )
[16:17] <frankban_> firl: sorry disconnected,  how do you know that tags are not set?
[16:17] <firl> when I look at my network agent
[16:17] <firl> it’s not on the right tag
[16:17] <firl> ( juju status )
[16:18] <frankban> firl: ok I'll check, are you on maas?
[16:18] <firl> yeah
[16:19] <firl> I have a 6 node cluster that I can replicate and let you see fully if that helps
[16:20] <frankban> firl: not at the moment, and I have t leave in ~40 (we are sprinting this week). I'll be on it on Tue.
[16:20] <firl> cool
[16:21] <firl> thanks again man
[16:25] <frankban> firl: I just deployed your bundle using juju 1.25-alpha1-vivid-amd64 on an ec2 environment and it seems tags seems to be  properly set: http://pastebin.ubuntu.com/12274405/
[16:26] <frankban> firl: so maybe a problem in maas?
[16:31] <frankban> firl: could you please try the bundle deployment using that juju version and check if status reports correctly the tags?
[17:29] <firl> frankban: How do I install that version specifically? bzr and compile with go?
[17:32] <firl> frankban: install juju 1.25-alpha1-vivid-amd64 and use juju-deployer or use juju quickstart
[18:10] <firl> is it ok to use 1.26-alpha1-vivid-amd64 ?


[02:11] -lugito:#lubuntu-devel- [rWELCOME41828591940b: Adding latest Lubuntu Welcome Center progress] SBanya (Samuel Banya) committed: https://phab.lubuntu.me/rWELCOME41828591940b
[04:49] -lugito:#lubuntu-devel- [rMANUAL24c8b4854844: Add starting slideshow at current slide] lynorian (Lyn Perrine) committed: https://phab.lubuntu.me/rMANUAL24c8b4854844
[05:39] -lugito:#lubuntu-devel- [rQUASSELARCHIVE01ee510d4df0: DSC file for 1:0.13.0-1] Diffusion committed: https://phab.lubuntu.me/rQUASSELARCHIVE01ee510d4df0
[05:39] -lugito:#lubuntu-devel- [rQUASSELARCHIVE8cae508f6ec8: Import patches-unapplied version 1:0.13.0-1 to debian/experimental] Diffusion committed: https://phab.lubuntu.me/rQUASSELARCHIVE8cae508f6ec8
[05:39] -lugito:#lubuntu-devel- [rQUASSELARCHIVE0491fb05adca: 01_default_network_channel] Diffusion committed: https://phab.lubuntu.me/rQUASSELARCHIVE0491fb05adca
[05:39] -lugito:#lubuntu-devel- [rQUASSELARCHIVE18c7f532c67c: Import patches-applied version 1:0.13.0-1 to applied/debian/experimental] Diffusion committed: https://phab.lubuntu.me/rQUASSELARCHIVE18c7f532c67c
[05:40] -lugito:#lubuntu-devel- [rQUASSELARCHIVEbe29b54262ee: 02_script_interpreter_path.patch] Diffusion committed: https://phab.lubuntu.me/rQUASSELARCHIVEbe29b54262ee
[10:23] -lugito:#lubuntu-devel- [rMANUAL4d94804323f9: Add how to run a script in pcmanfm-qt] lynorian (Lyn Perrine) committed: https://phab.lubuntu.me/rMANUAL4d94804323f9
 wxl: Would we ever consider switching default terminals if we found one better than QTerminal?
[18:56] <wxl> i'm not wedded to it
[18:56] <wxl> naturally we'd want to evaluate an alternative on how well maintained it is and how functional it is, etc.
 There's this one terminal I'm going to switch to for a week and see how it compares.
 https://github.com/liamg/aminal
 If it's better I'm going to package it and upload it to Debian.
 Probably more than a week.
 But I'm going to file feature requests like craaazy
 I doubt it'll be much better but it looks cool
[18:58] <wxl> ehh
[18:58] <wxl> "experimental"
 @wxl [<wxl> "experimental"], 'tis concerning
 Yuuup
[18:59] <wxl> latest graphics drivers needed? uhhhh
 @wxl [<wxl> latest graphics drivers needed? uhhhh], Definitely going to cause problems.
[18:59] <wxl> yeah i'm not feeling too excited about it
 TO BE FAIR this is me saying "OMG new shiny" but I'm going to try to use it.
 *takes @tsimonq2's computer*
 If it's not good then we won't do it. :P
 I dunno, maybe all this time away is getting to me. XD
[18:59] <wxl> probably
[19:00] <wxl> better to use your time on something that we *need*
 @tsimonq2 I know I have no say in how to drive Lubuntu... but I'd think that if you're going to try 'oo shiny' you should do that on your own time rather than propose untested things as the 'next thing for Lubuntu'
 my two cents.
[19:00]  * wxl invests two cents
 @teward001 [@tsimonq2 I know I have no say in how to drive Lubuntu... but I'd think that if …], Did you actually read what I wrote? :P
 Fwd from tsimonq2: There's this one terminal I'm going to switch to for a week and see how it compares.
 Fwd from tsimonq2: I doubt it'll be much better but it looks cool
[19:02] <wxl> if you said in a week that it's the best thing ever and totally ready for prime time, i'd give it a firm "no" for inclusion in lubuntu
 Mmmkay
 @wxl [<wxl> if you said in a week that it's the best thing ever and totally ready for …], wxl of course understands where I come from here :P
[19:23] <lynorian> looks gimmicky
[19:25] <lynorian> if we were going for gimmicky terminal stuff I would want less that scrolls thourgh text like the intro to star wars
[19:26] <wxl> blinkenlights.nl
 Why not use coolretroterm
 Thats better than all of them
 If you're going for eye candy
[20:32] <wxl> @SamuelBanya cuz coolretroterm is eyecandy and otherwise is forgettable
[20:35] -lugito:#lubuntu-devel- [rMANUALb1909212c17a: Add ignore to Quassel] lynorian (Lyn Perrine) committed: https://phab.lubuntu.me/rMANUALb1909212c17a
 True
 It's a pain to install tbh
 Not noob friendly
 Had to use a YouTube video
[20:55] -lugito:#lubuntu-devel- [rMANUAL29cce2c7e4c9: Add how to add bookmarks to firefox] lynorian (Lyn Perrine) committed: https://phab.lubuntu.me/rMANUAL29cce2c7e4c9


[01:04] <pleia2> thanks PaulW2U, looks like Jim reviewed too \o/ prepping for publishing now
[01:17] <pleia2> Welcome to the Ubuntu Weekly Newsletter, Issue 444 for the week November 23 - 29, 2015 https://wiki.ubuntu.com/UbuntuWeeklyNewsletter/Issue444
[01:19] <Unit193> Still good (did I not say this before? :3 )
[01:21] <pleia2> maybe, but netsplits who knows
[01:22] <Unit193> Backlog shows I checked but forgot to say words.  Sorry.