[20:24] <lifeless> morning
[20:58] <lifeless> I can has review?
[22:27]  * mwhudson stabs xchat's url-finding 
[22:27] <mwhudson> lifeless: which is the most urgent of the reviews?
[22:27] <lifeless> they're all basically tiny; any of them would be great to have reviewed.
[22:27] <lifeless> test is trivial - bare except -> not bare except
[22:28] <mwhudson> ah, so the reviews are not related to the fire?
[22:28] <lifeless> no
[22:28] <lifeless> I'm just pouncing
[22:28] <mwhudson> heh
[22:29] <mwhudson> i need to persuade someone to fix the ath9k drivers, then my arrival in the morning will be less obvious
[22:30] <lifeless> mwhudson: actually, it was saying 'hi' that tipped me off
[22:49] <lifeless> thanks for test approval, to make ec2 land happy could you click on 'comment' change to 'approved', click in the text field, click on 'save commnt' ?
[22:50] <mwhudson> lifeless: i did, and it timed out :-)
[22:51] <lifeless> hah
[22:51] <lifeless> yes, waiting for a gsa/losa to appear
[22:51] <mwhudson> i think it took the second time
[22:51] <lifeless> elmo is trained
[22:51] <lifeless> by which I mean, a train is messing with his bandwidth
[22:51] <mwhudson> ah
[22:57] <mwhudson> lifeless: in https://code.edge.launchpad.net/~lifeless/launchpad/bug-631884/+merge/35219 i don't really understand the comment
[22:57] <mwhudson> "features have two homes" -> i don't see how the request home matters here?
[22:58] <lifeless> if you use LaunchpadTestRequest
[22:58] <lifeless> and create_initialized_view
[22:58] <lifeless> and the code you are calling calls into getFeatureFlag
[22:58] <lifeless> it all goes boom
[22:58] <lifeless> because nothing glues the two things together.
[23:01] <lifeless> what needs to happen is:
[23:02] <lifeless>  - the thread local should die
[23:02] <lifeless>  - it should be found via participations
[23:02] <lifeless>  - login() and scripts should set participations up
[23:02] <lifeless> its another case of building on mud.
[23:05] <mwhudson> i see
[23:05] <lifeless> the problem is that there are lots of tests that do stuff outside of publication
[23:06] <lifeless> or even outside of views
[23:06] <lifeless> so using that as the place to set/remove the thread local won't work well
[23:06] <mwhudson> lifeless: would it more appropriate to say something like "feature flags really should live on the request, but currently don't for reasons as stated in bug 623199" ?
[23:06] <lifeless> I don't konw.
[23:06] <mwhudson> s/request/participation/ i guess
[23:07] <lifeless> I think what I've written is correct without specifying /where/ etc : and its easier to change our mind in a bug than in the comments in the code
[23:07] <mwhudson> otoh, it's very likely that the next person to edit this code will be you and you can figure it out then :)
[23:07] <lifeless> thats true too
[23:07] <lifeless> I'm happy to change it, I don't see that it makes a lot of difference either way.
[23:08] <lifeless> I looked at zope.app.testing.functional.FunctionalTestSetup
[23:08] <lifeless> zomg
[23:08] <lifeless> its -terrible-
[23:11] <mwhudson> lifeless: for the pageid feature thing, i don't see how pageid is ever set to stuff like scoped:thing#type
[23:11] <lifeless> check out api publication
[23:11] <mwhudson> i am
[23:13] <lifeless> servers.py
[23:14] <lifeless> no, sec
[23:16] <lifeless> https://code.edge.launchpad.net/~matsubara/launchpad/bug-606184-pageid-for-collections/+merge/33801
[23:17] <lifeless> is what landed
[23:17] <lifeless> 'FakeContext:FakeCollectionResourceView:#milestone-page-resource'
[23:17] <lifeless> is an example
[23:17] <lifeless> so its :#
[23:18] <mwhudson> ah
[23:18] <lifeless> which my code will handle because it elides empty segments
[23:18] <lifeless> (but I knew there was a good reason)
[23:18] <lifeless> see also https://bugs.edge.launchpad.net/launchpad-foundations/+bug/627027
[23:19] <mwhudson> ah ok
[23:19] <mwhudson> there are no tests of the empty segment handling
[23:19] <lifeless> yes
[23:19] <lifeless> I shall add one for that example pageid
[23:20] <lifeless> actually there are tests of empty segment handling
[23:20] <lifeless> pageid:
[23:20] <lifeless> -> ['']
[23:20] <lifeless> without the empty segment code
[23:20] <lifeless> e.g. tests will fail if you remove the 'if name' clause
[23:20] <mwhudson> i guess
[23:20] <mwhudson> that's not very test as documentation though
[23:20] <lifeless> yes
[23:21] <lifeless> I shall add one
[23:21] <lifeless> just saying :)
[23:21] <mwhudson> ok
[23:23]  * mwhudson stares at an ajax spinner thing
[23:27] <mwhudson> third time lucky, sigh
[23:28] <lifeless> thanks!
[23:31] <mwhudson> huh, https://code.edge.launchpad.net/launchpad/+activereviews just got truncated on me
[23:32] <lifeless> yaup
[23:33] <mwhudson> huh, googling "truncated haproxy" finds some interesting stuff
[23:33] <mwhudson> i guess you're ahead of me on that game though :-)
[23:35] <lifeless> if there were specific ones that would be good
[23:35] <lifeless> however http/1.0 and truncation is a designed in 'feature' ><
[23:35] <mwhudson> lifeless: well http://www.mail-archive.com/haproxy@formilux.org/msg02145.html
[23:37] <lifeless> heh, thats a bug indeed