[08:34] <noodles775> Hi henninge, would you be able to review an MP of Jelmer's for us pls? https://code.edge.launchpad.net/~jelmer/launchpad/archive-arch-fix/+merge/29160
[08:42]  * henninge looks and considers ... 
[08:42] <henninge> :-P
[08:42] <noodles775> :)
[08:42] <henninge> noodles775: yeah, ok ;)
[08:42] <noodles775> Great, thanks!
[08:52] <henninge> noodles775: so, do I talk to you about the mp or shall I just reply by mail to jelmer so that he can process it?
[08:53] <noodles775> henninge: Best to do it on the MP if that's ok.
[08:53] <henninge> yes, find
[08:53] <henninge> e
[08:54] <henninge> dine
[08:54] <henninge> fine
[08:54] <henninge> ;)
[08:54] <noodles775> lol
[11:05] <henninge> noodles775: reviewed but not yet approved.
[11:05] <noodles775> henninge: thanks for that.
[11:15] <bigjools> henninge: I'll take over
[11:15] <bigjools> wasup?
[11:15] <henninge> bigjools: I replied in the MP
[11:16] <bigjools> henninge: what's the URL for that please?
[11:16] <henninge> https://code.edge.launchpad.net/~jelmer/launchpad/archive-arch-fix/+merge/29160
[11:30] <bigjools> henninge: what are you referring to with "I see more instances of that" ?
[11:31] <bigjools> oh the dodgy docstrings?
[11:31] <henninge> right
[11:42] <bigjools> henninge: replied
[11:42] <henninge> cheers
[13:49] <bigjools> henninge: you really want another MP?
[13:50] <henninge> bigjools: no, I just thought you'll need it to request the r-c, don't you?
[13:50] <henninge> cp, not r-c
[13:50] <bigjools> henninge: I can do that on the existing one
[13:50] <bigjools> it's for r-c
[13:50] <bigjools> so it goes in this release
[13:50] <henninge> oh, right, we release
[13:50] <henninge> ;)
[13:50] <bigjools> :)
[13:51] <henninge>  bigjools: as you like it ;)
[13:51] <bigjools> that restricted architecture stuff that was done as a while ago was a total shambles
[13:52] <bigjools> this is not the first fix to what you'd think would be an obvious bug
[13:52] <henninge> uh-oh
[13:52] <henninge> I am still -1 on the (actual, expected) thing, btw.
[13:53] <bigjools> it reads so much better to me that way :/
[13:53] <bigjools> then it's more like how we write code with a '==' operator
[13:55] <mwhudson> you could always use assertThat(value, Equals(expected)) :-)
[14:11] <adiroiban> jtv, henninge hi, I have updated the branch for POFile statistics, to export them as a dedicated object https://code.edge.launchpad.net/~adiroiban/launchpad/bug-583934/+merge/26965
[14:12] <jtv> adiroiban: thanks, I'll take a look right now
[14:12] <adiroiban> i had to create a canonical_url for the new object
[14:12] <adiroiban> not sure if we want that
[14:12] <adiroiban> or we want to create StatisticsObject for each statistics type
[14:13] <adiroiban> or a single StatisticsObject that will handle statistics for POFile, DistroSeriesLangauges, SourcePackages
[14:25]  * StevenK pouts at adiroiban jumping the queue :-P
[14:29] <adiroiban> StevenK: sorry for that. This is a pre-imp chat , not a real MP
[14:32] <StevenK> adiroiban: It's all good :-)
[15:06] <jtv> adiroiban: what you did looks right to me (though I'm not a zope expert) though I wouldn't special-case the "statistics" string in the navigation class.  Wouldn't +statistics (or +stats) be a cleaner way to solve this?
[15:07] <adiroiban> jtv: afaik, +somethins is for describing a view
[15:07] <adiroiban> not an object
[15:08] <jtv> adiroiban: frankly I've always wondered about that.  :)
[15:10] <adiroiban> also, I don't know how to avoid the special casing on the URL traversal
[15:11] <jtv> True, you'll definitely have to have _some_ special-casing if we don't want to rearrange our URLs
[15:12] <adiroiban> jtv: what I am not sure that I did right, is the exposure of TranslationStatistics objects only in the API and not in the browser view
[15:13] <adiroiban> I am not sure if this is ok
[15:13] <adiroiban> or the rule is to have a direct match between API and the browser views
[15:14] <jtv> adiroiban: I don't know of any such rule... maybe someday we'll find it useful to attach a small view to this but that's for later I think.
[15:15] <adiroiban> ok
[15:16] <adiroiban> then I will go on and polish the code
[15:17] <StevenK> henninge, abentley: Which one of you wants to look at my MP? :-)
[15:18] <henninge> StevenK: already lookin
[15:18] <henninge> g
[15:20] <adiroiban> jtv: there is one more think I would like to ask. in model.POFile.translation_statistics , it creates a new statistics object on each call. Would it not be better to create a single statistics object in POFile.__init__, and retrieve it as a singleton?
[15:21] <jtv> adiroiban: I don't think it's worth it.
[15:21] <jtv> We try not to cache things in ORM-backed classes.
[15:21] <adiroiban> jtv: for the future, I was thinking that we can move all translation statistics methods into this new object
[15:21] <lifeless>  think + is used for many things
[15:21] <lifeless> +text, for instance
[15:22] <jtv> adiroiban: that still won't make it very expensive to create one of these objects, and bear in mind the object only lives for the duration of the request so it's not taking up space across requests either.  I just don't think it's a problem.
[15:23] <adiroiban> jtv: ok :)
[15:23] <jtv> We have some other classes like this, like SourcePackage.
[15:30] <adiroiban> jtv: thanks. than I'm good. I will come back with a real MP :)
[15:31] <jtv> adiroiban: great, thanks!
[15:34] <adiroiban> lifeless: are you saying that I can use +statistics to retrieve an object and then have something like IPOFile/+statistics/+statisticsview ?
[15:34] <lifeless> maybe
[15:34] <lifeless> I'm going to try sleeping again :P gnight
[15:34] <adiroiban> :)
[15:34] <adiroiban> good nigh
[16:39] <StevenK> henninge: No news is good news?
[16:40] <henninge> StevenK: sorry but most likely yes ;)
[16:42] <StevenK> henninge: Assuming silence to mean 'r=<nick>' is fraught with peril. And most likely, a lynching.
[16:42] <henninge> StevenK: yes, I got distracted but I am preparing my reply now. Hang in there.
[16:45] <henninge> StevenK: The test uses a celebrity for software-center-agent but the test uses this:
[16:45] <henninge> > +    >>> celebrity = factory.makePerson(name='software-center-agent')
[16:46] <henninge> Or am I missing a hidden functionality of makePerson that will return an existing person if the name matches?
[16:46] <StevenK> henninge: software-center-agent doesn't exist in the sampledata
[16:46] <henninge> But how can it be a celebrity, then?
[16:46] <StevenK> The celebrity look up is done via name
[16:47] <StevenK> So Julian and I thought it easier if the tests that needed it (of which there are about 4) just created it
[16:47] <bigjools> celebs don't need to be in the sampledata
[16:47] <henninge> I thought they do ...
[16:47] <bigjools> but StevenK does need to write a database patch to add it to production ;)
[16:48] <StevenK> I do? It already exists in production
[17:06] <henninge> bigjools, StevenK: But is it not bad practice to do something like getUtility(ILaunchpadCelebrities).software_center_agent when that is not defined in the interrface?
[17:07] <bigjools> henninge: what interface?
[17:09] <StevenK> The interface code calls that
[17:09] <StevenK> henninge: It only does so for commercial P3As
[17:11] <jtv> abentley, care to review this tiny branch?  https://code.launchpad.net/~jtv/launchpad/recife-test-fixup/+merge/29216
[17:13] <abentley> jtv, sure.
[17:13] <abentley> jtv, what does "recife" mean?
[17:13] <jtv> abentley: thanks.  Recife is a feature branch we're working on (after the location of the corresponding sprint).
[17:14] <abentley> What does it mean?
[17:14] <jtv> It is the location of the sprint corresponding to the feature we're working on.
[17:15] <abentley> jtv, I'm sure it won't be confused with "recipe" at all :-P
[17:16] <abentley> jtv, Why does being a feature branch mean that EC2 is no help?
[17:16] <henninge> StevenK: review sent, r=me but with a little uneasiness.
[17:16] <jtv> abentley: well, "ec2 land" is no help.
[17:17] <jtv> abentley: Thinking I could just grab Henning, I failed to explain much about the change.  A template can be attached to either a ProductSeries or a DistroSeries + SourcePackageName.  In a review change to a test I wanted to make a template as a "cousin" to an existing template.  But instead of creating it for a distroseries + sourcepackagename like the existing one, I created it for a productseries.
[17:17] <abentley> jtv, I see.
[17:18] <abentley> jtv, r=me.
[17:18] <jtv> abentley: thanks
[17:24] <bigjools> jtv: so you're using code names named after the sprint location too huh?
[17:24] <bigjools> this is a good trend.  I want a Maldives project.
[17:24] <jtv> bigjools: not as such, but coming up with a terse description of the feature somehow never became much of a priority with such a catchy name.
[17:25] <bigjools> jtv: we started tagging bugs "wellington" remember :)
[17:26] <mwhudson> tahiti would be ok, too
[17:27] <bigjools> as would tortola
[17:27] <bigjools> which is a really cool name
[17:27] <jtv> Read the draft treaty the global-warmists were working out in Kopenhagen...  Bali meeting, Bangkok meeting, Hawaii meeting...  really handy.
[17:29] <bigjools> there's certainly some increased air temperature at those meetings