[11:41] <danilos> EdwinGrubbs, hi, do you have time to take a look at https://code.edge.launchpad.net/~danilo/launchpad/bug-474874/+merge/14450
[12:31] <danilos> noodles775, al-maisan: I assume you are not doing any reviews today?
[12:31] <al-maisan> danilos: if need be I can review.
[12:32] <danilos> al-maisan, it's very short, just adding some DB permissions for a script: https://code.edge.launchpad.net/~danilo/launchpad/bug-474874/+merge/14450
[12:33] <noodles775> danilos: I'm not no, sorry.
[12:33] <al-maisan> danilos: OK .. give me 5 minutes and I'll review it.
[12:33] <danilos> al-maisan, excellent, thanks a lot
[12:33] <al-maisan> you are welcome 
[12:33] <danilos> noodles775, no problem, al-maisan is taking care of it :)
[12:39] <al-maisan> danilos: this is supposed to go into 'devel' .. is that correct?
[12:39] <danilos> al-maisan, yes, but I am actually going to ask for this to be CPed (or perhaps not, GRANTs might be enough)
[12:40] <danilos> al-maisan, note that security.cfg changes do not need to go into db-devel
[12:40] <al-maisan> danilos: fine, just checking.
[12:54] <al-maisan> danilos: looks good, r=me
[12:54] <danilos> al-maisan, thanks
[15:55] <adeuring> al-maisan: fancy a relatively small review? (or is already time for "Feierabend" for you?)
[15:56] <al-maisan> adeuring: a small one is OK.
[15:57] <adeuring> al-maisan: thanks! https://code.edge.launchpad.net/~adeuring/launchpad/hwdb-udev-submissions-noise-reduction-2/+merge/14479 (130 lines; just two tuples changed)
[15:57] <sinzui> beuno: ping
[15:58] <beuno> sinzui, hi
[15:58] <sinzui> your suggest for the yes-no widget rocks. it hard to do
[15:58] <al-maisan> adeuring: OK
[15:58] <sinzui> beuno: I'll work on it later today and see if I can make a universal dsolution
[15:59] <beuno> sinzui, because it uses db enums, yadayadayada?
[15:59] <sinzui> beuno: no actually not
[16:00] <sinzui> beuno: The launchpadformview custom_widget function does not work with macro-style widgets
[16:00] <sinzui> beuno: making my widget work or fixing LaunchpadFormView is a big win for reuability
[16:01] <al-maisan> adeuring: so, this is a 'devel' branch, right?
[16:01] <adeuring> al-maisan: yes
[16:01] <al-maisan> cool.
[16:01] <sinzui> beuno: Your suggestion is *much* better that what I did. I spent more than an hour trying to craft a sentence that would work with yes/no. or true/false, or on/off.
[16:02]  * sinzui thinks all the boolean radio macros suck.
[16:03] <beuno> sinzui, so I don't think yes/no will work well, no matter how we craft the phrases, if this is an urgent branch, I'd be happy to trade an approve now for a fix before week 4
[16:05] <sinzui> beuno: no not urgent. I completely agree with your suggest
[16:06] <beuno> sinzui, so can we still be friends if I push back on this?
[16:06] <sinzui> beuno: I think you misunderstand. I have no intention of landing this branch until that widget rocks.
[16:06] <al-maisan> adeuring: LP is still chewing on lp:~adeuring/launchpad/hwdb-udev-submissions-noise-reduction-2
[16:06] <beuno> sinzui, ah! great!  :)
[16:06] <al-maisan> I can't even merge it
[16:07] <adeuring> al-maisan: did you try to simply branch it?
[16:07] <al-maisan> yes
[16:07] <beuno> sinzui, other branch approved, it's a great improvement, thank you
[16:08] <al-maisan> adeuring: this is very funny:
[16:08] <al-maisan> $ bzr merge lp:~adeuring/launchpad/hwdb-udev-submissions-noise-reduction-2
[16:08] <al-maisan> bzr: ERROR: Not a branch: "bzr+ssh://bazaar.launchpad.net/~adeuring/launchpad/".
[16:08] <adeuring> al-maisan: odd... Let me paste the diff
[16:08] <al-maisan> am I missing something?
[16:08] <al-maisan> adeuring: please do.
[16:10] <adeuring> al-maisan: http://paste.ubuntu.com/310697/
[16:10]  * al-maisan looks
[16:14] <al-maisan> adeuring: r=me
[16:15] <adeuring> al-maisan: thanks!
[16:15] <adeuring> al-maisan: und schönen Feierabend!
[16:16] <al-maisan> adeuring: in 30 minutes or so :) but thanks anyway!
[17:02] <gary_poster> barry: I'd like your thoughts (consider it somewhere between a late pre-impl and a pre-review :-) ) on this: http://paste.ubuntu.com/310732/  It is supposed to be a fix for https://bugs.edge.launchpad.net/launchpad-foundations/+bug/475550
[17:02] <mup> Bug #475550: _pythonpath whitelist of clean_modules is too fragile <Launchpad Foundations:In Progress by gary> <https://launchpad.net/bugs/475550>
[17:02]  * barry looks
[17:02] <gary_poster> ty
[17:05] <gary_poster> barry: The old warning still has value, now that I think of it.  Here's a variant:
[17:06] <gary_poster> If I find any of the namespace packages using the approach in the pastebin, then I go through sys.modules again.
[17:07] <gary_poster> if anything in sys.modules begins with ``${one_of_the_namespace_packages}.`` (notice the dot) then blow u[
[17:07] <gary_poster> up
[17:07] <gary_poster> complaining, as before, that _pythonpath should be imported earlier
[17:09] <barry> gary_poster: what's an example of "fewer attributes" (or really different number of them)?
[17:10] <gary_poster> argh, my second idea doesn't work.  OK, here's the idea.
[17:11] <gary_poster> but I can make it work.
[17:12] <gary_poster> barry: In this example, ``example`` is a "real" package with only an empty __init__.py
[17:12] <gary_poster> >>> import example
[17:12] <gary_poster> >>> dir(example)
[17:12] <gary_poster> ['__builtins__', '__doc__', '__file__', '__name__', '__path__']
[17:12] <gary_poster> >>> import lazr
[17:12] <gary_poster> >>> dir(lazr)
[17:12] <gary_poster> ['__doc__', '__name__', '__path__']
[17:12] <gary_poster> lazr is one of these namespace things
[17:12] <gary_poster> so, barry, I think what I can do instead is look for __file__
[17:13] <gary_poster> no
[17:13] <gary_poster> that might not match some C modules, right?
[17:13] <barry> right
[17:13] <gary_poster> argh
[17:17] <gary_poster> barry: But C modules would actually have something exposed *other* than just those three, so the approach as given works.  What it *can't* do is actually recognize if there's a problem (e.g., lazr.uri was imported before) and complain, unless I switch to just hardcoding the namespace packages.
[17:17] <gary_poster> I'd rather not do that.  a different kind of fragility
[17:18] <barry> so inspect.getfile() actually tests for object.__file__ to see if it's a builtin module or not
[17:18] <barry> right
[17:19] <gary_poster> btw, I discovered why our deb zope packages don't have this problem: they are installed in debian with the egg-style __init__.py, not this crazy .pth thing.
[17:22] <barry> maybe...
[17:23] <barry> 1. look for module.__file__; if it exists it's fine
[17:23] <barry> 2. if not, look for module.__package__; if it exists it's a builtin; if not it's a pth namespace package
[17:23] <barry> >>> import _socket
[17:24] <barry> >>> _socket.__package__
[17:24] <barry>  
[17:24] <gary_poster> huh
[17:24] <barry> >>> for name in dir(_socket):
[17:24] <barry> ...   if name.startswith('_'):
[17:24] <barry> ...    print name
[17:24] <barry> ... 
[17:24] <barry> __doc__
[17:24] <barry> __name__
[17:24] <barry> __package__
[17:24] <barry>  
[17:25] <gary_poster> barry, cool.  That might work.  To make sure I understand, I am right that the presence of __package__ in this case is kind of random--that is, an implementation detail that might very well change?
[17:25] <gary_poster> s/I am/am I/
[17:25] <barry> gary_poster: i'd have to look at the code to know that ;)
[17:26] <gary_poster> heh, ok
[17:26] <barry> gary_poster: oh, let me also check py2.4
[17:26] <gary_poster> For me on 2.4:
[17:26] <gary_poster> >>> import _socket
[17:26] <gary_poster> >>> _socket.__package__
[17:26] <gary_poster> Traceback (most recent call last):
[17:26] <gary_poster>   File "<stdin>", line 1, in ?
[17:26] <gary_poster> AttributeError: 'module' object has no attribute '__package__'
[17:26] <barry> fsk
[17:26] <gary_poster> otoh, it has a __file__ ;-)
[17:27] <barry> yeah, so "implementation detail that might very well change" == True
[17:27] <gary_poster> right
[17:27] <barry> how strange!  why did python 2.6 lose _socket.__file__?!
[17:28] <barry> seems like that would still be pretty handy, and that _socket.__package__ is useless
[17:28] <barry> yay for nothing in the NEWS file about this
[17:30] <sinzui> barry: gary_poster: I have a small RC candidate for review: https://code.edge.launchpad.net/~sinzui/launchpad/noneable-bug-475433/+merge/14487
[17:32] <barry> sinzui: looking...
[17:34] <barry> sinzui: mp has no diff yet
[17:34] <sinzui> oh bugger
[17:35] <sinzui> I think we are waiting for both the branch scanner and the mp cron
[17:35] <sinzui> barry: do you want a pastebin?
[17:35] <barry> sinzui: sure
[17:36] <sinzui> http://pastebin.ubuntu.com/310757/
[17:37] <barry> sinzui: r-me
[17:37] <barry> er, r=me
[17:37] <gary_poster> barry: I think this will work.
[17:37] <gary_poster> (1) if there's a __file__ leave it alone; it's fine.
[17:37] <gary_poster> (2) if there is a name in the dir that is not __*__ and the full dotted name is not in sys.modules, leave it alone, it's fine.
[17:37] <gary_poster> (3) Otherwise, we have a namespace package, and we can act on that.  Moreover, if there *were* any names in sys.modules, that means that _pythonpath was imported too late.
[17:37] <sinzui> barry: thanks
[17:38] <gary_poster> Going to sketch that
[17:39] <barry> gary_poster: sounds reasonable.  i'm going to grab some lunch now.  feel free to paste anything for when i get back
[17:39] <gary_poster> barry: thank you, will do.
[18:12] <gary_poster> barry, fwiw: http://paste.ubuntu.com/310788/
[18:12] <gary_poster> going to make an MP
[18:22] <gary_poster> flacoste, barry: https://code.edge.launchpad.net/~gary/launchpad/pythonpath/+merge/14490
[18:26] <flacoste> gary_poster: i'll leave barry do the actual code review
[18:26] <gary_poster> flacoste: cool
[18:33] <gary_poster_> barry: I'm on this nick for a sec :-)
[18:45] <sinzui> flacoste: I have a small RC candidate for review: https://code.edge.launchpad.net/~sinzui/launchpad/noneable-bug-475433/+merge/14487
[18:47] <flacoste> sinzui: approved, add it to CRB
[18:47] <sinzui> thanks.
[19:13] <barry> gary_poster: looking
[19:13] <gary_poster> barry: thanks.  on call, so will have latency
[19:18] <barry> gary_poster: r=me
[19:19] <gary_poster> barry, thank you
[20:38] <abentley> rockstar: I can has review? https://code.edge.launchpad.net/~abentley/launchpad/fix-rewrite/+merge/14498
[20:38] <rockstar> abentley, is this for RC?
[20:38] <abentley> rockstar: Yes.
[20:39] <rockstar> abentley, I wonder if we should also fix the stdout flushing issue
[20:39] <rockstar> abentley, also, r=me
[20:39] <abentley> rockstar: thumper wanted to fix it by invoking the python interpreter with -u, so I've gotten mbarnett to do that.
[20:40] <rockstar> abentley, ah, okay. great.