[00:55] <mwhudson> thumper: can you review a branch for me?
[00:55] <mwhudson> it's about 1400 lines
[00:55] <thumper> sure
[01:00] <mwhudson> thumper: you should have mail shortly
[02:30] <mwhudson> thumper: having fun yet?
[02:30] <thumper> mwhudson: trying to keep my eyes open
[02:31] <mwhudson> heh
[02:31] <thumper> mwhudson: just finished going through it all
[02:31] <mwhudson> it wasn't any more fun to write...
[02:31] <thumper> I think that the code_import_helpers should move out of canonical.launchpad.testing
[02:31] <mwhudson> _everything_ should move out of canonical.launchpad.testing
[02:31] <mwhudson> so yeah
[02:32] <thumper> well yeah
[02:33] <mwhudson> thumper: i have another branch to review too, its much easier...
[02:36] <thumper> ok
[02:36] <mwhudson> thumper: https://code.edge.launchpad.net/~mwhudson/launchpad/incremental-bzr-svn-imports/+merge/21209
[02:36] <thumper> I haven't got to any coding this afternoon :-|
[02:38] <thumper> mwhudson: both r=thumper
[02:38] <mwhudson> thumper: yeah, sorrya bout that :-)
[02:38] <mwhudson> i'm very glad to get that branch under way though
[02:39] <thumper> it isn't (entirely) your fault
[02:39] <mwhudson> thanks for the reviews
[02:39] <thumper> :)
[02:39] <thumper> I spent quite a bit of time talking to lifeless
[08:40] <adeuring> henninge: where is the branch you want reviewed?
[08:41] <henninge> adeuring: gone ;-)
[08:41] <henninge> adeuring: I guess rockstar did a bad job at cleaning out the queue ...
[08:41] <adeuring> henninge: no problem
[08:43] <wgrant> https://code.launchpad.net/~wgrant/launchpad/get-bpr-by-filename/+merge/21211 is mine.
[08:51] <adeuring> wgrant: ok, noted. But let me follow the FIFO principle, so I'll start with jelmer's branch ;)
[08:51] <wgrant> adeuring: Right, I was just putting it there for future reference.
[09:43] <adeuring> jelmer_: review sent
[10:08] <jelmer_> adeuring: thanks!
[12:09] <salgado> adiroiban, you didn't get any email about that bug-531261 branch, did you?
[12:19] <adeuring> wgrant: r=me, one suggetsion
[12:20] <wgrant> adeuring: I don't think there are any open at the moment.
[12:21] <adeuring> wgrant: OK, the I'll start the ec2 test
[12:21] <wgrant> adeuring: Thanks.
[12:21] <adeuring> wgrant: welcome :) And thanks for all your hard work!
[12:24] <salgado> wgrant, do you have another one in the queue?
[12:24] <wgrant> salgado: https://code.edge.launchpad.net/~wgrant/launchpad/anonymous-irc-nicks-and-wiki-names/+merge/21219
[12:24] <wgrant> Nice tiny one.
[12:25] <adeuring> salgado: can you review it? I need a lunch break ;)
[12:25] <salgado> adeuring, sure
[12:25] <wgrant> Thanks salgado.
[12:26] <salgado> adeuring, but I'll have one waiting for you to get back from lunch. :)
[12:26] <adeuring> salgado: ok,
[12:41] <wgrant> salgado: Thanks. Will you land it?
[12:42] <salgado> wgrant, I'll try, but ec2test is not behaving these days...
[12:43] <wgrant> salgado: I guess we'll see.
[13:38] <jtv> noodles775: I've got some buildfarm fixes, some of them generic (based gratefully on discussion with wgrant) that you might like to review!  https://code.launchpad.net/~jtv/launchpad/bug-537866/+merge/21238
[13:40] <allenap> BjornT: Do you think you'll have some time to revisit my isolate-tests branch. I think it's in pretty good shape now.
[13:40] <noodles775> jtv: I'm certainly keen to look through it, but probably over the weekend. It might be best to get the OCRs to review it, and I'll take a look later, if that's ok.
[13:41] <jtv> noodles775: sure, I'll try that
[13:41] <noodles775> jtv: btw, there's a tiny conflict there too.
[13:41] <jtv> adeuring, salgado: either you free for a buildfarm branch?  https://code.launchpad.net/~jtv/launchpad/bug-537866/+merge/21238
[13:42] <jtv> grr
[13:42] <jtv> thanks for spotting that
[13:42] <adeuring> jtv: sure
[13:42] <jtv> adeuring: michael just pointed out a small conflict in a block of imports; take it as read that those will be fixed.
[13:43] <salgado> adeuring, I can take jtv's so that you can take mine; that ok with you?
[13:43] <adeuring> salgado: sure :)
[13:43] <adeuring> BTW, I'm already reading you changes
[13:43] <jtv> cool
[13:57] <BjornT> allenap: yes, i think i'll have time today
[13:58] <allenap> BjornT: Thanks. Do you also have 30s to approve a db query in LPS please? I need to run it ASAP.
[14:04] <adeuring> salgado: r=me
[14:05] <salgado> thanks adeuring
[14:06] <BjornT> allenap: why is the query needed? won't checkwatches choose a subset of bug watches to update anyway?
[14:08] <allenap> BjornT: It will, but there are 15k watches, there have been problems with batching before, and I'm not 100% sure they're all solved (I think they are, but every time I've thought that something else happens). I just want to be safer than sorry.
[14:10] <BjornT> allenap: you probably shouldn't update the ones that are NULL, though, should you?
[14:11] <allenap> BjornT: There are probably a lot of those because this tracker has been disabled for weeks, but I guess not. I'll update the query.
[14:16] <NCommander> allenap: thanks for the review this morning
[14:17] <allenap> NCommander: Did you mean someone else?
[14:17] <NCommander> allenap: er, whopos, autocomplete got the wrong person :-/
[14:17]  * NCommander goes to find his coffee pop
[14:18] <allenap> :)
[14:18] <NCommander> *pot
[14:18] <NCommander> wow
[14:18] <NCommander> adeuring: thanks for the review this morning
[14:18] <adeuring> NCommander: welcome :)
[14:19] <adeuring> NCommander: plase ping me when/if BjornT and stub approved the branch, then I'll land it
[14:19] <NCommander> adeuring: Thank you, I was wondering if you could help me understand something first though: I'm not very knowledgable about LIbrarian ATM, how much of a hit is it to query librarian for a file then parse its data directly in a UI method?
[14:20] <NCommander> abentley: the other thing that was discussed was the possibility of moving the changelogs to a new table then enforcing a forgein key restriction (and then possibly moving copyright files at some point in the future)
[14:20] <adeuring> NCommander: I have no real clue. But IIRC the Soyuz folks did something like this
[14:21] <adeuring> NCommander: yes, having another table would address most of BjornT's  concerns, sounds like a good idea
[14:21] <abentley> NCommander, you mean me?
[14:21] <adeuring> abentley: I think he meant me
[14:22]  * NCommander isn't so sure anymore
[14:22] <NCommander> I'm welcome to accept all opinions :-)
[14:27] <adeuring> NCommander: Can the stuff the needs to be displayed from changlog change without a change in the changelog data?
[14:28] <adeuring> garrr... that's unreadable... let me try to avoid the repetiton of "change"....
[14:29] <adeuring> NCommander: can it happen that different things from the changelog must be displayed without any modification in the changelog data? If not, the parsed data could be stored instead in the DB
[14:31] <NCommander> adeuring: that's what we currently do (sorta, we pull changelog exerts from the .changes file).
[14:31] <adeuring> ok...
[15:06] <adiroiban> salgado: sorry for the delay. No, no email. Most probably some tests are failing, but unfortunalty I can not run the full LP test suite on my computer
[15:07] <salgado> adiroiban, yeah, I'm just running the full test suite now.  once it finishes I'll check if anything failed and let you know
[15:08] <adiroiban> salgado: thanks!
[15:42] <adiroiban> danilos: can you please take a quick look at this MP https://code.edge.launchpad.net/~adiroiban/launchpad/bug-201749/+merge/21250
[15:42] <adiroiban> it is not ready yet
[15:43] <adiroiban> but I would like to know your comments for the potmsgset.resetCurrentTranslation()
[15:44] <danilos> adiroiban, sure, I'll take a look in a bit
[15:46] <NCommander> BjornT: would using a separate table for changelog information help with your concerns on increased memory usage?
[16:00] <jtv> salgado-lunch: yup, "make lint" catches that bad character that got in...  it must have happened when I thought I was done and closed the window.  :-(
[16:01] <jtv> huh wait, there's more lint now... wtf?
[16:01] <danilos> adiroiban, hey, looking at your branch now
[16:01] <danilos> adiroiban, updateTranslations is off limits: no changes allowed there ;)
[16:02] <danilos> adiroiban, and date_created should probably not be modified
[16:02] <adiroiban> danilos: a I agree with date_created
[16:03] <adiroiban> but I don't know how to modify a potmsgset to be listed again as needs review
[16:03] <danilos> adiroiban, logic to determine which method to call should be in the browser code
[16:03] <danilos> adiroiban, potmsgset shouldn't be modified at all
[16:04] <danilos> adiroiban, it's a TM you are modifying, and https://bugs.edge.launchpad.net/rosetta/+bug/201749/comments/13 gives you a suggestion
[16:04] <mup> Bug #201749: Impossible to mark as needing review strings already translated or with suggestions <story-translations-review> <ui> <Launchpad Translations:In Progress by adiroiban> <https://launchpad.net/bugs/201749>
[16:04] <adiroiban> danilos: ok I will move the logic to browser code
[16:04] <danilos> adiroiban, and now, on to the resetCurrentTranslation method :)
[16:07] <danilos> adiroiban, the way you do it won't do: we don't have the luxury of fetching a bunch of messages for every single message on +translate page
[16:07] <danilos> adiroiban, you need to get only the matching message if it exists
[16:08] <adiroiban> ok. but the logic is ok ?
[16:08] <danilos> adiroiban, and the thing you are doing there is not what you should be doing
[16:09] <danilos> adiroiban, no, sorry
[16:09] <adiroiban> ok
[16:09] <adiroiban> I still don't know how diverged messages shoudl be handled
[16:10] <danilos> adiroiban, basically, your code does this: "current, diverged translation 'blah' needs review, let's find all other diverged translations 'blah' and make them 'shared'
[16:12] <adiroiban> and what it should do?
[16:12] <danilos> adiroiban, well, the only thing code should do is find an identical (to current) suggestion (meaning .is_current=False, .potemplate=None) if it exists, and then only discard the older one
[16:12] <danilos> adiroiban, let me prepare an example
[16:15] <danilos> adiroiban, http://paste.ubuntu.com/394099/
[16:15] <danilos> adiroiban, fwiw, removing a message is impossible from web UI anyway, so you really can't fix this bug properly
[16:17] <danilos> adiroiban, another example to be wary of: http://paste.ubuntu.com/394100/
[16:18] <adiroiban> how we should proceed with the removal of a message?
[16:30] <danilos> adiroiban, well, the best way would be to somehow tag it an then remove it later
[16:31] <adiroiban> danilos: and when tag it... we should tag it in a wait it will not be selected by any other existing query
[16:31] <danilos> adiroiban, what do you mean?
[16:32] <danilos> adiroiban, perhaps we'll have to allow removal from the web UI as well, though that sounds very, very bad
[16:32] <danilos> adiroiban, there's also the transfer of all the flags, like is_imported, from the deleted message to the preserved one
[16:32] <adiroiban> danilos: i guess there are many SELECT queries that will need to be modified to take into acount the tag
[16:33] <danilos> adiroiban, yeah, it'd end up being a pretty big change, with many performance implications
[16:34] <danilos> adiroiban, as such, I wouldn't tackle this before many other things are cleaned up first
[16:35] <adiroiban> danilos: but this is a big issues if someone is using Launchpad translations for reviewing or doing QA related tasks
[16:36] <danilos> adiroiban, I am not disagreeing, I am just saying that it'll take a lot of work to get this done properly; or, we can ignore some of the issues and live with some problems we introduce, but we've got to be aware of them first
[16:37] <danilos> adiroiban, for example, perhaps it's not a big deal if we've got duplicate identical suggestions in the DB, so let's not block on that
[16:38] <adiroiban> danilos: for the duplicate suggestions
[16:38] <danilos> adiroiban, we'll get some weird behaviour occasionally, but let's say they are of lower priority
[16:38] <adiroiban> maybe we can have a cron job that will do the cleaning
[16:38] <danilos> adiroiban, now, there's still some things to worry about
[16:38] <danilos> adiroiban, maybe, but that'll be very complex as well
[16:39] <adiroiban> danilos: what are are the other issues?
[16:39] <danilos> adiroiban, and it won't stop any weirdness
[16:40] <danilos> adiroiban, the other issue is that we need to carefully consider what will happen when somebody asks a diverged translation to be reviewed, and there is an existing shared one
[16:41] <danilos> adiroiban, i.e. http://paste.ubuntu.com/394130/
[16:41] <danilos> adiroiban, also, note that you can't unset potemplate if is_imported is true either
[16:43] <adiroiban> danilos: for lates example, I think result 1 is fine
[16:44] <adiroiban> and then another reviewer can decide if the shared suggestion is better
[16:44] <adiroiban> or it will need a new diverged translation
[16:45] <danilos> adiroiban, right
[16:46] <danilos> adiroiban, ok, so, then it won't be that complicated
[16:46] <adiroiban> danilos: what are the consequences of setting potemplate = None for a msgset with is_imported = True ?
[16:47] <danilos> adiroiban, basically, we'll have to watch if current message is diverged or not; if it is, and it isn't is_imported, then you unset is_current and .potemplate and how you don't hit a DB constraint :)
[16:47] <danilos> adiroiban, it won't be diverged is_imported message, and if there's another shared is_imported message, you'd be in for a ride
[16:47] <danilos> adiroiban, basically, many places where only one is expected would assert/traceback
[16:48] <danilos> adiroiban, provided you don't hit a DB constraint first (I am not sure if we have one like that)
[16:48] <adiroiban> danilos: I see
[16:50] <adiroiban> danilos: ok. thanks. one more question regarding potmsgset.updateTranslation()
[16:50] <danilos> adiroiban, sure (though, you still can't touch it: nobody can, functionality needs to be slowly factored out of it :)
[16:50] <adiroiban> should I add a new bug for the case when you tick „needs” for a already reviewd translation?
[16:51] <adiroiban> or we already have a bug for that?
[16:51] <danilos> adiroiban, what do you mean?
[16:51] <adiroiban> if you add a new suggestion
[16:51] <danilos> adiroiban, ok?
[16:51] <adiroiban> and you tick „needs review”
[16:51] <adiroiban> it will be listed as a new suggestion
[16:51] <danilos> adiroiban, right, that's how it should work
[16:52] <adiroiban> but if in fact it is not a new suggesion
[16:52] <jtv> salgado-lunch: I've fixed up the weirdness in my branch.  I'm going to reboot now, hoping that that'll fix it.
[16:52] <adiroiban> and _findTranslationMessage
[16:52] <adiroiban> finds that this new suggestion
[16:52] <danilos> adiroiban, ah, right, it's an already discarded suggestion
[16:52] <adiroiban> is in fact an already existing suggestion
[16:52] <adiroiban> it will not mark it as needs review
[16:52] <adiroiban> this is why I touched the updateTranslation code
[16:53] <danilos> adiroiban, I am pretty sure we have a bug about that as well
[16:53] <adiroiban> ok
[16:54] <danilos> adiroiban, if you ever want to fix that, you'll have to provide a new method addASuggestion() or something, similar to what you did for this bug, and move the functionality out of updateTranslation method and add new functionality you want :)
[16:54] <danilos> adiroiban, and again, moved the logic to decide what to do out into browser code
[16:54] <adiroiban> danilos: yes. I will move that logic.
[16:54] <danilos> s/moved/move
[16:55] <adiroiban> that was the initial implimentation
[16:55] <adiroiban> but then I didn't know where to put the tests
[16:55] <adiroiban> for that code
[16:55] <danilos> adiroiban, right, I am talking about the other bug where discared suggestions don't show up as suggestions afterwards
[16:55] <adiroiban> danilos: ah. ok... do you have any suggestion for where should I put the integration tests for resetCurrentTranslation ?
[16:56] <adiroiban> lib/lp/translations/browser/tests/translationmessage-views.txt ?
[16:56] <adiroiban> I am very puzzled by the way unit tests and integration tests are structured
[16:56] <danilos> adiroiban, integration test? that would probably be very tricky, I'd look for existing needs review tests
[16:57] <danilos> adiroiban, good unit tests are most important here; single integration test is good enough
[16:57] <adiroiban> danilos: lib/lp/translations/tests/potmsgset-update-translation.txt
[16:57] <danilos> adiroiban, the problem is that all these translationmessage and pofile views are a mess, just like updateTranslation is: there is no clear separation of anything
[16:58] <adiroiban> danilos: ok
[16:58] <adiroiban> thanks!
[16:58] <danilos> adiroiban, that'd be for documentation on updateTranslation method, do it in potmsgset.txt with a single example for how to use resetCurrentTranslation (and please make it accept identical parameters as the rest of the methods: i.e. don't use pofile if other methods are passing potemplate, language and variant)
[16:59] <adiroiban> I will try to fix the current problems and come back with more questions
[16:59] <danilos> adiroiban, sure, I am likely to be out, but I can probably find some time over the weekend (email me :)
[17:00] <adiroiban> danilos: no emails for the weekend... and I don't know if I will have time over the weekend
[17:00] <danilos> adiroiban, heh, ok :)
[17:01] <danilos> adiroiban, anyway, to be honest, this should probably be a new checkbox closer to the current translation; hopefully redesign of +translate views will fix all this
[17:02] <adiroiban> danilos: I agree, as this is not „needs review” , but reset reviewed state
[17:03] <adiroiban> danilos: did you have time to look over the POTemplate API ?
[17:10] <salgado> adiroiban, did you get a failure email this time?
[17:12] <adiroiban> salgado: yes. thanks
[17:14] <adiroiban> salgado: are the same windmill tests that on my computer are also failing on mainline
[17:14] <salgado> adiroiban, are you sure your mainline branch is pristine?
[17:15] <salgado> because these tests don't fail in other branches I've submitted to ec2
[17:15] <salgado> e.g. the one I submitted for wgrant which is on PQM right now
[17:16] <adiroiban> salgado: yes , the mainline is pristine... but my computer is slow and all waits.forElemets are exceded
[17:16] <adiroiban> but most probably, my changes are introducing more delays
[17:17] <adiroiban> and this is why those tests are failing on ec2
[17:17] <salgado> could be
[17:17] <adiroiban> and they are not failing all the time
[17:18] <adiroiban> on my computer, there are 50% chances of a windmill test to pass
[17:18] <adiroiban> and this was since the beginning of my hacking on launchpad
[17:28] <danilos> adiroiban, sorry, I don't remember seeing anything about the potemplate API, where was that?
[17:29] <adiroiban> danilos: hm... I have added them as comment to the bug
[17:29] <adiroiban> and I remember sending an notification email to you, henning and jtv
[17:30] <adiroiban> the subject was POTemplate Details API
[17:30] <adiroiban> https://bugs.edge.launchpad.net/rosetta/+bug/525371
[17:30] <mup> Bug #525371: API for reading POTemplates details <api> <Launchpad Translations:Triaged by adiroiban> <https://launchpad.net/bugs/525371>
[18:47] <rockstar> salgado, care to look at a branch really quick?
[18:47] <salgado> rockstar, sure, where's it?
[18:47] <rockstar> https://code.edge.launchpad.net/~rockstar/launchpad/recipe-canonical_url/+merge/21271
[18:47] <rockstar> It's really little.
[18:49] <salgado> rockstar, I wonder if isn't there a better place for that test...
[18:49] <salgado> also, you don't really need to add that empty file, do you?
[18:49] <salgado> not really empty, but with no actual code
[18:49] <rockstar> salgado, I do because abentley and I both need it very soon, and we wanted to avoid conflicts.
[18:50] <salgado> oh, ok.  can you s/2009/2010 there, then?
[18:50] <rockstar> Huh, I thought I did...
[18:51] <salgado> rockstar, how about moving the test to ./lib/lp/code/tests/test_sourcepackagerecipe.py ?
[18:51] <rockstar> salgado, according to https://dev.launchpad.net/Web/URLTraversal that's where the test should go.  I originally had a unit test there.
[18:52] <salgado> oh, didn't know about that
[18:53] <salgado> r=me
[18:53] <rockstar> salgado, cheers!
[18:58] <jtv> salgado: I fixed those weird problems with my branch, but now I found an unintended consequence: too much is working now, meaning that a doctest is actually trying to talk to build-farm slaves, which of course we can't do in tests.  I'm fixing that up now.
[19:05] <salgado> jtv, ok, I've just sent you a second round of feedback
[19:05] <jtv> thanks
[19:59] <salgado> jtv, will you let me know once you're done with that branch?
[19:59] <jtv> salgado: yes
[20:24] <jtv> salgado: over to you.  It's deep night here, so I won't be around for much longer
[20:24] <jtv> whoops, maybe I should push those changes first :)
[20:29] <salgado> jtv, that's a good idea. :)
[20:29] <jtv> salgado: it's taking a while for the diff to update...
[20:30] <jtv> salgado: updated now.
[20:31] <salgado> cool
[21:25] <jtv> salgado: thanks!
[21:50] <wgrant> Anybody around for a review of https://code.edge.launchpad.net/~wgrant/launchpad/bprdc/+merge/21213?