=== lamont__r [~lamont@phantom.acmeps.com] has joined #launchpad === lamont__r is now known as lamont_r === jamesh [~james@203-59-217-65.dyn.iinet.net.au] has joined #launchpad === mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad === carlos -> bed [03:29] Merge to rocketfuel@canonical.com/launchpad--devel--0: Fixed and improved the import daemon and added my script to import pofile over the web to have a backup so I don't lose it (patch-1135, carlos.perello@canonical.com) === stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad === SteveA [~steve@office.pov.lt] has joined #launchpad [11:21] hi folks [11:28] SteveA: morning [11:32] Merge to rocketfuel@canonical.com/launchpad--devel--0: Allow access to the changelog via the debug skin (patch-1136, stuart.bishop@canonical.com) [11:48] allow access to the changelog via the debug skin? [11:48] stub: what does that mean? [11:51] SteveA: could we add more entries to the error page (https://launchpad.ubuntu.com/errors)? [11:52] carlos: sure [11:52] SteveA: we have many users now and it's hard to see an error if they report it after more than 5 minutes they get it [11:52] I'm not coding yet -- still hacking [11:53] what we should do is have errors mailed to a launchpad-errors mailing list [11:53] then we can all see them [11:53] and refer to them in URLs [11:53] and discuss them [11:53] Urgh.... beeps off again :-( [11:53] SteveA: hmm, sounds better, yes [11:54] hi stub [11:54] SteveA: It means you can retrieve /changelog.html if you are on the debug port, which is good so people can see when stuff is rolled out to dogfood [11:54] SteveA: some users asked to get more information than just a "system error" so they can report the error easily [11:54] carlos: okay. we'll make it send an email, and generate a UID [11:54] then the error page can print the UID, and it can be in the subject of the email [11:55] I'm not coding yet, still catching up, I meant [11:55] when I said earlier "I'm not coding yet -- still hacking" [11:56] SteveA: sounds good. Thanks [11:56] ok [11:56] carlos: file a bug on it [11:56] SteveA: public or closed malone? [11:56] /s/closed/private/ [11:57] the launchpad one [11:57] so, the one on dogfood [11:57] Merge to rocketfuel@canonical.com/launchpad--devel--0: More changes to prevent that the daemon dies if we get an exception (patch-1137, carlos.perello@canonical.com) [11:57] that's where we file launchpad bugs [11:57] ok [11:58] stub: could we get a production update? [11:58] stub: we really need it [11:58] in this case, we must be careful not to use the transactional mail sender [11:58] as the transaction will be aborted [11:58] carlos: can you note that in the bug report? [11:59] sure [11:59] thanks [12:01] carlos: I'll investigate if I can without screwing lifeless when he is back [12:01] stub: when will be available? [12:02] I'm blocked with my current task until production update is done [12:02] stub: at least, could you execute the import daemon? elmo restarted the servers and it's not running anymore [12:04] Traceback (innermost last): [12:04] * Module zope.publisher.publish, line 143, in publish [12:04] publication.afterCall(request, object) [12:04] * Module zope.app.publication.browser, line 64, in afterCall [12:04] super(BrowserPublication, self).afterCall(request, ob) [12:04] * Module zope.app.publication.zopepublication, line 167, in afterCall [12:04] txn.commit() [12:04] * Module transaction._transaction, line 293, in commit [12:04] self._commitResources(subtransaction) [12:04] * Module transaction._transaction, line 340, in _commitResources [12:04] rm.tpc_vote(self) [12:04] * Module transaction._transaction, line 629, in tpc_vote [12:04] self._datamanager.prepare(transaction) [12:04] * Module sqlos.transaction, line 157, in prepare [12:04] obj.sync() [12:04] * Module sqlobject.main, line 672, in sync [12:04] raise SQLObjectNotFound, "The object %s by the ID %s has been deleted" % (self.__class__.__name__, self.id) [12:04] here we go again.... [12:04] :-( [12:04] SQLObjectNotFound: The object POMsgID by the ID 8608 has been deleted [12:16] stub: the dogfood server is down atm [12:17] carlos: ok. I was going to do a rollout anyway. [12:17] ok [12:37] carlos: is there a bug for showing only simple translations to new translators? === cprov [~cprov@200.158.100.251] has joined #launchpad [12:37] not yet [12:37] these would omit translations that use %s and similar, and also those that use shortcut keys [12:37] I hadn't realized about the short-cut keys before [12:38] It's hard to detect the shourtcut keys, sometimes you will remove strings that are not really shortcuts [12:38] also, it depends on the toolkit [12:38] I think that QT uses '&' as the shortcut char [12:39] and gtk uses '_' [12:39] but we could try to do something about it [12:40] SteveA: we are using now public malone for Rosetta bugs, is it ok to use it for all Rosetta bugs/feature requests filed by us? [12:40] there's an additional issue that the shortcut key can change, but the change needs to be co-ordinated with other short-cut keys in the same application [12:40] in a way, this should be kept separate from the actual translated string itself [12:41] SteveA: since some gtk versions, it's not a problem if you have two shortcuts with the same key [12:41] "since some gtk version _ago_" [12:42] not sure about QT [12:42] it is a problem for the UI [12:42] and it makes the translated strings less reusable [12:42] but, that is a way future feature [12:42] right === carlos -> breakfast [12:52] carlos: We don't want security related bugs in here if we find any [12:53] stub: are you talking about the public malone? [12:53] stub: yeah, any bug report _but_ security bugs [12:53] well [12:54] maybe malone should have a "this is security-related" checkbox [12:54] and reject all bugs that are filed with that checked, with an explanation [12:54] I would file this bug, but I know I shouldn't ;-) === debonzi [~debonzi@200.158.100.251] has joined #launchpad [12:58] SteveA: well, the idea is that the security bugs will be hidden to the security team [12:58] that's what I think it's going to be implemented [12:58] New Malone bug #182: "Improve the error log for the production server", submitted by Carlos Perell Marn [12:58] https://dogfood.ubuntu.com/malone/bugs/182 [01:00] carlos: yes. but right now, it is easy to inadvertently file a security bug. [01:25] SteveA: are we able to restrict the access to some of the launchpad's features only to admins? [01:27] SteveA: we need an UI to manage the production server's language/country tables and it should be done only by Canonical people (daf and I) [01:27] so we can add and update easily plural forms information [01:31] carlos: yes, we can restrict things to admins [01:32] carlos: you need to do the following, then I will help you do this. [01:32] ok [01:32] 1. write down the methods / attributes of which interfaces govern setting the language and country tables. [01:32] 2. write a stubbed out page that will become the edit form for one of these. === salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad [01:33] 3. we'll work out how to do the permissions and authorization code and so on. [01:34] ok, I will do it "next year" ;-) [01:35] as soon as it's ready I will tell you it [01:35] ok [01:36] should we worry about the error reporting service being publically available? [01:36] well, perhaps [01:36] in the future, it might be a security risk [01:36] ideally, it would not be [01:37] since people might see errors related to security bugs [01:37] indeed [01:37] I think it's ok for now, but something we should fix sooner or later [01:37] we could do that using apache -- certificatize it [01:37] good idea [01:37] I don't really want the error reports going through much code [01:37] of launchpad [01:37] you mean you want to keep it simple? [01:38] yes [01:38] SteveA: if we take the approach you suggested, we could remove that page, right? [01:38] no [01:38] carlos: which page? [01:39] the errors one [01:39] Merge to rocketfuel@canonical.com/launchpad--devel--0: Fix generated changelog (patch-1138, stuart.bishop@canonical.com) [01:39] what approach? [01:40] daf: https://dogfood.ubuntu.com/malone/bugs/182 [01:41] ah, I see [01:46] System error on launchpad.ubuntu.com: RuntimeError: Got translation for msgid u'foo' which is not in the template. (User: 3646, Manuel Antoni; Page: https://launchpad.ubuntu.com/rosetta/products/wordpress/wordpress-1.5/+translate) [01:47] daf: ? [01:47] what's that? [01:47] ^^^ we could do something like that for errors [01:47] stub: around? [02:04] carlos: yup [02:04] stub: could you execute this into the production database?: [02:04] update language set pluralforms=3, pluralexpression='n < 2 ? 0 : n == 2 ? 1 : 2' where code='gd'; [02:04] update language set pluralforms=4, pluralexpression='n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3' where code='sl'; [02:05] we are going to get an easier way to do that in the future, but if you could do it now... ;-) [02:10] carlos: Done [02:10] stub: thank you! [02:22] daf: about the synaptic thing [02:22] daf: at this moment, if we import a pofile that does not have the translations from Rosetta [02:22] we will "lose" them [02:23] because we don't have a way to know if they were removed after exporting the pofile [02:24] and we don't have (yet) a way to suggest previous translations so the data is still in the database but the user will feel that they are lost [02:25] yes [02:26] only rhythmbox remains to be imported in my laptop!! and I only got 1 error from about 500 po/pot files imported === carlos hopes his HD will not die after 10 hours or more of intensive work === carlos -> lunch [02:30] great! [02:30] what was the error? [02:35] nice work tending the rosetta mailing list, carlos [02:46] yes, seconded! [02:46] carlos has also been doing much of the mailman moderation for the list [02:51] SteveA: if I move doctests from lib/canonical/rosetta/test/test_browser.py into lib/canonical/rosetta/browser.py, will they still get detected and run by the test runner? [02:51] I'd like to move at least some of the tests to be inline [02:54] you need to add a DocTestSuite for rosetta.browser into test/test_browser.py [02:54] ah, ok [02:55] did you need to do something similar for canonical.launchpad.database.person? [02:56] I think those are in the canonical/launchpad/doc/ directory [02:56] but, yeah [02:56] I must have done [02:56] for the inline doctest in browsername [02:56] so you can look into that to see how it is done [02:56] that's the one I was thinking of [02:57] SteveA: thank you [02:57] daf: the error was a missing plural form, so it's not our fault directly [02:58] SteveA: ah, yes, lib/canonical/launchpad/database/tests/test_rundoctests.py [02:58] carlos: good :) [03:00] also, I went out of space in my laptop tonight and the import daemon died, I have tried to recover it from that kind of errors (lifeless already told me about that problem). I think that it should be able to recover from any error except for a database restart [03:00] well, more than recover... it just ignore any exception and retries it later [03:02] a more resilient import daemon would be good [03:03] ok, I think I have both bugs with tabs in message IDs fixed [03:03] I'll submit a merge, then go to lunch [03:03] daf: nice! [03:03] even better, I was able to add test cases for both bugs [03:06] assuming the merge goes in, I think the change is production-ready === daf -> lunch [03:08] will try to test it in my laptop after testing the synaptic import [03:41] carlos: I'm trying a production update [03:41] daf: Is your fix urgent, or can we dogfood it until boxing day? [03:41] I would like it to go in today [03:41] I had a conflict [03:41] stub: boxing day? [03:41] carlos: 26th December [03:42] carlos: Dec 26th [03:42] ;-) [03:42] I have found a bug that should be fixed also today [03:42] stub: if you could wait... [03:42] carlos: which bug is that? [03:42] daf: seems like some plural forms are not being imported [03:42] from the pofile [03:42] do we have a fix for it? [03:43] daf: I just detected it [03:43] I'm working on it [03:43] hmm [03:44] daf: look at rhythmbox translations in my computer [03:44] I think I'd prefer it if we don't wait for this fix [03:45] daf, stub: is it ok to have two updates today? :-P [03:46] well, I'm thinking of two things (a) the bug I have a fix for is one that is blocking users and (b) we have a fix for it [03:47] you are right, I'm just asking if it's possible to get a sync after I finish the fix and we have tested it enough [03:57] Assuming this update works (still backing up the previous install - arch does like to create lots of files, doesn't it...), I'll do another rollout in about 12 hours. [04:02] Merge to rocketfuel@canonical.com/launchpad--devel--0: cleanups; fix bugs with tabs in message IDs (patch-1139, daf@canonical.com) [04:03] stub: ^^^ there's my merge [04:18] wow, the bug is sooooo stupid === carlos should reenable the import/export tests as soon as possible [04:21] I can't work out how lifeless is maintaining the production config - I suspect it isn't :-( [04:21] it isn't what? [04:21] maintained? [04:21] maintained anywhere [04:22] All this arch config and I can't find where the production customizations are - if I checkout launchpad--production--1.8, you don't get a configured version. [04:27] So if I do a production rollout, I'm going to have to guess what the local changes are. Apart from the .zcml database configuration, I have no idea what local changes needed to be made on macquarie to get it all running happily. [04:28] then, I suppose we should wait for lifeless ... [04:28] or try it and if it does not work, revert to the current codebase [04:29] shouldn't we have staging serves for this kind of thing? [04:40] daf: I don't understand you [04:40] What do you mean? [04:40] a server we can test things on before making them live [04:41] that's dogfood [04:41] right? [04:41] no [04:41] not quite [04:41] the point of the staging server is to have a configuration as close as possible to the production server [04:42] including production data if possible [04:46] Merge to rocketfuel@canonical.com/launchpad--devel--0: Fixed plural forms import from po files and added a new plural form expression into our database (patch-1140, carlos.perello@canonical.com) [04:47] daf: https://launchpad.ubuntu.com/malone/bugs/9 [04:48] :/ [04:48] that bug prevents to import many of the languages that only have singular forms (like ja, and tr) [04:48] aren't the PO files broken? [04:49] no [04:49] well... [04:49] gettext thinks that they are ok [04:49] we could say that are broken, but we are able to recover from that situation easily [04:49] by ignoring extra translations? [04:50] ignoring the extra plural forms if we have more, and adding empty ones if we don't have enough [04:50] or by importing them regardless? [04:50] daf: we could import them [04:50] but mark the extra ones as not active [04:50] so next time we export a po file, it will be "fixed" [04:51] and we are not losing information, because we have it stored into the database [04:51] that seems sane, I guess [04:53] SteveA, daf: we should fix the legal link from launchpad [04:54] I'm not too good redacting legal text in English [04:54] could you look at it? [04:54] yes, we need to do that === salgado is now known as salgado-lunch === stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad === carlos -> shower === mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad === bob2 [rob@202.174.101.196] has joined #launchpad === carlos -> university [05:53] later === cprov [~cprov@200.158.100.251] has left #launchpad [] === debonzi [~debonzi@200.158.100.251] has left #launchpad [] === lamont_r [~lamont@rover3.mmjgroup.com] has joined #launchpad === stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad [10:51] stub: around? [10:52] I'm moving from my laptop (hoary) to my desktop computer (warty) and the database creation is not working correctly, It gives me an error about the type "tsvector" [10:52] and I have installed the postgres' contrib package [11:01] carlos: make sure you still have the search path set correctly in your postgresql.conf file [11:02] carlos: And that you are building the database with 'make PYTHON=python2.4' and not just 'make' [11:02] python2.4? [11:02] I'm using warty in my desktop computer [11:02] Oh... sorry... say hoary ;) [11:03] not hoary ;-) [11:03] First point is still valid [11:03] ohh [11:03] right [11:03] I forgot the search path... [11:04] stub: thank you