BradBsabdfl: i should have one-click accept/reject checked in shortly12:12
!lilo:*! As you may be aware, freenode is a program of Peer-Directed Projects Center, an IRS 501(c)(03) (not-for-profit, tax-exempt) organization. Ramping up has been slow; we're in the middle of our first actively-budgeted year of operation. Information on PDPC is available on Guidestar: http://www.guidestar.org/search/report/gs_report.jsp?ein=74-3033697 (registration required, free of charge).12:22
!lilo:*! The information on Guidestar should serve to give you a bit of information on the goals of PDPC. Meanwhile, we're in the middle of program planning. If you're interested in helping brainstorm a bit, please read our Guidestar entry and stop by #pdpc-input .... I'll talk about what we're tring to do and maybe you can help us come up with more ideas for pilot programs. Thanks.12:24
BradBjust checking which tests have broken now12:25
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: added one-click bug assignment accept/reject (patch-856)01:18
dilysMalone bug #47 fixed for product Malone: All our bug assignments are 'NEW'01:29
=== stub [~stub@dsl-] has joined #launchpad
BradBcan you move up a new malone?01:30
stubdogfood? sure01:30
BradBstub: first, perhaps you could take a quick look at the one-click bug assignment accept/reject01:31
BradBto make sure it works in your browser.01:31
BradByou're probably using the same as me (ubuntu's firefox), but just to be sure...and to ensure the UI is relatively sane01:31
stubhoary firefox01:32
BradBit'd be nice if we could do something about the formatting. it looks pretty nasty, to be honest.01:33
BradBer, formatting of bug messages, that is01:33
stubLook fine at my end. Got any bugs on launchpad that particularly make you eyes bleed?01:35
BradBstub: what looks fine on your end?01:35
stubFormatting of bug messages01:35
=== stub is still mirroring rocketfuel
BradBit looks bizarre in a (fairly) vanilla warty firefix (0.9.3). looks like 1.5 line spacing, and a fairly small font01:37
BradBstub: there's major optimization needed for the bug listing (takes 1m 30s when db contains 7,000 bugs) but that'll most go away when we upgrade to a new zope and i implement cool selection widgets using sources.01:39
stubCool. Is a source like a Vocabulary, only saner?01:40
BradBdoing what's necessary to get us running on the newest z3 would be good. talking to lifeless to get him to do that thing you mentioned before to make it easy to upgrade whenever would be good.01:40
BradBstub: yeah01:40
BradBit's specifically meant for vocabs which are too large to enumerate, which is exactly what we need to solve that problem01:41
stubLet me know if you need me to check in any of the existing popup source to the Z3 tree if you use that model for the widget01:41
stubThere are already interfaces for non-enumerable Vocabularies, but they are buried in that disgusting mess of Interfaces that nobody can be bothered groking or using.01:42
stubI would recommend starting fresh like you are ;)01:43
BradBa minor one: the comment widgets need to be made the same size for followup comments as they are for the add new comment widgets. then we can close #12 slightly more confidently.01:43
stubI think you have IBaseVocabulary, IIterableVocabulary being used to build IVocabulary (which is the only one people use afaik)01:43
BradBit'd be helpful to go through and mark bugs fixed that you've fixed. e.g. something needs to be done about #45 (like i say, i don't think the formatting is acceptable...certainly not on an out-of-the-box firefox on warty)01:46
BradBstub: and then since pitti is our first Ubuntu person testing, his bugs may point out things that make you say "ah, yeah, we better fix that right away"01:46
BradBpitti, i.e. Martin Pitt01:46
stubI think if we want to tweak the formatting of the bug comments, it only involves changing the CSS class boardCommentContent. The comments look fine here (I think I might be seeing the 1-and-a-bit linespacing you are, but I like it. I'm running at 144dpi though so I will get different rendering to you.01:47
stubI don't know if I'll get to look at Malone stuff today though - got some other tasks I'm getting behind on (Issue Tracker).01:49
BradBhave you finished star-merging? i'd be curious to get your feedback on a basic sanity check of one-click accept/reject before i go do not-work things01:50
stubI'll be rolling out dogfood, and I think I saw a bug about two martins in the db which I will sort.01:50
stubJust committing the merge01:50
stubI can't see where the one click is..01:53
BradByou have to login01:53
BradBafterall, we don't want anons accepting/rejecting :)01:53
stubI am logged in.01:54
BradBbug listing?01:54
stubWhat screen should I be on?01:54
stubWierd... I get logged out on the buglisting page... I guess I should clear my basic auth tokens ;)01:55
stubSeems to work fine here.01:56
stubSome tweaks needed - 'Accept' should not be a hyperlink if the bug is already accepted.01:56
BradBstub: yeah, i wasn't sure about what the correct behaviour was there, but yeah, we'll probably do that.01:57
BradBalso, we'll probably drop the text in favour of icons or something01:57
BradBbut anyway, cool, i look forward to a new dogfood01:57
stubI think we need to drop the 'onclick' for the table row rollovers - it is confusing to have hyperlinks embedded in a larger object that is clickable.01:58
BradBstub: it's no longer the whole row01:58
BradBstub: it's everything but the "Take Action" column now. the row highlighting remains a bit confusing in that regard though.01:58
BradBstub: anyway, i'll leave it with you. need anything from me before i go?01:59
stubok - it is improved, but I still think it is confusing (as someone who like to watch his status bar to see what links do). I think when Limi threw it together, the entire row was all destined to go to the same destination.01:59
stubShould be fine ;-)02:00
BradBstub: yeah, it is. we'll definitely do something about that.02:00
BradBok, thanks, later!02:00
=== BradB is now known as BradB|away
stubhave fun ;)02:00
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Put debbugs in sampledata (patch-857)02:28
=== daf [daf@muse.19inch.net] has joined #launchpad
=== mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad
dilysMalone bug #73 fixed for product Malone: "Martin Pitt" is in the assignee list twice04:46
dilysMalone bug #25 fixed for product The Launchpad: favicon not founds05:09
dilysMalone bug #25 fixed for package launchpad: favicon not founds05:10
dilysMalone bug #45 fixed for product Malone: Bug message formatting not appropriate for bugs05:29
=== daf [daf@muse.19inch.net] has joined #launchpad
=== ChanServ [ChanServ@services.] has joined #launchpad
=== mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== bob2 [rob@bob2.user] has joined #launchpad
=== BradB|away [~bradb@modemcable202.193-131-66.mc.videotron.ca] has joined #launchpad
=== Kinnison [~dsilvers@haddenham.pepperfish.net] has joined #launchpad
=== dilys [daf@muse.19inch.net] has joined #launchpad
=== elmo [~james@] has joined #launchpad
=== lifeless [~robertc@dsl-] has joined #launchpad
=== Kinnison is now known as Kinn|Home
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: separated publishing and udeb import for gina (patch-858)09:21
=== SteveA [~steve@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== Kinnison [~dsilvers@host81-153-126-219.range81-153.btcentralplus.com] has joined #launchpad
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
KinnisonMorning lulu10:07
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
lulukinnison:morning :o)10:23
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
Kinnisonmorning carlos11:00
carloslulu: hey!11:16
KinnisonY'know, I think I almost fixed the last FMO11:26
KinnisonFor warty at least11:27
Kinnison@ Closing database connections...11:43
Kinnison@ Gina completed.11:43
=== Kinnison reviews the logfile
=== Kinnison gives her one last run for good luck
=== cprov [~cprov@] has joined #launchpad
KinnisonHihi cprov 12:00
cprovKinnison: morning 12:04
Kinnisonokay; gina seems clear12:05
=== Kinnison starts to investigate if she has imported cleanly
dilysNew Malone bug #76: "SQLObject is not committing", submitted by Rob Weir12:14
=== Kinnison hurrahs
Kinnisongina is doing well12:27
=== cprov [~cprov@] has joined #launchpad
SteveALaunchpad meeting, here, 1 hour from now12:31
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
=== debonzi [~debonzi@] has joined #launchpad
=== stub [~stub@dsl-] has joined #launchpad
SteveAmeeting in 501:24
Kinnison(I can just sense a 'Lunchpadders are go' coming up)01:25
carloskiko: ;-)01:27
=== carlos is here
carlos /s/kiko/Kinnison/01:27
kikolunchpadders are go go go01:27
carloskiko: I have your AP 01:27
=== BradB|away is now known as BradB
=== Kinnison raises his hand. Please sir. I'm here but I'm not
=== Kinnison will brb.
kikocarlos, you are them man01:29
SteveAok, who is here.  all here say "something"01:30
lifelessSteveA: 01:30
SteveAanyone seen james henstridge?01:31
SteveAsabdfl: ?01:31
lifelessyeah, a few months ago01:31
SteveAcprov: ?01:31
SteveAdebonzi: ?01:31
sabdflSteveA: yes?01:31
SteveAkiko: ?01:31
SteveAsabdfl: launchpad meeting starting01:31
sabdflpresent ;-)01:32
SteveAok, let's get started.  others can read the logs and join in when they join in01:32
SteveAfirst of all, I have a couple of general launchpad things01:32
SteveAWe should all start using baz.01:33
SteveAWho isn't using baz yet?01:33
=== SteveA raises a hand
=== Kinnison is not using baz on his laptop
=== Kinnison uses baz exclusively on his desktop
stubbaz switch rocks. baz branch rocks.01:33
SteveAdunno what those are01:33
lifelessnew commands01:33
lifelessbaz help switch01:34
debonziSteveA, 01:34
SteveAif you don't have baz yet, do you know how to get it?01:34
sabdflBradB: baz is very nice01:34
=== carlos is not using baz
=== BradB makes a point to switch today
SteveAok, let's all use baz today.01:35
carlosyep, It's just i was not able to look into it yet01:35
SteveAnext up, permissions01:35
SteveADo not use zope.View or any other "zope." permissions in your zcml code, except for "zope.Public"01:35
SteveAWhen my next checkin hits RF, there will be launchpad.AnyPerson and launchpad.Edit permissions available01:36
SteveAyou can add more launchpad.Something permissions in the canonical/launchpad/permissions.zcml file01:36
SteveAwe should keep them generic, where possible.  so, launchpad.Edit rather than launchpad.EditBug01:36
sabdflthere's only a zope.SendMail, in mail.zcml01:37
sabdflhold on01:37
sabdflplease don't just add permissions01:37
sabdflif you think you need a new permission, discuss it with steve01:37
SteveAI'm about to check in some changes to allow you to write code in a database object or in an adapter to say whether the logged in user gets particular permissions.01:37
sabdfli'd like there to be a launchpad.Admin permission as well01:37
SteveAI will post docs about this a little later today.01:37
kikosabdfl, seconded01:37
SteveAyeah, what sabdfl said01:38
sabdflthe idea is to stick to a bare minimum of permissions01:38
carlosSteveA: then we will have only: readonly or read/write permissions?01:38
sabdflso we don't end up with zope.CanTranslateToChineseWhenTheMoonIsFull01:38
carlosif I have write acces I could do anything I want?01:38
SteveAcarlos: we'll need to talk about that.  but not right now01:38
SteveAnext, there are various places in the code where we have "from canonical.launchpad.interfaces import *"01:39
sabdflin general - launchpad.Admin would allow you to do almost anything except break it01:39
sabdfllaunchpad.Edit would let you edit it, so title, shortdesc, description, properties typically01:39
cprovsabdfl: how to define launchpad.Admin in DB ? I know it's necessary, I just wonder how to define it .01:39
sabdflcprov: stevea will explain the mechanism01:39
SteveAI want to see the actual interfaces that are used explicitly mentioned in imports.  It is a bit more typing, but it keeps the code clearer, and dependencies clearer.01:39
sabdflso no more import *?01:40
kikoimport * == evil01:40
SteveAthe only time we should use import * is when the module concerned defines an __all__ tuple01:40
SteveAfor interfaces, there are just too many of them01:40
SteveAand the code's dependencies become unclear01:40
SteveAdebonzi: can you do a clean-up job on that?  we can discuss the details after the meeting.01:42
debonziSteveA, sure01:43
SteveAlifeless: is Zope 3 SVN being sucked into the supermirror yet?01:43
lifelessSteveA: not yet, will be trying it later today01:43
SteveAwe shall be upgrading our zope 3 soon.  I've tested the code with the latest zope, and all our tests pass.01:44
SteveAlifeless: you noted some problems with the dogfood server01:44
lifelesschanging my password gave me an exception01:45
lifeless    *  Module zope.tales.tales, line 698, in evaluate01:45
lifeless      return expression(self)01:45
lifeless      /srv/launchpad.ubuntu.com/launchpad-dogfood/lib/canonical/launchpad/templates/passwd-change.pt01:45
lifeless      Line 18, Column 001:45
lifeless      Expression: <PathExpr standard:'view/getResult'>01:45
lifeless         - Names:01:45
lifeless            {'args': (),01:45
lifeless             'context': <canonical.auth.PasswordChangeApp object at 0xcc2ce6c>,01:45
lifeless             'default': <object object at 0x401bf470>,01:45
lifeless             'loop': {},01:45
lifeless             'nothing': None,01:46
lifeless             'options': {},01:46
lifeless             'repeat': {},01:46
lifeless             'request': <zope.publisher.browser.BrowserRequest instance URL=https://launchpad.ubuntu.com/ubuntulinux/forgottenpassword/m4gmcl43sz86s9qxdf2mz9v94lqbd27xblp0zn34/index.html>,01:46
lifeless             'template': <zope.app.pagetemplate.viewpagetemplatefile.ViewPageTemplateFile object at 0x4143ec4c>,01:46
lifeless             'usage': <zope.pagetemplate.pagetemplate.TemplateUsage object at 0xcd01cac>,01:46
lifeless             'view': <zope.app.pagetemplate.simpleviewclass.SimpleViewClass from /srv/launchpad.ubuntu.com/launchpad-dogfood/lib/canonical/launchpad/templates/passwd-change.pt object at 0xcd016ac>,01:46
lifeless             'views': <zope.app.pagetemplate.viewpagetemplatefile.ViewMapper object at 0xcd0168c>}01:46
lifeless    * Module zope.tales.expressions, line 204, in __call__01:46
lifeless      return self._eval(econtext)01:46
lifeless    * Module zope.tales.expressions, line 198, in _eval01:46
lifeless      return ob()01:46
lifeless    * Module canonical.auth.browser, line 123, in getResult01:46
lifeless      encryptor = getUtility(IPasswordEncryptor)01:46
lifelessNameError: global name 'getUtility' is not defined01:46
lifelesssorry :|01:46
SteveAlooks like a shallow bug, but we need to look at improving the tests of the password change app01:47
SteveAI want to do something neat with testing that email gets sent, so I'll take on fixing this.01:47
SteveAlifeless: can you stick a bug in malone (if someone can change your password on mawson for you?)01:47
BradBThere's already a bug about the email link being broken too, not sure if it mentions that the screen itself raises an exception.01:48
carlosSteveA: so do we have already the form to update the user data outside rosetta?01:48
SteveAI assume that since lifeless had a problem while changing his password, he can't log in at the moment01:48
lifelesshappy to , if someone sets my pw01:48
lifelessBradB: I copied the url and adjusted by hand01:48
stubOn it (if I can remember how to encrypt them)01:48
SteveABradB: we need a launchpad-branded forgotten password app too, not just an ubuntu branded one01:48
SteveAthanks stub01:48
BradBSteveA: yes, indeed :)01:49
SteveABradB: care to file a bug on that?01:49
SteveAok, that's it for general launchpad stuff01:49
SteveAapps... malone?01:50
BradBMalone's doing pretty good, I think.01:50
BradBI just implemented one-click bug assignment accept/reject yesterday.01:50
BradBNot sure how well it'll work in every browser, but alas, that's how it goes with writing .js.01:50
sabdfli've split out cve and url references01:51
sabdflthey now work separately01:51
BradBTo see it, you just have to be logged in when you use the dogfood app.01:51
BradBThere's this really good article I think everyone should read: http://www.adambosworth.net/archives/000031.html01:52
BradBIt's a blog post, actually.01:52
SteveAwhat is it about?01:52
BradBSteveA: writing software01:52
lifelessSteveA: also the initZopeless thing01:52
BradBmore specifically, writing software for normal human beings01:52
BradBMy concern is that from time to time we're making decisions about Launchpad that cater more to our database schema than to those who will be our users.01:52
BradBi had some thoughts about how to make Malone more user-friendly.01:53
SteveAlifeless: yep, thanks for the reminder01:53
kikoBradB, sabdfl: if you like, I would like to sit with you at bara and do a massive UI review based on my usage of malone in the past01:54
kikoI want to do it there because bandwidth is better and because you'll have a chance to fix up the things I've suggested in the past already01:54
BradBthe one-click accept/reject is one such "oh cool" feature, i think. we need a lot more "oh cool" features though in launchpad, because Malone at least is occassionally bordering on something a human being is not going to be able to use.01:54
sabdflkiko: are you using utf-8?01:54
sabdfli missed the first message01:54
BradBkiko: sure01:54
kikoah. no. one sec01:54
kikobetter? :)01:54
sabdflBradB: i think we can resolve these issues01:55
kiko BradB, sabdfl: if you like, I would like to sit with you at bara and do a massive UI review based on my usage of malone in the past01:55
sabdflright now, malone is largely a set of views on nderlying tables01:55
carloskiko: that's a football team :-)01:55
BradBi started thinking about google a bit last night, and then had some ideas for how to improve malone's bug listing.01:55
sabdflthis is partly because the zope3 auto-form machinery works that way01:55
sabdflit wants to add or edit an object, and our underlying oibjects are stored in tables01:55
elmo[are the "what to import" package choices stress testing for a random function or something?  'cos they're very random] 01:56
sabdflwe need to have a form which affects multiple tables01:56
kikoBradB, cool01:56
sabdflan action that affects multiple tables01:56
sabdflelmo: what to import?02:11
SteveAthe easiest way to do that is to make a content object that represents data spread across tables02:11
BradBsabdfl: wanna hear my idea for how to simplify the bug listing? there's not much to it, really, but i think it'll help.02:11
SteveAand then use a form that presents / edits that content object02:11
elmosabdfl: into buildbot/tla/whateverit'scalledongalapagos02:11
sabdflBradB: not here! later02:11
sabdflelmo: as i understand it lifeless started with packages a* b* c* plus whatever people have pushed for02:11
BradBSteveA: the main things malone needs are 1. a zope upgrade, 2. a solution for batching aggregate result sets. (i.e. batching more than one SelectResults in the same Batch.)02:11
elmopeople pushed for thai-ttf and upx ? :)02:11
elmoanyway, sorry, it's not relevant to the meeting..02:11
BradB#1 is for the super widget, of course, #2 to solve the problem that rendering the bug listing takes 1m, 30s for 7,000 bugs :/02:11
stubEdit forms can be used to generate arbitrary forms - we already do that in the bug add form where we capture information for bugassignments as well. Implementation can follow once we decide on the design ;)02:11
sabdflstub: it seems silly to have to create a new schema for the form02:11
lifelesselmo: I'm running them all serially02:11
stubsabdfl: You have to define the form *somewhere*, and a schema is a nice place to do it.02:11
BradBsabdfl: the other option is to handwrite your form's HTML and validation, which isn't so nice. :) we really need a browser:form directive in Malone too. :) Jim Fulton and Stephan Richter we're talking about generalizing the directive the other day, so things are heading in the right direction, it would seem.02:11
SteveAcan we get a list of things that malone needs to have / do before barcelona?02:11
sabdflBradB: in general the form elements are already defined as part of existing schemas02:11
sabdflseems wasteful to have to redefine them02:11
sabdflwhich means rewriting the title and description02:11
sabdfltrranslating it all again02:11
sabdfland remembering to update it02:11
BradBsabdfl: i think that comes down to inheritance (if not, how else would you want it to work?)02:11
sabdfli have to step away for an hour or so, will catch up on scrollback02:11
SteveAwe'll sort out the browser:form or launchpad:form directive02:11
BradBSteveA: here's what Malone needs for Barcelona, from where I'm standing.02:11
=== SteveA listens to brad, and hopes stu will chip in
BradB1. the super select widget. i started going on this, but i need us to keep fairly up-to-date on Zope 3 to make it happen, because I need Sources.02:11
stubYou could dynamicaly generate a schema (these fields from this interface, these fields from that. Just needs implementation)02:11
BradB2. fast bug listing. the bug listing page needs to be pretty much instant, but there's still a rather complex issue there (the one about batching more than one SelectResults at a time.)02:11
SteveAcan we talk about batching in some more detail after this meeting?02:11
BradBi'm trying to think of what else is absolutely needed...stub?02:11
SteveAthe goal is so that we can show off malone to everyone in barcelona, and also roll it out to the golden system at that time.02:11
BradBe.g. i can think of tons of things to improve: the bug listing can become a lot more googlish and simple to work with, the bug assignments editing screens need to remind me what bug i'm working on, the notification emails need to be reformatted and perhaps reworded a bit, etc.02:11
stubNo idea what is needed for barcelona. Depends on what we need to do with it at Barcelona ;) If we need to sit down the Ubuntu people and steer them through it, we need to do whatever Martin thinks is necessary for instance.02:11
kikoyes, of course02:11
dilysNew Malone bug #77: "Implement a potemplate form handler", submitted by Carlos Perell Marn02:11
SteveAyou'll also need to do some work on permissions, I expect02:11
SteveAthat is, defining permissions on various operations that not everyone should do02:11
carlosBradB: and the package/source search should show the package name not the number after select it (to be more userfriendly :-P)02:11
BradBSteveA: also, malone still doesn't have enough states, and we should be able to attach a note every time we edit basically anything.02:11
BradBSteveA: not the least of which means having to attach a note when we mark an assignment resolve, or update an infestation, or whatever.02:11
SteveAdo we have bugs on each of these things we need to do?02:11
BradBsome, yeah, e.g. the note thing. some not yet, because it requires talking to sabdfl to confirm.02:11
BradBwhich has thus far not been a priority.02:11
SteveAit is okay to file such things as bugs02:11
SteveAbugs can always be rejected / deprioritized etc02:11
SteveA(is "deprioritized" a word?)02:11
SteveAthe thing is, it gets the ideas out into public view, so others can think about them02:11
SteveAok, cool02:11
SteveAcan we talk about soyuz now02:11
SteveAKinnison: want to start with gina?02:11
stubfrom when I used batching: https://launchpad.ubuntu.com/malone/bugs/4002:11
KinnisonGina is almost ready for prime-time02:12
Kinnisonsabdfl and I identified a number of areas of improvement she needed in order to be suitable for doing hoary for everyone (where doing == tracking)02:12
KinnisonI've closed all but one or two minor ones of those now02:12
KinnisonSome of you will have noticed the database additions it needed. I've not done the sqlobject changes for those yet02:13
KinnisonIf someone else wants to pick those up I'd be grateful02:13
SteveAcan one of the async guys help?02:14
KinnisonI imagine cprov could do it fairly quickly02:14
Kinnisoncprov is now working with me on lucille related stuff02:14
KinnisonThis means cprov will have knowledge of both the front and back ends of the package parts of soyuz which will really help matters a lot02:14
cprovKinnison: if you think I'm able to do it I can :)02:15
SteveAwhat else from the soyuz world?02:15
Kinnisonhttps://wiki.canonical.com/Lucille_2fBraindump contains a braindump of most of what I'll be doing up until the end of es-conf02:15
Kinnisonand some of beyond there02:15
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Add advanced authorization stuff. (patch-859)02:15
SteveAdoes someone want to talk with me about permissions needed for doing certain things in soyuz? 02:16
KinnisonIt's exactly what it says on the tin though -- a braindump. I put it there so that it would be recorded02:16
cprovpeople branch was moved from Soyuz to FOAF by salgado ..  it has effects in permission, of course, I'd like to talk about launchpad.Admin bits if possible 02:16
SteveAok, let's chat about that after this meeting sometime today02:17
dilysNew Malone bug #78: "Forgotten password screen needs to be branded for Launchpad", submitted by Brad Bollenbach02:17
cprovSteveA: ok02:17
=== daf got confused about time zones
SteveAhi daf02:17
carlosdaf: you should use evolution ;-)02:18
SteveAkiko: anything else to report on soyuz?02:19
SteveAhow are we doing for being able to give a kick ass demo in spain?02:19
carlosdon't know if that's possible...02:21
carloswhat about doing a demo to build a Linex and/or Guadalinex using soyuz?02:21
SteveAlet's come back to soyuz in a bit02:22
kikoSteveA, yep02:22
SteveAoh, okay, backto soyuz02:23
SteveAgo ahead kiko02:23
kikoSteveA, sabdfl and I will lay down the final soyuz plan for mataro this afternoon, followed by an lp-br-meeting on getting this all done in time02:23
kikodebonzi is cleaning up the house02:23
kikohe'll be key in getting the soyuz features done the following weeks02:24
kikocprov is busy with Kinnison, and kinni's best to update on that02:24
SteveAwill you post the mataro plan to the list?02:24
kikosalgado's been moving person bits around and will start hacking the karma bits in a second02:24
kiko(I typed karnal first there, some psychologist read into that)02:24
kikoSteveA, you bet02:24
kikoSteveA, I'll also call for anyone giving a final roundup for soyuz features pre-mataro 02:25
kikoso if anyone has a pet feature they want to see done, time to speak up02:25
SteveAmaybe get elmo to give it a quick look02:25
kiko(apart from that we have tickets emitted and travel plans finally set up)02:25
kikoI'll bother him02:25
SteveAlet's talk about rosetts02:26
SteveAlet's talk about rosetta02:26
kikosoyuz needs some extra borka-borka in the zcml files, salgado and I are looking into it02:26
kikowe would like to get rid of a whole array of solitary <page stanzas02:26
kikobut it may be we need some extra ZCML bits, I'll post you on the result of that02:26
kikoI'm also going to do a final SQL roundup to try murdering spurious queries I'm seeing02:27
SteveAkiko: sure.  I can make zcml directives very quickly for this kind of thing02:27
SteveAdaf, carlos: how is rosetta doing?02:27
kikothis bothers me significantly because I think it's a major perf-hog02:27
kikoand finally02:27
kikowe will bear gifts for mataro02:27
kikojust wait and see02:27
kikoover and out02:28
carlosSteveA: we are working on the import from the web feature02:28
SteveAhow is that going?02:28
SteveAis the form done?02:28
carlosit has some delays because I had to get yesterday free for non canonical tasks02:28
carloswill work on saturday02:28
dafit's nearly done02:29
SteveAbefore we make rosetta go totally live, it must be possible to get new pot and po files into the system without your or daf's intervention02:29
SteveAdaf: how many hours is "nearly" ?02:29
carlosif nothing goes wrong, today I will do my part of the work02:29
dilysNew Malone bug #79: "Bug listing needs default search criteria to be user-sensitive", submitted by Brad Bollenbach02:29
dafperhaps two more02:29
SteveAdaf: can you work on it right after the meeting?02:29
SteveAtell me if you need help with this.  I have time to help with rosetta.02:30
SteveAkeep me up to date with how the work is going.  don't worry about mailing me several times a day to tell me how things are going02:30
dafI'll let you know if I have trouble02:30
SteveAlet me know about successes too02:30
dafI've been invited to a thanksgiving dinner today, so I'll be leaving work early02:31
SteveAok, cool02:31
SteveAveggie turkey?02:31
=== Kinnison had a lovely nut-roast on sunday
Kinnisonwe appear to be side-tracking02:33
SteveAwhat is left to do to get rosetta so that I can upload po files and translate them?02:34
carlosSteveA: the upload part02:34
=== SteveA notes that daf is posting a message to him with detailed rosetta status information
dafthe view class for the upload form needs to be finished02:35
dafhmm, I need some clarification here02:35
SteveAso, you can store the raw template inthe database?02:35
SteveAand go to a url to tell the system to actually import the template?02:35
dafwait, no02:36
dafthere's an upload form02:36
dafbut the view class doesn't write to the database yet02:36
SteveAI want to see a list of tasks, either as bugs in malone, or on a wiki page02:37
dafok, I'll do that right away02:37
SteveAthen see these tasks getting completed, as we move towards getting this rosetta import stuff done02:38
SteveAanyone with experience hacking on initZopeless ?02:38
SteveAstub: ?02:38
dafno, but I've used it a fair bit02:39
SteveAanything else from anyone else?02:39
stubI havn't hacked it02:39
dilysNew Malone bug #80: "Bug titles/descriptions need to be text searchable", submitted by Brad Bollenbach02:39
SteveAlifeless reported a problem where it doesn't seem to be coping properly committing a second transaction in a row02:39
stubMmm... need to look into fulltext searching for PostgreSQL...02:39
SteveAok, let's finish up02:40
SteveAlast 10 seconds to bring up other issues...02:40
BradBsmart diff output!02:41
SteveAoh yeah, how is that going?02:41
BradBwe need something that works. it continues to cost us at least 10-15 hours a week.02:41
dafI've noticed a problem with SQL errors02:41
stubSome of our sourcepackagebugassignments had been changed from sourcepackage 4 to sourcepackage 14. Anyone might have screwed up modifying the data? Or do we have a deeper problem somewhere?02:41
stub(on dogfood)02:41
kikostub, I had some odd issues where I filed bugs on product 4 and ended up with them assigned to some other bizarre product.02:42
stubThat would be it.02:42
stubMight have a bug hiding there - posibly in the new popup widgets.02:43
kikoI reported to BradB who convinced me the new picker would sort that out!02:43
SteveAlet's get bugs invariably put into malone02:43
SteveAnot just told to people02:43
SteveAotherwise, they can get lost, or people can waste time unnecessarily02:43
kikoagreed, it was a bad call02:44
BradBSteveA: they are reported though02:44
SteveAok, cool02:44
dafI've noticed that if there's a database error, Launchpad won't work until it's restarted02:45
daf"DatabaseException: ERROR: current transaction is aborted, commands ignored until end of transaction"02:45
SteveAdaf: report as bug please02:45
dafit seems the transaction is never aborted after an error02:45
dafok, will do02:45
BradBSteveA: i'd really like to hear an answer on the diff output though. it drives me nuts when page tests fail.02:45
SteveAstub: can you look into that?02:45
BradBi.e. because they take forever to fix.02:45
SteveA(the transactions, not the diff)02:45
SteveABradB, cprov: what was the outcome of cprov's experiments?02:45
BradBSteveA: i responded on lp@. i was hoping for something checked in that we can all use out-of-the-box.02:46
SteveAto summarize...02:46
SteveAthere is something that works, but it needs patches to python.  is that so?02:46
SteveAok, I'll get that into launchpad02:47
stubI gave it a go re: the diffs, but I was too clever and it didn't work. The difflib.py is in lib/canonical, and there is a bit of a patch in test.py commented out.02:47
SteveAah, okay02:47
Kinnisonis the meeting over? I need to get lunch?02:47
SteveAstub: you mean, the new diff stuff didn't work, or your hack didn't work.02:47
stubMy hack - I was trying to avoid patching Z3. At least I hope it was my hack - I havn't tested it 'normally' yet.02:48
BradBSteveA: and one more thing: I'd like to hear a concrete answer on when i have the machinery to be able to put Bug URLs in email notifications. having a URL in an email is a fairly small, yet all so important thing.02:48
dilysNew Malone bug #81: "transactions are not aborted when database errors occur", submitted by Dafydd Harries02:48
=== Kinnison -> supermarket (given a lack of complaint)
SteveAKinnison: go for it02:49
SteveABradB: bug filed on it?02:50
SteveAfile that on me if you like, as I'm dealing with URL issues here in london02:50
BradBSteveA: yeah, it's been there and assigned to you for a long time :)02:50
debonziSteveA, do you want to talk about the import work now?02:50
BradBSteveA: you had said a while back that you were going to work on it02:51
SteveAok, cool.  I haven't started on the url work yet, but it is on the list after security.02:51
dafBradB: hmmm02:51
dilysNew Malone bug #82: "Possible initZopeless transaction issues", submitted by Stuart Bishop02:51
dafBradB: I'm submitting a bug02:51
cprovSteveA: Brad is right ! what I've done, patching difflib, is something very difficult to be submited to lib upstreamer, kiko is working on it, but for a moment I suggest we keep our patched difflib, that also contains some bug yet . 02:51
dafBradB: I've got the notification message02:51
dafbut the response from Launchpad itself timed out02:51
dilysNew Malone bug #83: "Filter criteria widgets should be moved to an "Advanced Search" screen", submitted by Brad Bollenbach02:52
=== BradB *shrug*
BradBif it happens consistently, it might be cause for concern, otherwise i wouldn't worry about it02:52
SteveAok.  meeting over.02:52
SteveAthanks folks02:52
dafthis is the first time it's happened, I'll file a bug if it happens again02:52
SteveABradB: we'll chat later today about batching02:53
SteveAcprov: we'll talk later today about permissions 02:53
=== carlos goes to have lunch
SteveAdebonzi: okay, let's talk about the import thing.02:53
debonziSteveA, cool02:53
cprovSteveA: sure02:54
SteveAdebonzi: so, in various places in the code, we have the line:02:54
SteveA   from canonical.launchpad.interfaces import *02:54
SteveAwhat we should have instead is the following:02:55
SteveA   from canonical.launchpad.interfaces import IFoo, IBar02:55
SteveAif there are lots and lots of interfaces to be imported, then use separate lines of 79 chars each max02:55
SteveA   from canonical.launchpad.interfaces import IFoo, IBar, IBaz, ISpoo02:55
SteveA   from canonical.launchpad.interfaces import IBug, IProduct, IBazaar02:55
elmolifeless: ?02:55
debonziright.. even in the __init__.py inside the interfaces package?02:55
SteveAthat line doesn't occur in that file02:56
SteveAit is only the exact line I wrote:02:56
SteveA   from canonical.launchpad.interfaces import *02:56
debonziRight, but we do have in canonical/interfaces/__init__.py for example from canonical.launchpad.interfaces.pofile import * 02:57
SteveAthat's the list of files02:57
elmook, launchpad.ubuntu.com switched to macquarie02:57
SteveAyes.  that is okay.02:57
debonziSteveA, right.. Im gonna do that .. 02:58
elmolifeless: ^---02:58
SteveAok, great.  thank you02:58
debonziYou are welcome :(02:58
=== debonzi alway hits the wrong key
dilysNew Malone bug #84: "Malone is ungrammatical about input errors", submitted by Dafydd Harries02:59
BradBstub: uh, that is /bizarre/. i just reported bug 83 and it's not in Malone (you can even see the dilys notification a little bit back in the scrollback)02:59
dafI wonder if it's related to the changes elmo was making03:00
dafit might explain why I didn't get a HTTP response03:01
stubAll the bugs are gone03:01
BradBwhat the hell^Wheck?03:01
dafhmm, I can see some03:01
dafhttps://launchpad.ubuntu.com/malone/bugs/84 works for me03:02
BradBi can't see any03:02
stubits in your cache. All the sourcepacakges are gone too.03:02
BradBdaf: it's browser cache dude03:02
BradBstub: what's going on?03:02
stubThey are in the db...03:02
BradBoh, ok, phew03:02
BradB[08:56]  <elmo> ok, launchpad.ubuntu.com switched to macquarie03:03
BradBelmo: eh, why?03:03
elmoBradB: because sabdfl told me to03:04
cprovSteveA: we are going to have lunch, I'll be back in 1 hour, any problem for you and our brief meeting?03:04
SteveAno problem.  I need to take a break for a while03:04
elmo<sabdfl> can we shuffle the current launchpad.ubuntu.com to dogfood.canonical.com, and make launchpad.ubuntu.com point at macquarie's production launchpad server?03:04
elmoBradB: --^03:04
cprovSteveA: right, see you soon03:05
elmowell, I got the domain name of dogfood wrong, but.. details ;)03:05
BradB#83 seems to have been lost into the ether03:05
=== debonzi debonzi -> lunch
=== BradB wishes this would have been a little bit more visible before it was actually /done/ :)
elmo<sabdfl> elmo: we cover enough timezones to be able to fix any issues, so Just Do It03:06
SteveAdid dilys report my latest merge to RF?03:06
elmoBradB: dude, I asked if anyone should be around, and that's what I was told03:06
SteveAsabdfl should have mailed the launchpad list03:07
BradBSteveA: indeed :)03:07
=== SteveA goes away for a while
BradBelmo: is there a need for LP to be running on macquarie right now? if not, perhaps we could stop it, so that we don't have to migrate bugs between servers and field responses from #launchpad'ers about what's where.03:09
BradBelmo: e.g. a patch saying that the dogfood server was moved to [link]  would be handy.03:09
BradBpage, even03:09
sabdflerm, sorry guy, should have mailed the list03:09
sabdflbut thanks for getting it done elmo, this allows us to prepare the production server for barcelona03:10
BradBdaf: this'll mean a dilys update i guess too eh?03:20
=== stub [~stub@dsl-] has left #launchpad []
dafBradB: good point03:23
dafBradB: just a config file change, though03:23
dilysNew Malone bug #85: "Filter criteria widgets should be moved to an "Advanced Search" screen", submitted by Brad Bollenbach03:25
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
dilysNew Malone bug #86: "Bug listing needs "Quick Searches"", submitted by Brad Bollenbach03:34
KinnisonI'm back but eating if anyone needs to ask me anything03:41
carlosKinnison: dude, you shouldn't eat near the laptop 03:56
carlosyou are too addict to it :-)03:57
=== carlos is back
Kinnisoncarlos: heh04:00
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
kikofala salgado 04:11
salgadoyo kiko!04:12
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
lifelesselmo: ?04:19
elmolifeless: 'sup04:20
lifelessyou did a? at me before04:20
elmolifeless: was seeing if you were around - wanted to let you know about the launchpad.u.c move04:21
carloslifeless: any chance to get Debian ppc packages of bazaar without doing self compilation?04:23
Kinnisonkiko: I think I've eliminated all cases of FMO from warty in gina now ;-)04:23
=== Kinnison is about to do a hoary test-run
kikothat was 50% of gina's personality04:24
kikotroup and trout04:24
kikois that going away too?04:24
elmolifeless: oh! you have accounts on concordia and davis btw04:24
lifelesselmo: oh yeah, do I have that ppc account yet ?04:24
elmolifeless: I'll make accounts for pqm later04:24
elmoso you can set up something more automatic04:24
Kinnisonkiko: The error is still present04:25
Kinnisonkiko: I mean I've fixed it so that it doesn't need to generate the error to parse warty04:25
Kinnisonit does warty cleanly. udebs and all04:25
elmolifeless: btw, if you've never used dchroot before, it's 'dchroot -c hoary'04:25
elmoto get a shell in the hoary chroot04:25
elmotla's build-deps should be installed - I assume that'll suffice04:26
kikoKinnison, ah; well, the error was caused IIRC by the archive being outdated, no?04:26
Kinnisonkiko: The error was related to gina being unable to find a sourcepackagerelease for a given binarypackage04:27
Kinnisonkiko: Now; some of those were hard to solve; some were simple04:27
kikocanyou elaborate? why would we not be able to find a SPR for a BP?04:27
KinnisonIt is because a binarypackage exists that the sourcepackage doesn't exist for; or in this case that the binarypackage's version was shorter than the sourcepackagerelease's version rather than longer so your regexp didn't catch it04:28
KinnisonI'm not convinced I've covered all the bases correctly but I'll see in time04:29
Kinnison(and btw, I'm only talking about a clean import of warty/main,restricted not universe04:29
Kinnisonuniverse is still full of amusement for me04:29
BradBShould I be running hoary these days? e.g. is it reasonable safe to s,warty,hoary, in my sources.list, apt-get update and apt-get dist-upgrade?04:30
=== SteveA pings daf
KinnisonI'm not gonna put hoary on any of my systems until after es-conf04:34
Kinnisonbecause I'm a paranoid goit04:34
lifelessso whats my new password ?04:36
SteveAonly kidding.04:37
lifelessseriuosly, for dogfood04:39
SteveAstub said he'd change it for you04:40
SteveAstub has gone04:40
lifelesscan we get python 2.4 on production servers ?04:40
SteveAin addition to python2.3?04:40
carlosBradB: I'm using hoary since some weeks already04:41
carlosBradB: I didn't had any problem with it (yet)04:41
lifelesslooks like we may have a python2.3 interacting with twisted problem04:41
SteveAoh suck04:42
SteveAfixed in 2.4?04:42
elmothe soyuz list got subsumed into launchpad, right ?04:42
kikoyes, it did.04:42
=== ddaa [~ddaa@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
lifelessddaa reckons so04:43
SteveAhello david04:43
ddaaI'm not sure what lifeless says I'm thinking, but I want my lawyer!04:43
SteveAwe could move to 2.4 for launchpad, but I'd want to chat to zope3 developers first04:43
lifeless02:40 < lifeless> can we get python 2.4 on production servers ?04:43
lifeless02:40 < SteveA> in addition to python2.3?04:43
lifeless02:41 < carlos> BradB: I'm using hoary since some weeks already04:43
lifeless02:41 < carlos> BradB: I didn't had any problem with it (yet)04:43
lifeless02:41 < lifeless> looks like we may have a python2.3 interacting with twisted problem04:43
lifeless02:42 < SteveA> oh suck04:43
lifeless02:42 < SteveA> fixed in 2.4?04:43
ddaaSteveA: difficult to say what is fixing the issue... it's very empirical.04:44
BradBmoving to 2.4 ASAP would rox0r04:44
lifelesselmo: can you copy the importd@galapagos .ssh dir to roomba@galapagos's one for me please ?04:44
SteveAddaa: but, is it fixed in 2.4?04:44
SteveAas in, if you use 2.4, does the problem go away04:44
ddaaSteveA: it seems to go away.04:44
ddaaBut since that's an intermittent problem by nature, it's hard to say.04:44
ddaa* hard to tell04:48
salgadolifeless, should I mail you my gpg key id/fingerprint to get it registered in PQM?04:49
lifelesselmo: yes04:49
lifelesssalgado: yes04:49
=== kiko is now known as kiko-afk
lifelesselmo: so, ping04:50
lifelesselmo: I'm asking you because I don't have write permission to .ssh04:52
elmolifeless: yeah, one sec, I'm just in the middle of osmething04:52
salgadolifeless, your email is?04:53
BradBSteveA: When do you want to discuss the batching problem?04:57
BradBI'd love to make the bug listing surprisingly fast.04:57
elmolifeless: done... [point of information, you can write to .ssh, just copy it somewhere else, rm -fr the root owned original - you own the directory it's in] 04:58
BradBSteveA: Oh, and upgrading Z3, for that matter.04:59
SteveAwhat is there to discuss about upgrading zope 3?05:01
BradBSteveA: When will it be upgraded?05:02
BradBSteveA: "be upgraded" meaning a mail to lp@ saying how I get the latest and greatest Z3 running with launchpad.05:02
SteveAin the meeting, lifeless said that he was working on it today05:03
BradBI missed that bit. Okay, so maybe today then, cool.05:04
BradBSteveA: got time to discuss batch-fu then?05:04
elmois the arch commits list still live?05:05
SteveABradB: I will in a bit I hope.  I'm helping bob2 debug some nasty nasty transactions problem05:06
bob2elmo: yup05:06
BradBSteveA: ok05:07
elmobob2: thanks05:07
dilysNew Malone bug #87: "Need to be able to Cc people when adding a bug", submitted by Brad Bollenbach05:20
bob2salgado: he's robert@canonical.com05:21
BradBelmo: would it be possible to shutdown the LP instance at launchpad.ubuntu.com? I can see two possible problems now that the app lives at a different URL 1. confusion, 2. the dogfood having some hardcoded instances of launchpad.ubuntu.com, and things inadvertently happening to what is ultimately going to be the live LP app.05:22
bob2erm, which one should we be using then?05:22
BradBelmo: er, shutdown and include a simple message saying where the dogfood instance lives now, etc.05:22
bob2dogfood.u.c or launchpad.u.c?05:22
BradBexactly my point though :)05:22
bob2dogfood is the one that gets nuked every hour?05:23
elmoBradB: dude, you need to talk to sabdfl05:23
BradBbob2: no, it's a production app.05:23
BradBsabdfl: ping05:23
salgadobob2, thanks05:23
dafBradB: dogfood is production?!05:23
BradByeah, for us.05:24
BradBproduction as in, if we lost the data in there, we'd all die05:24
dafoh, *right*05:24
dafyeah, end of the world time05:24
SteveABradB: smack my batch up05:26
BradBSteveA: should i reexplain the problem?05:27
BradBwhen there's 7,000 bugs in the db, the bug listing takes about 1m 30s to render on my machine.05:27
SteveAto render how many bugs?05:28
BradBi believe (from having investigated a bit) that about half that time is from the vocabs, and half from the bug listing itself05:28
BradBjust 20, like normal05:28
BradBso, the half that has to do with vocabs will go away when the super widget is implemented05:28
SteveAit will?05:28
BradBthe next step there is to upgrade Z3, etc. different subject, etc.05:28
SteveAbecause sources do this better?05:28
SteveAI haven't looked at sources at all05:29
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: work on revision control import workflow (patch-860)05:29
BradBso, to the buglisting though...05:29
BradBwe've got this batching thing05:29
BradBwith a Batch, you give it a list of things, and tell it what part you want to work with, and then it does this really smart stuff to slice out only the chunk you want to look at, and (mostly) ignore the rest05:29
BradBwhich is cool05:29
BradBand works well05:29
BradBfor *one* *list* of things :)05:30
BradBin the bug listing, we have two lists of things that make up one batch of things05:30
BradBpackage assignments, and product assignments05:30
BradBtwo different SelectResults, needing to be represented by one batch05:30
BradBso, imagine this:05:30
BradB~50 package assignments, ~50 product assignments, user wants to see results, 20 to 30 of 10005:31
BradBthe assignments need to be ordered by bug id, of course05:31
SteveAif you have one set of things, do they come sorted by bug id anyway?05:32
BradBhow do we batch that so that when i ask for elements 20 through 30 i get the appropriate combination of product and package assignments?05:32
BradBSteveA: yes, individually, but not between the two different SelectResults :)05:32
SteveAyes, I see05:32
=== SteveA ponders
BradBSteveA: i think the solution means we have to write some raw SQL here, and make batch navigation work with that too05:33
SteveAcan you make an sql query do that easily? 05:34
BradBit'd be nice to have this designed in such a way that all i need to do is write an SQL query and it all Just Works (because there are several applications of this in LP, i think)05:34
SteveAis this a good time to make a view?05:34
BradBSteveA: i thought about a view, but i don't think it's appropriate, since there are an arbitrary number of WHERE clauses.05:34
BradBmaybe none, maybe 4, maybe 105:35
BradBmaybe N05:35
SteveAwhat do the where clauses do?05:35
BradBfilter the select results :) e.g. bug status, package, product, assignee, and perhaps other criteria05:36
SteveAyou could still do that05:36
SteveAdo a view that represents everything, and then select using where on the view05:36
SteveAjust an idea05:36
BradBit's easier to do on the table, i think05:37
SteveAok, so let's say we'll do it with an appropriate sql query05:37
SteveAthe query needs to live somewhere05:37
SteveAit should live with the database code05:37
BradBand perhaps implement a general RawSQLSelectResults, which iterates over raw sql select results and has smarts so that you can access col names as attribs of the elements returned from that iterator05:38
SteveAand it should have a standard method name and signature, so that the batcher can use it05:38
SteveAThere is something like what you just described in zope3 already, actually05:38
SteveAbut I'm thinking of something simpler05:39
BradBSteveA: yes, as i say, this has got to work in a way that in the future one need only write the SQL query (and, of course, the relevant tales to plop the results into a page) and have it all Just Work05:39
BradBSteveA: Why does the query have to live in the DB?05:39
SteveAnot in the db05:39
SteveAin the database code05:39
BradBI misread that, but yeah, in the db code indeed05:40
SteveAso, I'm thinking that the batching code doesn't really know what the select is05:40
SteveAit just calls the method with some args that the method feeds into the select05:40
SteveAand the method returns some standard stuff to the batching05:40
BradBSteveA: batching doesn't even care about that05:40
BradBSteveA: it's Batch(something, offset, size)05:40
SteveAdoesn't it need to feed it the start and end items?05:40
BradBthe "something" has to be smart enough to know what results to return. it knows the filter criteria already, etc.05:41
debonziSteveA, why launchpad.iandrew.py still exists? 05:41
SteveAthat's a good question debonzi05:42
BradBSteveA: and, actually, now that i think about it, outside of even batching, a RawSQLSelectResults would do well to help us optimize many parts of the app as we enter the holy-crap-it's-slow-on-a-real-db phase of development.05:42
SteveABradB: think of the simplest way to do this, even if it requires a bit of extra configuring for now05:42
SteveAat the point you're talkingn about, it isn't a collection of sql select results any more really05:43
BradBSteveA: I think the RawSQLSelectResults will add the most value, to solve this task, and as a documented thing that will help us improve launchpad as we move towards the Mataro Sessions. Do you see anything simpler than that?05:43
SteveAit is just a "table" of python objects, surely?05:44
BradBSteveA: no, because that would mean loading everything into memory05:44
SteveABradB: I don't really see what your vision of RawSQLSelectResults is.  Can you write an email, to the lp list, sketching out what this thing needs to be like05:44
BradByou have to pass something that represents the entire list of results05:44
BradB(to the batching)05:44
SteveAand how it will be used05:45
SteveAI think that will get the ideas you have communicated better05:45
SteveAI think you may be onto something Brad.  But I'd like us to think about it a bit more05:46
BradBok. hopefully we can make a decision today though, because i really need this working today or tomorrowish. :)05:47
SteveAyou need it working in one or two cases today or tomorrow, so that's why I'm concerned about making a general solution when a specific one would still work.05:47
SteveAbut, we'll talk about it more in a while05:47
ddaalifeless: why does iandrew.py still exists?05:48
debonziSteveA, another question: in the and of iandrew there is a class RCSTypeEnum. So, the other apps that use it have to make from launchpad.interfaces import RCSTypeEnum. Im quite sure that it is not an Interface :).. do you have an idea to where should I put it?05:49
lifelessddaa: feel free to fix it05:50
BradBSteveA: actually, indeed, i think i can make it work with a simpler approach. i'll start now and focus on getting something work this afternoon.05:55
=== Kinn|Home is now known as Kinnison
BradBsimpler, i.e. no special funky iterator class05:55
debonziddaa, Are you going to work in iandrew.py?05:59
SteveAdebonzi: I am working there06:00
debonziSteveA, ohh cool.. So I wont touch it06:01
SteveAI'm moving it to interfaces/pyarch.py06:01
SteveAand giving it an __all__06:01
ddaayeah... I guess I'll delegate putting the required stuff in there to bob2 if I can. After all he is the one who wrote the code that uses it but that does not have a test suite.06:02
debonziSteveA, and where are you going to put the RCSTypeEnum class?06:02
debonziSteveA, So, its done... Im gonna merge in rocketfuel06:04
BradBsabdfl: ping06:05
sabdflBradB: give me five06:05
lifelesssabdfl: auto-running autotester is in place06:10
lifelessnow to get feedback from it 06:10
sabdfllifeless: great!06:10
!Bhaal:*! Noise people arent you!06:11
lifelessneed to do a production code drop to do that, which means you and I need to sort out the db stuff for stub to apply ...06:11
!Bhaal:*! Noisey even06:11
sabdfllifeless: my stuff is ready to go06:12
lifelessmerged into rf ? if so I'll pull down and whip up my end of code.06:12
!alindeman:*! Wrong channel, Bhaal 8)06:12
!lilo:*! Hi all. If you have FWD and would like to help us check a gateway, please /msg me.06:13
BradBsabdfl: got a minute then?06:18
sabdflstill in a meeting06:22
=== BradB will be back in about an hour
=== BradB is now known as BradB|lunch
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Some more cleanup to remove from canonical.launchpad.interfaces import * to import only the required interfaces. (patch-861)06:26
SteveAcprov: want to talk about permissions?06:29
SteveABradB|lunch: lifeless says it will take quite a while to get Zope 3 synced from SVN.  We can't expect it before next week06:34
carlosdo I need to check out a new tree to start using baz?06:36
carlosI'm getting an error if I use my old tree06:36
SteveAwhat is the error?06:38
SteveArob just helped me start using baz06:38
SteveAis it a gpg error?06:38
SteveAyou will need to change your signing scripts06:38
SteveAtla-gpg-check to bazaar-gpg-check, and tla to baz in the files in ~/.arch-params/signing/*06:39
SteveAalso, change tla to baz in submit-arch-merge06:40
carlos  archive: carlos.perello@canonical.com--200406:44
carlos  revision launchpad--devel--0--patch-33206:44
carlos  checksum file: checksum06:44
carlosyeah, I did that change already06:44
KinnisonI just removed tla and set up a symlink from ~/bin/tla06:44
sabdflBradB|lunch: i'm back06:47
SteveAcarlos: that was directed at you07:11
carlosddaa: hi07:11
ddaaMh... let me look at the log.07:11
=== SteveA is on the sofa next to ddaa
carlosSteveA: thanks07:11
carlosddaa: do you need any extra information than I already pasted?07:12
ddaaI'm trying to figure out your problem.07:12
ddaaYou seem very confused.07:12
carlosddaa: it's not related to my yesterday's problem07:13
carlosddaa: I was using until today tla07:13
carlosI just installed baz07:13
carlosand that's the error I get with baz changes07:13
carlosin my old tla tree07:13
ddaathe tree you are using has _absolutely_ no incidence on the validity of the revision signatures.07:13
carlosshould I clean my revision library?07:14
carlosrm -Rf and let it regenerate with baz?07:14
ddaahu... the tla revlib should work just fine with baz07:15
ddaathe reverse is not true though (according to lifeless that's a bug in baz)07:15
ddaaand in any case, your revlib has no incidence whatsoever on the validity of revision signatures07:15
ddaado you _still_ have tla installed?07:15
=== kiko-afk is now known as kiko
carlosddaa: yes07:16
carlosshould I remove it?07:17
ddaano, it contains a script that's used for signing, and apparantly baz does not provide it yet07:17
carlosthe bazaar-gpg-check?07:19
salgadoddaa, isn't this script bazaar-gpg-check?07:19
carlosI changed my config files already07:19
carlosto use it07:19
carlosinstead of tla-gpg-check07:19
ddaacarlos: then, it should be okay07:20
ddaacarlos: can you make sure you can actually (using gpg by hand) check the checksum file in that revision.07:20
carlosddaa: my fault07:21
carlosit was a typo07:21
carlosbaazar instead of bazaar07:21
ddaaI got a trick for you so you'll rember it: it's foo, bar, (we've got up to tla this far), baz.07:22
carlosddaa: thank you for your help and sorry for the noise07:22
lulunight all :o)07:34
Kinnisonnight lulu07:34
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
=== BradB|lunch is now known as BradB
BradBsabdfl: ping07:47
sabdfllet's go!07:49
BradBtwo things:07:49
sabdflbtw... have been playing with your batching bits, and have some feedback07:49
SteveAcprov: want to talk about permissions?07:49
BradB1. can we get elmo to put a stop sign up at https://launchpad.ubuntu.com/malone? I want to avoid 1. confusion 2. inadvertently hitting that server with existing code in dogfood.u.c.07:50
BradBmaybe we just want to shut off the whole instance, of course07:50
sabdflno, it's time for us to bring launchpad up into production07:50
sabdflwe already have bits of it running in production07:51
sabdflall we've done is expose it on the launchpad.ubuntu.com url07:51
sabdflduring es-conf i want to go much further07:51
BradBsabdfl: it's too early to bring malone into production.07:51
sabdfli don't know how smart we can make it so it shuts off certain url paths on certain hosts07:52
SteveABradB: why?07:52
BradBSteveA: why what?07:52
sabdflBradB: we have two weeks till spain, and two weeks IN spain, to get it right07:52
SteveAwhy do you think it is too early to use malone in production?07:52
BradBSteveA: because it's not ready. we've have one Real User test it for about 10 minutes.07:53
sabdfland we have a month to work on it07:53
BradBtwo weeks + two weeks isn't now, of course. i meant now.07:53
SteveAwe can use rewrite rules in apache to shut off certain paths on certain vhosts07:53
SteveAand replace them with holding pages etc.07:53
sabdfland i said launchpad07:53
BradBsabdfl: yeah, but i'm just at least asking that malone be shut off :)07:53
BradBand the users told where to go (i.e. dogfood.u.c)07:54
sabdflok elmo, thom, which of you is best set to setup url rewriting on launchpad.ubuntu.com to divert malone and possibly other bits to "go away" pages07:54
elmoURL rewriting and proxypass are NOT FRIENDS07:55
elmoI just went through this with the wiki07:55
SteveAor... we can override the malone layer for a layers.DoNotUse layer07:55
SteveAjust on that server07:55
elmowell, whichever - I do know how to beat them into submission now07:56
BradBwhatever works. i'm genuinely concerned that we may go "oops, that bit is still hitting launchpad.u.c/m for some reason" and want to catch that too, before something odd happens07:56
BradBelmo: so is that a yes, you can put up a page telling the user to go away (to [link] )? :)07:58
carlosalso, a http://dogfood.canonical.com redirect to https://...  could be really good..07:58
elmosabdfl: btw, which do you want dogfood.c.c or dogfood.u.c ?  atm we have both 'cos I'm lame07:58
elmoif we only want one, I should delete the other now07:58
sabdflelmo: don't do it yet, i'm just doing something...07:59
=== BradB hopes for one, to reduce confusion
BradBsabdfl: with that out of the way, the other thing was to know if i could get my hands on another Monster Dump, that uses the most bleeding edge schema.08:00
BradB(not sure how much work's involved in that...)08:00
sabdflBradB: can you login to mawson?08:01
sabdflerm... actually, that wont help08:01
sabdflok, will get you another one tomorrow08:01
BradBsabdfl: ok, i can proceed with what i wanted to do anyway, i'll just have to wait until tomorrow to see if it Really Works08:02
BradBsabdfl: what was your batching feedback? it needs refactoring, that's for sure (and there's a bug filed on that.)08:03
sabdfl(sorry, context)08:03
sabdflyes! bug#1 rules!08:03
sabdflok elmo, NOW you can fence it off for a while ;-)08:03
BradBfence fence!08:03
sabdfloh bugger08:04
sabdflwhat IS bug #1?08:04
BradBsabdfl: you might be interested in reading bugs 79, 80, 85 and 86, which describe the tasks i had in mind for improving the bug listing UI.08:04
elmowhat am I fencing off?  just /malone/ ?08:05
carlossabdfl: I love that bug :-P08:08
sabdflcarlos: yes, but we'll have to nudge it to be #108:08
BradBelmo: at least /malone, or the whole thing if mark allows08:09
BradBsabdfl: it is #1, though it may not be assignment #1.08:10
sabdflelmo: let's nuke /malone, /bounties, /rosetta, /lists, /soyuz08:11
sabdflBradB: que?08:11
BradBhttps://dogfood.ubuntu.com/malone/bugs/1 is the world domination bug!08:12
sabdflno, i filed in launchpad08:12
sabdflbut it shows up as bug #208:12
elmosabdfl: ok - working on that.. ping WRT dogfood hostname08:12
sabdfldogfood hostname?08:12
elmosabdfl: btw, which do you want dogfood.c.c or dogfood.u.c ?  atm we have both 'cos I'm lame08:13
carlosright, it's not #1 anymore...08:13
elmosabdfl: if we only want one, I should delete the other now08:13
sabdflboth is fine if it's no trouble (one-liner)08:13
carloslaunchpad.ubuntu.com's malone is broken08:14
carlos A system error occurred.08:14
elmoit's no trouble, it's what we have already :)08:14
BradBoh, i see, you're talking the production box08:14
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: moved iandrew.py to interfaces/pyarch.py.  Made names explicitly exported. (patch-862)08:14
sabdflhow hard is it going to be to delete #1, make #2 into #1 and reset the counter?08:16
BradB4 SQL statements, I think08:17
sabdflBradB: so, about the batching08:17
sabdfli guess the batch start / end details need to be sent to the search function, right?08:18
sabdflthe bugassignment example doesn't do that08:18
BradBsabdfl: no, but the thing you give to your Batch has to slice intelligently08:18
sabdflby sqlobject resultset doesn't do that08:19
elmook, try /malone/ now - is that basically what you want?08:19
sabdflyou have to pass the slice onto the query to get it to work properly as i understand it08:19
BradBsabdfl: wait, dude, what are you working on? hopefully we're not doing the same thing.08:19
sabdflelmo: perfectly put08:20
sabdflNot Ready Yet (TM)08:20
sabdflBradB: i haven't climbed into the code08:20
sabdfli've just been working with the code you used for bugassignment's report08:20
BradBelmo: and a link to the dogfood server please08:20
sabdflBradB: no, don't do the link08:20
sabdflelmo: ^08:20
sabdfldogfood will be internal, we don't need to advertise it08:21
BradBok, so anyway, i was working on optimizing bugs-index.pt :)08:21
elmo /malone, /bounties, /rosetta, /lists, /soyuz  all redirected08:21
sabdflelmo: superstar, thanks08:21
sabdflBradB: i think it's going to have to be something like this:08:22
BradBsabdfl: slicing a SelectResults is documented to Do The Right Thing08:22
sabdflbatch_start = int(request.get('batch_start', 0))08:23
sabdflbatch_len = int(request.get('batch_len', 0))08:23
sabdflself.batch = Batch(self.search(batch_start=batch_start, batch_len=batch_len))08:23
sabdflBradB: as far as i can tell it does the right thing if you slice it when you create it08:23
BradBsabdfl: i already did that, and then realized i misunderstood what i was doing an removed it.08:23
sabdflbut if you return Table.select(), then try and slice the result, it barfs08:24
sabdflin otherwords you need to return Table.sect[slice:end] 08:24
sabdflTable.select()[slice:end] 08:24
BradBsabdfl: the Batch, should actually be called BatchedSequence or something. the point is though, it doesn't make sense to give offset and limit to your search, because the thing you give to Batch needs to represent your /entire/ result set. if you gave it a list with just 20 things it in, you'd get just one batch link, because it only sees 20 things.08:25
sabdflwell, that's nice, but it means that postgres still has to return the ENTIRE result08:25
sabdfl90% of which is then discarded08:26
sabdflyou surely want to use the underlying SQL batch machinery08:26
BradBsabdfl: no.08:26
sabdflwhere you LIMIT the resultset08:26
sabdflwhy not?08:26
BradBsabdfl: a SelectResults doesn't select all the results.08:26
BradBit's a thing that represents the results. it /isn't/ the results.08:26
BradBif foo is a SelectResults, foo[:10]  does what you expect.08:27
BradBfoo # still not fetched...08:27
sabdflso, you are saying that the existing machinery actually works properly at the SQL level?08:27
BradBfor f in foo[:10] : # iterate through first 10 rows of the SelectResults08:27
BradBsabdfl: it's documented too. if it doesn't then it's a bug, but anyway, this is already something i'm going to solve with bare sql, because it's still too slow even if it works right.08:28
sabdflhold on a sec, let me test something08:28
BradBfrom the docs:08:29
BradBYou can also slice select results. The results are used in the SQL query, so peeps[:10]  will result in LIMIT 10 being added to the end of the SQL query. If the slice cannot be performed in the SQL (e.g., peeps[:-10] ), then the select is executed, and the slice is performed on the list of results. This will only happen when you use negative indexes.08:29
=== Kinnison -> Unity
elmooh, that's cute08:29
sabdflelmo: ?08:30
elmobeing able to slice SQL query results08:31
sabdflBradB: ok, here's the problem i am hitting08:31
BradBit'd probably be better if it weren't an iterator though08:31
sabdflthe batching code does a len(foo) on the resultset08:31
sabdflthat fails on the resultset08:31
BradBsabdfl: i'm already solving this problem though, how 'bout i just continue doing what i was going to do?08:32
sabdflso, theworkaround is to pass it list(foo)08:32
sabdflbut that iterates the full set08:32
BradBlen(foo) is fine too08:32
BradBlen(foo) *should* simply do a count(*), and if it isn't that too is a bug.08:32
sabdflwhat i'm saying is that if I do self.batch=Batch(foo...)08:32
sabdflwhere foo is a resultset08:32
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: added launchpad.Admin permission (patch-863)08:32
sabdflit dies08:32
SteveAdoes sqlobject define a __len__ ?08:33
sabdfli have to say Batch(list(foo), ...08:33
sabdfland that defeats the purpose of the whole exercise08:33
BradBsabdfl: nah, you shouldn't have to. if you do, then that's a bug.08:33
BradBsabdfl: but again, i'm already going to circumvent sqlobject in that screen entirely anyway, because it's going to be too slow, i think.08:33
sabdflwhat code are you running that you DON'T have to do that?08:33
sabdflwhy should it be too slow?08:34
BradBsabdfl: for f in foo[:20]  does at least 20 SELECT's, I believe.08:34
BradBmaybe 40, i can't remember offhand how it's implemented.08:34
SteveAoh, fuck this.  I'm going to fix __len__ on SelectResults right now.08:35
BradBin a sane world, foo[:20]  would not be an iterator08:35
sabdflwhy doesn't it just use OFFSET and LIMIT?08:35
BradBfoo[:20]  would select the results then and there.08:35
sabdflare you sure about this?08:36
BradBsabdfl: not 100%, no.08:36
sabdflbecause i have seen Table.select()[0]  put an OFFSET and LIMIT 1 into the SQL08:36
sabdflwhich would appear to be correct08:36
BradByeah, but try a slice08:36
sabdflis there a way to make sqlobject print the SQL it's generating?08:37
BradBanyway, can i just implement this in raw sql? it'll be much faster, and we need speed on that screen, nowish.08:37
BradBsabdfl: debug=1 to the connection, i believe. that's what i was asking about yesterday, and you told me to use log_statement=true :)08:37
BradBbecause i don't know how to set that stuff with SQLOS08:38
sabdfli'm looking for a way that doesn't incvolve restarting the server08:38
BradBsabdfl: do we really need to both be working on the same thing though? :) i was hoping to just go off and make this work right now.08:38
BradBwith sql08:39
sabdflBradB: you're smokin' yer toenails, dude08:39
sabdfl2004-11-25 19:39:20 [2762]  LOG:  statement: SELECT Project.id, Project.reviewed, Project.owner, Project.wikiurl, Project.title, Project.homepageurl, Project.lastdoap, Project.displayname, Project.description, Project.active, Project.name, Project.datecreated, Project.shortdesc FROM Project WHERE  1 = 1 LIMIT 3 OFFSET 208:39
sabdflthis was created by:08:40
sabdflmark@slinky ~/projects/ubuntu/launchpad/lib/canonical/database $ python -i harness.py08:40
sabdfl>>> Project.select()[2:5] 08:40
sabdfl<sqlobject.main.SelectResults object at 0x40fb898c>08:40
sabdfl>>> for item in Project.select()[2:5] : print item.name08:40
sabdfl../../canonical/database/sqlbase.py:90: UserWarning: Something tried to set a _connection.  Ignored.  warnings.warn("Something tried to set a _connection.  Ignored.")08:40
sabdflso sqlobject works perfectly08:40
sabdflit's the batching code that is broken08:40
sabdflif you were hoping to just go off and make this work right now you'd be barking up the wrong tree08:40
sabdfloh lord that 1 = 1 is hideous08:41
BradBsabdfl: try for p in Project.select()[2:5] 08:42
BradBer, yeah, i see n/m08:42
sabdflso to make this work, we DO need to pass the batch details down to the actual select()08:42
BradBsabdfl: anyway, like i say, i wasn't sure. :) not barking up the wrong tree though. by cutting out the vocabs on the bug listing it was still taking 45s with 7,000 bugs in the db.08:43
sabdfli think that's moslty indeces08:43
sabdflwe don't have any in malone08:43
BradBit may be in its interaction with the batching machinery08:44
SteveASelectResults.__len__ will work as soon as my patch hits08:44
sabdfli doubt that08:44
sabdflSteveA: hold on08:44
sabdflthat doesn't help08:44
sabdflat least, i dont think so08:45
SteveAoh well.  it has caught us out enough before.  and also, it is declared with a permission in sqlos.08:45
BradBsabdfl: run the bugs-index.pt with log_statement=true and the vocabs commented out. you'll see how much it's hitting the db.08:45
sabdflbecause doing the __len__ will triger the full un-LIMITed SQL query, won't it?08:45
sabdflis it lots of different queries?08:45
BradBi don't remember. i'm going to run it again now.08:46
sabdflok, i have to step away from the keybd shortly :-)08:46
BradBgoing to try it now with a tiny listing08:47
BradBsabdfl: e.g.08:50
BradB2004-11-25 14:47:54 [10982]  LOG:  statement: SELECT owner, activitytimestamp, communityscore, activityscore, title, duplicateof, description, hitstimestamp, hits, communitytimestamp, name, datecreated, shortdesc FROM Bug WHERE id = 108:50
BradB2004-11-25 14:47:54 [10982]  LOG:  duration: 5.732 ms08:50
BradB2004-11-25 14:47:54 [10982]  LOG:  statement: SELECT owner, activitytimestamp, communityscore, activityscore, title, duplicateof, description, hitstimestamp, hits, communitytimestamp, name, datecreated, shortdesc FROM Bug WHERE id = 208:50
BradB2004-11-25 14:47:54 [10982]  LOG:  duration: 1.155 ms08:50
BradB2004-11-25 14:47:54 [10982]  LOG:  statement: SELECT owner, activitytimestamp, communityscore, activityscore, title, duplicateof, description, hitstimestamp, hits, communitytimestamp, name, datecreated, shortdesc FROM Bug WHERE id = 308:50
sabdflBradB: this is because sqlobject doesn't do proper selects across multiple tables08:50
BradBso, of course, with improper slicing (which is how it currently is), that phenomenom is murder.08:51
sabdflsay you get all the bugasssignments into a list foo08:51
sabdflnow you go :08:51
sabdflfor bugass in foo: print bugass.bug.title08:51
BradBsabdfl: um, the point being though, i wanted to move this into raw sql because the db is being hit too much :)08:51
sabdflyou will see this kind of crap08:51
carlosSteveA: I need to add a new class to DBSchema08:51
carlosSteveA: could I do it directly or should I send a request?08:51
sabdflBradB: this was one of the two big improvements to sqlobject I said i was willing to fund / let you work on08:52
sabdflanyhow,  REALLY have to help kiko with something now, my time is nearly up08:52
BradBsabdfl: i've got a failing unit test i've written ready to be funded into passing :)08:52
carlossabdfl: you need a twin ;-)08:52
BradBbut anyway, i'll make this work sanely today08:52
BradBone sql select for the listing, max 20 items, that's it, plain and simple.08:53
sabdfltwin! two ugly mean mutherf*ckers might be too much me for the world...08:53
sabdflBradB: yesterday i asked you not to spend hours and hours on this report08:53
sabdflplease think about it08:53
sabdflperformance is not a big issue till we get to mataro08:53
sabdflbut on day one at mataro we have to walk people through the system08:54
sabdflit can be slow08:54
sabdflbut the processes need to be slicker08:54
sabdflmake THAT your focus08:54
sabdflwe can optimise specific reports later08:54
BradBsabdfl: 1m 30s on 7,000 bugs isn't worth fixing right now though?08:54
BradBif not, i can wait.08:54
sabdfland besides, the one you are working on is the biggest, slowest08:54
sabdflwe may refactor the product/packagebugassignments into a single table08:54
sabdflall of which will undo work that you are investing now08:55
sabdflso please, let's focus on workflow08:55
sabdfl - find a bug08:55
sabdfl - report a bug08:55
sabdfl - see bugs on a product (done)08:55
sabdfl - see bugs on a package (done)08:55
sabdfl - reassign to a different product (needs doing)08:55
sabdfl - reasign to a different package08:55
sabdfl - mark fixed08:55
BradBshould "Fixed" be one of the one-click actions?08:56
sabdflit's the simple workflow things that we need to simplify08:56
sabdflsounds good08:56
BradBok, i'll do some more of that kind of work right now then08:56
sabdflkiko, around, i have little time left today08:56
SteveAcarlos: what is the new DBSchema class you want to add?08:58
carlosit's to control the raw file status08:58
carlosimported, done, failed08:58
carlosit's a field in the database08:59
dilysNew Malone bug #88: "Add a one-click "mark fixed" to the bug listing", submitted by Brad Bollenbach08:59
carlosimported shoud be "pending"08:59
carlosor something like that 08:59
SteveAok.  remember to add it to the __all__ of the module09:00
carloshmmm, is NULL a valid value for a DBSchema?09:01
BradBsabdfl: btw, some icons for one-click accept/reject/mark fixed would be nice, if we get a chance (real estate getting tight!) maybe icons for statuses too...09:02
SteveAcarlos: no09:02
SteveAnumbers only09:02
carlosok, then I need to ask for a database change09:02
SteveAdaf: 09:07
SteveAcarlos, daf: how is the rosetta stuff going?09:08
carlosSteveA: daf is offline at the moment09:08
SteveAoh, at a thanksgiving thing09:09
carlosSteveA: I'm implementing the queue view and process 09:09
carlosSteveA: yes09:09
=== kiko is now known as kiko-afk
cprovSteveA: sorry, I was AFK for a while, now we have a meeting at Async with kiko & salgado, can we talk later ?09:36
cprovSteveA: I hope so, need to go, see you 09:37
kiko-afkSteveA, are *some* classmethods reasonable?09:43
BradBelmo: is pqm looping?09:47
BradBlifeless: ?09:50
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: added __len__ to SelectResults. (patch-864)10:37
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: added one-click 'fixed' to the bug listing (patch-865)10:42
dilysMalone bug #88 fixed for product Malone: Add a one-click "mark fixed" to the bug listing10:50
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: fixed bug assignee search (patch-866)11:12
=== cprov [~cprov@200-206-134-238.async.com.br] has joined #launchpad

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