[00:05] <mmcc> ok, time to go for now, be back later tonight
[08:15] <mandel> morning all!
[08:25] <mmcc> morning mandel
[08:26] <mmcc> mandel, do you have time for a review of that controlpanel branch that adds support for launchd? I forgot it wasn't in trunk yet and lost 20 minutes figuring that out earlier :)
[08:26] <mmcc> it's here: https://code.launchpad.net/~mikemc/ubuntuone-control-panel/launchdaemon/
[08:33] <mmcc> also, IIRC there's some problem with the events nanny that you mentioned a while back, and I'm wondering if there's a bug for it that explains what the issue is.
[08:34] <mmcc> and with that, I'm going to bed.
[08:45] <JamesTait> Oh yes, good morning all! :)
[09:00] <mandel> mmcc, on it
[11:32] <gatox> good morning!
[11:33] <ralsina_> hola gatox
[11:33] <gatox> ralsina_, hi
[12:08] <mandel> ralsina_, gatox morning!
[12:08] <gatox> mandel, hi
[12:13] <ralsina_> hi mandel
[12:13] <ralsina_> I need to be afk for about 30' bbiab
[12:14] <mandel> ack
[12:25] <mandel> lunch here
[12:53] <alecu> hola all!
[12:53] <ralsina_> hola alecu
[12:56] <gatox> alecu, hello!
[13:00] <gatox> need to leave for a while..... brb
[13:20] <dobey> meh, am not feeling so great today either :(
[13:20] <ralsina_> dobey: if you don't have anything on fire, maybe a day off to see the doctor or just to not work is always an option
[13:21] <gatox> back
[13:22] <ralsina_> gotta reboot to see if I can unstuck skype
[13:31] <dobey> yeah. maybe i should take a sick day
[13:36] <ralsina_> dobey: go ahead, you pushed yourself hard last week
[13:36] <dobey> see you all tomorrow then. later
[13:40] <gatox> bye dobey ! get some rest
[13:42] <briancurtin> get well dobey
[13:42] <ralsina_> bye dobey, take care!
[13:42] <briancurtin> after spending almost 2 hours to get windows to recognize this hard drive, I'm going to pick up some coffee. be back shortly
[13:48]  * mande back
[13:49] <mande> ralsina_, we did move the 1-1 to today, let me now when you have some free time
[13:49] <ralsina_> mande: on mgmt call now, will ping you in a bit
[13:49] <mande> ralsina_, perfect
[13:49] <ralsina_> mande: also, here's your l
[13:49] <mande> hehe
[13:49] <mande> ralsina_, mande?
[13:50] <gatox> who's this l then?..... ok.... i have a spare l.......
[13:51] <ralsina_> mandel: is there anything till missing from unity that we need for your in-dash work?
[13:52] <mandel> ralsina_, they made changes in the preview container which means that text entry are back not to working, so I have to fix that
[13:52] <mandel> ralsina_, we also have to talk about the ppa? should it be theirs etc..
[13:52] <ralsina_> mandel: are *you* fixing that?
[13:52] <mandel> ralsina_, yes, at least for our work, should not be terribly hard
[13:53] <ralsina_> mandel: ok
[13:53] <mandel> ralsina_, and I have a list of fixes, features that I'll forward to anyone who goes to uds to talk with them
[13:53] <ralsina_> mandel: any work the other team should do and is not landed yet?
[13:53] <mandel> ralsina_, everything is there, is just that our  solution uses hacks due to the fact that we use a generic preview
[13:54] <ralsina_> mandel: ok
[13:54] <mandel> ralsina_, aka if title == 'u1 payment' => magic
[13:54] <mandel> ralsina_, we will need to talk about the correct way to approach that at uds
[13:54] <mandel> ralsina_, most important thing => ppa
[13:54] <ralsina_> mandel: ok, let's talk about that later
[13:55] <mandel> ralsina_, 1-1 :)
[13:55] <ralsina_> mandel: also, I have no idea who, if anyone, will be at uds
[13:55] <mandel> ralsina_, ouch
[13:55] <ralsina_> mandel: ETA on the text entries fix?
[13:55] <mandel> ralsina_, I expect to have it working tom
[13:56] <mandel> ralsina_, it a regression from todays trunk, it is not hard to fix
[13:56] <ralsina_> mandel: ok
[13:59] <gatox> ralsina_, because of the freeze we are not allow to introduce new strings, aren't we?
[14:01] <ralsina_> gatox: we can't introduce them, correct.
[14:01] <gatox> ralsina_, ack
[14:17] <alecu> gatox: is this bug related to the syncmenu issue that nes-sita brought up? bug #1054461
[14:18] <gatox> alecu, mmmmm the other one was about SyncMenu..... this one is about Dbusmenu
[14:18] <alecu> gatox: so, it sounds similar, right?
[14:18] <alecu> gatox: can you take a look at it too?
[14:18] <gatox> alecu, yes...... but that should be fixed too.... both things are in the same try....... and the previous problem was with the dummy class
[14:19] <gatox> which is fixed now
[14:20] <alecu> gatox: great. Can you link your branch to that bug too?
[14:20] <gatox> alecu, ok
[14:54] <ralsina_> mandel: ping 1-1 but my microphone is not working
[14:54] <ralsina_> mandel: so, IRC
[14:54] <mandel> ralsina_, and we are like 6 mins away from the standup :)
[14:54] <mandel> ralsina_, shall we do it after it?
[14:54] <ralsina_> ok, after the standup
[14:54] <ralsina_> briancurtin, gatox, mandel, alecu, mmcc: standup in 6'
[14:55] <ralsina_> dobey is sick, thisfred is moving
[14:55] <briancurtin> typing now to avoid twitter shame
[14:55] <gatox> ack
[14:55]  * ralsina_ has been slacking on the shame
[14:56] <mandel> oficially, nux sucks!
[14:57] <ralsina_> mandel: rhymes too
[14:57] <mandel> he
[14:57] <mandel> the textentry implementation is weak..
[14:57] <alecu> mandel: no! officially, it's the best!
[14:57] <mandel> fixed the input stuff so we can type, but now it shows the password O_o
[14:58] <alecu> mandel: sound like broken is much better :-)
[14:59] <mandel> alecu, yes, they changed how the preview container works and the started not passing forward the key events to the children, I have fixed that to send them to the text input.. and it shows the chars..
[14:59] <mandel> I'm truly disappointed..
[14:59] <alecu> mandel: meanwhile, UX experts say that passwords should not be masked: http://www.useit.com/alertbox/passwords.html
[15:00] <gatox> me
[15:00] <mandel|truly-dis> me
[15:00] <alecu> me
[15:00] <gatox> alecu, really..... a not masking password makes me uncomfortable
[15:00] <mandel|truly-dis> alecu, I bet that guy shows his pin at the atm..
[15:00] <ralsina_> me
[15:00] <briancurtin> me
[15:00] <gatox> while i type
[15:01] <ralsina_> go gatox!
[15:01] <gatox> DONE:
[15:01] <gatox> Proposed branch for separator between recent and current transfers. Filed some issues to improve the ux in the share tabs. Started working in the branch to get the menu and syncdaemon status synced.
[15:01] <gatox> TODO:
[15:01] <gatox> Electroshock to wake up my brain. Finish with the synced status branch and propose. Start working in the Share Tab issues.
[15:01] <gatox> BLOCKED:
[15:01] <gatox> No
[15:01] <gatox> mandel|truly-dis, go
[15:01] <mandel|truly-dis> DONE: Created a standalone application that can be used to test the payment preview (some tweaks are needed to make it a little nicer). Found out that the changes in the PreviewContainer that landed in unity trunk break the FindKeyFocusArea which was used to know if the password text entry should receive the key strokes.
[15:01] <mandel|truly-dis> TODO: Fix the TabIterator in the PreviewContainer so that we get again the keystrokes from the user (fuuuuuuu). Add the underline under the 'Forgotten password' and 'Change password actions'
[15:01] <mandel|truly-dis> BLOCKED: no
[15:01] <mandel|truly-dis> COMMENTS: Fuuuu to stupid changes in trunk.
[15:01] <mandel|truly-dis> alecu, please
[15:01] <alecu> DONE: National Holiday: Finally visited Tecnópolis!
[15:01] <alecu> TODO: wrap up vala lens work
[15:01] <alecu> BLOCKED: no
[15:01] <alecu> NEXT: ralsina_
[15:03] <ralsina_> DONE: 1/2 natl holiday, mgmt call, some reviews, chased people around to tie loose ends TODO: mandel 1-1, 1/2 national holiday, ferry back to Buenos Aires BLOCKED:no  NEXT: briancurtin
[15:03] <ralsina_> sorry, internet died for a couple of minutes there
[15:03] <briancurtin> DONE: fixed windows tests with share-links branch, started reviewing mmcc's cloud-to-computer branch, lost the last part of the afternoon because my machine wouldnt come back after a reboot
[15:03] <briancurtin> TODO: finish reviewing mmcc's branch, answer the askubuntu question i was given about windows creds, 3x httpserver stuff
[15:03] <briancurtin> NOTE: since my machine got messed up, i just went ahead and upgraded it to win8 and did the few hardware upgrades i had been waiting for a chance to do. i have a few hours to make up so i'll stick around and come in early the next few days.
[15:03] <mmcc> oops, me
[15:03] <mmcc> DONE: startup wizard remote folders fix, looked at sync bug when moving files
[15:03] <mmcc> TODO: finish sync bug
[15:03] <mmcc> BLOQ: no
[15:04] <mmcc> also, reviews. send me reviews
[15:04] <ralsina_> mandel: don't just try to fix those things in unity, please complain about it to the proper people
[15:04] <alecu> mandel, gatox: "It's therefore worth offering them a checkbox to have their passwords masked; for high-risk applications, such as bank accounts, you might even check this box by default"
[15:04] <mandel> ralsina_, will do
[15:04] <gatox> alecu, ahhhh
[15:05] <alecu> mandel, gatox: you should read the full article. And also, most of the articles in that site are really good if you want to learn about how to make great UI.
[15:07] <alecu> I need to be afk for 15 mins, bbl.
[15:07] <ralsina_> EOM
[15:07] <ralsina_> I will be around for another 45 minutes and then of until tonight
[15:08] <ralsina_> so if you need me for anything, ask quickly ;-)
[15:09] <gatox> ralsina_, mmmm do you want to do some reviews?
[15:09] <ralsina_> gatox: why not!
[15:09] <gatox> ralsina_, this one is really simple: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/menu-separator/+merge/126006
[15:09] <gatox> ralsina_, and then i have this both too: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-timer/+merge/125499  -  https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-menuorder/+merge/125768
[15:10] <ralsina_> gatox: UI freeze exception needed for the separator, I think :-(
[15:10] <gatox> really?
[15:10] <ralsina_> gatox: wait for dobey tomorrow and let's try then
[15:10] <gatox> ok.......
[15:10] <ralsina_> gatox: it's a change in the UI
[15:10] <gatox> wow.....
[15:10] <ralsina_> gatox: although it's something that's invisibnle in the default install... so it may not be a problem
[15:11] <ralsina_> gatox: so wait for dobey and try again
[15:11] <gatox> ralsina_, ack
[15:11] <mmcc> ralsina_ , gatox, that client-timer branch will conflict with this one I did to fix the sync_menu no-op implementation for mac/win: https://code.launchpad.net/~mikemc/ubuntuone-client/fix-dummy-sync-menu/+merge/126125
[15:13] <mmcc> not sure what to do about that. I can wait until his lands, fix my branch and repropose I guess
[15:13] <gatox> mmcc, i'll change the the __init__ to: def __init__(self, *args, **kwargs):
[15:13] <gatox> i would
[15:14] <gatox> mmcc, i think that would avoid some problems
[15:19] <mmcc> gatox, in my branch you mean?
[15:19] <gatox> mmcc, yes
[15:19] <mmcc> it's only ever called with one argument, though
[15:20] <gatox> mmcc, in the latest branch for the syncmenu..... i have on linux: def __init__(self, status, syncdaemon_service):
[15:20] <gatox> for def __init__(self, status, syncdaemon_service):
[15:20] <gatox> sorry..... for: UbuntuOneSyncMenuLinux
[15:21] <briancurtin> mmcc: alecu provided a much cleaner answer to the cred question you had the other day: https://answers.launchpad.net/ubuntuone-client/+question/184611
[15:21] <briancurtin> i think my idea of removing the registry key is just a dirty way of doing the same thing
[15:21] <mmcc> briancurtin: great, thanks
[15:22] <briancurtin> and thanks to alecu for answering that (i was about to and my win machine blew up)
[15:22] <mmcc> gatox, ah, I see. I'll have to update a couple of things once your branch lands, that'll be one of them. thanks!
[15:22] <gatox> mmcc, no problem
[15:23] <gatox> mmcc, let me know when you need the review..... so i also merge my next branches with yours
[15:23]  * gatox lunch
[15:31] <mandel> mmcc, did the review, I still have to send you the fsevents daemon changes, let me restart the windows jenkins stuff and will do it
[15:31] <mmcc> mandel: ok. what changes? is that changes to the tests for the jenkins-main branch?
[15:31] <mandel> mmcc, yes, the review I already did
[15:33] <mmcc> mandel: ok
[15:40] <mmcc> brb, making coffee
[16:08] <ralsina_> I have a boat to catch, see some of you later, the rest tomorrow. Bye1
[16:08] <ralsina_> !
[16:10] <mandel> EOD here, catch you all tom!
[17:20] <gatox> alecu, ping
[17:37] <briancurtin> alecu: do you happen to remember what patch to twisted we need to use on Windows? i seem to remember it was something you entered on the twisted tracker, but im not finding anything with your name on it
[17:37] <briancurtin> alecu: asking because im setting up a new machine and dont want to get to the point where i build another installer with a bad environment :)
[17:43] <mmcc> briancurtin: sounds like a fun little Tuesday you've got goin' there
[17:45] <briancurtin> mmcc: its not exactly productive, but humming along. im doing the final setup right now to get back to actually running your branch. so far everything looks ok by reading it
[17:46] <mmcc> briancurtin - cool, I'd completely forgotten about that branch. definitely hoping it works on windows. It looked like it wasn't working for a bit on Friday on linux, but then yesterday I couldn't break it again
[17:47] <mmcc> I don't like code that inexplicably fixes itself. It's not the boss, I'm the boss
[18:03] <alecu> gatox: pong
[18:03] <alecu> briancurtin: let me find it
[18:03] <gatox> alecu, already fix it..... no problem
[18:06] <alecu> briancurtin: this is the twisted bug: http://twistedmatrix.com/trac/ticket/5726 My patch is there, still pending some trivial fixes requested on the review.
[18:08] <briancurtin> alecu: cool, thanks. applying it now
[18:09]  * alecu thanks his ISP for the breakage. I also agree that google search is not an interesting part of the Internet, so congratulations on denying me access to it.
[18:09] <briancurtin> SSO tests completed in 6.003 seconds. i guess this computer is kinda fast now.
[18:10] <alecu> briancurtin: awesome!
[18:10] <alecu> briancurtin: are you sure you've not set them all to @skip?
[18:10] <alecu> :-)
[18:10] <mmcc> wow, I'm jealous
[18:10] <briancurtin> haha, i have done that in the past. wow, 1000 tests in 0.5 seconds...oh entire modules are skipped
[18:12] <mmcc> ugh, I'd test but trunk still has the old run-mac-tests
[18:13] <mmcc> (test my speed that is)
[18:13] <mmcc> of course it took 3.2 seconds for the script to fail to find u1trial, so I'm not optimistic
[18:17] <mmcc> gatox, I have a style question about this branch: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-timer/+merge/125499
[18:17] <karni> How hard/easy it is to write a python app, that plugs into syncdaemon/dbus to detect when SD becomes idle?
[18:18] <karni> Meh. Forgot about good intro.
[18:18] <gatox> mmcc, shoot
[18:18] <karni> Hey desktop guys! How's it going :)
[18:18] <karni> How hard/easy it is to write a python app, that plugs into syncdaemon/dbus to detect when SD becomes idle?
[18:18] <karni> Now, better :)
[18:18] <mmcc> gatox, wouldn't it be better to have register_listener raise an exception or at least log a warning instead of just doing nothing when you pass it something that isn't callable? I'm allergic to silently ignoring bad inputs…
[18:19] <gatox> mmcc, +1 to log
[18:19] <gatox> mmcc, i'll fix that
[18:20] <mmcc> gatox, then my question is why just log it instead of raising an exception?
[18:20] <gatox> jjeje
[18:20] <alecu> karni: I think that syncdaemon only emits dbus signals when the connection state changes, but not when it's IDLE
[18:21] <karni> alecu: Does it emit stuff like "I've done some work"/"I've finished doing stuff"?
[18:21] <gatox> mmcc, do you think that is better to raise something like TypeError("callable object expected")?
[18:21] <karni> alecu: And thanks for your answer :)
[18:21] <alecu> karni: it emits "I'm starting to download such and such file." "I'm done downloading such file"
[18:21] <karni> alecu: same goes to uploading, right?
[18:21] <alecu> karni: right.
[18:22] <mmcc> alecu, karni, if you're willing to make your script depend on ubuntuone-client, you can look at the systray script and see how it registers itself as a status listener
[18:22] <karni> mmcc: great idea
[18:22] <mmcc> and as a bonus your script would work on mac and windows :)
[18:23] <alecu> karni: also, how do you plan to do the UI for your app?
[18:23] <mmcc> gatox, I do, because that's really an error - that function expects a callable, and nothing else makes sense to give it
[18:24] <karni> alecu: I don't ;) Headless.
[18:24] <gatox> mmcc, ok..... let's do that
[18:24] <mmcc> gatox: but I'm willing to be convinced otherwise
[18:24] <karni> mmcc: oh sweet!
[18:25] <alecu> karni: (also, you may be able to poll SD for its state every X seconds, but it would be as ugly as it sounds)
[18:25] <karni> alecu: :D
[18:26] <karni> alecu: mmcc: I think tracking "finished uploading xyz" is a great start, thanks guys!
[18:26] <karni> alecu: mmcc: Is there an event for metadata changes? like "file renamed/published/deleted" ?
[18:26] <karni> :>
[18:26] <mmcc> karni: my idea about the systray code is not great, in retrospect - it'll depend on u1-client and everything else that depends on
[18:27] <karni> mmcc: The simpler the better (but I'm stating the obvious here). I don't mind it depending on u1-client, because it will be only targeted for computers running U1 client.
[18:27] <mmcc> you probably want a new twisted PB client that connects to syncdaemon directly and registers for the same event that the control panel backend does
[18:27] <karni> aha
[18:27] <karni> PB?
[18:27] <mmcc> karni: right, but control panel will bring in Qt, and ouch
[18:28] <karni> mmcc: Right. But my program wouldn't make sense on a desktop, which doesn't have U1. Can we run headless U1?
[18:28] <alecu> mmcc: mind that PB is only used on mac and windows
[18:28] <karni> (I think the headless U1 was a question stated hundreads of times here)
[18:28] <mmcc> Perspective Broker, the twisted IPC stuff. I guess that's just on non-linux though, and we've wrapped it in the u1-client code, so you want the wrapper
[18:28] <alecu> karni: PB is Perspective Broker, the IPC that comes standard with twisted.
[18:28] <mmcc> alecu: right, remembered that just after I said it
[18:29] <karni> I could always make it poll file_storage API volume generations, but that is still polling, which sucks.
[18:29] <karni> aha
[18:30] <mmcc> karni: see set_status_changed_handler here http://bazaar.launchpad.net/~ubuntuone-control-tower/ubuntuone-control-panel/trunk/view/head:/ubuntuone/controlpanel/sd_client/__init__.py
[18:30] <karni> Theoretically I could hack SD, although that being a "plugin" would be much better, I think. I want to send push notifications to Android once volume generation is increased.
[18:30] <alecu> karni: I can't find any APIs for renames/publishes/deletes.
[18:30] <karni> mmcc: \o/ looking!
[18:31] <karni> alecu: I see, thanks for looking!!
[18:31] <mmcc> hmmm, not sure that's the right level of detail for what you want.
[18:32] <karni> mmcc: I can pull volume delta, so if it's a rename/publishing file/new file/deletion, I'll get it from Android (or any client, which supports delta, really)
[18:32] <alecu> karni: for uploads/downloads you may use this: https://one.ubuntu.com/developer/files/store_files/syncdaemontool
[18:32] <alecu> karni: specifically SyncDaemonTool.wait_for_signals
[18:32] <karni> mmcc: So I'm basically interested in any event that touches files or their metadata. (Everything? :D Besides shares)
[18:33] <karni> alecu: uuu nice!
[18:33] <karni> me likes
[18:34] <alecu> karni: what's the use case for this app? just for you, for debugging?
[18:35] <alecu> karni: in that case, I would suggest hacking a listener for the "generation changed" event inside syncdaemon
[18:35] <alecu> karni: I might be able to guide you if you need some help.
[18:35] <karni> brb otp
[18:36] <mmcc> karni: yeah, my suggestion might be too high level. it's the same info you get from u1sdtool -s, which is just 'is_connected/is_error/is_online/working_or_not' , but you want more detail
[18:37] <karni> back
[18:37] <karni> alecu: yes, that would be ideal, to be honest
[18:37] <karni> alecu: Totally, thanks :) I'll keep you in the loop.
[18:38] <karni> mmcc: Right, still, thanks :)
[18:40] <karni> alecu: Use case - *if* you use U1 mobile app (let's start with Android, we can expand later), you'd get push notifications about genration change, which would basically allow syncing data onto the device.
[18:40] <karni> alecu: Say, added a document to folder -> push -> phone pulls it (only selected folders are kept in sync, not all U1 volumes)
[18:40] <karni> alecu: You update a text file -> push -> phone pulls it, before you even notice :)
[18:40] <karni> etc
[18:41] <karni> alecu: Initially testing, ideally in the future - a feature of u1-servers
[18:41] <karni> alecu: I'm taking it to the client, because it's so much easier to start with. If it works nice, I may hack it on the server side.
[18:42] <karni> Now, gotta Get Things Done™, thanks alecu and mmcc!
[18:43] <alecu> karni: how do you plan to have the desktop client talk to the phone?
[18:43] <karni> alecu: with Google Cloud Messaging push :)
[18:43]  * alecu is intrigued
[18:43] <karni> alecu: for start, I'll write a Google AppEngine server
[18:44] <karni> I can learn tons of things \o/
[18:44] <karni> That part would be later on hosted with u1-servers (as a module, plugin, whatever we end up coding)
[18:45] <karni> alecu: To be honest, it doesn't need to be an AppEngine application. It can be a simple Django or even single-file php app :)
[18:45] <karni> Just to get the stone rolling.
[18:45] <karni> alecu: FWIW few evenings back I added push to my friends app, and it was super easy. Like.. too easy :)
[18:45] <alecu> karni: right! go ahead, and let me know if I can be of any help.
[18:45] <karni> alecu: Awesome, thanks :)!
[18:55] <gatox> mmcc, the branch has been updated
[18:55] <mmcc> gatox, looking at it now, thakns
[18:56] <mmcc> gatox, what's the easiest way to IRL test this on ubuntu? if that answer starts with "Quantal", I'll skip it, since I don't have a q vm set up yet
[18:57] <gatox> mmcc, you will have to skip it then :P
[18:57] <mmcc> ok then. I'll run tests on osx and someone else will have to look at the menu
[18:58] <alecu> bye all, will be back in a few hours!
[18:58] <gatox> alecu, bye
[19:19] <mmcc> gatox, sorry I started the tests then swapped tasks, you need to update the test to expect the new exception.
[19:19] <gatox> ah right
[19:40] <gatox> mmcc, done
[19:40] <mmcc> gatox: cool, looking again
[20:30] <mmcc> gatox, +1 finally, sorry that took so long
[20:30] <gatox> mmcc, no problem! thanks!
[20:45] <gatox> ok..... eod for me! see you tomorrow people!
[21:25] <mmcc> lunchtime
[22:46] <mmcc> back
[22:57] <mmcc> cleared out this annoying test failure on ubuntuone-client on darwin: https://code.launchpad.net/~mikemc/ubuntuone-client/darwin-platform-platform/+merge/126345 <--- trivial review if anyone wants one
[23:50] <mmcc> ok, time to go, be back later tonight