[01:14] <adorilson> hi, people
[01:19] <fagan> hey adorilson
[01:33] <adorilson> fagan: any problem if I have file with names codified in iso-8859-1?
[01:33] <adorilson> my ubuntu is utf-8
[01:38] <fagan> adorilson: id say file a bug report against ubuntuone-client
[02:16] <adorilson> fagan: ok
[07:13] <mandel> morning all!
[07:23] <duanedeisgn> hey mandel1
[07:25] <mandel1> duanedeisgn: hello!
[07:37] <fagan> hehe I got my twisted server and client working last night :)
[07:37] <fagan> After a week of reading about it its nice to actually get something working
[07:49] <duanedeisgn> nice fagan
[09:01] <mandel1> wow, people don't know there result for
[09:01] <mandel1> 10 + 10 x 0
[09:01] <mandel1> this planet is doomed...
[09:01] <rye> mandel1, 10?
[09:02] <mandel1> rye: exactly, and A LOT of people think s 0
[09:02] <mandel1> and they used a calculator… WTF
[09:03] <rye> mandel1, ah, well, it depends on how the condition is given, but yes, calculator w/o full statement support will give 0
[09:03] <mandel1> rye: it just means the know nothing about maths, full stop
[09:03] <rye> ok
[09:03] <rye> :)
[09:03] <mandel1> and needing a calcilator for that is … weird
[09:04] <mandel1> rye:  ;)
[09:15] <ralsina> mandel1: the problem is people never remember operator priority
[09:16] <mandel1> ralsina: I think most people do not understand maths at all
[09:17] <ralsina> indeed
[09:17] <ralsina> when we hadrotay phones, I used to ask what the result of multiplying the numbers, starting with the 1 was.
[09:17] <ralsina> took them MINUTES
[09:25] <ralsina> mandel1: +1 on allow_txnamedpipes_reactor but it really needs a hard review
[09:25] <mandel1> ralsina: ok, I'll ask dobey whenever he is back
[09:25] <fagan> ralsina: oh while you are here what should I be doing this week?
[09:26] <ralsina> fagan: how's twisted working for you?
[09:26] <fagan> ralsina: well I read down through all the notes and got the client and server set up from scratch
[09:26] <ralsina> cool
[09:27] <fagan> ralsina: and I got a good look at the u1 twisted code so I saw it in practice
[09:27] <ralsina> fagan: even better
[09:28] <ralsina> fagan: I will try to find some bugs where you can try to do a branch proposal, how does that sound?
[09:28] <fagan> ralsina: sure ill go hunt down some bugs
[09:28] <fagan> after I get some milk :)
[09:28] <ralsina> fagan: if you see one that you think "hey, I know where that is" ping me :-)
[09:28] <fagan> ralsina: cool
[09:44] <mandel1> ralsina: we have sso working with Qt and name pipes :)
[09:44] <ralsina> mandel1: yay!
[09:45] <mandel1> ralsina: will propose the merge and then will move sso to use json instead of pb
[09:47] <ralsina> cool
[09:52] <mandel1> ralsina: you are right about the wt integration I have to be careful with [] () etc.. the idea would be to do a data is not None
[09:52] <mandel1> ralsina: right?
[09:52] <ralsina> I think so.
[09:52] <ralsina> None is what you get if there isno data key in the dict
[09:52] <ralsina> OR if data is None ;-)
[09:53] <ralsina> so maybe you will have to use has_key or something
[09:53] <ralsina> or data in event.__dict__
[09:55] <mandel1> ralsina: hm.. so far it works wit no problems… can you think of any case in which an event from twsited has that issues?
[09:55] <ralsina> well, it simply depends on what you can get in data
[09:56] <ralsina> now, what is in there depends on the caller. If we are not careful, in the far future someone is going to put the wrong thing in it
[09:58] <mandel1> ralsina: hm so we have to check if the key is present.. but get does not return None, does it?
[09:58] <ralsina> get returns None if the key is not present
[09:59] <mandel1> ah… dammed, I'll update for that case
[10:00]  * fagan back 
[10:00] <mandel1> ralsina: data will always be there, it is a QEvent, when are we going to get anything else?
[10:00] <ralsina> the alternative is using __dict__["data"] and catch the key exception
[10:01] <ralsina> mandel1: let me check
[10:01]  * mandel1 likes to work in hard code like this :)
[10:02] <ralsina> for extra fun, the data member is not there in C++ ;-)
[10:02] <fagan> mandel1: /nick mandel hehehe
[10:02] <fagan> (kidding)
[10:03] <mandel1> ralsina: you are shitting me?
[10:04] <mandel1> fagan: nah, no need, you just have to type man in any case :P
[10:04] <fagan> mandel1: actually its just m<tab>
[10:05] <mandel1> well, yes I'm the first one :)
[10:05] <ralsina> mandel1: http://doc.qt.nokia.com/latest/qevent-members.html
[10:05] <ralsina> in C++ there is a d pointer to QEventPrivate
[10:07] <ralsina> mandel1: welcome to the not-so-nice-parts of PyQt
[10:08] <mandel1> ralsina: but we should be looking at what PyQt/sip does by default right? since this code will only be used in a project that uses twisted and Qt which can only be python
[10:08] <mandel1> hehehe
[10:08] <ralsina> mandel1: yes, indeed. But the thing is, I can't find anywhere any guarantees that there *will* be a data member, so you *may* get a None by default
[10:08] <ralsina> I will check the PyQt source code, I guess
[10:09] <mandel1> ralsina: yes, I was going to say the smae exact thing
[10:09] <mandel1> s/smae/same
[10:10] <ralsina> I am guessing data() returns QEvent.d
[10:12] <mandel1> ralsina: I can imaging that...
[10:12] <ralsina> ahhhhh isn't this  a QCustomEvent instead of a plain QEvent?
[10:13] <ralsina> ok, forget it, makes no difference
[10:13] <mandel1> ralsina: no idea… this is waaaaaay to advance for me and PyQt ;)
[10:13] <ralsina> mandel1: hahaha
[10:13] <mandel1> ralsina: I'm going to grab a coffee will be back asap ;)
[10:14] <ralsina> mandel: I would use __dict__["data"] and then if not None, and wrap it in a try ... except KeyError
[10:14] <ralsina> mandel1: suspenders and belts approach
[10:30] <fagan> hmmm nothing is jumping out at me
[10:43]  * fagan stupid errand I forgot
[10:50] <mandel1> ralsina: hmm lets do that, it should work correctly
[10:52] <ralsina> mandel1: cool
[10:53] <ralsina> other than that I see nothing bad in the code
[10:54] <mandel1> ralsina: sweet, so I make the changes, push you install it and try the new sso branch
[10:54] <ralsina> mandel1: cool
[10:54] <mandel1> ralsina: next json-rpc which will allow us to have the Sheel extensions :)
[10:54] <ralsina> mandel1: great
[10:55] <mandel1> s/Sheel/Shell
[11:17] <mandel1> ralsina: new version pushed, will propose sso with namedpipes too so you can test in your machine which is the one that had issues with the firewall
[11:17] <mandel1> is that ok?
[11:17] <ralsina> mandel1: awesome
[11:18] <mandel1> ralsina: you can try the sso here: https://code.launchpad.net/~mandel/ubuntu-sso-client/use_txnamedpipes/+merge/61935
[11:18] <ralsina> mandel1: cool, on it
[11:18] <mandel1> ralsina: moving to use json-rp right now
[11:19] <ralsina> mandel1: windows claims I have to do lots of maintenance, so I will let it do its thing and have lunch
[11:19] <ralsina> then will run the branch
[11:19] <mandel1> ralsina: ok, no problemo
[11:40] <alecu> hello #ubuntuone!
[11:42] <alecu> ralsina, mandel1: ping
[11:42] <ralsina> alecu: pong
[11:42] <duanedeisgn> o/
[11:43] <mandel1> alecu: hello!
[11:46] <ralsina> alecu_: ?
[11:46] <duanedeisgn> is mr rye_ around?
[11:47] <alecu_> hi ralsina. I'm starting early today, because I'm in colonia and need to catch the ferry early in the afternoon.
[11:47] <ralsina> alecu_: ok
[11:47] <rye_> duanedeisgn, mr rye_ is not available to comment mr rye_'s presence
[11:47] <alecu_> ralsina, also: I have a few Qt questions on my latest branch.
[11:47] <rye> rye, is
[11:48] <alecu_> ralsina, let me point you at it...
[11:48] <ralsina> alecu_: cool
[11:48] <alecu_> ralsina, https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-scissors/+merge/61845
[11:49] <ralsina> it *is* merged ;-)
[11:49] <alecu_> ralsina, not the merged one!
[11:50] <ralsina> ohhhh ok
[11:50] <ralsina> got it. Question at will
[11:50] <duanedesign> rye: i remember having a conversation about conflicts happeniing from a single computer
[11:51] <rye> duanedesign, uh-huh, facundobatista has found another thing that could have created this condition, fixable on the server side
[11:51] <alecu> ralsina, first question has to do with layouts... I've been playing with qt designer, but have been unable to set the right layout for the custom widget that goes inside the main window.
[11:52] <alecu> ralsina, in the branch it shows the problem as the notebook is not following the window while it resizes.
[11:52] <duanedesign> rye: i was asking because I was curious if any of the work would affect the issue this user is having  http://ubuntuforums.org/showthread.php?t=1764140
[11:52] <ralsina> when you have the one you did on designer, does it stretch correctly when you resize the window?
[11:53] <alecu> ralsina, yes, it does. And all the other widgets that go inside the tabs stretch fine too.
[11:53] <ralsina> ok
[11:53] <rye> duanedesign, eeexactly
[11:53] <rye> duanedesign, i spent a day working on a single document and in the end i was able to get a conflict
[11:53] <ralsina> alecu: ok. What you have to do is set a layout in the tab, and add the "inner" widget to the layout
[11:54] <duanedesign> rye: ok
[11:54] <ralsina> alecu: or... I can get the branch and see first. Give me 2'
[11:58] <ralsina> alecu: how can I see the panel with the tabs loaded?
[11:59] <alecu> ralsina, you have to "git clone" the qtreactor somewhere, and then PYTHONPATH=~/abc/:. ./bin/ubuntuone-control-panel-qt
[11:59] <alecu> (~/abc being the parent to the qtreactor checkout)
[12:00] <ralsina> alecu: ok
[12:00] <alecu> ralsina, git clone https://github.com/ghtdak/qtreactor.git
[12:00] <mandel1> ralsina, alecu: later I'll make the change to the txnamedpipe reactor with Qt integration, that is in lp and is under our control :)
[12:01] <ralsina> alecu: of course this assumes I have git on windows ;-)
[12:01] <alecu> mandel1, cool.
[12:01] <ralsina> ok, I do have it :-)
[12:02] <alecu> ralsina, or you can just get this single file, and put it in a "qtreactor" folder with an empty __init__.py
[12:02] <alecu> https://github.com/ghtdak/qtreactor/raw/master/qt4reactor.py
[12:02] <alecu> ralsina, or git for windows, right :-)
[12:03] <ralsina> alecu, you are doing this on linux, right?
[12:03] <alecu> ralsina, right
[12:03] <ralsina> ok, I get a missing qt.dbus.mainloop error
[12:03] <ralsina> I' ll try it on linux now
[12:05] <alecu> ralsina, yes, sorry. I decided to make this work on linux first, and then we can port it when we have the dbus replacement reactor working on windows.
[12:06] <ralsina> ok
[12:06] <alecu> ralsina, so: I went ahead and did the layout in designer for all tabs in the "windows dashboard 2.5" spec. I also have some questions about icons, but we'll get to that after this.
[12:10] <mandel1> alecu: now that you mentoned icons, you had a question of why I has compiiling the .ui files right?
[12:10] <ralsina> ok, I' ll get this running in 1 minute
[12:10] <mandel1> alecu: did I ever answer it, my memory of last wekk is a little off :P
[12:11] <alecu> mandel1, first it was "why", then I found out it was standard practice in pyqt. Then it morphed into "how", and I found out you were doing it in "setup.py build".
[12:11] <alecu> mandel1, so consider that question solved :-)
[12:11] <mandel1> alecu:  ok :)
[12:12] <mandel1> alecu: there are some nice steps in the compilation if you are ever interested :)
[12:12] <alecu> mandel1, I ended up stealing code from the setup.py in -sso for the -controlpanel
[12:12] <ralsina> the other reason to compile them is that if we ever switch to pyside, loading them dynamically sucks on PySide
[12:12] <alecu> ralsina, cool.
[12:13] <ralsina> gotta reboot the natty VM, has no network for some reason
[12:13] <alecu> ralsina, mandel1: the way to compile here is just like in sso: "./setup.py build"
[12:14] <mandel1> alecu: cool, in that code, there is a way to just tell the setup.py to look for the icons in an generate a resource file with them using the correct prefix
[12:14] <ralsina> mandel1: we now have 5 applicants for the windows guy position
[12:14] <mandel1> ralsina: 5, hurray!
[12:14] <ralsina> we should start interviewing this week
[12:14] <mandel1> ralsina: do you need me to give a hand?
[12:14] <mandel1> a least I can ask evil quetions ;)
[12:14] <ralsina> mandel1: I would like you to be around, yes
[12:15] <alecu> mandel1, cool, I'm interested in icons right now... can you tell me more?
[12:15] <ralsina> alecu: basically you create the resource file (trivial XML) and compile it to .py using pyrcc4
[12:16] <mandel1> alecu: sure, I have like 15 min befor eI I go to srt some errands, mumble?
[12:16] <mandel1> is faster than typing :)
[12:17] <alecu> mandel1, oh, sorry. I'm in a hotel room and the whole family is sleeping next to me... we can do irc now or mumble later.
[12:17] <mandel1> alecu: laters then, no problem
[12:17] <mandel1> just do the following, consider that icons will be added in ta folder somewhere in the project data/icons for example
[12:17] <mandel1> and add the icons there whenever you need them
[12:18] <alecu> mandel1, got that.
[12:18] <mandel1> alecu: later when you need them use them as if they where in a resource file
[12:18] <alecu> mandel1, ralsina: and how do I use the icons from designer?
[12:19]  * alecu better check about resources in ralsina's tutorial.
[12:19] <mandel1> alecu: ;)
[12:19] <ralsina> alecu: use any icon property and ask to "load a resource"
[12:19] <mandel1> alecu: just imaging you already have a resource
[12:19] <ralsina> in fact, you can use designer to create/edit the resource file
[12:20] <mandel1> ralsina: no no no, that is done by the setup.py
[12:20] <ralsina> mandel1: hahaha forgot about the magic bits ;-)
[12:20] <mandel1> ralsina: main reason, we might have diff icons according to lang etc.. we have to make sure we are nice with translators ;)
[12:20] <mandel1> ralsina: I'm really proud of that setup.py ;)
[12:23] <ralsina> alecu: got it running
[12:23] <mandel1> alecu: the important thing is to tell the designer the correct resource path, although the designer wont show the icon, at runtime it will be there
[12:24] <alecu> mandel1, oh, ok.
[12:24] <alecu> ralsina, cool.
[12:24] <ralsina> alecu: basically, the " notebook"  is not resizing, right?
[12:24] <alecu> ralsina, right.
[12:24] <ralsina> let me see the .ui file...
[12:25]  * mandel1 goes to fix errands...
[12:25] <alecu> mandel1, ralsina: and what widget should I use for the icons? I was guessing the "Graphics View", but somehow didn't sound right.
[12:25] <alecu> fix em!
[12:25] <ralsina> alecu: label
[12:25] <ralsina> QLabel, that is :-)
[12:25] <alecu> label!
[12:25] <alecu> cool.
[12:25] <mandel1> ralsina: did you get my status mail?
[12:26] <ralsina> mandel1: yep, got it
[12:26] <mandel1> ok, I go then, wll be back asap!
[12:26] <alecu> ralsina, qlabel + rich text inside it?
[12:26] <ralsina> alecu: if you need to, yes
[12:26] <ralsina> alecu: if it' s just an icon, set the pixmap property
[12:27] <alecu> ok, great.
[12:27] <ralsina> alecu: I see where you create the ControlPanel class that loads the controlpanel.ui
[12:27] <ralsina> where are you using that class?
[12:27] <alecu> ralsina, inside "mainwindow.ui"
[12:28] <ralsina> ohhh ok, let me see that one ;-)
[12:28] <alecu> ralsina, I have the centralwidget promoted to ControlPanel
[12:28] <alecu> ralsina, perhaps I can get rid of that indirection.
[12:28] <ralsina> ok, you also have t set a layout
[12:29] <ralsina> alecu: since we don' t have menus and whatnot, yeah
[12:29] <alecu> ralsina, where should I set a layout?
[12:29] <ralsina> oops, forget that, you can' t
[12:30] <ralsina> give me 1' to see how that works
[12:30] <alecu> ralsina, I'll try getting rid of that indirection.
[12:31] <ralsina> yeah, and this problem goes away
[12:32] <ralsina> the solution is probably to add the promoted widget as a child of the central widget, but it' s weird, and it should work as is
[12:34] <ralsina> alecu: yes, that I said abovr is the "solution"
[12:35] <ralsina> at least it' s what everyone who ran into it before did ;-)
[12:36] <alecu> ralsina, is there a way to do that from the designer, or should it be done manually from the code?
[12:36] <ralsina> alecu: remove the promotion, drag a widget into the window, promote that one, then do a layout on the centralwidget
[12:37] <ralsina> " do a layout"  -> "right click on the central widget, layout, vertical"
[12:38] <alecu> right.
[12:39] <alecu> well, I've tried the other route (putting the notebook directly inside the window) and it didn't work right. Plus I remembered why we better split the window from the notebook:
[12:40] <alecu> instead of the window probably we would add the "welcome to u1, signup or login" screen and hide the notebook.
[12:40] <ralsina> yes. We can do that too by having a stackwidget that contains both things in two pages, but then you have a way too hard ui file
[12:40] <alecu> (some other phrasing probably would make more sense)
[12:41] <alecu> hmmm... that sounds even better I think.
[12:41] <ralsina> it's better to keep it separate, and this fix should work ok
[12:41] <ralsina> we can even have a stackwidget that loads the widgets from ui files ;-)
[13:06] <alecu> ralsina, btw: removing the promotion and adding a widget worked all right. I had a bit of a trouble because I forgot to compile the .ui all the time today :P
[13:07] <ralsina> alecu: haha cool
[13:20] <alecu> ralsina, I'm off to have breakfast, bbl
[13:20] <ralsina> alecu: buen provecho
[13:34]  * fagan back 
[13:49] <ralsina> everyone, standup in 11'
[14:00] <fagan> me
[14:02] <ralsina> me
[14:02] <ralsina> ok, nessita has a doctor' s appintment, mandel is on errands, and alecu is having breakfast
[14:02] <ralsina> thisfred?
[14:02] <ralsina> dobey?
[14:03] <thisfred> me
[14:03] <thisfred> sry
[14:04] <dobey> me
[14:04] <fagan> DONE
[14:04] <fagan> * Finished learning twisted and got a client and server working and talking to each other \o/
[14:04] <fagan> TODO
[14:04] <fagan> * Talk with Chipaca about going to the sprint
[14:04] <fagan> * Find a bug I can do
[14:04] <fagan> * Do a blog post about last week and how twisted works
[14:04] <fagan> Blocked
[14:04] <fagan> * nope
[14:04] <fagan> NOTE
[14:04] <fagan> * If you have any good bugs that can be handled by a noob send them my way
[14:04] <fagan> ralsina: go
[14:05] <ralsina> DONE: reviews, canonicaladmin, read CVs for windows job, day off on friday
[14:05] <ralsina> TODO: finish one big test formandel, not much else today
[14:05] <ralsina> BLOCKED: no
[14:05] <ralsina> thisfred?
[14:05] <thisfred> DONE: reviewed https://code.launchpad.net/~alecu/ubuntuone-control-panel/tx-qt-mainloop/+merge/61652 | Looked at: Bug #781875, packaging qtreactor and making u1cp use u1lint
[14:05] <thisfred> TODO: finish Bug #781875, packaging qtreactor and making u1cp use u1lint, Bug #781119, Bug #781538
[14:05] <thisfred> BLOCKED: no
[14:05] <thisfred> LIKED: dogsitting http://www.flickr.com/photos/teensy/5748856887/lightbox/
[14:05] <ubot4> Launchpad bug 781875 in ubuntuone-control-panel "ERROR - ReplicationSettingsChangeError: args (<ubuntuone.controlpanel.dbus_service.ControlPanelBackend at /preferences (affects: 1) (heat: 17)" [Undecided,Confirmed] https://launchpad.net/bugs/781875
[14:05] <thisfred> NEXT: dobey
[14:05] <ubot4> Launchpad bug 781119 in ubuntuone-couch (Ubuntu) (and 1 other project) "Crashes if not logged into Ubuntu One (affects: 1) (heat: 6)" [Medium,Confirmed] https://launchpad.net/bugs/781119
[14:05] <ubot4> Launchpad bug 781538 in ubuntuone-couch (Ubuntu) (and 1 other project) "OAuth support doesn't handle query parameters (affects: 1) (heat: 469)" [Undecided,New] https://launchpad.net/bugs/781538
[14:05] <dobey> λ DONE: Some more nightlies work
[14:05] <dobey> λ TODO: Still some more nightlies work, reviews
[14:05] <dobey> λ BLCK: None.
[14:06] <ralsina> dobey: mandel wants a review from you for https://code.launchpad.net/~mandel/ubuntuone-dev-tools/allow_txnamedpipes_reactor/+merge/61515
[14:06] <dobey> yes i saw
[14:07] <ralsina> mandel' s report coming up...
[14:07] <ralsina> DONE: We have got the txnamedpipes project to provde two dff ypes of reactors one with a plain IOCPReactor implementation and a second one with a ThreadedIOCPReactor. The diff is that the IOCPReactor does no use an external main loop while the Threaded can do. We also have the correct parts to use the Qt main loop. SSO has been ported to use the later so that we can show the UI.
[14:07] <ralsina> TODO: Port sd to use the txnamedpipes code with a simple IOCPReactor. Do the same with control panel.
[14:07] <ralsina> BLOCKED: no, there are no ciguaguas left to kill :)
[14:08] <ralsina> that was madenl' s report ;-)
[14:09] <nessita> me!
[14:09] <thisfred> ralsina: ah, mandel's report implies we'll not be using qtreactor?
[14:09] <ralsina> thisfred: good question
[14:09] <dobey> mandel1, ralsina: i wanted to discuss the implementation with you, because it doesn't make sense to me
[14:09] <thisfred> I'll wait for him before continuing packaging that
[14:09] <nessita> DONE: reviews, QT learning, tested QT reactor branch from alecu
[14:09] <ralsina> thisfred: for which I have as answer "maybe"
[14:09] <thisfred> claro ;)
[14:09] <ralsina> dobey: sure, as soon as mandel is back...
[14:10] <dobey> right
[14:10] <nessita> TODO: define tasks and assignees for control panel, catch up with ralsina, breathe
[14:10] <nessita> BLOCKED: no
[14:10] <nessita> hello all!
[14:10] <thisfred> hi nessita!
[14:10] <alecu> hello nessita!
[14:10] <thisfred> keep breathing, it's good for you ;)
[14:10]  * nessita breaths in, breaths out
[14:11] <nessita> I had to run, there was a traffic jam near my house
[14:11] <dobey> ralsina: your TODO seems short :)
[14:12] <ralsina> dobey: it's after 4PM here ;-)
[14:12] <ralsina> and I have been here since 8AM
[14:12] <nessita> ralsina: what's your TODO?
[14:13] <ralsina> nessita: I have to test sso with the new reactor
[14:13] <alecu> me
[14:13] <alecu> DONE: got twisted+qt branch merged; proposed a branch with the .ui files for all the dashboard 2.5 panels
[14:13] <alecu> TODO: a branch to rename fields in said panels; start connecting widgets with backend
[14:13] <alecu> BLOCKED: no!
[14:13] <nessita> ralsina: what is the "new reactor"?
[14:13] <alecu> the iocp+qt reactor, right?
[14:13] <dobey> ralsina: oh, ok; i see you accepted my swap days and the national holiday now :)
[14:14] <ralsina> nessita: oops. with the namedpipes thingie.
[14:14] <ralsina> I had firewall problems with the old tcp-based ipc
[14:14] <nessita> ralsina: I have no idea what you're talking about :-)
[14:14] <fagan> Oh add 2 more things to my standup Done * talked with Chipaca and going to the sprint TODO * book tickets
[14:14] <nessita> shall we mumble?
[14:14] <ralsina> nessita: here' s the short version ;-)
[14:14] <ralsina> we are using twisted+TCP to do the SSO IPC
[14:14] <dobey> some people mumble too much already, let's not encourage such behavior
[14:15] <ralsina> buuuut windows complains when you open tcp ports. So, our contractor has done a namedpipes twisted thing (I think reactor, but maybe I am confused, my twisted-fu is weak)
[14:15] <ralsina> therefore, I have to try SSO with the non-tcp ipc in place
[14:15] <dobey> it is a twisted reactor, yes
[14:16]  * ralsina was right all along ;-)
[14:16] <dobey> hence the name "txnamedpipes"
[14:16] <dobey> which makes my stomach ache :)
[14:16] <ralsina> dobey: hahaha try raki, it will make it hurt differently
[14:16] <nessita> ralsina: so, how does this interacts with the QT control panel?
[14:16] <dobey> ralsina: i have had raki before :)
[14:17] <ralsina> nessita: the IPC between syncdaemon and the control panel will use this
[14:17] <ralsina> the tricky part is interaction with the Qt main loop, which manuel was working on
[14:17] <alecu> nessita, the namedpipes reactor == the iocp reactor
[14:17] <dobey> i don't think it's tricky, i think we're just doing it totally wrong by using twisted
[14:18] <nessita> ralsina: right, but do we still need the qtreactor? it has given us quite some headhaches, specially when defining how to distribute it
[14:18] <alecu> dobey, you mean on the control panel, right?
[14:18] <ralsina> nessita: I am pretty sure we won' t use it, if this actually works. Which I have to try ;-)
[14:18] <dobey> alecu: i mean anywhere it is generally not a neccessity, yes (iow, anywhere outside of syncdaemon)
[14:18] <ralsina> Manuel
[14:19] <ralsina> oops
[14:19] <nessita> ralsina: so, how/when are we knowing for sure if this awesome thing works?
[14:19] <ralsina> nessita: 2 hours
[14:19] <nessita> ralsina: great. Have we heard back from mandel1?
[14:20] <ralsina> nessita: we were working all day, he has gone to do an errand
[14:21] <nessita> even better news
[14:21] <nessita> alecu: so, you mentioned you worked on all the screens?
[14:22] <alecu> dobey, I agree that adding twisted to the control panel adds complexity, but I believe it's easier and faster than making a jsonrpc client going thru iocp that's async and integrates well with qt on windows.
[14:23] <alecu> nessita, yes, I have a branch with all the screens, here: https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-scissors/+merge/61845
[14:23] <ralsina> qt does give you all the needed pieces for the client, but it's all pretty low level
[14:23] <dobey> alecu: i don't understand that comment about jsonrpc?
[14:24] <nessita> alecu: looking
[14:25] <alecu> dobey, we need to speak to syncdaemon from a windows explorer plugin to show emblems on it. The way we are doing it is by exporting jsonrpc over iocp in syncdaemon, replacing the sd dbus interfaces.
[14:25] <dobey> alecu: i don't think it would be any more difficult to do that directly in qt, vs doing it inside twisted and trying to integrated a different twisted reactor into the qt main loop
[14:33] <alecu> dobey, the thing is that we already have the iocp running and tested on twisted, and the xmlrpc layer as well. So integrating it with qt looks to me like the shorter route, and I believe both mandel and ralsina agree.
[14:34] <ralsina> dobey: yes, I think you may be underestimating how much work implementing this on Qt is.
[14:34] <alecu> sorry, not xmlrpc but jsonrpc
[14:37] <dobey> ralsina: i don't think so. i think i am looking at the QLocalSocket API, and seeing that it looks fairly well documented and easy enough to implement such a thing on top of. and nobody is disputing that. the only responses i've gotten so far are "well someone already did some work on top of twisted" which seems to me to ignore the problem.
[14:38] <ralsina> QLocalSocket is just a thin layer on top of a named pipe.
[14:39] <ralsina> And yes, it integrates with the event loop, but we would still need to implement things like, say, callbacks.
[14:39] <ralsina> or messages. Or signals, or everything else...
[14:39] <dobey> yes i know that. you obviously still have to glue stuff together
[14:39] <dobey> eh? QLocalSocket looked like it had stuff for doing that
[14:39]  * ralsina actually read " you still have to sniff glue" 
[14:40] <ralsina> the only signal you have is "there is stuf to be read"
[14:41] <nessita> alecu: you added all the screens into a single .ui file?
[14:42] <alecu> nessita, no: each screen is a separate .ui file
[14:42] <nessita> alecu: ah, right, meld only shows diffs, no adds ;-)
[14:42]  * nessita browses the diff in a different way
[14:43] <dobey> i don't know; implementing signals/callbacks/delegates/whatever in an OO language doesn't seem like something that should have any impact on the development. make a sub-class and give it the signals you need.
[14:43] <alecu> nessita, "cd data/qt" and "designer-qt4 *.ui"
[14:45] <alecu> nessita, also, I'm pushing a fix to make the notebook follow the resizing of the main window.
[14:45] <alecu> nessita, (revno 153)
[14:45] <nessita> alecu: can I try it somehow?
[14:47] <alecu> nessita, sure, just like the previous branch. git clone qtreactor in some folder, then PYTHONPATH=qtreactor-parent-folder:. ./bin/ubuntuone-control-panel-qt
[14:48] <CardinalFang> I only IRC'd and listened to the shoutcast, and I somehow got the UDS ubuflu.
[14:49] <thisfred> nessita: for me meld shows adds as well, in the tree view
[14:50] <nessita> thisfred: I'm running bzr diff --old=../trunk --using=meld
[14:50] <thisfred> ah
[14:50] <nessita> thisfred: what do you run?
[14:50] <thisfred> nessita: then maybe the (interaction with) bzr diff is to blame. meld dir1 dir2 will definitely show new files.
[14:51] <nessita> thisfred: ah, yes
[14:51] <thisfred> nessita: I don't use meld in reviewing much
[14:51] <thisfred> I usually look at the diff in lp
[14:51] <thisfred> Of course I should have an emacs mode for it :D
[14:52] <nessita> 0.0
[14:52] <ralsina> ok, mandel's code seems to be working ok on windows, AFAICS
[14:53] <ralsina> and.... I have to go away for a little while. I will be here for another hour around 4PM argentina time
[15:08] <fagan> ralsina: I just put up my blog post for last week's learning if you want to read it
[15:10] <mandel1> ralsina: does it work then?
[15:10] <mandel1> oh, and I'm back, sorry for the time I was out
[15:13] <karni> CardinalFang: ubuflu? wish you much health!
[15:14] <CardinalFang> karni, I slept a long time.  At desk working, just feel bad.
[15:14] <CardinalFang> thanks.
[15:14] <karni> CardinalFang: oh man :(
[15:15] <fagan> CardinalFang: if you have a laptop you can work from bed dude
[15:16] <CardinalFang> fagan, Tried it.  It won't make me feel better.  I'm waiting for medication to work.
[15:17] <fagan> CardinalFang: :(
[15:28] <dobey> hrmm
[15:32]  * dobey ponders calling Novell support to ask where their project is hosted now, since they took down their project hosting service
[15:34] <nessita> dobey: is there any chance you do some follow up on bug #786560? is related with conflicts files and banshee
[15:34] <ubot4> Launchpad bug 786560 in ubuntuone-client (Ubuntu) "can't get rid of u1conflict files (affects: 1) (heat: 6)" [Undecided,New] https://launchpad.net/bugs/786560
[15:35] <nessita> alecu: ping
[15:35] <alecu> nessita, pong
[15:35] <nessita> alecu: the window size need to be the one we discussed last cycle for the gtk control panel, I think. That size was... 525x728 I think
[15:36] <dobey> nessita: i don't think there is anything i can add to that. it sounds like something chicharros should look at?
[15:36] <alecu> nessita, cool. I'll change it in the upcoming branch I'm finishing right now.
[15:36] <nessita> dobey: well, if you could add some input related to how banshee may modify files, that will surely help them
[15:36] <nessita> alecu: ack
[15:37] <nessita> thisfred: did you meant to approve alecu's branch?
[15:37] <dobey> nessita: hrmm, it just changes the ID3 tags, as any music player may do
[15:37] <dobey> nothing special
[15:37] <thisfred> nessita: yeah, did I not?
[15:37] <nessita> thisfred: looks like not :-)
[15:37] <thisfred> oh sry
[15:37] <alecu> nessita, 525x728 sounds weird in an "oblongo" sense.
[15:38] <alecu> nessita, do you have a pointer to the right size?
[15:38] <dobey> gah
[15:38] <nessita> dobey: right, but the conflicts are being generated on the machine that, theoretically, is not modifying the files
[15:38] <nessita> alecu: 728x525, sorry
[15:38] <dobey> trying to force window size is a horrible idea
[15:38] <nessita> alecu: bug #683164
[15:38] <ubot4> Launchpad bug 683164 in ubuntuone-control-panel (Ubuntu) (and 1 other project) "Maximum sizes for window and banner (affects: 1) (heat: 20)" [Medium,Fix released] https://launchpad.net/bugs/683164
[15:39] <nessita> alecu:  736x525 is the correct size
[15:39] <alecu> dobey, we are talking about the default window size, not a forced one.
[15:39] <alecu> nessita, thanks.
[15:39] <nessita> dobey: is an initial windows size, that we need to use to ensure we show all the content in netbooks as well
[15:39] <nessita> alecu: other than that, approved
[15:39] <dobey> nessita: it doesn't auto-resize properly though; which is why all the problems exist with translations in the control panel
[15:40] <alecu> nessita, thanks. I'm making that change in a different branch though.
[15:40] <thisfred> nessita: hmm, which branch? https://code.launchpad.net/~alecu/ubuntuone-control-panel/tx-qt-mainloop/+merge/61652 I have approved
[15:40] <alecu> thisfred, https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-scissors/+merge/61845
[15:40] <dobey> mandel1: ping for when you return
[15:40] <nessita> thisfred: ui-scissors
[15:41] <thisfred> nessita: alecu: ah, I see. Done!!
[15:41] <alecu> thisfred, thanks for the review on a saturday :-)
[15:42] <thisfred> alecu: It's my new obsession with keeping my inbox at 0. It won't last ;)
[15:42] <fagan> thisfred: wow you would be sick looking at my box
[15:42] <mandel1> dobey: pong I'm here :)
[15:42] <mandel1> dobey: tell me
[15:42] <nessita> mandel1: hey there, how is it going?
[15:42] <fagan> thisfred: 10% of gmail's max storage in unread messages
[15:43] <thisfred> fagan: Well I just switched to notmuch, which makes it much easier to sort mail
[15:43] <nessita> alecu: have another branch I can/should looko at? I keep trying to start a branch of my own but I still don't see how not to overlap with you
[15:43] <dobey> mandel1: hey. well, i'm worried that we're using twisted in places we really shouldn't be adding that complexity; but, what is the deal with this txnamedpipes project?
[15:43] <fagan> thisfred: I was thinking of doing some changing in how I do email again but with all of the mess at the moment it makes it a little bit hard to switch
[15:43] <dobey> mandel1: do we own it? does it require (C) assignment? do i need to set it up under tarmac?
[15:43] <mandel1> nessita: much better than last week, I have come to realize the situation and ready to move on
[15:44] <thisfred> fagan: I'm at 55% and I'm sure most of that's unread. That's fine with me, I just don't want it in my inbox ;)
[15:44] <fagan> thisfred: ahhh
[15:44] <mandel1> dobey: ok, so txnamedpipes is ours, it does require cython, but I dont know how we can set tarmac since is a windows only project
[15:45] <dobey> require cython?
[15:45] <alecu> nessita, I'm pushing the renaming branch, and now things should be more stable.
[15:45] <mandel1> dobey: it is an extension for twisted that uses namedpipes and that will be shared over all the project that use IPC and have to be ported to Windows, so it makes sense to have its own tests and project etc..
[15:45] <mandel1> dobey: http://cython.org/
[15:45] <dobey> mandel1: yeah, i'm not saying it shouldn't be its own project
[15:46] <dobey> oh
[15:46] <mandel1> dobey: and I'm not understanding you are, I'm just stating the reason for anyone out there
[15:46] <dobey> hmm
[15:47] <nigelb> fagan: :D
[15:47] <dobey> mandel1: have you looked at QLocalSocket at all?
[15:47] <fagan> nigelb: dude that was more than fast
[15:47] <fagan> nigelb: :D
[15:47] <nigelb> fagan: Just really really good timing.  I just refreshed FB right then ;)
[15:48] <ralsina> mandel1: indeed it worked
[15:48] <fagan> nigelb: hah
[15:48] <ralsina> mandel1: and that is as far as I can go about it :-D
[15:48] <mandel1> dobey: how do you integrate that with twisted?
[15:49] <mandel1> dobey: and the issue is that in some machines (like ralsina laptop) have the local ports blocked
[15:49] <fagan> ralsina: hmmm can we start using the bytesize tag like unity
[15:49] <dobey> mandel1: QLocalSocket uses named pipes
[15:49] <dobey> mandel1: not TCP
[15:50] <mandel1> dobey: again, how do I add that to twsited?
[15:50] <mandel1> twisted
[15:50] <fagan> ralsina: it would be helpful to sort out the smaller bugs from the ones from the bigger ones
[15:50] <ralsina> fagan: we should, I will ask everyone to do that in tomorrow's standup
[15:50] <fagan> ralsina: cool
[15:50]  * fagan is still looking for a bug that would be easy enough to get started on 
[15:50] <ralsina> fagan: and in london, I want to do a day of pair programming with you, I really owe you lots of training
[15:51] <fagan> ralsina: cool, np
[15:51] <dobey> mandel1: i am not suggesting using it in twisted; i think the twisted solution is ok for syncdaemon where we have to use twisted already, but i think using QLocalSocket/QLocalServer for the IPC in all the things where we don't use twisted already, would be better
[15:51] <mandel1> dooh, yes if we have no twsited we do not use twisted
[15:51] <mandel1> stupid keyboard...
[15:51] <dobey> mandel1: and i'm wondering if there are any real valid reasons for not doing that, which aren't "we're in a rush to get it out, so we're using junk that's already in development"
[15:51] <fagan> ralsina: I think im doing ok with doing some of it by myself like I handled twisted fine I think although it took me a few days to figure out all the little things
[15:52] <dobey> mandel1: but we're adding twisted just to do the IPC in SSO and control panel and such, no?
[15:52] <mandel1> dobey: control panel and sso were already using twisted, but not its main loop
[15:53] <dobey> mandel1: eh? no they weren't :)
[15:53] <mandel1> dobey: a beer?
[15:53] <mandel1> dobey: txsecrets uses deferred
[15:53] <mandel1> and control panel uses it somewhere, I cannot remember where
[15:53] <dobey> deferred only
[15:54] <dobey> which doesn't have to be twisted, they could just use python-deferred now
[15:54] <dobey> but they aren't using twisted for any sockets or loop related stuff
[15:56] <mandel1> dobey: I know but it was a dependency that was already there and that simplifies my life when packaging the diff projects on windows because the libs can be shared
[15:57] <dobey> :(
[15:58] <mandel1> dobey: what can I say, there are reason behind the idea, also twisted is not that much harder, is it?
[15:59] <dobey> mandel1: i'm not saying that writing the code is harder, but the complexity of the underlying code itself is significantly greater, and i think it will only casue us problems (like it's already done on linux)
[16:00] <mandel1> dobey: what kind of issues?
[16:01] <dobey> mandel1: we have had problems in the past with integrating twisted, gobject, dbus, gtk+, etc... all together
[16:01] <nessita> alecu: can I globally approve https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-scissors/+merge/61845 so it lands?
[16:02] <alecu> nessita, sure! I forgot
[16:03] <dobey> mandel1: and integrating named pipes into twisted, and its reactors, and then trying to integrate those into Qt main loop, seems like a long roundabout way to get it done, and only adds complexity, when we could just throw some code in a sub-class of an existing Qt object, and already have a working main loop setup.
[16:03] <alecu> nessita, after that you may want to review https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-bigrename/+merge/61985
[16:03] <nessita> alecu: yes, I do
[16:03] <dobey> just seems like using a rube goldberg machine to kill a mosquito, to me :)
[16:03] <alecu> nessita, btw: I set the size you requested as the suggested window size, but it seems that qt is taking the size from elsewhere.
[16:04] <nessita> alecu: can you check with ralsina?
[16:04] <mandel1> dobey: that is why we do have a twisted implementation for namedpipes, so that is easy to integrate, QApp main loop is ready, but they are certainly friction areas
[16:04] <alecu> nessita, I'll play with it a bit more, then I'll yield to ralsina, but he's not returning till 4 hours from now.
[16:04]  * ralsina kinda is here
[16:04] <nessita> I saw him answering a few minutes ago :-)
[16:05] <ralsina> where is that size request?
[16:06] <nessita> ralsina: how can we set the initial main window size?
[16:07] <alecu> ralsina, I have set the Width and Height in the outer Main Window, and also set its size policy to "preferred, preferred"
[16:08] <alecu> ralsina, but it seems to get the size from the inner notebook. or something.
[16:08] <ralsina> alecu: preferred is tricky
[16:09] <ralsina> because if something inside is larger, it does nothing :-)
[16:09] <alecu> ralsina, it does not even enlarge the window so stuff inside fits?
[16:10] <ralsina> alecu: it means it may be bigger or it may be smaller, as needed
[16:10] <dobey> sigh, here comes the storm
[16:10] <ralsina> check http://doc.qt.nokia.com/latest/qsizepolicy.html
[16:10] <dobey> o/~ and the thunder rolls o/~
[16:10] <alecu> ok.
[16:11] <alecu> ralsina, the thing is that there's a button inside one of the panels that's being cropped.
[16:11] <alecu> ralsina, so the window should be automatically bigger.
[16:11] <dobey> mandel1: few needsfixing comments on your devtools branch
[16:11] <ralsina> set it t minimumExpanding, I think
[16:12] <mandel1> dobey: thx for taking a look, I'll fix them asap
[16:17] <mandel1> nessita: ping
[16:18] <nessita> mandel1: pong in 5 minutes
[16:18] <fagan> flights booked \o/
[16:18]  * fagan done that in quick time 
[16:19] <mandel1> nessita: ok :)
[16:19]  * fagan takes a quick break to get some food
[16:19] <ralsina> ok, I will now be off a little while for real
[16:22] <nessita> mandel1: shoot
[16:23] <mandel1> nessita: can I get a super review from you for https://code.launchpad.net/~mandel/ubuntu-sso-client/cannot_shutdown_windows/+merge/59833
[16:23] <mandel1> please…. :D
[16:24] <nessita> mandel1: of course!
[16:24] <mandel1> thx!
[16:24] <nessita> mandel1: does it work? I mean, someone on windows has tested it?
[16:25] <mandel1> nessita: fagan did the windows test
[16:25]  * fagan forgot about that :)
[16:25] <nessita> fagan: you forgot to test?
[16:25] <mandel1> nessita: I need one of those code reviews you can do
[16:25] <fagan> nessita: no no I did the test but I forgot I did it
[16:26] <nessita> mandel1: can you please add a dostring for def shutdown(pipe_service): ?
[16:26] <nessita> mandel1: and the """Adds... should be """Add
[16:26] <mandel1> nessita: I saw that coming ;)
[16:28] <nessita> mandel1: those 2? ;-)
[16:29] <mandel1> nessita: only the missing one ;)
[16:29] <nessita> mandel1: question, why are you changing listener.getHost().port by 0?
[16:30] <mandel1> nessita: is a default value I add to state that the prot is not yet known, that namepipe exposes the port currently used, but we have to start it first so it is 0 while the listener starts
[16:30] <mandel1> nessita: that is one of the hacks we will get out when I land the txnamedpipes reactor port
[16:31] <mandel1> no need to use a port, we will use the named pipe which is way better to work with and cleaner
[16:31] <nessita> mandel1: ok
[16:31] <nessita> mandel1: with the lint fixes, approved
[16:32] <mandel1> nessita: ok, I'll fix them right now
[16:32] <dobey> alright, i'm off to get lunch. bbiab
[16:33] <nessita> alecu: did you manage to set the windows size?
[16:33] <nessita> alecu: also, i would strongly advice we use names like greeting_label instead of greetingLabel
[16:34] <alecu> nessita, how strongly?
[16:34] <alecu> nessita, I'm following the Qt convention here.
[16:34] <nessita> alecu: so the resulting code (our pys, not the autogenerated) are pep8 compliuant
[16:34] <nessita> alecu: we don't write C++, but python, and our project is snake_case
[16:34] <mandel1> alecu: I follow the python name policy like nessita says when on python :)
[16:35] <alecu> nessita, mandel1: ok, I'll follow that too.
[16:35] <nessita> alecu: thanks!
[16:35] <mandel1> nessita: so, just the comments? I have no lint issues when I run it on maverick (please, please do not have stupid lint version issues)
[16:35] <alecu> nessita, I'll ping you when I've changed all this.
[16:35] <mandel1> alecu: cool :)
[16:35] <nessita> alecu: thanks
[16:35] <nessita> mandel1: no lint issues other the missing docstring and the "s" on Adds
[16:36] <nessita> mandel1: is only a 48 lines' diff, right?
[16:36] <mandel1> nessita: oh, coll I'll push it then
[16:36] <mandel1> yes, just 48 lines :)
[16:36] <nessita> right, then it makes sense
[16:40] <mandel1> nessita: new version pushed :)
[16:40] <mandel1> I know I'll get merge conflicts with the txnamedpipes branch merge proposal, so if it lands, I'll fix that  one after :)
[16:41] <mandel1> nessita: can you review the other part of that change: https://code.launchpad.net/~mandel/ubuntu-sso-client/cannot_start_windows/+merge/59848
[16:41] <nessita> mandel1: I haven't seen the txnamedpipes branch :-)
[16:41] <nessita> mandel1: I can, yes, and I will
[16:41] <mandel1> I could not stop it, and asap I can stop it, I need to be able to start it
[16:42] <mandel1> nessita: when is ready, you are going to love it, is waaay cleaner :)
[16:42] <mandel1> is one of those that removes more code that it adds
[16:42]  * nessita crosses fingers
[16:44] <nessita> mandel1: "it location" -> it should be "its location"
[16:45] <nessita> mandel1: is not a good practice to have that kinda of "complex" logic inside a try except. My advice is:
[16:45] <mandel1> move it to a method that states what it does?
[16:45] <nessita> not necessarily
[16:45] <nessita> mandel1: becasue that method can fail the same
[16:45] <nessita> so, you should do something like this:
[16:46] <nessita> try:
[16:46] <nessita>     self._port = something
[16:46] <nessita> except:
[16:46] <nessita>     self._port = None
[16:46] <nessita> if self._port is None:
[16:46] <nessita>     comploex_logic
[16:47] <nessita> mandel1: otherwise, inside the except block, there are too many possibilities for a trace inside a trace, which is impossible to debug
[16:47] <nessita> mandel1: makes sense?
[16:47] <mandel1> nessita: ok, is not a hard change to make and does no look terrible :)
[16:47] <mandel1> so I'm on it
[16:47] <nessita> mandel1: thanks
[17:06] <rye> beuno, given that user is not altering couchdb, how can "  IllegalKeyException: Mixing uuid-like keys and regular keys in a single dictionary is not allowed." appear?
[17:07] <rye> beuno, that's in contacts
[17:08] <beuno> rye, where are they seeing it?
[17:08] <rye> beuno, well, that's from oops
[17:08] <nessita> mandel1: you let me know when is done?
[17:08] <rye> beuno, 1963appserverZDAdCaAHDHaDEECfHbCbHaCaFeaHeFIAf231312
[17:08] <mandel1> nessita: yes, will do as soon as it is done :)
[17:08] <rye> beuno, PATH_INFO: /contacts/
[17:12] <beuno> rye, right, I know of the bug
[17:12] <beuno> file it please  :)
[17:12] <rye> beuno, erm, but is it happening during the store or fetch?
[17:13] <alecu> nessita, revno 155 with snake_case names for widgets.
[17:14] <nessita> alecu: groso
[17:14] <ralsina> while I am (again) kinda around here: alecu, you and I are taking the 25th off, right? Nessita is taking the 30th
[17:15] <mandel1> nessita: I just pushed it, fixed the comment and moved the logic to an if clause
[17:15] <alecu> ralsina, I'm taking the 25, yes. I've yet to canonicaladmin it.
[17:15] <nessita> ralsina: yes on my end
[17:15] <ralsina> cool
[17:15] <nessita> mandel1: I'll look as soon as I finish alecu's
[17:15] <ralsina> we will have a "meeting" on the 27th with alecu, manuel, nessita and me to gauge our progress
[17:16] <mandel1> ralsina: when is the 27th?
[17:16] <alecu> ralsina, sounds reasonable.
[17:16] <ralsina> friday
[17:16] <nessita> ralsina: gauge?
[17:16] <ralsina> measure
[17:16] <alecu> nessita, as in "medir"
[17:16] <nessita> ralsina: I would like *a lot* a meeting before that, I still feel lost regarding the task list
[17:16] <ralsina> I could easily have said that in spanish, of course ;-)
[17:16] <nessita> ralsina: and the plan to actually make this work
[17:16] <mandel1> 4 days… should I have everything that is no UI ready and mattias might have the shell extensions, sounds good
[17:16] <ralsina> nessita: ok, we can talk tomorrow early
[17:17] <alecu> mandel1, ralsina, thisfred: can I get another review? https://code.launchpad.net/~alecu/ubuntuone-control-panel/ui-bigrename/+merge/61985
[17:17] <nessita> ralsina: what would be early? I would like alecu to be there as well
[17:17]  * ralsina is kinda falling asleep right now
[17:17] <nessita> ralsina: 9am ART? alecu can you make it at that time, tomorrow?
[17:17] <ralsina> tomorrow 9AM ART?
[17:17] <mandel1> alecu: on it, you had to read lots of xml for me already ;)
[17:17] <alecu> nessita, ralsina: I sure can.
[17:18] <nessita> mandel1, ralsina, alecu: I'll setup a meeting on calendar and invite you all
[17:18] <alecu> mandel1, don't worry reading those xmls, do "designer-qt *" instead.
[17:18] <ralsina> nessita: cool
[17:18] <mandel1> alecu: I know ;)
[17:19] <nessita> sent
[17:19] <mandel1> alecu: one thing, in the usage_label you are using rich text, translator HATE that, the best thing to do there is to use plain text and later tell the css of the widget to set the font etc
[17:20] <alecu> mandel1, cool.
[17:20] <mandel1> alecu: so feel free to remove it if you wanna :)
[17:20] <mandel1> but is not a merge stopper
[17:21] <nessita> mandel1: could you please set commit message for https://code.launchpad.net/~mandel/ubuntu-sso-client/cannot_shutdown_windows/+merge/59833 ?
[17:21] <nessita> mandel1: and, you sure this is a "logger.error", and not .info? logger.error('The ubuntu sso process is not running!')
[17:21] <alecu> mandel1, the thing is that there's a bold part and a non-bold part in the same label.
[17:22] <alecu> mandel1, anyway, I'm removing the bolding from that label anyway, we can set the style later.
[17:22] <jderose> thisfred: any thoughts on this error: ResourceNotFound: ('db_not_found', 'could not open https://couchdb.one.ubuntu.com/u%2F69b%2Fa53%2F210959%2Fdmedia/')
[17:22] <jderose> https://bugs.launchpad.net/ubuntu/+source/desktopcouch/+bug/786456
[17:22] <ubot4> Launchpad bug 786456 in desktopcouch (Ubuntu) "desktopcouch wont replicate "dmedia" DB (affects: 1) (heat: 6)" [Undecided,Incomplete]
[17:22] <alecu> mandel1, (I we can't use two labels for that purpose, because some languages may have a different order)
[17:23] <alecu> hmmm
[17:23] <alecu> mandel1, We can't use two labels for that purpose, because some languages may have a different order.
[17:24] <mandel1> nessita: where is that logging call?
[17:24] <nessita> mandel1: line 49 in the LP diff
[17:24] <thisfred> jderose: hi. Not off the top of my head no. The ResourceNotFound seems like it's masking the real error. Anything interesting in the couchdb logs?
[17:24] <mandel1> nessita: I mean branch? the cannot stop one?
[17:25] <nessita> https://code.launchpad.net/~mandel/ubuntu-sso-client/cannot_start_windows/+merge/59848
[17:25] <alecu> mandel1, thanks for the review. I've pushed revno 156 removing the usage of rich text.
[17:25] <jderose> thisfred: not that i see, but i may not know what "interesting" is in this case :)
[17:25] <alecu> (btw this kind of rich text sucks when compared with pango markup :-)
[17:25] <nessita> alecu: the main windows default size is, when opening the UI, 748 x 671
[17:25] <mandel1> nessita: try it has to be info
[17:26] <alecu> nessita, on your monitor, with your dpi and font size, right?
[17:26] <mandel1> alecu: one more thing, line_edit and vertical_layout rather than verticallayout, do you agree?
[17:27] <nessita> alecu: yes, which all are values from the "standard installation". And the GTK UI is exactly 736x525
[17:27] <mandel1> alecu: I think that <b> can be used in the QLabels without the crazy html heather
[17:27] <jderose> thisfred: http://paste.ubuntu.com/611919/
[17:27] <thisfred> jderose:  right. Couchdb logs are pretty hard to make sense of (at least to me). Can you paste some more context of where you got that error in the bug report? I.e. the full traceback and maybe related lines above and below
[17:27] <thisfred> ah :)
[17:28] <rye> beuno, is this the same bug as #783969? In this case that is an OOPS seen by the user, in your bug report that looks like contacts worker
[17:28] <mandel1> nessita: I've pushed the change of the logging level
[17:28] <thisfred> jderose: do you have ubuntuone-couch installed?
[17:28] <jderose> thisfred: that's pretty much all that's in desktop-couch-replication.log about "dmedia", other stuff is errors about say "gwibber_preferences" (which by the way, I can't seem to delete on U1 no matter how I try)
[17:28] <alecu> nessita, I've told Qt to use the size you recommended as the minimum default, but it will choose whatever it wants. I do not want to work on specifying a given size till we have progressed more with the graphic design of the ui.
[17:29] <jderose> thisfred: what other logs should i paste in?
[17:29] <alecu> mandel1, and using <b> is not so frowned upon by the translators?
[17:29] <rye> beuno, and bug #736962
[17:29] <ubot4> rye: Bug 736962 on http://launchpad.net/bugs/736962 is private
[17:29] <thisfred> jderose: no this was what I meant
[17:29] <alecu> mandel1, I guess the problem is the whole spurious Html markup that qt designer adds, right?
[17:29] <mandel1> alecu: probably it is, but is better than the crap added by the rich text editor ;)
[17:29] <alecu> cool
[17:31] <dobey> hrmm
[17:31] <jderose> thisfred: bunch of errors here too, but i don't know what it means - http://paste.ubuntu.com/611924/
[17:32] <dobey> jderose: ooh, erlang crashes
[17:32] <alecu> mandel1, revno 157 using <b>
[17:32] <nessita> alecu: I see. Anyways, I as far as I understood, our UI should not be bigger (by default) than that, since we need to fit on smaller screens. So our window should have that size 726x525 and the only way of changing that is either by maximizing or explicitly resizing it (by hand). As per how is now, QT decides to make it bigger not sure why, since there is tons of free space in all tabs
[17:33] <ralsina> are we compiling the .ui files with -x ?
[17:33] <ralsina> If we are, we could see if any of them tries to be large
[17:33] <ralsina> by running the compiled files directly
[17:34] <mandel1> alecu: sweet, did you see my message about lineedit and horizontallayout and verticallayout, is not that is a big issue, so I'll approve and will trust you to do what you consider best :)
[17:34] <thisfred> jderose: the gwibber dbs are special: I think we block access to them on our servers, because they're not used anymore, and they grew to impossible sizes. But yeah the dmedia errors in there are Greek to me too.
[17:34] <nessita> ralsina: isn't there a way of setting a fixed size, without QT doing whatever he wants re: size?
[17:34] <ralsina> nessita: yes, set the size policy to fixed, and the same as minimum and maximum sizes
[17:34] <alecu> mandel1, I chose to use lineedit instead of line_edit, because I like "checkbox" more than "check_box" and all.
[17:34] <alecu> mandel1, what do you think?
[17:35] <ralsina> checkbox is one word, lineedit is not :-)
[17:35] <nessita> ralsina: will that allow manual resizing and maximizing?
[17:35] <ralsina> nessita: nope
[17:35] <ralsina> but you can reset the policy in code
[17:35] <alecu> ralsina, not according to qt designer.
[17:35] <alecu> ralsina, it's CheckBox
[17:35] <ralsina> alecu: ok, then you win ;-)
[17:35] <jderose> thisfred: problem is, they still get created from U1... i get empty "gwibber_preferences" on all my machines, but i can't delete it from U1... and desktopcouch still tries to replicate them over and over
[17:36] <mandel1> ralsina, alecu: itsounds like two, but someplaces is written as one, not a big deal anyway :)
[17:36] <dobey> this whole "forcing the default by default" concept is causing us so much trouble in the UI
[17:36] <ralsina> http://dictionary.reference.com/browse/checkbox
[17:36] <thisfred> jderose: I would suggest installing ubuntuone-couch, so you could do some command line checks easily. But that seems to time out pretty consistently for me atm. A fix for the timeouts has been proposed by Michael Terry
[17:36] <mandel1> dobey: you mean the size?
[17:36] <dobey> mandel1: yes
[17:36] <alecu> ok guys, I'm off for lunch. See you guys later!
[17:37] <thisfred> jderose: hmm, that should not be happening. I'll ask the server people
[17:37] <mandel1> dobey: what is the problem, the size?
[17:37] <mandel1> that is what she said
[17:37] <mandel1> hehehe
[17:37] <mandel1> I'm stupid ;)
[17:37] <ralsina> in principle, it should nt be necessary, the problem is probably on having each page require a different size and things get pushed out
[17:37] <dobey> mandel1: haha
[17:37] <ralsina> alecu: if it's not working tonight I will take a look early tomorrow
[17:38] <mandel1> dobey: I though you were ready to grab that one, I left it for you in a silver plate :)
[17:38] <dobey> mandel1: problem is that if we force the default size to always be that size when the window comes up, it breaks reflow and relayout of widgets if size needs to change due to translations or whatever
[17:38] <ralsina> dobey: there is a way to tell the window "tell me what size you want to be"
[17:39] <ralsina> but yes, it's a problem if for example, the user has a small screen and large fonts, say
[17:39] <mandel1> dobey: yes, you are 100% right, germans should not use netbooks
[17:39] <ralsina> they probably call them netsturmflugenbookzen, too
[17:40] <mandel1> nessita: did you have the time to approbe https://code.launchpad.net/~mandel/ubuntu-sso-client/cannot_start_windows/+merge/59848
[17:40] <nessita> mandel1: on it now
[17:40] <mandel1> cool
[17:40] <mandel1> I need to go, will probably back later to do some extra work
[17:40] <mandel1> lovely people, see you later!
[17:41] <mandel1> ralsina, see you later
[17:41] <nessita> mandel1: now is approved
[17:41] <mandel1> hahaha I'm such an ass
[17:41] <fagan> later mandel1
[17:41] <ralsina> bye mandel1, have fun!
[17:41] <mandel1> will be back after the gym bye bye
[17:41] <nessita> alecu-lunch: approving
[17:41] <ralsina> AND YES, YOU ARE AN ASS ;-)
[17:41] <dobey> mandel1: that's what she said
[17:42] <mandel1> hahaha
[17:42] <nessita> ok, lunchtime!
[17:42] <fagan> mandel1 is very nice :D
[17:42] <ralsina> ok, I am really going to be off now, as soon as I finish my mumbles... (sigh)
[17:42]  * fagan will be back later 
[18:06] <nessita> alecu-lunch: let me know when you return from lunch to coordinate our work
[18:27] <nessita> ralsina: ping?
[18:29] <nessita> mandel1: ping?
[18:38] <dobey> can i have 2 reviews for https://code.launchpad.net/~dobey/ubuntuone-client/o-lawd/+merge/62004 please? with it, we should have client nightlies on O finally
[18:40] <thisfred> dobey I'll do one if you do one https://code.launchpad.net/~mterry/ubuntuone-couch/longer-timeout/+merge/61993
[18:40] <thisfred> or even if you don't ;)
[18:42] <dobey> thisfred: did you just overlook his other branch?
[18:42] <thisfred> dobey: huh?
[18:43] <thisfred> that was merged right?
[18:43] <dobey> https://code.launchpad.net/~mterry/ubuntuone-couch/queries/+merge/61658
[18:43] <thisfred> oh yet another
[18:43] <dobey> well it's been up for 5 days :)
[18:43] <dobey> so i guess, yes, you overlooked it :P
[18:43] <thisfred> dobey: guess I must have
[18:44] <nessita> alecu-lunch: ping?
[19:10] <thisfred> dobey: shouldn't pep8 and python-mocker be dependencies of u1-dev-tools, now that we use them in several projects?
[19:10] <dobey> no
[19:11] <thisfred> dobey nm already saw your answer
[19:28] <nessita> alecu-lunch, and someone else: may I have reviews for https://code.launchpad.net/~nataliabidart/ubuntuone-control-panel/shutdown/+merge/62013
[19:29] <dobey> nessita: https://code.launchpad.net/~dobey/ubuntuone-client/o-lawd/+merge/62004
[19:29] <nessita> dobey: you trading? :-D
[19:31] <alecu> nessita, reviewing
[19:33] <nessita> alecu: danke
[19:33] <dobey> nessita: if you're going to default self.close_callback to None in __init__, i think you need to do if close_callback is not None: or something before trying to call it
[19:33] <nessita> dobey: absolutely true
[19:33]  * nessita adds test and code
[19:37] <nessita> dobey: fixed and pushed to revno 151
[19:37] <nessita> dobey: approved
[19:38] <dobey> thanks
[19:40] <alecu> nessita, approved
[19:42] <alecu> nessita, so: we should start connecting widgets to the backend
[19:43] <nessita> alecu: yes, we should split the code
[19:43] <nessita> alecu: so we can work on parallel
[19:44] <alecu> nessita, should we split it "by panel" ?
[19:44] <nessita> alecu: by panel and by "source of info", I'd say
[19:44] <nessita> for example, account and services vs folders and preferences
[19:45] <alecu> nessita, right, webservice vs. syncdaemon.
[19:45] <nessita> alecu: we have no way of connecting to syncdaemon yet, right? nor with our web services?
[19:45] <alecu> nessita, on linux we should keep using dbus.
[19:45] <alecu> nessita, for a qt control panel on linux, I mean.
[19:46] <nessita> alecu: dbus only for syncdaemon, you mean?
[19:46] <nessita> so, there is 2 layers we can use
[19:46] <alecu> nessita, right. Dbus only for syncdaemon.
[19:47] <nessita> alecu: what about this:
[19:47] <nessita> alecu: let's hook up the current QT ui with the current linux backend. We need nothing platform specific there
[19:47] <alecu> right
[19:47] <nessita> alecu: the platform problems are when binding the backend with lower layers, we can "ignore" that until tomorrow's  call
[19:48] <nessita> alecu: let's not use dbus between QT and backend, but plain deferreds
[19:48] <nessita> alecu: what part do you prefer/
[19:48] <nessita> ?
[19:48] <alecu> nessita, don't understand what you mean by "platform problems"
[19:49] <alecu> I agree on using the backend importing the python modules directly.
[19:49] <nessita> alecu: accessing syncdaemon from the backen will be different on linux than in window, same for webservices
[19:49] <nessita> that is what I meant with "platform problems". And I should have said issues :-)
[19:50] <dobey> the "backend" being a separate program on linux has always bothered me anyway
[19:50] <alecu> ok, cool. I want to work on making the webservice client use qt-net instead of libsoup.
[19:50] <nessita> alecu: so... you will not work on hooking QT with our current linux-only backend?
[19:51] <nessita> alecu: I can take that ("hooking QT with our current linux-only backend")
[19:51] <nessita> dobey: I agree, I was planning on fixing that when I have a free Friday. Not sure when in the future though.
[19:51] <alecu> nessita, cool, go ahead. And please let me know if I can be of help with that.
[19:52] <nessita> alecu: you will read me cursing against QT enough :-P
[19:52] <dobey> nessita: do it tomorrow. i hear tomorrow is Friday on Neptune
[19:52] <nessita> dobey: we wish
[19:53] <alecu> nessita, I've just set your -shutdown branch to approved.
[19:54] <nessita> alecu: groxo
[19:57] <dobey> hrmm, nightlies builds are pretty slow right now. "Starts: In 39 minutes..."
[20:01] <alecu> nessita, have you started with "hooking QT with our current linux-only backend"?
[20:01] <nessita> alecu: yes
[20:01] <nessita> why?
[20:02] <alecu> nessita, because I depend on that to start using qt-net on the webclient.
[20:02] <nessita> alecu: why?
[20:02] <nessita> let's not blocked ourselves
[20:03] <nessita> alecu: I will start binding info coming up from syncdaemon, you can do the 2 layers in your branch: bing (eg) account info plus use the qt-net stuff
[20:03] <alecu> nessita, hmmm. ok.
[20:04] <nessita> alecu: want to suggest something elsE? I'm open to suggestions
[20:05] <alecu> nessita, not right now, I still need to read some code to have a better idea on how to do this.
[20:05] <nessita> alecu: ok. I will stick to info coming up from syncdaemon, to avoid clashes with your potential work. If you later decide we need to take another route, let me know
[20:07] <alecu> cool
[20:55] <nessita> ralsina: you around?
[20:57] <dobey> WOOH
[20:57] <dobey> ubuntuone-client built on O
[20:58] <nessita> dobey: congrats!
[21:01] <dobey> cool, so most everything built now, and a few things have some errors
[21:25] <nessita> is alecu gone?
[21:38] <alecu> ok, guys and gals, I'm EODing today
[21:38] <nessita> alecu: wait
[21:38] <nessita> alecu: I need to talk to you... did you get my sms?
[21:38] <alecu> nessita, tell me
[21:38] <alecu> nessita, no, I didn't. I'm in colonia right now.
[21:39] <nessita> alecu: ah... that's why :-)
[21:39] <alecu> nessita, that's why I started so much earlier today.
[21:39] <nessita> alecu: no problem, I'll ask tomorrow, have a safe trip back home
[21:39] <alecu> nessita, because I have to catch the ferry in an hour or so.
[21:39] <alecu> nessita, but tell me.
[21:40] <nessita> alecu: I'll keep debugging myself, currently I'm not being able to use the ControlBackend from the QT UI since something in the import chain already installs a reactor
[21:40] <nessita> I've narrowed it to from ubuntuone.platform.linux import dbus_interface as sd_dbus_iface
[21:40] <nessita> I'll keep digging, I'll ask for help tomorrow if I couldn't fix it
[21:41] <alecu> nessita, remember that some part of this is already using glib (for libsoup), and we'll need to get rid of it.
[21:41] <nessita> alecu: right, but that should not require a reactor
[21:42] <nessita> alecu: and neither syncdaemon should install one when using it as a lib
[21:43] <dobey> nessita: hrmm, i'm not sure sd_dbus_iface should be imported by things outside syncdaemon
[21:44] <dobey> oh pylint
[21:45] <alecu> nessita, I think our code should install the qt reactor (and qt dbus mainloop) before importing any of that.
[21:45] <nessita> alecu: maybe, but that smeels
[21:45] <nessita> smells
[21:46] <nessita> if 2 pieces of code are installing a reactor, something is badly designed, I want to understand what and why
[21:46] <nessita> and then maybe look for a workaround
[21:46] <dobey> nessita: isn't sd_dbus_iface the dbus server interface of sd?
[21:47] <nessita> dobey: yes
[21:47] <dobey> nessita: why would cp be importing that?
[21:47] <nessita> dobey: to access that service
[21:47] <dobey> nessita: in the tests to patch() it?
[21:47] <nessita> nopes, production code
[21:49] <alecu> ok, I really need to run now.
[21:49] <alecu> see you guys tomorrow.
[21:49] <nessita> alecu: ok, good luck
[21:49] <dobey> nessita: oh, for the DBUS_*_NAME constants?
[21:49] <alecu> nessita, good luck to you :-)
[21:49] <nessita> dobey: yes
[21:49] <nessita> dobey: I know.
[21:50] <dobey> nessita: ugh, those are so totally in the wrong place
[21:50] <nessita> dobey: I know, would you please file a bug affecting both u1client and u1cp?
[21:51] <nessita> we can move them and import them on the same file to not to break API
[21:51] <nessita> actually, I think I need to do that now to avoid this issue of reactor already installed
[21:51] <nessita> dobey: would you file the bug for me while I fix this?
[21:51] <dobey> can you file it? i am fixing logilab/pylint on O
[21:52] <nessita> dobey: ok
[21:53] <nessita> mandel: estás?
[21:53] <mandel> nessita:dime :)
[21:53] <nessita> mandel: why the heck am I getting a callback for a clicked() signal twice? this is the code:
[21:54] <nessita> mandel: http://pastebin.ubuntu.com/612047/
[21:54] <nessita> mandel: and I'm not connecting the signal anywhere else
[21:54] <nessita> mandel: I'm just using autoconnect
[21:57] <mandel> nessita: looking
[22:00] <dobey> sigh
[22:01] <mandel> nessita: can I see the code of the ui? the xml is enough for me
[22:01] <dobey> stupid logilab
[22:01] <czajkowski> mandel: you're on late
[22:01] <nessita> mandel: sure
[22:02] <mandel> czajkowski: well, I'm not working on u1 atm, just doing some 'secret' project hehehe
[22:02] <mandel> czajkowski: and now that I have as much time as I want, I take advantage :)
[22:02] <dobey> que ella eso
[22:03] <nessita> mandel: http://pastebin.ubuntu.com/612050/
[22:04] <dobey> i guess mandel is getting sleepy
[22:04] <mandel> dobey: that is what she said ;)
[22:04] <thisfred> hah!
[22:05] <nessita> mandel: so, any verdict?
[22:06] <mandel> nessita: give me a sec to look at it
[22:06] <nessita> mandel: I already gave you 5 secs :-P
[22:06] <mandel> nessita: prisas!
[22:07] <mandel> nessita: you are just allow to leave in 8 years, so you have to wait ;)
[22:08] <nessita> mandel: oh dude, this break up thing has really gotten into you... let me hug you
[22:08]  * fagan hugs mandel 
[22:08] <mandel> nessita: hahah I was just joking, I' over it, she recogniced there is another guy, so closure was given and we can moveon with the port :)
[22:11] <dobey> logilab makes me want to punch things
[22:11] <dobey> (people qualify as things)
[22:11] <mandel> nessita: can you check the args given to the callback?
[22:11] <nessita> mandel: yes, is called twice, once without args and once with a boolean
[22:13] <mandel> nessita: take a look of when clicked is provided: http://doc.qt.nokia.com/latest/qabstractbutton.html#clicked
[22:13] <nessita> mandel: I saw that already, but I don t know what it means, or how to get only one callback called
[22:15] <mandel> nessita: ok, lets start with something first, try not to use the autoconnect trick, call change_sync_status_button.clicked.connect(you_call_back)  
[22:15] <nessita> mandel: why? we want autoconnect :-)
[22:15] <dobey> alright, i am off
[22:15] <mandel> nessita: I wanna see if the callback is registered twice,
[22:16] <dobey> good evening all!
[22:16] <mandel> ratehr that the button emiting the signal twice
[22:17] <mandel> nessita: I fear thatn line 80 in the xml is the reason, but I dont know
[22:18] <nessita> mandel: that is the name of the button, isn't it?
[22:20] <mandel> nessita: yes, and it tells that the label is the buddy of the button, which might be the problem
[22:20] <nessita> mandel: what's a buddy?
[22:21] <mandel> nessita: http://doc.qt.nokia.com/4.7/designer-buddy-mode.html
[22:21] <mandel> nessita: from the docs: A buddy widget accepts the input focus on behalf of a http://doc.qt.nokia.com/4.7/qlabel.html
[22:22] <mandel> are you doing something with the label when you see the problem?
[22:22] <fagan> mandel: I know a great film for you baseketball :)
[22:22]  * fagan is watching it and thinks it would appeal to mandel's sense of humor
[22:22] <mandel> fagan: whatched :)
[22:23] <fagan> mandel: hah
[22:23] <nessita> mandel: I'm not doing anything with the label
[22:23] <mandel> fagan: is the one with the lazy-boy sofa, right?
[22:23] <nessita> mandel: the callback is called twice every single time I click the button
[22:24] <fagan> mandel: dont know just started watching it, its from the makers of south park
[22:26] <nessita> mandel: using the connect statement I only get one callback called:
[22:26] <nessita> self.ui.change_sync_status_button.clicked.connect(self.a)
[22:26] <mandel> nessita: ok, I know the issue :)
[22:26] <mandel> nessita: stupid python ;)
[22:26] <nessita> mandel: shoot
[22:27] <nessita> stupid QT, only a couple of hours with him and is driving me crazy with nonsenses
[22:27] <mandel> nessita: http://www.riverbankcomputing.com/pipermail/pyqt/2006-January/012172.html
[22:28] <nessita> mandel: so, how can we fix?
[22:28] <mandel> nessita: you either do not use autoconnect, or you ignore the one that does not have the bool,
[22:29] <nessita> -.-
[22:29] <mandel> yes, I know
[22:29] <mandel> nessita: I never use autoconnect, but that is because I use an extra class which I call the controller that has the logic
[22:29] <mandel> so autoconnect does not know what to do
[22:29] <mandel> :P
[22:30] <nessita> mandel: ok, next question
[22:30] <nessita> mandel: why if I move the qt4reactor install to the bin script the main QT window will not be shown?
[22:31] <mandel> nessita: ok, are you creating an instance of QApplication?
[22:31] <thisfred> k, girls and boys, I have to walk the dog, bbiab
[22:31] <nessita> mandel: yes, when it works the instance is created before installing the rector
[22:31] <mandel> nessita: and when it does not work?
[22:31] <nessita> mandel: when it does not work, the reactor is being installed before
[22:32] <mandel> nessita: oh that is easy, one sec
[22:32] <mandel> nessita: one sec
[22:33] <mandel> nessita: https://github.com/ghtdak/qtreactor
[22:33] <mandel> = Using the Qt4Reactor =
[22:33] <nessita> mandel: crap, that makes all the import chain a mees
[22:33] <nessita> to be a mess*
[22:34] <mandel> nessita: why? what is the issue?
[22:34] <nessita> ok, I know what I'll do. Kill myself.
[22:34] <nessita> bye cruel workd
[22:34] <nessita> world
[22:35] <mandel> nessita: well, dont worry to much about that, we are moving to the txnamedpipes reactor using the QApplication main loop
[22:35] <nessita> mandel: any ideas when we're doing that?
[22:35] <mandel> nessita: I was planning to do it tom :P
[22:36] <nessita> mandel: ok, let us know
[22:36] <mandel> nessita: we can do it together so that you know what is going on, but you can find and example in the sso brach I proposed
[22:36] <mandel> nessita: let me find it, one sec
[22:36] <nessita> mandel: for the control panel as well?
[22:37] <mandel> nessita: not yet, control panel is after sd which I will finish early tom morning
[22:37] <mandel> nessita: take a look at the diff: https://code.launchpad.net/~mandel/ubuntu-sso-client/use_txnamedpipes/+merge/61935
[22:38] <mandel> nessita: you can even do control panel directly with that, right? why would you use qtreactor and sockets when we can do it with named pipes directly
[22:38] <nessita> mandel: becasue that's what we have until today, at least
[22:39] <mandel> nessita: true, we have had a race condition
[22:40] <nessita> mandel: is that branch missing the txnamedpipes.py file?
[22:40] <mandel> lp:txnamedpipes
[22:40] <mandel> nessita: ^ is not simple coe and we will reuse it everywhere
[22:41] <mandel> also, keeping all the crazy win crap in a separate project makes sense
[22:43] <mandel> nessita: I need  review for the Qt integration, you can take a look if you want: https://code.launchpad.net/~mandel/txnamedpipes/add_qt_integration/+merge/61923
[22:43] <nessita> mandel: I will, tomorrow. I'm eoding right now
[22:44] <mandel> nessita: has qt really killed you spirit ;)
[22:44] <nessita> yes
[22:44] <mandel> hahah, buenas noches entoces
[22:45] <nessita> mandel: good night to you too. Bye all!
[22:45] <mandel> a2
[23:59] <thisfred> mandel so we're not gonna use qtreactor? :)
[23:59] <thisfred> in that case I won't bother packaging it