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