dafthanks a lot for your hard work recently12:00
debonzidaf, if I have a variable inside a zpt called context/foo and lets supose it is a list. Is there a way to get in zpt the firt element without tal:repeate?12:01
dafdebonzi: I don't think so12:02
dafdebonzi: you have to resort to "python: context.foo[0] "12:02
debonzidebonzi, Ok, thanks12:02
dafdebonzi: or otherwise add a method to the view class to get it12:02
debonzidaf, Ill find a way.. thanks :)12:03
dafde nada :)12:03
carlosdaf: no problem. It's a pity that rosetta is not only yet :-(12:08
=== elmo_ [~james@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
dafcarlos: why does the personal information form submit to ViewPOFile?12:20
carlosdaf: does it?  12:20
carloslet me check, I don't remember it now12:21
carlosdaf: it submits to TranslatorDashboard...12:21
carlosI implemented the code there 12:22
carlosabout why TranslatorDashboard... the template was pointing there, I did not changed it12:22
carlosdaf: ?12:25
dafclass ViewPOFile:12:26
daf    def editSubmit(self):12:26
daf    ...12:26
carlosthat's not the personal information12:26
carlosthat's for the plural forms editor12:26
daf        elif "SAVE-PERSONAL" in self.request.form:12:26
kikocarlos, GO SLEEP12:26
carloskiko: I did all pending tasks, let me end the conversation :-)12:27
dafkiko: he needs to answer this question first :)12:27
carlosand I will go to sleep12:27
carlosdaf: if you have it indide the viewpo12:27
carlosyou have a broken file12:28
carlosI have it inside TranslatorDashboard12:28
dafah :)12:28
dafI think I have a broken file, then12:28
dafI've split up TranslatorDashboard into TranslatorDashboard and ViewPreferences, by the way12:28
dafso it seems something weird has happened12:29
spivdaf: Sorry, back... use Foo.set(field1=value1, field2=value2) to clump UPDATEs into a single query, rather than one per field.12:29
spiv(I think I mention this in the SQLObjectGuide?)12:29
carlosdaf: yes :-)12:29
dafspiv: aha, thanks12:29
carlosdo you want the original code?12:29
dafI think I can work it out using a launchpad checkout12:29
=== carlos adds that to the bug report and promises kiko that goes to the bed
spivdebonzi: You might be able to do context/foo/012:30
=== spiv catches up on scrollback :)
dafspiv: nope12:31
dafspiv: it's equivalent to context.foo["0"] 12:31
spivOh, right.12:31
dafspiv: (sadly)12:31
carlosok, now it's time12:33
carlosgood night!!!12:33
carlosdaf: do we have a meeting tomorrow?12:34
dafcarlos: yes12:34
dafwill you be able to make it?12:35
dafI'm willing to make an exception in this case12:35
carlosI'm not able to sleep more than 10 hours at the same time12:35
dafok :)12:35
carlossee you12:35
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
kikosleeping sucks anyway.12:42
dafTo: daf@muse.19inch.net                                                                                                                                                   12:43
dafName: KDE                                                                                                                                                                 12:43
dafDescription:                                                                                                                                                              12:43
dafhttp://www.kde.org                                                                                                                                                        12:43
daf(somebody requested that KDE be imported into Rosetta)12:44
dafI suspect it was Dwayne :)12:44
dafspiv: I think Carlos was really tired -- he mistook you for Stewart (https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=1973)12:45
dafhe was up all of yesterday, all last night and all of today12:46
kikoas I say, sleep is overrated?12:47
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
=== debonzi see u all
=== lifeless_ is now known as lifeless
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
=== stub [~zen@c211-28-34-252.sunsh1.vic.optusnet.com.au] has joined #launchpad
=== doko [doko@dsl-082-083-141-180.arcor-ip.net] has joined #launchpad
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== limi [~limi@159.80-202-72.nextgentel.com] has joined #launchpad
lululimi: morning!11:41
=== stub [~zen@dialup-] has joined #launchpad
limilulu: morning :)11:52
lulusaw that you felt in the deployment there are things you feel are outstanding. could you mail me the problems you found. If there are any further config changes we need done, I can get Upfront to do them.11:56
SteveAspiv, elmo: any progress on getting the xml-rpc server running on rosetta.w.h.c ?11:56
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
limilulu: nothing is set up for deployment at all on the caching side11:59
limieverything was set to not cache etc11:59
luluyes - Upfront were not asked to do that. There was a decision taken that Squid would be used for cacheing for Launchpad tools and the webserver. In the meantime we are using Apache. Thanks for your help.12:00
limiPlone still needs to be tweaked before deployment, nop matter what system you use12:02
SteveAI think it is not sufficient to just turn on squid.  You need to do some configuration in plone to allow squid to cache certain things.12:02
carloslimi, lulu: Will you add the announcement mail into the news section of www.canonical.com?12:06
carlossome people asks me for a link to the announcement so they can publish it in their news website12:06
lulucarlos: will do12:06
dafthey can link to the wiki, I think12:07
carlosdaf: is the announcement there?12:07
dafyes, I think so12:07
carlosdaf: thank you12:08
carlosI'm going to have breakfast now and back to work :-)12:08
limieek, more _2f madness12:10
=== limi loves the irony of trying to use Wiki like a file system
luludaf: thanks- no point in having it in 2 places - need to consolidate what's on the wiki and what will be on web.12:14
daflulu: yep12:15
daflulu: the website looks great, by the way -- congratulations :)12:15
luludaf: thanks Daf - thanks to everyone's hard work. Needs a slick design and loads more content but that will come! :o) 12:19
luludaf: looking forward to having the Rosetta tan up there!12:19
dafme too!12:23
luludaf: howzit going?12:28
dafwe're feature-complete for the Alpha release12:30
dafwe'll do a review of the website today12:30
dafthen, once we've imported some data, we're done12:31
luludaf: do you need some of Limi's magic on the UI?12:38
daflulu: yeah, we have some bugs filed about that12:40
daf(apologies for the horrible URL)12:41
luludaf: that's ok!12:42
limiwow, that's crazy :)12:45
=== carlos checking the daf's patch
dafbasically #1949 and #1950 are pretty simple UI enhancements12:52
daf#1934 is more of a comprehensive UI review12:52
carlosgood start for today. My archive is broken12:53
dafcarlos: any idea why scripts/poimpot.py instantiates TemplateImporter/POFileImporter with a None person?01:02
carlosdaf: I fixed it yesterday before leaving01:03
carlosno idea why it was that way, but it's wrong and breaks the import01:03
carlosdaf: you should have the patch at rocketfuel01:03
dafoh, ok01:04
dafI thought I was up to date01:04
dafI fixed it locally01:04
carlosit's an easy change01:04
carlosIt's me or chinstrap connection is slooooow01:06
dafI don't think it's you01:07
dafI couldn't even connect01:07
daflooks like they were discussing it on #canonical01:07
dafit means I can't log in to rosetta01:07
luludaf: elmo can log in - just a little slow01:14
luludaf: can you log in now?01:14
=== daf tries
dafyep, it's working now01:15
luludaf: good - thanks01:15
carlosdaf: your patch works01:23
carloswe have only an UPDATE instead of 401:23
dafI thought it was 6 :)01:23
carlosbut it's still slow (as you already know)01:23
dafright, I feared as much :(01:23
carlosdaf: well, It was yesterday when I detected it, I don't remember the exact number :-P01:24
carlosI was guessing it 01:24
carlosdaf: I don't think it's the database the bottleneck01:25
carlosas we know now :-)01:25
carlosI'm going to execute the import of the .po/.pot files now that lalo has fixed a bug I detected yesterday and at the same time I will try to profile the script01:26
carlosdaf: or do you prefer to wait for the meeting in 30 minutes before start the profiling?01:27
dafno, I don't think we need to wait01:28
dafI think the bottleneck might still be in the database01:28
dafperhaps the SELECTs we're executing are slow01:28
dafI think Postgres has some tools for optimising queries01:28
carlosdaf: the selects are too restrictive01:29
carloswell, forget that01:29
carlosif it's not an index01:29
carlosif it's not using an index it could be slow01:29
dafis it using an index?01:31
carlosdaf: btw... I'm executing the same queries by hand from psql and they are really fast01:31
carlosdaf: no, that's why I told you that forget my words :-)01:31
carlosbtw, the queries are fast, and we don't have lots of queries for every msgset01:32
dafyou think it is the code then?01:33
carlosI suspect that01:33
=== carlos in profile mode
carlosdaf: could you commit your patch?01:34
carlosalthought it's still slow, I think it's better if we do it that way01:34
dafI'm in the middle of something right now01:38
daffeel free to apply and commit it yourself01:38
=== ddaa [~david@nemesis.xlii.org] has joined #launchpad
=== debonzi [~debonzi@] has joined #launchpad
=== cprov [~cprov@] has joined #launchpad
stubIt is quite possible the database is a bottleneck - there has been no optimization done atm. If you identify columns that need indexes, let me know.02:02
carlosyes, I was wrong, top let's you see that postgres has more than a 80% of my CPU02:05
carloslifeless, stub: I sent yesterday two changes to the DB schema, could you review them?02:10
lifelesssomeone added patch-1-08 and conflicted with me :[02:14
lifelessI thought only the nazi was meant to add patches to the schema ?02:14
carloslifeless: you are true02:14
stubThat was me, not letting go ;-)02:14
carloslifeless: you are right :-P02:14
=== lifeless larts stub
=== lifeless larts stub
=== lifeless larts stub
=== lifeless larts stub
=== lifeless is done now
stubThe larting? I hope so02:15
=== stub bleeds
carlosdaf: meeting?02:17
carlosdaf: or are we waiting for lalo?02:17
dafcarlos: I've no idea whether lalo will turn up02:19
dafSteveA: around?02:19
daflifeless: is that URI syntax correct?02:20
lifelessdaf what?02:20
carlosok, then if you want we could do the meeting.02:20
daflifeless: see my last email to the launchpad list02:20
stubdaf: If you get it working, please make a canonical.lp.connect method - I don't want to remember the syntax if I can help it :-)02:20
spivdaf: The syntax is an SQLObject thing.02:21
dafstub: well, dbhost is '' at the moment, so it will work02:21
lifelessdaf: not in production its not.02:21
lifelessthats why dbhost is there.02:21
daflifeless: exactly02:21
lifelessis //host/stuff02:21
dafthat's why I'm asking :)02:21
dafspiv: is it postgres://host/dbname?02:21
spivdaf: Don't know :)02:22
dafstub: how do we identify columns that need indexed?02:22
daf* indexes02:22
carlosdaf: the ones that are used often02:24
carlosto access data02:24
dafhow do we identify those?02:25
daflooking at Postgres logs?02:25
carlosdaf: no, looking at the queries02:26
carlosthe WHERE clause02:26
carlosor looking at the logs if you prefer02:26
carlosthe selectBy and things like that02:26
carlosfrom the sqlobjects02:26
dafwell, how often they're referred to in the code and how often they are queried in the database are two different things02:27
carlosdaf: true, but the import script (for instance) is executed many times02:28
carlosso we can improve those first, rosetta does not have problems (yet)02:28
carlosstub: a unique key is also an index right?02:29
carlosso we have already some "optimizations"02:30
carlosand it's still slow02:30
stubdaf: If a column appears in a WHERE clause (or in a SQLObject.select keyword argument) it probably needs an index02:30
daflifeless: thanks02:31
daflifeless: where did you find it?02:31
lifelessI figured it out when we setup launchpad in production on macquarie02:32
stubdaf: If you turn on postgresql logging of SQL commands and watch the file, it is often obvious what queries are chewing up the time02:33
dafstub: ok, thanks -- we'll make a list and let you know02:33
stubOh..... indexes won't be used after you import a load of data until you ANALYZE. This might be the problem.02:34
stub(cause PostgreSQL thinks the tables have only a few rows and it isn't worth using them - analyze updates these stats)02:35
carlosstub: yes, that could be the problem02:35
carlosstub: any way to improve it?02:35
stubpsql -d launchpad_test -c vacuum analyze02:35
stubpsql -d launchpad_test -c 'vacuum analyze'02:35
carlosstub: will it work while the database is being used (adding more rows?)02:36
carlosthat will fix a part of the problem02:36
stubJust slows things down a bit while it is running :-)02:36
carlosstub: any way to do it automatically or every X inserts?02:37
carlosbecause we are importing about 1000 or 2000 new rows02:37
carlosand we lookup that table with every addition02:38
stubYou generally run it from cron, or after you have made significant changes (% wise, not number of rows type things)02:38
stubIf you have 10,000 rows and add 1000, it won't make any difference. If you have 0 and add 1000, it will02:38
carlosstub: the field we use is a string and it's a unique key and should be indexed because the WHERE clause ask for it02:39
dafso VACUUM ANALYZE will lead to an immediate improvement, or we need to define indexes and VACUUM ANALYZE?02:39
stubIf you know the query that is slow (eg. select foo from bar), run 'explain select foo from bar' in psql. You get some confusing output, but if you see Seq Scan it means it is slow (full table scan).02:39
carlosdaf: the VACUUM sentence is to update the index02:40
carlosstub: ok02:40
stubdaf: In this case, probably immediate improvements since the indexes are likely already there (primary keys etc).02:41
stubPlease don't put any ANALYZE commands in your scripts, unless they are scripts that load sample data for development btw - prod will do this via cron02:42
carlosstub: what happens if it's a big transaction with lots of inserts and queries against those previous inserts?02:43
carloswe are talking about 1500 INSERTS or UPDATES 02:45
stubcarlos: On production, it probably won't make any difference unless you are changing a significant % of the rows in the table (say - 30%). 02:45
carlosno, with every new import, the proportion will be smaller02:46
stubSo does the vacuum analyze speed things up in this case?02:47
carlosno, it's still slow02:48
carlosperhaps it helped02:48
stubDo you know the query that is running slow?02:48
carlosbut I'm still importing the same .po file with 1500 strings02:48
carlosstub: no02:48
dafcarlos: did you time it?02:48
dafcarlos: "time python poimport.py"...02:49
carlosdaf: no, but I think it started about 45 minutes ago02:49
stubI thought we were talking seconds... not minutes!02:49
dafI was thinking more along the lines of importing one file twice, once before the analyze, once after02:50
carlosstub: even hours :-)02:50
=== carlos laughts because don't want to cry
stubsomething else is really screwy. Look at your postgresql log file to see what queries are being run02:51
stub(preferably after turning that logging feature on...)02:52
carlosstub: I did and the queries executed by hand were fast02:53
=== carlos testing a small .po file
carlosreal    0m44.759s02:53
carlosuser    0m5.635s02:53
carlossys     0m0.335s02:53
carlosa .po with 77 messages02:54
stubStill worth a 'tail -f' on the log during a run - might just be qualtity of queries02:54
carlosand a reimport test of the same .po file:02:56
carlosreal    1m26.643s02:56
carlosuser    0m5.238s02:56
carlossys     0m0.334s02:56
carlosstub: I will test the import of a .po file with only a msgid so I get all queries we do to import it02:57
carlos2004-09-16 15:01:09 [6093]  LOG:  unexpected EOF on client connection03:01
carlosis it normal after the script ends?03:01
carlosshould we execute anything to close the connection?03:01
stubconection.close() is nice03:02
dafcarlos: is this with poimport.py03:03
carlosdaf: ye03:04
dafhmm, that should be closing the transaction03:04
=== daf will be out for 10-15 minutes
dafcarlos: shall we have the meeting at 13:30?03:07
carlosdaf: could we move it for later then?03:07
carlosdaf: I will have lunch at that time03:07
dafI have a meeting with the Soyuz guys then03:08
dafperhaps we could do both in parallel03:08
carlosdaf: we could delay it more if you want03:08
carlosdaf: I have work to do 03:09
carlosso I'm not blocked for the meeting03:09
dafcarlos: in future, can you attach big files to Bugzilla rather than pasting them? :)03:09
dafok, see you later :)03:09
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
cprovdaf: meeting in ten minutes ?03:50
dafcprov: hi03:50
dafcprov: might have to delay by 10 minutes or so03:51
SteveAhi daf03:51
dafhi Steve03:52
SteveAso, some things are running really slowly in rosetta?03:52
dafspecifically, the import03:53
dafon my laptop, about 1.5 minutes to import a 512-message set PO file03:53
dafthe server is slow also03:53
cprovdaf: no problem, I and debonzi are going to kiko's place, 10 minutes will be enough, see you later :), tks03:54
dafwe have an open bug about it, which has some discussion about the problem03:54
dafcprov: ok03:54
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
kikoare we launching?03:55
kiko(or are we keeping radio silence)03:56
dafkiko: I'm going to be a bit late03:57
kikodaf: you heartless man03:58
debonzidaf, see u in some minutes03:59
debonzikiko, 10 min I'll be there03:59
=== debonzi running
carlosdaf: 1.5 minutes for a 512-message set PO file is not too much time04:11
carloswe should improve it, yes, but it's not bad04:11
carlosfor me it takes much more time04:12
SteveAcarlos: what is the usual range of sizes for a po file?04:17
=== cprov [~cprov@200-206-134-238.async.com.br] has joined #launchpad
=== debonzi [~debonzi@200-206-134-238.async.com.br] has joined #launchpad
carlosSteveA: I think we could say between 1500 - 2000 for non trivial applications04:18
carlosSteveA: http://l10n-status.gnome.org/gnome-2.8/es/desktop/index.html04:19
kikoare we on?04:19
carlosseems like most gnome applications have less than 500 strings04:20
carlosbut we have some with > 1500 and evolution with > 400004:20
carlosif it's a text or trivial graphical application < 500 is the normal, a complex graphical application > 150004:21
cprovdaf: just say when you are ready ...04:23
dafok, back04:23
kikoah, good.04:24
dafcarlos: but if you have 30 languages, then importing that one product takes 45 minutes04:24
carlosdaf: that's perfect, I'm taking 45 minutes for only one .po file!!104:24
dafcarlos: really?!04:25
carlosdaf: I'm going to do real test with time now04:25
carlosbut I think soi04:25
dafcarlos: which PO file?04:25
dafkiko: ready when you are04:25
kikocprov: can you paste in some urls for daf to check out where we want to fit the data?04:26
cprovkiko: yep, one minute 04:26
kikodaf: some open questions first.04:26
cprovdaf: first, can you update https://rosetta...04:27
kikodaf: do translations for a certain package have a "lifecycle"?04:27
cprovdaf: the DB too, please :)04:27
kikodaf: i.e. do they start as open and then go through a review and closing process?04:27
dafkiko: they have a lifecycle04:28
kikodaf: what states?04:28
dafkiko: https://www.warthogs.hbd.com/RosettaTranslationStates04:28
cprovdaf: aha04:29
kikodaf: what do you think makes sense to display from the soyuz side of things, related to:04:30
kiko  - source packages04:30
kiko  - people04:30
kiko  - distribution04:31
kiko  - distribution release04:31
kiko(assume distro and distro release are just a group of packages)04:31
dafwell, for source packages, distributions and releases, you could show translation statistics for a language04:34
dafyou could show a pan-language translation statistic, but I don't think that's very useful04:34
daffor a person, not sure04:34
dafwhat sort of information about people does Soyuz currently show?04:34
dafcprov: server should be up now04:35
kikodaf: can we get this sort of statistic ready-made from rosetta?04:35
dafkiko: there are methods for statistics in th Rosetta interfaces04:35
dafkiko: but you will need to map source packages to projects04:35
kikodaf: also, is it interesting to show "open" or "pending" translations for a specific source packages?04:35
kikodaf: how would that be doable?04:35
dafwhat do you mean by "open" and "pending"?04:36
cprovdaf: just have a look, at first, on ...soyuz/distros/ubuntu04:36
kikoI'm not sure -- perhaps something that indicates quickly that a certain package is "in need of" translations in certain languages.04:36
kikodaf: I'm thinking of something that will entice the soyuz user to hop into rosetta.04:37
cprovdaf: It is the Distribution Main Page, we want to show, by Translation link (+translation) a set of translations informations . what do you think we can show ?04:38
dafcprov: I see it04:38
dafkiko: hmm04:38
spivkiko: We can map SourcePackages to Products via the Packaging table, btw.04:39
cprovdaf: so, do you have nice ideas ?04:39
dafif you have information about what languages a user speaks, then you can give them status of that package in those languages04:40
kikospiv: ah, that is interesting indeed.04:40
kikospiv: is that an easy query? In reality I want to get from a sourcepackage to a project.04:41
kikodaf: neat idea. but the user doesn't specify anywhere what language he speaks04:41
kikodaf: given a source package, for instance, can we provide a direct link that says "translate this package (using rosetta)"?04:42
kikoor help translate this package.04:42
carloskiko: we have it from rosetta04:42
dafkiko: Rosetta stores information about a user's languages04:42
dafkiko: and you can quite easily get that information04:42
kikodaf: ah, cool. but is the user the same user as a soyuz user? :04:42
spivkiko: I think so: select Project.id from Project where Project.id = Product.project and Product.id = Packaging.product and Packaging.sourcepackage = %d;04:42
carlosdaf: https://rosetta.warthogs.hbd.com/rosetta/prefs04:43
dafkiko: yes04:43
kikospiv: and with the project ID we can grab translation data, I assume?04:43
kikodaf: cool. jotted down.04:43
spivAsk daf :)04:43
carloskiko: https://rosetta.warthogs.hbd.com/rosetta/prefs04:43
spivAlthough I suspect product is more useful to them (which is even simpler, if so)04:44
carlosdaf should know about it already04:44
dafcarlos: yeah, I think I've seen this page before04:44
kikodaf: don't you feel we should have a centralized "user central"?04:45
dafoops, looks like I broke the translator dashboard04:45
dafkiko: yeah, that's something we should be aiming for04:45
kikoI am bothered by the given name and password fields here that will need to be done in soyuz as well.04:45
kikodaf: but no effort towards that has started. that's bad.04:45
=== spiv agrees
carloskiko: that's a temporal solution so we can release the alpha04:46
carloskiko: we work on the person table so it's the same for all launchpad04:46
spivAt the bare minimum, we should be aiming to re-use widgets between the soyuz/rosetta/malone people prefs pages, I think.04:46
dafwhat happened to widgets?04:46
kikospiv: we need to use the same user data pages, I'm pretty sure. though under those you could have app-specific preferences if it made sense.04:47
dafkiko: it would be easy to link to Rosetta pages for products04:47
kikospiv: I tend to think that languages are a "personal" configuration thing that isn't rosetta-specific.04:47
spivkiko: I think we'll need app-specific prefs, but I think I'd prefer to re-use whole pages as well.04:47
spivkiko: Right, not to mention generic stuff like name, passowrd and email address...04:47
kikodaf: okay, we'll start by doing that, I think then.04:47
dafso, you have a sourcepackage04:48
spivkiko: For products, the query I gave above gets even simpler.04:48
dafyou get the products for the sourcepackage04:48
kikospiv: do you think you could get us some of this stuck in the database modules and then post a quick message to lp?04:49
daffor each product, you link to /rosetta/projects/${product/project/name}/${product/name}04:49
spivkiko: Ok.04:49
kikodaf: what about those statistics, can we obtain those by just providing a product or group of products, or do we need to do more bit-scrubbing?04:50
dafkiko: well, it depends04:50
dafyou can easily get a statistic for a (product, language) combination04:51
dafand you can easily make a pretty graph for it04:51
kikoah, that's killer.04:51
kikodaf: any howto or example code?04:51
dafit's knowing which language to use that's the problem04:51
kikodaf: and for a group of products, this becomes harder?04:51
dafyou *could* display all languages, but that would get very big04:52
spivSo, I'm expecting distributions will have a set of languages that they care about.04:52
dafkiko: well, you could average the stats across groups of products04:52
kikospiv: ah, but the database says nothing of that :)04:52
dafspiv: could be, but what if that set is very big?04:52
spivkiko: Right :)04:52
kikodaf: well, we can choose the user's preferred languages.04:53
dafkiko: right04:53
spivdaf: Good point.04:53
kikothat's already a good compromise imo.04:53
dafkiko: and fall back to a simple list if they haven't got any04:53
kikodaf: so we want example code that uses these stats. name a module!04:53
spivAnd perhaps there will be multiple sets -- i.e. "we want 100% english, french, spanish, 95%+ for ...."04:53
dafkiko: look at canonical.rosetta.interfaces04:54
spivWhich is something to figure out later, but just a thought to keep in mind :)04:54
dafkiko: the *Count methods is what you want04:54
kikodaf: no callsites use this code today?04:55
dafkiko: yes04:55
dafkiko: I mean, some do04:55
dafI mean, what does "callsites" mean?04:56
=== kiko provokes daf into violence!
kikoa callsite..04:56
kikoa consumer perhaps? someone who uses that interface?04:56
kiko(callsite is pretty frequent in the mozilla circles but whatever).04:57
dafok, with you now04:57
dafviolence is never necessary :)04:57
carloskiko: https://rosetta.warthogs.hbd.com/rosetta/projects/gnome/evolution/04:58
carlosthat page use them04:58
kikocarlos do you have a module name for that?04:58
dafcarlos: ah, you beat me to it04:58
carloskiko: browser.py04:58
spiv(ooh, shiny!)04:58
cprovspiv: don't you think we can simply link to this page (using srcpkg product) ?05:02
cprovspiv: I mean, do it now, and after work on a "translation console".05:03
spivcprov: Well, first I'll add a .product attribute to SoyuzSourcePackage :)05:03
carlosdaf: 4 minutes to import a .pot file... perhaps I had a problem in other place (perhaps in my mind) or it has been improved...05:03
spivcprov: But yes, it should be easy to link to.05:04
spivcprov: And I'd be happy to link first, and develop a console/portlet/whatever-we-call-it incrementally from there :)05:05
cprovspiv: ok, it would be nice anyway, get some colorfull details sometimes :) 05:05
spivYeah, everyone loves shiny colourful graphs :)05:05
carlosspiv, cprov, kiko: If you are playing with the login stuff, look at rosetta/scripts/createuser.py05:06
debonzispiv, I can make do .product attribute in SoyuzSourcePackage.. ok for you?05:09
kikothis sounds like a good start05:10
kikospiv, cprov, debonzi: you guys have anything else you are curious about?05:10
debonzikiko, thats ok for now05:11
spivdebonzi: I've already started.05:11
debonzispiv, no problem.. go already05:11
cprovkiko: not now, I think we can go ahead by email ... fitting ideas about portlet/console05:12
spivkiko: Not at the moment.. I think we should probably bring up the people pages issue at the next launchpad meeting?05:12
spiv(and/or on the list?)05:13
cprovspiv: btw, have you seen the distro/team ?05:13
cprovspiv: I have add some confusing data to DB to explicity show the problems with person/team05:13
kikospiv: definitely.05:13
spivcprov: I haven't yet, I'll take a look.05:14
cprovspiv: ok05:14
cprovdaf: carlos: spiv: thanks for the hints, lunch time05:19
carlosok, later05:19
=== debonzi lunch
kikoI'll write up a summary tonight.05:28
kikoand give some prodding where it's necessary. :)05:28
carlosabout 15 minutes to import one .po with about 1500 strings, it's too much time but I think we could work on it after the alpha release (and before the beta release)05:35
carlosdaf: is it ok for you?05:35
carlosof course, we are talking about my laptop, in the server it will take less time 05:36
dafit'll have to do for now05:38
carlosI will change the bug about this to block the beta05:41
carlosdaf: how is going #1969?05:44
dafcarlos: partly done05:45
dafelmo: can you turn off HTTP auth on the other Rosetta server?05:45
carlosdaf: do you need help?05:45
carlosI'm without any pending task blocking the alpha release05:46
carloswell, the initial import05:46
carlosbut that's a computer work05:46
carlosI can do other things at the same time05:46
dafok, am I using a script to do an initial import?05:46
dafI mean, am I using your import script, or just running the basic one?05:46
carlosit's a basic one, I will send you a .sql 05:47
carlosbut it's still working05:47
dafright, let me know when it's done05:47
carlosso It will take some time05:47
dafI wonder what happened to Steve05:48
carlosSo we have #1907, #1908, #1930, #1932, #1934 and #1969 to be able to release the alpha, right?05:48
dafcarlos: I'm going to merge a patch to fix the translator dashboard05:49
dafwhen it's in, it should ask you for authentication before you can use it05:49
=== carlos didn't know was broken
dafthat list looks complete05:49
dafI think I broke it yesterday05:49
dafor this morning, rather :)05:49
carlosdoes your patch close the 1930?05:50
dafit does05:51
dafbut it's pretty ugly05:51
carlosperfect :-D05:51
carlosdon't worry05:51
carlosif it works should be enough05:51
dafyeah, we can make it prettier later05:51
carlosI will take care of #1932 (only gnome-panel and gnome-applets for the initial alpha release)05:52
dafoh, cool05:53
carloslimi should work on 1934 (and we could move it to the beta, it's mainly UI improvements...)05:53
carlosand you said that #1969 is partially done, right?05:53
dafand finishing it should be really easy05:53
carlosso let's go to relese!!!!05:54
dafjust need to change pages.zcml05:54
dafbut I want the HTTP auth turned off first05:54
carlosthe 1907 and 1908 are only reviews, so I suppose we could punt them to post alpha, right?05:54
dafif necessary05:55
dafif Steve can look at them before we release, that would be good05:55
dafbut if everything else is closed, then yes, we should release05:56
daflimi should be back sometime today, I think05:56
dafhe was only going to the dentist05:56
daf"punt" is a good word05:57
carlosdaf: I don't know the exact meaning, but it's the term we use with GNOME bugs05:58
carlosI get the idea05:58
carlosso I understand it :-)05:58
carlosbut I don't know the translation, so... time to look for it :-D05:58
dafpunting is to do with boars05:59
dafer, boats05:59
carloshmm, I don't get the meaning in Spanish :-P06:01
dafit's a type of boat06:03
dafit's also a way of moving a boat using a pole06:03
carlosyes, it's more or less the meaning of the translation, but I don't see the meaning  :-P06:04
dafwell, when you're talking about bugs it means something completely different :)06:07
carlosshit, I was planning to attend the GNOME Summit but they moved it to October06:36
dafwhere is it?06:39
carlosdaf: GNOME Summit 306:40
carlosOctober 9 - 11, 2004 06:40
carlosfrom 10:00 AM to 6:00 PM 06:40
carlosStata Center <http://web.mit.edu/evolving/stata/photos/photos2.html> 06:40
carlosMIT 06:40
carlosCambridge, MA 06:40
carlosI went last year 06:40
carlosand I thought this year is also on november06:41
=== debonzi [~debonzi@] has joined #launchpad
carlosdaf: merge confirmed06:50
=== cprov [~cprov@] has joined #launchpad
dafcarlos: https://rosetta.ubuntulinux.org/++skin++Debug/rosetta/translator06:56
dafoh, whoops, mea culpa06:56
carlosdaf: :-)06:57
cprovspiv: ping ?06:57
dafcarlos: hmm, I can't seem to log in06:58
dafshould be working now06:59
cprovspiv: you inserted the product "firefox" reference on sampledata-soyuz.sql before I was created (by rosetta)06:59
carlosdaf: where could I see the query that the login dialog does?06:59
carlosthe db query06:59
dafcarlos: go to https://rosetta.ubuntulinux.org/rosetta, then click on the translator link06:59
cprovspiv: \s\I\it sorry07:00
dafthe db query? not sure07:00
spivcprov: Oh, right.07:00
carlosdaf: I mean the python code :-P07:00
dafyou'd need to ask Steve that07:00
carlosI was able to login07:00
carloswith my information07:01
carlosbut I saw your preferences :-?07:01
spivProbably in canonical.lp.placelessauth?07:01
dafspiv: probably07:01
carloslet me check..07:01
dafcarlos: ok, I can log in as daf, but not as the test user07:01
cprovspiv: complicated solution, I though, or place it on rosetta or move all rosetta inserts for product firefox to soyuz ?07:02
=== carlos misses the logout button...
carlosdaf: it should work :-?07:04
cprovspiv: sorry, firefox product is a malone insert07:05
spivcprov: Yeah, I was just noticing.07:05
spivdaf: Incoming parent... ;)07:05
carlosdaf: it works for me07:06
carloslogin: foo.bar@canonical.com07:06
carlospass: test07:06
carlosI still see your personal data instead of the foo bar one07:06
dafoh, I thought it was test@07:06
dafcarlos: that's a bug in the preferences page07:07
carlosno, sorry O:-)07:07
dafwe should get rid of the fake users where we can07:07
spivcprov: The malone sampledata depends on soyuz sampledata; probably the easiest thing is to make a new sampledata-soyuz-extra.sql and add it to the Makefile..?07:08
spivA little icky, but simple.07:08
cprovspiv: I just figured out that the Packaging INSERT should be on malone together others related to it (project, sourcepackagerelease and so on)07:08
spivcprov: Ok, that's probably better than a new file.07:08
cprovspiv: yep07:09
spivEven though strictly speaking it isn't sample data for Malone :)07:09
spivDo you want to do that, or should I?07:09
spivIf you haven't already started, I'm happy to do it :)07:09
cprovspiv: even sourcepackagerelease ? you can do :)07:09
carlosdaf: but I changed the fake user to be foo bar instead of you with the same patchset I added the emails07:10
spivI was just going to move that one statement... oh, except it depends on soyuz data too :(07:10
spivI think I'm leaning towards a new file, rather than dragging half the soyuz sample data into malone's.  One statement isn't too bad, but half the file is a bit excessive.07:11
spivcprov: Either way, I'll do it :)07:12
cprovspiv: anyway the data are arranged in dependecy level in soyuz, if you insert in the correct place no reference will be missed, except "Sample Person" ( ohhh ?? )07:13
dafcarlos: right, but we eventually want to get rid of fake_user()07:13
carlosdaf: sure07:13
dafcarlos: hmm, what langauges should the product-index.pt page show if the user is not logged in?07:14
carlosdaf: that's a good question07:14
cprovspiv: yep, I'm waiting your patch07:14
dafcarlos: I'll file a bug07:15
carloswe should hardcode a list or implement something like the widget that let's you navigate inside the strings to translate07:15
carlosso we don't show ever more than 5/8 languages07:15
spivcprov: Nearly there :)07:16
spivcprov: mirrored, merge request sent.07:17
dafI'll make 1976 beta-critical07:20
cprovspiv: thanks, I'm waiting the lazy arch star-merge :(07:20
carlosdaf: makes sense07:21
dafwow, the dependency graph has gotten messy07:22
carlosit should remove the old bugs or the graph will not be useful in some months07:23
dafI asked it to generate a dependency graph for the .info imports and it went crazy :)07:24
carlos.info imports?07:24
dafyeah, for Warty07:24
dafdon't bother07:25
dafit takes about 10 minutes to generate a very silly graph07:25
dafwith a few hundred bugs in it07:25
dafit was very narrow07:25
dafand very tall07:25
dafand had a few small dots on it07:25
carlosmalone will do it better :-P07:25
dafI'm sure it will :-)07:25
carlosevery .po file taks about 30 minutes to be imported now07:25
carlosI think I will give you a .sql with all ready to import gnome-panel's .po file in the server07:26
carlos(when I finish with gnome-applet)07:26
carlosit will be faster07:26
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
dafcarlos: how are you doing the import?07:54
carlosfor i in `ls *.po`; do time python /home/carlos/Work/rosetta/scripts/poimport.py -o 4 -f $i -p gnome -d gnome-applets -t main-2.8 -l `echo $i |cut -f 1 -d '.'`; done07:54
dafdo you have an estimate for how long it will take to finish?07:55
carlosI could tell you it07:55
carlosit's on en_CA now07:56
dafam I user id 4?07:56
carlosperhaps tomorrow <- impossible to do it in my laptop...07:56
dafI'm just wondering whether it might be faster for me to run that on the server07:56
carlosdaf: yes I don't have the other launchpad data imported07:57
carlosdaf: that's what I suggested some minutes ago07:57
carlosI will wait until the en_CA.po is imported (it should finish soon)07:58
carlosand I will prepare a .sql file with my current database07:58
carlosso you don't need to start from scratch07:59
carlosdaf: you need to "apt-get source gnome-panel gnome-applets" from warty08:01
dafarg, no deb-src line in sources.list08:01
dafcan you give me a URL?08:01
carlosbut it's too slow08:05
carlosok, the en_CA.po is imported08:07
=== carlos prepares a .sql export
carlosdaf: you have the .sql at chinstrap's /home/carlos/launchpad.sql.gz08:14
dafright, thanks08:14
dafwhat does it include?08:15
carlosyou don't need the schema08:15
carlosit will drop the database08:15
carlosand create and fill it08:15
carlosonly rosetta data08:15
carlosyou can import the other .sql if you want08:15
carlostake care that perhaps it hardcode the launchpad_test name08:15
carlosI'm not sure08:15
carlosno, it's not hardcoded08:16
carlosyou create a database and it will create all tables and data08:16
carloswhen you have all ready, tell me it.08:16
carlosit includes already some gnome-applets .po files 08:17
dafcarlos: ok, so I run "zcat launchpad.sql.gz" | psql -f -"?08:33
carlos"zcat launchpad.sql | psql launchpad_test"08:33
carlosyou need the database created (if it's empty it's ok)08:34
carlosthe -f - is not needed08:34
carlossorry put it08:34
carlosI'm not sure now..08:34
dafpsql:<stdin>:67148: ERROR:  must be owner of schema public08:37
carloslet me export it as INSERTS08:37
carlosperhaps it's more "portable"08:37
carlosdaf: could you try to execute it into the psql?08:51
carlosALTER TABLE ONLY public.sourcepackage DROP CONSTRAINT "$4";08:51
dafcarlos: I'm having some trouble with my connection to the server08:52
carlosdaf: when you are able to test it, tell me it, so I can continue with the .sql export08:55
carlosdaf: should we ask lalo to join the channel so we can coordinate better the release?08:56
dafI suspect it might just be easier to run the import on the server08:56
dafcarlos: I'll do that08:57
carlosdaf: ok08:57
carlosdaf: I will add then the products creation to the sampledata-rosetta-alpha.sql file08:57
=== npmccallum [~npmccallu@69-162-252-7.ironoh.adelphia.net] has joined #launchpad
dafcarlos: seems he can't use IRC at the moment08:59
dafcarlos: I think I need to take a break -- my head is starting to hurt09:04
carlosdaf: ok09:05
carlosdaf: see you later09:05
dafcarlos: I forgot to mention -- on the server, even though python is using 50% CPU and postgres 20%, importing the gnome-applets template takes 30s09:06
carlosdaf: it took 4 minutes in my computer09:07
carlosit's the .po file what takes much more time09:07
dafright, I'll time that when I run it09:08
carlosdaf: go away!!!09:09
=== limi [~limi@] has joined #launchpad
=== limi [~limi@] has left #launchpad []
carlosdaf: ping10:49
carlosdaf: any way to debug10:50
carlosthe problem when you don't see any english text?10:50
dafcan you reproduce it?10:50
carlosmy local server10:51
dafhave you looked in the database?10:51
carloswith the gnome-applets have that problem10:51
carlosI don't know what should I look10:51
dafok, can you find the message IDs for the PO file?10:51
carlosfunny:  Untranslated messages: -751 10:52
carlosdaf: one second10:52
=== carlos is getting a .po file exported first
carlosthe slow problem is also with po export...10:53
carlosdaf: bug detected10:56
carloslaunchpad_test=# SELECT * from pomsgid where id=1;10:56
carlos id | msgid10:56
carlos  1 | _About10:56
carlos(1 row)10:56
carloslaunchpad_test=# SELECT * from pomsgid where id=2;10:56
carlos id | msgid10:56
carlos  2 |10:56
carlos(1 row)10:56
carlosboth are the msgid for the first msgset10:57
dafwhat do you mean, both are?!10:58
dafthere are two message ID sightings?10:58
carlosthat we have two rows where we should have only one10:58
dafwith the same plural form?10:58
carloslaunchpad_test=# SELECT * from pomsgidsighting where pomsgset=1;10:59
carlos id | pomsgset | pomsgid |       datefirstseen        |        datelastseen    | inlastrevision | pluralform10:59
carlos  1 |        1 |       1 | 2004-09-16 16:56:34.057532 | 2004-09-16 16:56:34.057532 | f              |          010:59
carlos  2 |        1 |       2 | 2004-09-16 16:56:34.110388 | 2004-09-16 16:56:34.110388 | t              |          110:59
carlos(2 rows)10:59
carlosthat's not a plural form10:59
dafok, but the second sighting has pluralform=110:59
carlosmsgid "_About"10:59
carlosmsgstr ""10:59
dafand the the first one also has inlastrevision=f10:59
carlosand the first one is the correct one11:00
carlosthe second is ""11:00
dafbug! bug!!11:00
carlosbig bug11:00
dafI am also getting weird problems with authentication11:00
carlosdaf: seems like finally it works here11:00
carlosI don't see you information anymore, I see the default one11:01
carlosI mean the foo bar one11:01
dafI made some changes locally which breaks it somehow11:01
dafI can't work out how11:01
carloshmm but my server did not asked me for a login...11:01
carlosis that normal?11:01
carlosok, you don't have it activated in all places yet11:01
dafit should ask you for a login, I think11:02
carlosyes, but only from the translator dashboard11:02
dafoh right, yes11:02
dafthe preferences one isn't activated11:02
dafI'll do that now11:03
carlosand now I see your information as mine, so it's still broken 11:03
carlosdaf: do you need help to debug your problem?11:03
daffor now, I will just undo the change11:03
dafI've emailed Steve11:03
carlosok, I will look at the bug with the import11:03
dafseems lalo is on Jabber11:04
carlosbut I will file it first11:04
carlosdaf: not now11:04
dafhe looks online to me11:04
carlosnot for me :-?11:04
carlosstill missing11:04
carlosyes, I see lalo now11:05
dafhmm, Jabber being weird again11:05
carlosI will file the bug report11:05
carlosdaf: #197811:13
carlosdaf: do you read anything from me?11:23
carlosat jabber?11:23
carlosI don't get my text back11:24
carlosfor one minute11:24

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