/srv/irclogs.ubuntu.com/2004/12/11/#launchpad.txt

BradBYou didn't mark it resolved. I'll mark it resolved now.12:01
lifelessBradB: didn'[t know it existed.12:01
lifeless:)12:01
BradBheh12:01
dilysMalone bug #82 fixed for product The Launchpad: Possible initZopeless transaction issues12:01
dilyshttps://dogfood.ubuntu.com/malone/bugs/8212:01
BradBlifeless: btw, when do we get Zope 3 upgraded?12:06
lifelessBradB: dunno. I'm waiting on the distro team right now to get svn support back.12:10
BradBok12:12
BradBkiko: after i add a bug, do i want to be returned to the bug listing, or do i want to land on the page to edit the bug i've just added? i'm not sure if the common case is to report a bug and add a bunch of extra info about it, or rather to report a bug and get on with your day while other people (e.g. maintainers) figure out if there's a CVE ref#, ext url's, etc. to add12:24
kikothere are both use cases12:24
BradBfor me, i think it's been that normally i just report a bug and get on with my day, rather than start adding a bunch of other crap right away12:25
BradBand, in fact, i've done the occassional rapid-fire bug reporting12:25
kikoit often happens both ways12:25
kikosometimes I'll forget12:25
kikoand then add a comment12:25
kikosometimes I don't want to add an initial comment that is too long12:27
kikosometimes I just want to file 10 friggin bugs and go watch a movie12:27
kikoyou need to cater for both use cases (and others, of course)12:28
BradBI think I know what should be done: either the user should be taken to the last page of bug results after they report a bug (so they can see the one they just added and click and edit it more) or the bug listing sorting should be sane and go newest to oldest, which would achieve the same goal but in a different way.12:29
BradBI'm betting that the common case is /not/ to do a bunch of editing on a bug after it's been added, but I guess time will tell.12:30
kikoyou can cater both if you present the buglist with a short message box at the top with a link to the bug12:44
kiko[ Bug _XXXX_ filed ] 12:44
kikothis would also fix one of the 9x bugs I reported12:44
BradBbut if the bug listing is shown newest to oldest, they already have a link to their bug right at the top of the listing. is it worth creating another link above that?12:45
BradBI followed up last week to that bug you reported, btw.12:48
BradBThe user already does get an email12:48
kikoBradB, dude, the bug # filed needs to be *prominent* on the page12:53
kikonot in the list12:53
kikoposting a bug number and pasting it somewhere is *the* use case to cater for :)12:53
BradBkiko: Where does Bugzilla put it? I don't recall offhand.12:54
BradBMalone puts it in the subject line of the email the user receives.12:54
kikoa bit fat box saying Bug XXX filed 12:54
kikoemail is nice12:54
kikobut you want it in the web UI, definitely12:54
BradBok12:55
kikoBradB, I'll give you a good usability test of malone in barcelona, you'll owe me ice cream later.12:57
BradBheh12:59
BradBi'm a make-this-usable-for-human-beings nazi as it is, but more feedback from others is always good, particularly bugzilla maintainers :)01:00
kikoI'm a human being too01:04
kikoperhaps the most human of all bugzilla maintainers :)01:04
BradBhah01:06
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
=== Kinnison turns into a pumpkin. G'night
kikopompkin01:16
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Full text indexing, database schema patches (patch-909)03:49
stubhur fucking ray03:54
stubNow to work out wtf the pagetest I had to disable works fine locally but not on chinstrap :-(03:55
dilysNew Malone bug #106: "Disabled Malone pagetest", submitted by Stuart Bishop04:27
dilyshttps://dogfood.ubuntu.com/malone/bugs/10604:27
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Turn on Celso's doctest patch for dogfooding (patch-910)04:45
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
=== lifeless_ [~robertc@dsl-253.4.240.220.rns01-kent-syd.dsl.comindico.com.au] has joined #launchpad
=== lifeless [~robertc@dsl-253.4.240.220.rns01-kent-syd.dsl.comindico.com.au] has joined #launchpad
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
spivlifeless: Sender not authorised to commit to package rocketfuel@canonical.com/sqlobject--test--0.607:57
spivlifeless: (when I try to get pqm to merge changes from me)07:57
dilysNew Malone bug #107: "Unable to view bug 70", submitted by Andrew Bennetts09:22
dilyshttps://dogfood.ubuntu.com/malone/bugs/10709:22
lifelessspiv: fixing now09:33
lifelessspiv: done09:34
dilysMerge to rocketfuel@canonical.com/sqlobject--test--0.6: Add a limited SELECT DISTINCT to SQLObject (patch-5)09:41
spivlifeless: Ta09:44
stubOoh... might fix that __del__ crap that is bugging us. Tomorrow ;)09:46
lifelessyay09:51
dilysNew Malone bug #108: "Duplicate bugs in bug listing", submitted by Andrew Bennetts09:55
dilyshttps://dogfood.ubuntu.com/malone/bugs/10809:55
dafhmm, what's the easiest way to display a date in a nicely formatted way in a page template?10:12
dafthe default stringification seems to be along the lines of "2004-11-15 16:04:49.157656"10:12
stubSteve made a helper and announced it on launchpad@ just recently - tal:mydate/fmt:i_forget10:14
stubWhere i_forget is defined in the FormatAPI class in tales.py10:15
dafoh10:15
dafthat's just what I want10:16
dafwell, I think minute-resolution would be marginally preferable to second-resolution, but that's minor10:16
stubI think it is still open for discussion10:18
dafwell, I think the API is probably stable10:19
dafthe exact formats it uses can probably changed in the future10:19
=== silbs [~sbsm0084@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
dafhi Jane!10:24
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
KinnisonMorning10:45
Kinnisonstub: ping?10:48
stubKinnison: pong10:49
Kinnisondaf: You're up unreasonably early. What's up?10:49
Kinnisonstub: When's the next dogfood update?10:49
stubTomorrow10:49
dafKinnison: s/early/late/10:49
stubAbout 16 hours time10:49
stubI will do more frequent updates for beer though10:50
Kinnisonstub: I see10:50
=== SteveA [~steve@adsl-213-190-44-43.takas.lt] has joined #launchpad
SteveAhi spiv10:56
SteveAhi daf10:57
sabdflmornin' steve10:57
SteveA(hi everyone else!  but, I particularly want to talk with spiv and daf)10:57
dafhi Steve10:57
spivHi Steve :)10:57
SteveAspiv: how's the work on shipit going?10:58
SteveAdaf: are you on a morning or an evening at the moment?10:58
sabdfldaf, stub, i don't think stevea's date formatter work is ready for prime time, it didn't work for me on datetimecol's10:58
dafsabdfl: hmm, it worked beautifully for me10:58
dafSteveA: on an evening10:59
sabdflSteveA: did you commit a fix or two to that?10:59
stubsabdfl: datetimecols return mxDateTime objects, which would not be hard to cope with10:59
SteveAI haven't committed a fix to make it handle "None"/NULL yet10:59
sabdflah, right, that was the issue10:59
dafah, ok, I don't think I have a code path that tickles that10:59
SteveAI need to do a bit of bazzing, then I'll commit that fix11:00
dafSteveA: we missed you yesterday11:00
SteveAdaf: traveling back from england.  took a bit longer than I expected.11:00
dafSteveA: oh, problems with flights?11:01
SteveAmore with trains.11:03
SteveAcan we talk about rosetta a bit?11:03
dafcertainly11:04
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: fix PO file autovification, 'Last Change' feature (patch-911)11:05
lifelessSteveA: btw, I fixed that initzopeless thing11:05
SteveAcan I upload a pot file to a temporary place on the system, for it to be imported a bit later?11:05
SteveAlifeless: what did you do?11:05
SteveAmake it "reentrant" ?11:05
lifelessno, joined the new transaction to the connection data adapter11:05
SteveAok11:06
SteveAthanks11:06
dafSteveA: I need to workrave -- can we talk in ten minutes or so?11:06
SteveAyes11:06
SteveAspiv: still around?11:06
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
dafSteveA: it's nearly working -- we stumbled on some some unicode-related problems yesterday11:22
SteveAwhat are the problems?11:23
SteveAand, have you worked out how to make a test-case for them?11:23
dafthe PO parser was written to only parse string objects11:24
dafand it broke when it was passed unicode objects11:24
dafwe have identified the causes of the problems11:24
dafI have asked Carlos to write a test case11:24
SteveAso... it should be passed a string object11:24
SteveAit shouldn't be passed a unicode object, because that doesn't make a whole lot of sense11:25
dafhmm, I was wondering about that11:26
SteveAlet me try to explain11:26
SteveAwe have two kinds of data: string data and bytes data11:27
SteveAwhen string data comes in, we always convert it into unicode objects11:27
SteveAwhen bytes data comes in, we always leave it as bytes11:27
SteveAok so far?11:28
SteveAa jpeg is bytes11:28
dafyes11:28
SteveAtext entered into a form is "text" so, strings to become unicode objects11:28
SteveAyou'd never try to represent a jpeg as a unicode object11:28
SteveAin python, this gets rather confusing.  this is a "wart" in python11:29
dafwhy is it a wart?11:29
SteveAbecause the "str" type is commonly used for both "encoded string" data and for "bytes data"11:29
SteveAbut, when it is used for "encoded string" data, it does not know what encoding was used11:30
SteveAit is lossy11:30
SteveAso, if you have a str object, is it string or is it bytes ?11:30
SteveAtext or data?11:30
dafyou can't know for certain11:30
KinnisonThe same wart exists in Lua11:30
SteveAyou can't know.  so you need to make sure your program treats "str as encoded string" specially11:30
SteveAand always passes around the encoding with it11:31
SteveAKinnison: that's interesting.  Are they going to fix it?11:31
SteveAso, back to po files11:31
KinnisonSteveA: Given there's currently no encoding support in native Lua I doubt it11:31
SteveAyour po file is data11:31
SteveAthe parser wants data11:32
SteveAand it gives you back, um... I can't remember actually.  maybe you can tell me?11:32
dafit gives you message objects11:32
SteveAok, so they include unicode strings11:32
dafyes11:32
SteveAokay11:32
SteveAso, data in, unicode out11:32
SteveAand, the po file tells you what encoding it is in11:33
dafyes11:33
SteveAso, that's easy11:33
dafwhich presents an interesting challenge11:33
SteveAwith all the above in mind, what is the unicode problem?11:33
dafsince you have to start parsing the PO file before you know what encoding it's in11:33
SteveAbut, that's all the po parser's job11:34
dafyes11:34
SteveAand that's done11:34
dafyes11:34
SteveAso, tell me about the current unicode problem, bearing the above in mind11:34
dafbearing the about in mind, I think the problem is that the database is returning Unicode objects for the raw PO file11:35
dafs/about/above/11:35
SteveAok, that sounds about right11:36
SteveAwhat type is the column?11:36
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Make fmt:date handle None properly. (patch-912)11:36
=== daf checks
SteveAthanks dilys11:36
daftext11:36
dafwhich is wrong11:36
SteveAokay11:36
SteveAwhat should it be?  BINARY i suppose11:37
dafor bytes11:37
dafI can't remember the name11:37
SteveAso, you know what to do now.11:37
SteveAspiv spiv spiv11:39
SteveAcalling spiv11:39
SteveAcome in, number spiv11:39
SteveAdaf: I guess it goes: 1. produce database change on your machine.  2. check it works.  3. update code (if needed) 4. ask for DBA patch on mailing list.11:41
SteveAdaf: did I miss anything?11:41
dafSteveA: the fact that I'm thinking of going to bed? :)11:43
SteveAbefore you go, please write a note to the launchpad mailing list about all this.  that gives carlos and stub a head-start when they turn up today.11:44
dafah, ok11:44
SteveAthanks11:44
dafI was already composing an email to Carlos about it11:44
dafshould I send it to the mailing list instead?11:44
dafwell, sent to Carlos, CCing you11:46
dafdid you get the email I sent on Sunday night?11:46
SteveAnot yet.  I still need to catch up on some mail.11:47
SteveAthe list is good, because11:47
SteveA1. the issue is one that may affect others working on these web apps11:47
SteveA2. the DBAs need to know about it11:47
dafpoints taken11:48
=== cprov [~cprov@200.158.100.251] has joined #launchpad
SteveAdaf: can we have a meeting about rosetta either later today or tomorrow?11:54
KinnisonMorning cprov 11:54
cprovKinnison: morning 11:54
dafSteveA: yes11:56
dafSteveA: I think later today it still possible11:57
dafSteveA: but if it doesn't happen, let's plan for earlyish tomorrow11:57
KinnisonSteveA: launchpad meeting tomorrow yes?11:57
SteveAdaf: I want us to set a time, check with carlos, and then we all know what we're doing.11:58
SteveAKinnison: yep.  I'll send a mail in a bit.11:59
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
SteveAhi carlos.  daf and I are just talking about when the three of us can meet up to talk about rosetta.12:00
carloshi12:00
carlosjust tell me when it's ok for you12:01
KinnisonSteveA: any chance we can start a bit earlier than 12.30 (say 12.15) because I may have to leave at 13.15 to collect my partner (they moved his days in ely to tue/wed from mon/tue)12:01
carlosdaf: around?12:01
dafSteveA: would 2000 UTC tonight be too late for you?12:01
dafcarlos: yes12:02
SteveAKinnison: fine with me, and I'm sure fine with the .au folks.12:02
SteveABradB / daf: can we have a launchpad meeting tomorrow at 12:00 or 12:15 UTC?12:02
carlosdaf: which problem are you talking about exactly?12:02
carlosdaf: the one related to adding unicode support to the parser?12:02
SteveAdaf: that would be fine with me.  We must be on time, though.12:02
carlosdaf: it's ok for me also12:03
SteveAcarlos: you should read the chat daf and I had about this.12:03
carlosok12:03
=== carlos opens the irclogs
dafSteveA: no objections12:04
SteveAit was just 30 mins or so ago12:04
dafcarlos: I'm happy to try and explain further if the situation isn't clear12:04
dafSteveA: (in regards to tomorrow's meeting)12:05
dafSteveA: and yes, I will set an alarm for tonight's12:05
carlosdaf: it's not yet in the log, will wait12:05
dafhmm12:06
SteveAlet's let daf get some sleep.  carlos and I can chat about it here.12:06
dafperhaps the log bot isn't here12:06
SteveAit is important that both of you understand the issue.12:06
carlosdaf: it has a delay12:06
dafoh12:06
SteveAcarlos: I can mail you the logs if needed.12:06
carlosdon't worry12:06
SteveAdaf: great, thanks.12:06
carlosI can wait12:06
carlosdaf: go to sleep!12:06
carlos:-P12:06
dafcarlos: well, I'd like you to get up to speed on this quickly, so we can fix the problem quickly12:07
carlosso we have a meeting tonight at 20:00UTC and tomorrow at usual time?12:07
SteveAKinnison: let's say the meeting will be at 12:00 UTC.  If brad needs to be a bit late, then that's okay.12:07
SteveAcarlos: a bit earlier tomorrow12:07
KinnisonSteveA: okay; cool. Thanks dude.12:07
SteveAdaf: good night!12:07
KinnisonSteveA: it can be later if I'm able to be first to report and we don't get bogged down in TAL or whatever it was last week which confused the fook out of me12:08
dafcarlos: yes12:08
carlosdaf: don't worry, Steve will help me with it. Makes sense what you said in your mail12:08
SteveAcarlos: do you have jabber running?12:08
dafok, buenas noches12:08
carlosSteveA: yes12:08
carlosdaf: buenas noches12:08
SteveAwhat's the id ?12:08
carloscarlos@pemas.net12:08
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
carloshmm, anything went wrong, I don't see you after accepting the request :-?12:09
SteveAthe request is one-way.  but, you can make the same request in the opposite direction.12:10
SteveAsometimes the apps get confused.  maybe you need to restart your jabber client?12:10
carlosSteveA: usualy, the first request adds also the contact into my list12:14
carlosSteveA, daf: Will look into it today, I agree with the proposed change12:15
SteveAok, great12:16
SteveAping me if you have any doubts12:16
SteveAor any questions ;-)12:16
carlos:-)12:17
carlosthe only question is about the sqlobject to use12:17
carlosif it's a binary field, could I use a StringCol?12:17
carlos(the sqlobject _type_ to use)12:18
SteveAI don't know what sqlobject offers for bytes data12:18
SteveAmaybe BradB or spiv knows?12:18
carlosok12:18
SteveAor we can look it up12:18
carloswill search the documentation12:19
SteveAhttp://sqlobject.org/docs/FAQ.html#binary-values12:20
SteveAit suggests you store it base64 encoded12:20
SteveAwhich would work okay, and avoid changing the database again12:21
carlosok12:21
=== Kinnison grrs as he realises 'make check' isn't working
Kinnisonit is sat idle12:21
Kinnison:-(12:22
SteveAthat's happened to me before.  but, I changed the check_on_merge script to use threaded IO, which fixed it12:23
KinnisonHmm, has this been undone?12:25
SteveAnope12:26
SteveAstill there12:26
SteveAcan you see what is blocking?12:26
SteveActrl+c and stare at the TB? 12:26
Kinnison  843 ?        S      0:00 postgres: dsilvers launchpad_ftest [local]  idle in transaction12:26
Kinnison  867 ?        S      0:00 postgres: dsilvers launchpad_ftest [local]  idle12:26
Kinnisonthose are the two postgres processes I can see12:26
KinnisonI just did ^C and it hasn't stopped yet12:26
=== Kinnison straces it and ponders
Kinnisondsilvers@petitemort:~/dev-canonical/launchpad/launchpad/database/schema$ strace -p 3275112:27
KinnisonProcess 32751 attached - interrupt to quit12:27
Kinnisonfutex(0x8b0bd28, FUTEX_WAIT, 0, NULL12:27
Kinnisonthis smells like a futex issue12:27
KinnisonI shall dist-upgrade and try again12:28
SteveAright12:28
SteveAyou on hoary or warty or something else?12:28
Kinnisonwarty12:28
SteveAnothing's upgraded for me for ages on warty.12:30
SteveAI wonder if my sources.list is correct12:30
KinnisonDo you not have security in your list?12:30
carlosSteveA: you need the security and updates line12:30
carlosdeb http://archive.ubuntu.com/ubuntu warty main restricted universe multiverse12:31
carlosdeb-src http://archive.ubuntu.com/ubuntu warty main restricted universe multiverse12:31
carlosdeb http://archive.ubuntu.com/ubuntu warty-security main restricted12:31
carlosdeb-src http://archive.ubuntu.com/ubuntu warty-security main restricted12:31
carloshmm, and I don't have the updates line.. (for things like the calendar :-P)12:32
kikogood morning12:33
kikohow is everybody?12:33
SteveAwhat's "restricted" ?12:33
SteveAhi kiko12:33
kikorestricted is a bit like "non-free" I believe12:33
carlosSteveA: binary drivers12:33
SteveAoh, okay12:33
carloskiko: I think that's multiverse12:34
elmoit's non-free software that's critical for machine support, i.e. gfx, wifi etc. drivers12:34
lifelesselmo, can you do something for me ?12:34
kikowell, binary drivers are non-free as well :)12:34
SteveAnot sure I need any of that12:34
carloskiko: good point12:34
carlos:-D12:34
lifelessmuch easier to do this interactively ...12:34
elmokiko: yes, but he's still right, multiverse is our equivalent of non-free12:34
elmolifeless?12:35
lifelesson auckland, in the arch archives, delete all the category directories for all the imports.12:35
kikocarlos is always right, no news there12:35
lifelessi.e.12:35
=== carlos leaves for an hour or so
lifelessin xorg@arch.ubuntu.com there is a top level dir of12:36
lifeless\=meta-indo12:36
lifelessbah 12:36
carlosI hate public administration 12:36
Kinnisonmmmm meta-indo12:36
lifeless\=meta-info12:36
lifelessand a .archive-version file12:36
lifelessand N other dirs, one for each pjrect in the archive.12:36
lifelessI need to nuke those other dirs12:36
lifelessand I need you to echo "Bazaar archive format 1 0" to all the .archive-version files.... but that step will happen later today, after we release.12:37
carlosstevea: I think you will also want deb http://archive.ubuntu.com/ubuntu warty-updates main restricted universe multiverse12:37
elmolifeless: you mean the .listing file?12:38
lifelesselmo: .listing is irrelevant12:39
lifelesslook at xfs@arch.ubuntu.com instead, will make more sense12:39
=== Kinnison workraves
lifelessacl attr xfsdump xfsprogs should go byby.12:40
elmooh, ok12:40
lifeless=meta-info should stay12:40
elmolifeless: umm, you sure about this?  'cos if I do it, I'm going to rm them...12:40
lifelessyeah, I have copies.12:40
lifelessauckland12:41
lifelessis a public copy only.12:41
lifelessjust do -not- do it on galapagos.12:41
elmofind www/* -maxdepth 1 ! -name \=meta-info -type d -mindepth 1  | xargs rm -fr12:42
elmo^-- running12:42
lifelessyup, cool12:43
sabdflspiv: do we have distinct support yet?12:44
=== Kinnison [~dsilvers@haddenham.pepperfish.net] has joined #launchpad
=== Kinnison retries the make check
KinnisonOkay, it failed :-(01:07
KinnisonProgrammingError: ERROR:  database "launchpad_ftest" is being accessed by other users01:07
KinnisonConsidering this is a totally fresh boot, I find that hard to believe01:07
KinnisonOr rather, it has to be a bug in the test suite01:08
elmoKinnison: are you using an SMP kernel?01:08
KinnisonNo01:08
elmooh, well, we had this problem on mawson, for a while, fwiw.  it kind of went away on it's own01:09
KinnisonFeh :-(01:09
Kinnisonthanks dude01:09
elmoI think at the time, I downgraded to a UP kernel, but we appear to be back on SMP now01:09
KinnisonThere also appears to be proper failures01:09
elmoyou might try running postgres without NPTL01:09
KinnisonThere appear to be real ftest failures in my scrollbuffer01:09
elmolifeless: done01:09
elmolifeless: I assume I should do what it says to the stuff in 'deleteme' ?01:10
lifelessyes01:13
lifelessthanks01:13
Kinnisonwell, a re-run gives the same issues :-(01:17
Kinnisonthat has put a dampner on my ability to run make-check before pqm merging :-(01:17
SteveAtry recompiling everything?01:18
=== Kinnison tries
elmoKinnison: the same futex issues?  if so, try without NPTL, you should be able to just LD_ASSUME_KERNEL the postgres server01:19
Kinnisonelmo: not the futex issue. no01:20
Kinnisonelmo: the futex issue went away with the upgrade01:20
elmooh, ok01:21
lifelessoh? thats interesting.01:21
lifelesswe've had terrible futex issues with buildbot/importd01:21
KinnisonSteveA: a make clean && make check still fails01:24
SteveAhow odd01:24
SteveAis it pagetests that fail?01:25
Kinnisonyeah01:25
Kinnisonit appears in part to be complaining about the full text search stuff01:25
Kinnisonbut I followed stub's instructions from his mail01:26
KinnisonFor someone who knows more about these things than me: https://chinstrap.warthogs.hbd.com/~dsilvers/clean-and-check.log01:46
KinnisonProgrammingError: ERROR:  could not find tsearch config by locale01:47
Kinnisonthat one appears to be the most relevant01:47
SteveAwhat do you have for this: SELECT * from pg_ts_cfg;01:55
Kinnisonlaunchpad_dev=# SELECT * from pg_ts_cfg;01:57
Kinnison     ts_name     | prs_name |    locale01:57
Kinnison-----------------+----------+--------------01:57
Kinnison default         | default  | C01:57
Kinnison default_russian | default  | ru_RU.KOI8-R01:57
Kinnison simple          | default  |01:57
Kinnison(3 rows)01:57
SteveAand, what is your machine's locale?01:57
SteveAlocale -a perhaps01:57
Kinnisondsilvers@petitemort:~$ locale -a01:58
KinnisonC01:58
KinnisonPOSIX01:58
Kinnisonen_GB01:58
Kinnisonen_GB.iso8859101:58
Kinnisonen_GB.utf801:58
SteveAI have $ locale -a01:58
SteveAC01:58
SteveAPOSIX01:58
SteveAen_US01:58
SteveAen_US.iso8859101:58
Kinnisondsilvers@petitemort:~$ locale01:58
KinnisonLANG=en_GB.UTF-801:58
Kinnison...01:58
Kinnisonis that is issue?01:58
SteveAquite likely01:58
Kinnisonblergh01:59
Kinnisonthat locale works for everything else01:59
=== Kinnison tries LANG=C make check
SteveAINSERT INTO pg_ts_cfg (ts_name, prs_name, locale) VALUES ('default_english', 'default', 'en_GB');02:00
SteveAanyhow, I think it might be better to have a standard locale for running this stuff, as we should have a development environment that is as close to the servers as is possible.02:01
Kinnisonthe LANG=C option failed. I'll try your insert now02:03
SteveAthere might be more to do than just that insert02:04
SteveAhttp://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/docs/tsearch-V2-intro.html02:04
SteveAlook at the section "TSEARCH2 CONFIGURATION"02:05
Kinnisonergh!02:09
Kinnisonthat's way complex02:09
SteveAyeah.  maybe wait until stub is around?02:10
Kinnisonhmm02:10
SteveAactually02:10
SteveAI expect you need to set the locale the postgres process is running in02:10
SteveAnot the locale you run make check in02:10
SteveAmaybe there's a way to override that in the postgres configuration02:11
KinnisonPerhaps02:11
=== Kinnison pops lc_ctype = 'C' into postgresql.conf to see if that helps
Kinnisonnup, that stops postgres from starting02:12
=== Kinnison -> Ely, brb
Kinnisonback02:49
elmohas anyone been running anything on mawson recently?03:09
elmoparticularly between 12:45 and 1:0003:09
=== Kinnison wasn't doing so deliberately
elmodoes gina make any outgoing connections?03:09
KinnisonNot that I know of03:10
dilysMerge to thelove@canonical.com/bazaar--devo--1.0: remove libneon, use the system libneon headers (patch-67)03:30
dilysMerge to thelove@canonical.com/package-framework--devo--1.1: merge in final package-framework fix for make test (patch-2)03:31
elmomeh, never mind.  wrong machine.  I own.03:32
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
kikoyo stb03:52
salgadoyo kiko!03:54
dilysMerge to thelove@canonical.com/bazaar--devo--1.0: merge baz archive format support (patch-68)03:58
dilysMerge to thelove@canonical.com/bazaar-debian--debian--1.0: release 1.0 (patch-6)04:01
=== Kinnison grrs workrave
dilysMerge to thelove@canonical.com/bazaar--devo--1.0: archive mirror fix for tla archives (patch-69)04:28
SteveAspiv: ?04:37
SteveAsabdfl: can we talk about utility functions briefly?04:43
bob2is python-docutils a non-python.org project?04:43
bob2ie different "project" in the LP sense?04:44
bob2SteveA: he's semi-afk atm04:44
SteveAoh, okay.  I'll catch up with him later04:44
SteveAI'm popping out for some food, but taking the laptop along.04:45
SteveA(in a few minutes)04:45
=== Your nick [ubuntulog] is owned by ~warthylog@port49.ds1-van.adsl.cybercity.dk
=== wartylog [~warthylog@port49.ds1-van.adsl.cybercity.dk] has joined #launchpad
=== Topic for #launchpad: lunchpad: home of the sandwich artists | fogo na bomba | "qorking along happily, with SteveA egging us on"
=== Topic (#launchpad): set by sabdfl at Tue Oct 19 11:05:38 2004
(carlos/#launchpad) SteveA: the base64 thing works04:57
=== Signon time : Thu Nov 18 19:06:16 2004
=== Signoff time : Tue Nov 30 16:57:35 2004
=== Total uptime : 11d 21h 51m 19s
=== warthylog [~warthylog@port49.ds1-van.adsl.cybercity.dk] has joined #launchpad
=== Topic for #launchpad: lunchpad: home of the sandwich artists | fogo na bomba | "qorking along happily, with SteveA egging us on"
=== Topic (#launchpad): set by sabdfl at Tue Oct 19 11:05:38 2004
(SteveA/#launchpad) carlos: does that mean I can upload a potfile and have it imported now?04:58
(carlos/#launchpad) yes04:58
(SteveA/#launchpad) wahey!04:58
(SteveA/#launchpad) and I can translate it04:58
(BradB/#launchpad) carlos: so you don't need to change anything about the way you're currently solving the problem then?04:58
(carlos/#launchpad) we need to improve the exception handling but the code is there already04:58
(SteveA/#launchpad) and get a po fle back04:58
=== Your nick [ubuntulog] is owned by ~warthylog@port49.ds1-van.adsl.cybercity.dk
(carlos/#launchpad) yes, the missing part I should add is the po import that needs a language selector04:58
[sivang(~sivang@80.179.93.130.forward.012.net.il)] hi!04:59
(SteveA/#launchpad) um... daf was working on that days ago04:59
(carlos/#launchpad) but that should be trivial now that the pot import works04:59
(SteveA/#launchpad) what happened to it?04:59
(carlos/#launchpad) BradB: right04:59
(carlos/#launchpad) SteveA: I'm using its patchset04:59
(carlos/#launchpad) /s/its/his/04:59
(SteveA/#launchpad) ok, so you need to integrate daf's patch04:59
(carlos/#launchpad) it's already integrated but it lacks the language selector (it's just a combo box so it's easy)05:00
(BradB/#launchpad) Actually, I found a thread on sqlobject discuss and that's all Ian suggested too (base64 encoding :)05:01
(SteveA/#launchpad) ok, we'll stick with doing it that way05:01
(SteveA/#launchpad) and maybe write a custom col type in the future05:01
(carlos/#launchpad) ok05:03
(SteveA/#launchpad) we should also talk about the mechanics of automatically importing stuff from the "queue" later.05:04
(SteveA/#launchpad) (especially with larger files)05:04
=== wartylog [~warthylog@port49.ds1-van.adsl.cybercity.dk] has left #launchpad []
=== wartylog [~warthylog@port49.ds1-van.adsl.cybercity.dk] has joined #launchpad
=== Topic for #launchpad: lunchpad: home of the sandwich artists | fogo na bomba | "qorking along happily, with SteveA egging us on"
=== Topic (#launchpad): set by sabdfl at Tue Oct 19 11:05:38 2004
BradBcprov: btw, are we going to have something checked in today that works for difflib, etc.? Maybe you'll have to talk to SteveA about where to put what.05:06
BradBstub was bitten again too, by the looks of bug #10605:07
SteveAstub wrote a message to the list: Celso's pagetest improvements05:10
carlosSteveA: as soon as it's ready, we could look at it05:10
SteveA"""I've switched on Celso's pagetest update. If it causes trouble for any05:10
SteveAreason, just comment out the monkey_patch_doctest() line in test.py.05:10
SteveAI suspect it may need tweaking, but it would be good to dogfood it to05:10
SteveAsee how it goes.05:10
SteveA"""05:10
=== SteveA --> food
carlosSteveA: but it's really easy to do it if we have a procedure defined to execute scripts because the current interface only needs the user to click a button so the import is done05:11
BradBAh, didn't get that far along in my email yet.05:12
cprovBradB: I hope, it was already solved ...05:19
Kinnisoncprov: how's the permissions coming? Ready to do more lucille stuff?05:36
BradBis postgresql-contrib available only in universe or something?05:48
lifelessbaz 1.0 is out . ROCK.05:48
Kinnisonlifeless: coo. debs built?05:48
cprovKinnison: I'm ready05:49
=== Kinnison takes the convo to /query to avoid flooding everyone here then
lifelessKinnison: bazaar.canonical.com05:51
Kinnisonlifeless: excerrent05:52
=== Kinnison installs
Kinnisonbazaar archives are still compatible with tla yes?05:53
sabdflKinnison: baz can read tla, mirror and merge between them, but tla will barf on a bazaar archive05:54
Kinnisonoh05:54
Kinnisoncan bazaar still create tla compatible archives?05:54
BradBWhat did you guys do to install postgresql-contrib? I'd rather avoid universe if possible, but I'm getting the hint that it might only exist in there.05:55
KinnisonIIRC it is in universe05:55
elmoBradB: it does, just add universe to your sources.list temporarily, install it, remove it agani05:55
elmoagain too05:55
lifelessKinnison: make-archive --tla05:56
Kinnisonlifeless: okay; ta05:57
lifelessbut honestly, switch your friends to baz.05:58
Kinnisonarch-pqm and viewarch are happy with baz?05:59
BradBwoo, database make output rocks now06:00
Kinnisonthe pqm on chinstrap is using baz now?06:00
salgadowhat can be causing this kind of errors when running "cd database/schema ; make": 06:02
salgadopsql:../sampledata/current.sql:10: ERROR:  plpython: function "valid_name" failed06:02
salgadoDETAIL:  exceptions.NameError: global name 'True' is not defined06:02
Kinnisonpython2.1 ?!06:03
BradBheh!06:06
salgadono, i'm running 2.306:06
lifelessKinnison: arch-pqm will use baz if its called tla. likewise viewarch06:06
Kinnisonlifeless: and none of the UI they use has changed?06:06
lifelesswell, pqm needs to be taught that tag == branch06:06
lifelesschinstrap has a hacked tla that supports baz archivges, so it will read from them happily.06:06
Kinnisonright06:07
BradBsalgado: The odds look fairly high that your pgsql was compiled with a pre-2.2 version of Python.06:07
BradBsalgado: are you running Ubuntu?06:07
salgadoBradB, you're right. our postgresql is a backport running on a woody box.06:08
salgadoit probably was compiled with python2.1, the default in woody(I guess)06:09
KinnisonWhat's the SQLObject magic for a foreign key collection thingy?06:16
BradBKinnison: A MultipleJoin, you mean?06:18
=== BradB & # lunch
Kinnisonpossibly I do06:23
KinnisonI'll explain what I want when you return06:23
dilysMerge to thelove@canonical.com/bazaar--devo--1.1: merge 1.0 release improvements (patch-1)06:48
kikoBradB, salgado and I have a problem with some stub-sql in trusted.sql -- know anything about this06:56
=== SteveA [~steve@adsl-213-190-44-43.takas.lt] has joined #launchpad
BradBkiko: Depends on what problem you're having. :)06:59
kikoour webserver's pgsql runs python2.1, and it dislikes True, False (of course)07:00
BradBkiko: What did you want to know?07:02
kikowho changed that, and when, and if I can hack around it?07:02
kikoand also07:02
kiko(salgado, paste traceback in)07:03
salgadopsql:../sampledata/current.sql:10: ERROR:  plpython: function "valid_name" failed07:03
salgadoDETAIL:  exceptions.NameError: global name 'True' is not defined07:03
BradBstub presumably. How much effort would take to run something newer than 2.1 on your webserver's pgsql?07:03
kikoit's a problem -- we're running a backport07:04
kikobut that's not all07:04
kiko(salgado, paste the other traceback)07:04
BradBI think it's reasonable for these scripts to assume at /least/ 2.2 (if not 2.3.x)07:04
kikoelmo_away, this concerns you as well, btw07:04
salgado  File "fti.py", line 13, in ?07:05
salgado    from canonical.lp import dbname, dbhost07:05
salgado  File "/home/salgado/devel/launchpad/lib/canonical/lp/__init__.py", line 9, in ?07:05
salgado    from zope.i18n import MessageIDFactory07:05
salgadoImportError: No module named i18n07:05
elmo_awaykiko: hmm?07:05
kikoelmo_away, it appears that launchpad now requires zope on the database server machine as well?07:05
SteveAthat's interesting.07:05
SteveAmaybe it just needs zope.i18n07:05
kikoI mean, it might not concern you, it might "interest" you. :)07:05
SteveAor maybe we could make do with just standard i18n for stuff that is supposed to be on the database server machine07:06
BradBsalgado: try importing zope.i18n on the command line.07:06
SteveAI mean, I doubt we'd want to internationalize that kind of server-side stuff anyway 07:06
BradBkiko: I think the best solution, even if not entirely simple, is for you guys to upgrade your pgsql to a newer Python. supporting a 2.5 year old python version is not something i'd think we'd want to prioritize.07:09
kikoBradB, dude, it's a database server, not a desktop box07:09
BradBkiko: particularly when everything else will probably soon(ish) require Python 2.4.07:09
kikoI don't disagree for application code, but for database code?07:10
BradBkiko: you'll want to develop in an environ that mimicks as closely as possible the deployment scenario. 2.1 is far from that.07:10
kikoyou're hardly being helpful07:11
kikothis is a box the whole office uses; upgrading is not a trivial task07:11
kikoI don't believe we should be forced to upgrade because someone wants to use True and False instead of 1 and 0 for the very small and simple code that runs in the database server07:12
kikoand I don't believe we should need to have zope.i18n installed on it either, though I'm willing to be more flexible on that point07:12
kikodoes this make sense?07:12
kikosalgado, what exactly requires zope.i18n?07:14
BradBkiko: I think stub has big plans for plpython (i.e. wants to use it fairly extensively over the long haul.) Maybe he has a better idea; maybe he's willing to leave out two major releases worth of features when he's writing plpython code.07:14
salgadokiko, "make" on database/schema imports from canonical.lp, and it imports zope.i18n and zope.interface07:15
kikoindeed07:15
kikowhy does make import canonical.lp?07:16
salgadodbname, hostname07:16
kikooy07:16
kikohmmm07:16
kikocould that be avoided?07:16
=== kiko curses this dependency hell
BradBI've had a bug filed on that one for a long while. :) Noone's bothered to fix it yet.07:17
salgadodbname = os.environ.get('LP_DBNAME', 'launchpad_ftest') -> maybe this should go somewhere else?07:17
BradB(i.e. making the db configurable in exactly one place)07:17
kikosalgado, yes, how about moving that around07:18
BradBkiko: keep in mind also (I'm saying this without knowing exactly how stub intends to use plpython), that if you don't upgrade your Python, we can't use sqlobject in any of those functions.07:19
SteveABradB: spiv was tasked to get these things into launchpad.conf while I was away on vacation.  He got too caught up with shipit, and didn't do that.07:19
SteveAso, the make stuff shouldn't be using canonical.lp, but should be using zconfigure to read in launchpad.conf07:19
kikoBradB, sqlobject? inside the database?07:19
=== kiko boggles
salgadokiko, looks good to me. 07:20
BradBkiko: I'm also saying that without knowing if or how restrictive plpython is about Python code, but if it allowed, I could certainly imagine cases where I'd want to use sqlobject.07:20
kikoCRACK07:20
BradBkiko: and well, <insert module that depends on > 2.2 here> as well.07:20
BradB>= 2.2 in any case07:21
SteveAlifeless: can someone make pqm send the full output, not just the last 20 lines, in pqm failure messages?07:22
lifelessSteveA: it does if you ask for it.07:23
lifelessbut the emails can get very big, and most sensible build systems fail in that space.07:24
SteveAI'd like a 300 line limit instead of a 20 line limit07:25
lifelesswhy not just have your submit script send debug every time? I can mail you a copy to do that easily.07:27
SteveAI guess you meant something different than what I understood by "it does it you ask for it"07:29
SteveAplease send me what I need to know, and I'll alter my script07:29
lifelessyou need to send debug as a line in your signed content.07:52
lifelessi.e echo -e 'debug\nstar-merge...  in your submit script.07:53
SteveAok07:54
lulunight all :o)07:56
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
dilysBug 1953 resolved: Turn on ZODB for Launchpad08:01
dilyshttps://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=195308:01
dilysBug 2034 resolved: allow 'count' method of SelectResults in SQLOS08:01
dilyshttps://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=203408:01
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Some code review of database/product.py (patch-913)08:03
BradBlifeless: eh08:04
dilysBug 2098 resolved: improve Launchpad debugging modes08:04
dilyshttps://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=209808:04
BradBbradb@oxygen:~/launchpad $ tla star-merge $rocketfuel08:04
BradBarch_archive_connect: attempt to connect to incompatible archive08:04
BradB  archive: rocketfuel@canonical.com08:04
BradBWas that intentional?08:04
BradBi mean, i know we should be using baz and all, but... :)08:05
lifelessBradB: oh yeah, run baz :)08:05
=== lifeless emails launch
=== silbs [~sbsm0084@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
BradBlifeless: A link to where we can read about getting, installing and using it would be particularly useful.08:05
SteveAwho knows about the code in database/product.py ?08:06
SteveAthere are two methods in there that need some attention.  one clearly doesn't work as advertised.  the other needs a better docstring.08:06
SteveAthe method fullname(), lines 91 to 109 doesn't do what it says it does.  It should have a test, and then it should be fixed.08:07
BradBSteveA: fullname was mentioned in a checkin message by stub. It's what he's using to show the product name in the bug listing, but it does some silly magic (which it sort of has to, unfortunately, to avoid showing products called "ubuntu ubuntu")08:08
SteveAthe method bugsummary(), lines 248 to 273.  I'd like to see an addition to its docstring showing what the typical output of the method is.  That is, what a typical dictionary that it outputs will look like.08:08
SteveABradB: it plainly doesn't work.08:08
SteveA        prod = self.name08:09
SteveA        proj = self.name08:09
SteveA        if prod == proj:08:09
SteveA            return prod08:09
SteveA        else:08:09
SteveA            return '%s %s' % (proj, prod)08:09
BradBSteveA: yeah, that's the silly magic i was talking about :)08:09
SteveAbut, it says "prod = self.name"08:09
SteveAand it says "proj = self.name"08:09
BradBfair point :)08:09
SteveAso, `prod == proj` is always true08:09
SteveAwhat it does looks reasonable to me08:10
SteveAI mean, what it is supposed to do08:10
BradBsuch is the hazard of code with no tests :)08:10
lifelessBradB: deb http://bazaar.canonical.com/releases/1.0/debs ./08:11
BradBlifeless: do i need to do anything to my current working tree to Make It Work?08:13
dilysNew Malone bug #109: "Fix fullname() database/product.py, with test", submitted by Steve Alexander08:19
dilyshttps://dogfood.ubuntu.com/malone/bugs/10908:19
SteveAwhen I add a bug, the next screen doesn't tell me "added as bug number 109"08:19
dilysNew Malone bug #110: "Better docstring for bugsummary()", submitted by Steve Alexander08:23
dilyshttps://dogfood.ubuntu.com/malone/bugs/11008:23
BradBSteveA: there's a bug filed on that already08:23
SteveAok.  would you mark it as a dupe?08:25
BradBSteveA: I meant on what you said about "the next screen doesn't tell me..."08:26
SteveAoh, right08:26
SteveAcool08:26
BradBHas baz made my life easier by collapsing tla tree-lint, tla changes and tla star-merge into one command? If so, what's command is that?08:28
BradBI know somebody's already scripted this, but I was hoping that got folded into the tool.08:28
SteveAdaf, carlos: hi09:00
carlosSteveA: hi09:00
dafhi09:01
SteveAhave you seen bill and ted's excellent adventure?09:01
SteveAit is a film?09:01
SteveAit is a film.09:01
=== SteveA gets his punctuation in order
dafyes09:02
SteveAcarlos: ?09:02
carlosyes09:03
SteveAin the film, bill and ted inadvertantly found an advanced future civilization that is guided by the principle "Be excellent to each other."09:03
SteveAwe have all turned up on time for this meeting, as we agreed earlier today.  So, we have been excellent to each other in a small way.09:04
carlosi mean, I didn't saw it, but I'm here :-P09:04
SteveAthanks guys.09:05
SteveAanyway, on with the meeting09:05
daf:)09:05
SteveAcarlos has been making our po and pot data fit into the database using base64 encoding09:05
carlosand it's working now with po and pot files09:05
carlos:-)09:05
carlosbut the UI is ugly09:06
dafah, I see09:06
SteveAok.  let's see if we have the essentials of rosetta done, and what we need to do next.09:06
dafwas there a problem with storing the binary data directly?09:06
SteveAI'll ask some questions, and I'd like both of you to give me a simple answer of "yes" "no" or "it isn't as simple as that"09:06
SteveAwe'll see if everyone agrees about these things.  okay?09:07
carlosok09:07
SteveAthe problem with storing the binary data directly is that sqlobject doesn't really support it well09:07
SteveAand, seeing as it is binary data, and we won't need to search it or anything like that, base64 encoding is okay09:08
dafagreed09:08
SteveAokay, here we go:  Let's assume that the very latest code is on dogfood.  I have a pot file for one of the products that is in dogfood.09:09
SteveACan I log in, go to a form, and upload it?09:09
carlosyes09:09
SteveAI have a po file for one of the products.  can I upload that?09:09
carlosyes but you will need a pot file imported or you will not be able to translate it09:10
SteveAokay.09:11
SteveAif I have a pot file and a po file, do I import them one at a time?09:11
carlosnot yet09:11
dafwhat will happen if you try and import a PO file before a POT file, I wonder?09:11
carloshmmm09:11
carlossorry, I misunderstood it.09:11
carlosyes you need to import one by one09:12
carlosdaf: nothing09:12
carlosI mean, nothing wrong09:12
carlosit should be imported09:12
carlosbut rosetta will show 0 strings to translate until you import a pot file09:13
carlosif it fails, is a bug09:13
dafright, yes, makes sense09:13
dafSteveA: I think the answer to your question is yes, you import them one at a time09:13
SteveAokay.09:14
SteveAit is a common thing to want to import a pot file and several po files?09:14
SteveAI would think that it is.09:14
SteveAif I'm importing an existing application.09:14
dafagreed09:14
carlosright09:14
SteveAI'm just looking at what is in zope309:15
SteveAhow can I do a 'find' command that will find pot and po files?09:19
daffind -name '*.po' -o -name '*.pot'09:19
SteveAhmm, need to exclude .svn directories too09:19
SteveAhere's what I'm thinking: the output looks like this09:19
SteveA./en/LC_MESSAGES/zope.po09:19
SteveA./ru/LC_MESSAGES/zope.po09:19
SteveA./pt_BR/LC_MESSAGES/zope.po09:19
SteveA./fr/LC_MESSAGES/zope.po09:19
SteveA./es/LC_MESSAGES/zope.po09:19
SteveA./de/LC_MESSAGES/zope.po09:19
SteveA./it/LC_MESSAGES/zope.po09:19
SteveA./zope.pot09:19
SteveA09:19
SteveAif I stick that into a .tar or .zip file, and upload it, would rosetta be able to do the right thing, and queue the pot and po files for import?09:20
SteveAis this a common layout?09:20
=== carlos hopes that SteveA is not thinking on get a tar.gz with those directories and we import that...
dafSteveA: that layout is uncommon09:20
SteveAokay.  no point writing code just to handle this then.09:20
carlosSteveA: no, the common is a directory with a .pot and lots of .po files09:20
daf(in fact, it's the first time I've seen it :))09:21
carlosdaf: I think php does the same09:21
dafok09:21
SteveAanyway, we probably need a way to easily upload a bunch of po and a pot file all at once.09:21
dafabsolutely09:22
SteveAenough talking of the upload.  let's talk about importing.09:22
SteveAcan I go to a page and see the "queue" of things waiting to be imported?09:22
carlosyes09:22
SteveAdoes it show me who uploaded them?09:23
carlosyes09:23
SteveAand what product and language they are?09:23
carlosyes09:23
SteveAthat's great.09:23
carlosand the date09:23
carlosof the import09:23
dafcarlos: good work :)09:23
carlosdaf: thanks09:23
SteveAwe need to talk about how to do a script that can be run from crontab or as a long-running process, to import things.09:23
carlosSteveA: the only problem I see with it is the "double import"09:24
dafsuch a script would in theory be very simple09:24
carlosoutside that problem, it should be easy09:24
SteveAwould it be possible to have a script that does as follows:09:25
SteveA1. go to http://..../+upload-next09:25
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: change bug # wording to clarify where the 'missing bugs' are, to close bug #97 (patch-914)09:25
SteveA2. response is immediate (using something called request.response.write()) and gives the id that will be uploaded09:26
SteveA3. a bit later, the script goes to http://..../+upload-next?last=$ID09:26
SteveA4. the server looks to see if $ID has finished importing (darn, I meant "import" not "upload" earlier), and if so, starts the next import and writes out its id09:27
SteveA4. (continued) if not, it gives an error09:27
SteveA5. the script waits a bit, and tries again09:27
carloshmmm09:27
SteveAdoes the database schema support this?09:27
dafwhich part does the importing? the server or the script?09:27
carloshow do we handle that life cycle?09:27
SteveAthe server does the importing.09:28
carlosI thought that launchpad objects die after the request...09:28
SteveAof course, we could have a script that just does the importing09:28
SteveAthat might be simpler09:28
SteveAmake it a long-running script09:28
SteveAthat does a new transaction for each import09:28
dafa daemon?09:28
SteveAcarlos: launchpad objects do that.  however, there is a way to write data out to the client (browser for example) before the request is finished with being processed09:29
SteveAdaf: like a deamon, yes09:29
SteveAbut, I'd suggest just a script that doesn't exit09:29
dafI think having the imports done by the server would be easier to implement09:29
SteveAI'm thinking that actually a script would be simpler09:30
carlosSteveA: I know that, but I don't see how will controll launchpad if the import is running or not09:30
SteveAhow about this instead:09:30
carlosif we use a field in the database and the script dies for any reason we could get a lock09:30
dafSteveA: let's DTSTTW09:30
carlosdaf: acro DTSTTW09:30
carlos;-)09:31
SteveAcarlos: I don't understand what you mean.  If the script dies, then the connection to the database is broken, so the locks are broken.09:31
SteveAwhat would you guys like to do?09:31
dafDo The Simplest Thing That Works09:31
SteveAI think that's going to be a script09:31
dafwhich does the import?09:31
dilysMalone bug #97 fixed for package malone: Bug count is bogus?09:32
dilyshttps://dogfood.ubuntu.com/malone/bugs/9709:32
SteveAthat says: while True: import next if there is one else wait a few minutes.09:32
dafor tells the server to do the import?09:32
carlosSteveA: the problem is that I don't see how the launchpad server could do it without executing a thread outside the web server09:32
SteveAcarlos: I can explain how to do that.  however, I think a script is simpler.09:32
dilysMalone bug #99 fixed for package malone: double-spacing in bug comments?09:32
dilyshttps://dogfood.ubuntu.com/malone/bugs/9909:32
carlosok09:32
carlosSteveA: will ask in Matar (if I remember it :-P)09:33
dafSteveA: which are you proposing?09:33
SteveAscript09:33
SteveAlong-running script09:33
SteveAwhile True:09:33
SteveA    if anything_to_import():09:33
SteveA        import it()09:33
carlosit's ok for me09:33
SteveA    else:09:33
SteveA        sleep(1 minute)09:33
dafok09:33
dafhow does the "import it()" work?09:33
dafit downloads the file from the server?09:34
SteveAdownloads?09:34
dafand uses a zopeless transaction to import?09:34
SteveAit performs database queries09:34
SteveAyes09:34
SteveAit makes a query to get the file out of the database, base64decodes it09:34
dafno, silly me, it can get the data from the database itself09:34
SteveAprocesses it, and does stuff to put its parts in there09:34
SteveAwrite appropriate flags to remove the file from the queue09:35
dafit must import POT files before PO files09:35
SteveAand then commits a transaction09:35
SteveAthat's a function of "what is the next thing to import" I guess09:35
dafyes09:35
SteveAokay.09:36
SteveAso, who will write this script?09:36
carlosI could, it's an extension of my current code09:36
dafthere's the script, and there's also the /+next-upload interface09:37
SteveAok carlos.  you write the script.09:37
SteveAI don't think you need the /+next-upload thing09:37
carlosthat will be a method inside the script now, right?09:37
SteveAwe already have a page that allows us to see what is uploaded and pending import09:37
dafok09:38
SteveAnext, I'd like to talk about what else rosetta needs09:38
carlosSteveA: should I remove the "import" button from that form?09:38
SteveAI'm going to be doing a demo in a week and a half09:38
SteveAand I want it to be slick!09:38
SteveAcarlos: if it works, then no, don't09:38
dafcarlos: which form?09:38
carlosSteveA: it will break with long files, remember it09:38
SteveAas it might be useful to get something imported in a hurry.  Do concurrent imports work?09:38
SteveAhmm, okay, yeah, remove it09:39
carlosdaf: the one at http://localhost:8086/rosetta/+uploadqueue09:39
SteveAbetter for it not to be there, I guess09:39
dafwell09:39
SteveAremove remove remove.  less is more!09:39
carlos:-)09:39
dafI was thinking it would be useful for testing09:39
SteveArun the script for testing09:39
SteveAless is more09:39
SteveAso, I have this demo.09:40
dafyes09:40
SteveAwhile carlos is working on this script, daf, I want you to do the same demo I'll be doing09:40
SteveAtake some open source project09:40
SteveAand put it into launchpad, along with its pot / po files09:41
SteveAand translate it09:41
SteveAand get new pot and po files back out09:41
SteveAimagine you're showing a potential business client of canonical -- perhaps some african president -- this software 09:41
=== daf nods
SteveAare you still in NY?09:42
dafyes09:42
carlosSteveA: will it be in Mataro?09:42
SteveAsee if you can get mika to be an audience09:42
SteveAcarlos: yes09:42
carloswow09:42
SteveAbig audience of spanish and catalan speakers09:42
SteveAthis is rosetta's first big day09:43
SteveAso, daf, go through rosetta like you were demoing it.  don't fix anything yet!09:44
dafmake a list of problems?09:44
SteveAmake a list of things that need to be fixed or improved.09:44
SteveAyep09:44
SteveAyou've got it09:45
SteveAfirst list, then prioritize, then fix09:45
SteveAthat will help keep things focused09:45
dafright09:45
SteveAI'd like to try the same thing as you've tried.09:45
SteveAso, keep a note of your "script" 09:46
SteveAthat is, what you've done, and perhaps what you'd want to point out at various points09:46
SteveAthen I'll go through the same thing, and between us, we'll make things very slick09:46
dafsounds good09:46
daf(oooh! Python 2.4!)09:47
SteveAhow much time to work do you have before tomorrow's meeting?09:47
carlosam I included in "you"? or are you asking daf?09:48
SteveAjust daf09:48
carlosok09:48
SteveAseeing as daf and I are collaborating on the "make rosetta slick", while you're writing the script, I want to check what I should expect when, so I can arrange when I need to work on this09:49
dafI've just woken up, so I can fit in a whole day's work before the meeting09:49
daf8 hours or so, I suppose09:49
SteveAwhat can you achieve on this in a day?09:49
SteveAlet's divide up the hours among the different parts of what we're doing09:50
dafI think that depends on what problems I encounter09:50
dafI can start on it right away09:50
SteveAwe can make an estimate now of how things ought to go09:50
dafok09:50
SteveAand then you'll know when you meet problems09:50
=== carlos is requesting a merge at this moment with the upload / import work
SteveAI know for my self, unless I do this kind of thing, I may not notice when I meet a problem09:50
dafI'll need to get Carlos' changes09:50
SteveAand get sucked into it09:50
SteveAcarlos: have you merged your latest stuff into RF? 09:50
dafstart the server09:50
carlosSteveA: doing it at this moment09:51
dafadd the project/product/potemplate to the database09:51
SteveAok09:51
dafupload the template09:51
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: linkified changelogs and initial karma-gathering framework (patch-915)09:51
dafimport it09:51
dafupload some PO files09:51
dafimport them09:51
SteveAdaf: I'm going to go to sleep soon.  But, send me lots and lots of emails!  I like emails!09:51
dafI like emails too09:51
carlosmerge request sent09:52
dafcarlos: do you like emails?09:52
carlossorry?09:52
SteveAuse me as your planning whiteboard.  send me quick emails when things are going well and about what looks slick.  send me emails when you meet problems.09:52
carlosok09:52
carlosyes09:52
carlosplease09:52
carlos:-)09:52
dafgreat!09:53
carlosSteveA: is there any problem if I change the code as daf is doing the tests?09:53
SteveAcarlos: I don't think there will be a problem.09:53
carlosok09:53
BradBDo we have any status message facility in Launchpad? i want to set a status message, without simply passing status_message=foo in the URL.09:53
carlosthat could fix some of the problems he will get09:54
BradBAnd, like Plone, have it displayed in the same way on all pages.09:54
SteveAhow do you mean, Brad?  do you want a selection of standard status messages, and to refer to them with an id?09:54
SteveAis this to avoid people sending links to URLs like:  http://launchpad.ubuntu.com/malone/uploadfoo?message=All+your+base+are+belong+to+us09:55
dafcarlos: if you're changing things I might be testing, keep me informed09:55
carlosdaf: sure09:55
BradBSteveA: Possibly. I mean I want to have a "status message" that can be displayed on any given page. It might say "You are now logged in" on the login page, or "Successfully updated blah on <some date>" or "Successfully added bug # 123"09:55
BradBSteveA: Yeah, defacement-fu09:55
carlosdaf: btw, you should deactivate the automatic from addition from postgresql09:56
carlosdaf: btw, you should deactivate the automatic "from" addition from postgresql09:56
SteveABradB: we have no such thing at present.  maybe you want to design such a thing, and bring the design to the launchpad meeting tomorrow?09:56
SteveAor just implement something and tell us all about it?09:56
BradBI'll try to think of a way to implement it.09:57
SteveAor, just put together the bullet-point list of requirements09:57
BradBI was thinking utility + TAL namespace, but that might have state problems...er, no it wouldn't actually.09:57
dafcarlos: I think I saw warnings about that09:57
SteveAand we can see if these requirements fit with what soyuz and rosetta need09:57
dafcarlos: what does that mean, exactly?09:57
SteveAbut, don't be afraid of just implementing something and saying "this works for me, but it isn't ideal"09:58
carlosdaf: that you forgot a clauseTables09:58
SteveAbetter to have something crappy that works than nothing at all!09:58
BradBI'll start documenting it now.09:58
SteveABradB: that's cool09:58
carlos--- orig/lib/canonical/launchpad/database/pofile.py09:58
carlos+++ mod/lib/canonical/launchpad/database/pofile.py09:58
carlos@@ -869,7 +869,8 @@09:58
carlos         '''09:58
carlos         sightings = POTranslationSighting.select('''09:58
carlos             POTranslationSighting.pomsgset = POMsgSet.id AND09:58
carlos-            POMsgSet.pofile = %d''' % self.id, orderBy='-datelastactive')09:58
carlos+            POMsgSet.pofile = %d''' % self.id, orderBy='-datelastactive',09:58
carlos+            clauseTables=('POMsgSet',))09:58
dafoh!!09:58
carlosdaf: if you deactivate it, launchpad will break and you could fix it09:58
dafthat's what it does09:59
dafok, did you fix this particular error?09:59
carlosyes09:59
carlosit's waiting for pqm merge09:59
dafthanks09:59
carlosnp09:59
carlosSteveA: I suppose the meeting is over, right?09:59
=== carlos wants to have dinner
carlosggrr10:02
SteveAyep.  thanks rosetta team10:02
=== carlos broke the tests, the patch is rejected
carlosdaf: could you wait for it until I have dinner?10:02
carlosSteveA: thank you, see you tomorrow10:02
dafSteveA: thanks10:02
dilysBug 2019 resolved: Investigate smart linkification in Changelog10:26
dilyshttps://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=201910:26
BradBSteveA: going for the no-brain status message solution instead for now. :) surviving redirects (which is the use case here) just fried my brain.10:46
carlosdid anyone changed the postgres configuration as stub suggested?11:15
carlosI broke my postgres :-(11:15
dafno, I haven't done it yet11:17
dafis it easily fixable?11:17
BradBWorked fine for me.11:17
carlosmy postgres has died11:18
carlosand I'm not able to launch it again11:18
carloscarlos@frodo ~/Work/dists/launchpad/database/schema $ sudo /etc/init.d/postgresql start11:18
carlosStarting PostgreSQL database server: postmaster(FAILED)11:18
carlosERROR: /usr/lib/postgresql/bin/postgresql-startup: command substitution: line 146: syntax error near unexpected token `)'11:18
carlos/usr/lib/postgresql/bin/postgresql-startup: command substitution: line 146: `cat $PGDATA/postmaster.pid | head -1)'11:18
carlosI'm scared...11:19
=== carlos takes a the "fast" way, reboot hoping it's fixed then....
kikolol11:24
BradBHe's got a different postgresql-startup file than me11:25
BradBAnyone know the magic going on behind the scenes that brings me back to the bugs index page after I add a bug? Is that something Z3 somehow magically does? I can't find the applicable redirect anywhere.11:26
=== ChanServ [ChanServ@services.] has joined #launchpad
=== elmo [~james@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== Kinnison [~dsilvers@haddenham.pepperfish.net] has joined #launchpad
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
=== SteveA [~steve@adsl-213-190-44-43.takas.lt] has joined #launchpad
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
=== cprov [~cprov@200.158.100.251] has joined #launchpad
=== lifeless [~robertc@dsl-253.4.240.220.rns01-kent-syd.dsl.comindico.com.au] has joined #launchpad
=== elmo_away [~james@83.216.141.215] has joined #launchpad
=== daf [daf@muse.19inch.net] has joined #launchpad
=== mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad
=== spiv [~andrew@adsl-66-203.swiftdsl.com.au] has joined #launchpad
=== BradB [~bradb@modemcable202.193-131-66.mc.videotron.ca] has joined #launchpad
=== dilys [daf@muse.19inch.net] has joined #launchpad
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== bob2 [rob@bob2.user] has joined #launchpad
cprovlifeless: help on baz ? I'm getting INVALID SIGNATURE ON REVISION! on star-merge11:49
carlosdaf: ping11:49
dafpong11:49
carlosdaf: I'm having a really rare error with functional tests...11:50
Kinnisoncprov: did you remove tla? If so, update your .arch-params/signing scripts to use bazaar-gpg-check instead of tla-gpg-check11:50
carlosand I'm not able to commit my changes because that11:50
dafwhat's the error?11:50
carlosthe worst part is that it's outside my code changes...11:50
carlosall tests fail with:11:50
carlos raise schema.ValidationError(v)11:50
carlosZopeXMLConfigurationError: File "/home/carlos/Work/dists/launchpad/ftesting.zcml", line 9.4-9.3511:50
carlos    ZopeXMLConfigurationError: File "/home/carlos/Work/dists/launchpad/lib/canonical/configure.zcml", line 77.4-77.4511:50
carlos    ZopeXMLConfigurationError: File "/home/carlos/Work/dists/launchpad/lib/canonical/launchpad/configure.zcml", line 5.2-5.4811:50
carlos    ZopeXMLConfigurationError: File "/home/carlos/Work/dists/launchpad/lib/canonical/launchpad/zcml/configure.zcml", line 9.4-9.3511:50
carlos    ZopeXMLConfigurationError: File "/home/carlos/Work/dists/launchpad/lib/canonical/launchpad/zcml/project.zcml", line 40.411:51
carlos    ConfigurationError: ('Invalid value for', 'class', 'Module canonical.launchpad.browser has no global ProjectView')11:51
carlosRan 86 tests in 524.805s11:51
carlosFAILED (errors=63)11:51
daf?!11:51
carlosI'm not able to broke so many tests at the same time...11:51
carlosdaf: the file seems to be correct11:51
cprovKinnison: fantastic .. you got it !11:51
carlosso I don't have any idea about how could I fix it11:51
dafs/broke/break/11:51
carlosdaf: thanks11:52
dafif you "tla undo", do you still get the same error?11:52
carlosdaf: I have my changes already in my tree11:52
carloscommitted11:53
dafwooo! woo! list.sorted()11:53
dafah, hmm11:53
Kinnisoncprov: I hit that one myself last night :-)11:53
dafcarlos: is there a canonical.launchpad.browser.ProjectView?11:54
carlosyes11:54
cprovKinnison: ehe, thanks11:54
carlosthe error does not makes sense ...11:54
daf>:-/11:54
=== carlos tries to see the first error
carlosthe terminal buffer is not big enough, need to rerun it11:55

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