/srv/irclogs.ubuntu.com/2011/01/17/#ubuntuone.txt

=== JanC_ is now known as JanC
MaxximiliannHi!07:22
MaxximiliannRan into a syncing issue with Ubuntu One. Can anyone assist?07:23
MaxximiliannHello?07:24
MaxximiliannAnybody home?07:24
nirazioWhen I open Ubuntuone Preferences, Account tab, on one computer it does not display the usage, name e-mail or current plan. Why???07:51
ralsinaGood morning everyone!12:34
=== teknico is now known as teknico_away
mandelralsina: morning! Do we have the sand up in 5 min?13:55
ralsinamandel yes!13:56
mandelok13:56
* mandel writes what he has done13:56
ralsinamandel, CardinalFang, vds standup in 5'!13:56
vdsralsina: ok13:56
mandelme14:04
mandelralsina, CardinalFang, vds: stand up?14:04
ralsinayes!14:04
* ralsina was on the phone, sorry14:04
mandelnp14:04
ralsiname14:04
vdsme14:05
vdsralsina: it's holiday in the US?14:05
ralsinavds: yes, Martin Luther King's day14:05
CardinalFangit is.  One se.14:05
ralsinaand alecu and nessita are on swap because of the travel from dallas14:06
mandelshall I start then?14:06
CardinalFangI can't find my bug number.  It doesn't matter very much.  Open and closed, so...14:06
CardinalFangReady.14:06
ralsinamande, start please14:06
ralsinas/mande/mandel/14:07
mandelDONE: Done bug 701868, bug 702276, bug 702295. Fixed small issues in branch that fixed bug 700951, bug 700981 and bug 701049. Worked on bug 702926 and ready to propose the branch for merging.14:07
mandelTODO: Implement FileSystemWatcher on windows. Fix proposed branches for ubuntu_sso.14:07
mandelBLOCKED: No14:07
ubot4Launchpad bug 701868 in ubuntuone-client "Cannot run tests on windows due to a fail import (affects: 1) (heat: 358)" [Medium,In progress] https://launchpad.net/bugs/70186814:07
ubot4Launchpad bug 702276 in ubuntuone-client "Platform unit tests should be skipped when not ran in the correct platform (affects: 1) (heat: 711)" [Medium,In progress] https://launchpad.net/bugs/70227614:07
ubot4Launchpad bug 702295 in ubuntuone-client "Pyinotity logging settings should be moved to the platform module (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70229514:07
ubot4Launchpad bug 700951 in desktopcouch "Couchdb process is not started on windows (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70095114:07
ubot4Launchpad bug 700981 in desktopcouch "The function 'run_couchdb' should be moved to the platform module (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70098114:07
mandelralsina: go go go14:07
ralsinaDONE: searching for windows contractor, finally got someone on HR (no results), team leads call+other calls, chased people around as usual.14:07
ralsinaTODO: reviews, management stuff, have HR fix things for me, someday actual coding ;-)14:07
ralsinaBLOCKED: no14:07
ralsinavds: your turn14:07
vdsDONE: continuing on developers RESP APIs, discussed with many jdo and aquarius, filed bugs #701029 and #70103114:07
vdsTODO: continue with the APIs14:07
vdsBLOCKED: not blocked but a bit lost, need jdo to check what I'm doing is correct14:07
ubot4vds: Bug 701029 on http://launchpad.net/bugs/701029 is private14:07
vdsCardinalFang: please14:07
CardinalFangDONE: playlist API 90% implemented. Fixed record-deletion bug in desktopcouch.14:07
CardinalFangTODO: US holiday today.14:07
CardinalFangBLOCKED: None14:07
ralsinaok, comments, questions?14:08
ralsinaOne from me: a huge patch landed/is landing in syncdaemon14:08
mandelralsina: what is that patch about?14:09
ralsinaIt "releases the queues" and makes everything async. So expect weird subtle breakage, probably14:09
mandelralsina: I merged my windows branches with trunk today and there are test that fail AFAIK14:09
ralsinamandel: ok, can we take a look at that together later?14:09
mandelralsina: sure, it is an easy fix, someone forgot to set the import correctly :)14:10
ralsinaOn other news, we will talk more about this tomorrow, but we are going to make some small process changes to make releases more stable14:10
ralsinait needs discussion, but it will probably involve making mightlies "real nightlies" so we have a remote chance of everyone using the same package combination14:11
ralsinaAlso, I will begin the process of getting tarmac and friends running somewhere other than dobey's house, but again, we will talk about that tomoroe14:11
ralsinawhoa, bad typing there ;-)14:12
ralsinaI have nothing else. If noone else has anything, eom?14:12
mandelralsina: it would be great if we can look at what we should do regarding running the desktopcouch and ubuntuone-client tests on windows with tarmac too14:12
ralsinamandel: that would be great. Does tarmac even run on windows?14:13
mandelralsina: if it does not, I'm sure it can be fixed :)14:13
mandelralsina: I'l take a look at that asap14:13
ralsinaand I wonder if we can find a window server somewhere :-)14:13
karnimorning everyone14:14
ralsinamorning karni!14:14
ralsinaok, eom then?14:14
karni:)14:14
ralsinaeom!14:14
mandelralsina: eom for me :)14:14
verterokralsina, mandel: fwiw, tarmac is for landing branches, not for CI :/14:15
ralsinaverterok: but it refuses to land them when tests fail. Oh, I see :-(14:15
verterokralsina, mandel: for that we have hudson, and we can use a ec2 windows instance ;)14:15
ralsinamandel: it would land the branches if the tests worked on windows and not on Linux :-D14:15
ralsina"we have hudson" is not what I heard ;-)14:16
mandelralsina, verterok: it is a complicated situation, since changes in one side could possibly brak both, so far I test always both, but is a bloody PITA14:16
ralsinamandel: I suppose doing windows work in a separate branch would be too much problem, right?14:17
mandelralsina: atm I have a branch that is all the time merged with trunk, I guess we could do a cascade merge when you merge to trunk, the windows one knows and merges… otherwhise we could start separating branches due to human error…14:19
ralsinamandel: right, that's what I meant by "too much problem" :-)14:19
=== teknico_away is now known as teknico
MaximilianHi all. Anyone have any insights on this? https://bugs.launchpad.net/ubuntu/+source/ubuntuone-client/+bug/70381815:13
ubot4Launchpad bug 703818 in ubuntuone-client (Ubuntu) "files will not sync (affects: 1) (heat: 6)" [Undecided,New]15:13
karniNow that's a cool name for a method ;) syncdaemon::main.py, def wait_for_nirvana15:20
CardinalFangkarni, the help mentions Buddha too.15:40
ryeMaximilian, AttributeError: Values instance has no attribute 'debug' o_O15:40
karniCardinalFang: self.logger.debug("Nirvana reached!! I'm a Buddha") ;D15:40
karniCardinalFang: I've implemented event queue (events are dispatched to handlers), and I'm on action queue atm. That should streamline ongoing events in U1F, as the source was getting a little bit spaghettish with every new feature added.15:43
karni(such as periodic sync using alarms)15:43
ryeMaximilian, assigning to myself and will see what's going wrong there15:43
* beuno cheers karni 15:44
karnibrb phone15:44
karnibeuno: \o hello. I'll be back in a moment :)15:45
MaximilianThanks rye!15:46
karnibeuno: how's it going on :) busy as always? :)16:00
beunokarni, exactly  :)   how are you?16:01
karnibeuno: i'm good. we're a tiny bit of schedule, but considering really conservative estimates, nothing to wory about! :)16:01
karni*off16:01
* beuno is not worried16:01
karnibeuno: I'm happy to introduce changes that I mentioned few days ago on IRC. I like the way things work (i.e. I've started to handle connectivity changes using event queue)16:02
karnigreat :)16:02
* karni picks up a pencil to design Android specific state machine16:09
karniverterok: hello :) (if you have holidays today, tell me ;)) the docs/states_manager.svg says 'set capabilities' is before 'authenticate'. i've been doing this in order 'auth' and 'set caps'. does it matter?16:31
verterokkarni: yes, set_caps is before auth16:31
verterokkarni: not sure if the order is enforced, or the calls to set_caps after auth are ignored16:32
karniverterok: bah, sorry. i've been doing it the good way :>16:32
verterokkarni: :)16:32
karniverterok: all's good, sorry for confusion16:32
karniverterok: hmm. anyhow, your examples do auth+setCaps, the states_manager.svg does setCaps+auth16:33
verterokkarni: hmm, let me check the code16:33
karniverterok: http://paste.ubuntu.com/555134/16:34
karniverterok: I was just wondering if the documentation (the diagram) is correct/outdated16:35
verterokkarni: yes, it's accepted after doign auth too16:35
karniverterok: cool16:35
verterokkarni: but stick with what the diagram says ;)16:35
karniverterok: oh, will do :)16:36
=== beuno is now known as beuno-lunch
=== beuno-lunch is now known as beuno
karniverterok: You have a second?19:29
verterokkarni: whatsup?19:29
karniverterok: For more control, I'd like to wait with executing some deferds, say - I've got 50 files to download19:30
karniverterok: so I'd be stupid to fire 50 deferreds at the same time. I know you said it's serialized, etc19:30
karniverterok: but I need some control in mobile environment, long story short:19:31
verterokkarni: deferreds aren't executed. a deferred is just a promise of a future value19:31
karniverterok: What's the best way to wait with executing the Request? Deferred d = new Deferred(). d.pause(); d.chain(getContent().getRequest) ?19:31
verterokkarni: the "commands"/requests get executed when you call: clientInstance.do_stuff()19:32
karniverterok: I know it's just a promise. But.. how should I say it. I want to take care of the queueing process19:32
karniinstead of giving it up to Java Future19:32
karniright, such as client.getContent(...)19:32
verterokkarni: yes19:33
karniimagine a user 'starrs' a favourite folder to sync. and it starts syncing 500 files (each 2MB)19:33
verterokkarni: then you need a queue...so you enqueue the call to client.getContent(...)19:33
karniverterok: how does it look on the backstage?19:33
karniyou mean - the call enqueues the request, right?19:33
karniI've seen the SingleThreadExecutor in your sources.19:33
verterokkarni: nono, the application code needs to take care of that queueing19:34
karnior you mean that I should have my own queue19:34
karniok, awesome. that's what I'm doing right now.19:34
verterokkarni: that's just an implementation detail...we could change that to a threadpool19:34
karniso, imagine I want to queue those deferreds19:34
verterokand there you get requests running in parallel19:34
karniinstead of calling client.getContent() I would create a paused Deferred, and chain the getContent19:35
verterokkarni: you don't queue deferred :)19:35
karnihahah :)19:35
verterokkarni: you need to queue a callable, and then call it when it reach the head of the queue19:35
karniI'm sorry. I'm trying to be clear, but looks like I'm not managing with explanations.19:35
verteroklet's call this "callable" a "Download"19:36
karniverterok: sounds good.19:36
verterokkarni: so, you do: queue.put(MyDownLoad(...))19:36
karniCommand is fine (you guys are using this terminology I think)19:36
karniright, and the rest is clear, sure.19:36
verterokkarni: no deferreds, no nothing19:37
karniand I'll call it when it gets to front/head19:37
karnibut the moment I'm calling it, I'm using a client.method (such as .getContent) that at this moment becomes deffered. no?19:38
verterokkarni: now, the consumer of the queue, should take care of calling myDownloadInstance.run() or something and hook to the deferred of the GetContent request19:38
karniright!19:38
karniverterok: just as a side note. what's the .pause() method of a Deferred for? you ever used it?19:39
verterokkarni: I never used it, but if you look at the Deferred implementation it just pause the deferred callbacks chain19:39
verterokkarni: a Deferred is just that, the result. there is no network involved, no threading...no nothing19:40
verterokkarni: when you pause a deferred it will just stop calling it callbacks/errbacks19:40
karniverterok: http://paste.ubuntu.com/555186/19:41
karniverterok: just so that I understand it. although it's not a clean solution - it would work, wouldn't it.19:41
verterokkarni: the assertion: "// getContent won't run until we .unpause() what we enqueued" is wrong19:42
karniverterok: that was my last question (thank you so much for your patience and hints)19:42
karniaha, so I got the pause() wrong19:42
verterokkarni: you'r calling: client.getContent()19:43
verterokat the moment you call that method, the request is live19:43
karniI see. Understood.19:43
karniNo wonder they named it Twisted19:43
* karni chuckles19:43
karniverterok: Thanks again, you're awesome.19:44
verterokkarni: if the chained deferred is paused, you might not see the result of the GetContent request...because the deferred callback chain is paused, but the request might have finished X hours before19:44
* karni nods :)19:44
karniverterok: I haven't used that linked construct, no worries. I've been quite productive ;)19:45
karnionly now I'm getting into the real requests queuing (I've got events queuing working)19:46

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!