/srv/irclogs.ubuntu.com/2011/02/09/#ubuntuone.txt

mandelivanka: ping09:42
JamesTaitGoeie dag, mense!09:57
=== zyga_ is now known as zyga
mptCan someone please remind me how to clear my SSO credentials so that I need to sign in again?11:18
mandelmpt: ou have to remove the keys from the keyring, do you know how to do that?11:21
mptmandel, ah, never mind, I just closed Ubuntu Software Center and reopened it11:21
mandelok11:21
mandelivanka: ping11:21
ralsinagood morning everyone!12:12
karnitime to code.12:12
karniwish everybody a fruitful day of work12:13
=== teknico is now known as teknico_away
alecuhello all!13:20
mandelalecu: hola13:20
alecuhello mandel! how are you feeling today?13:21
mandelalecu: fine, i'm getting quite good at typing like ths :P13:21
mandelalecu: also quite happy about the pipeline plugin for bzr, is bloody awesome, have u tired it?13:22
alecumandel, never tried it... looking.13:22
mandelalecu: is certainly useful for whenever you have huge changes to make13:23
alecumandel, oh, that's really interesting. I could have really used it a few days ago :P13:24
mandelalecu: well,better late than never ;)13:24
mandel u already know it for the next time13:25
alecuyes! I'm going to learn it before next time :-)13:25
thisfredit's also on my list13:44
thisfredlooks like it would really help with branches that depend on one another13:45
mandelthisfred: I can tell you, if switch to use it in the widnwos port and i cannot be happier :)13:45
thisfredalecu: there was a mail to warthogs or canonical-tech a week or two ago with a video demonstrating pipelines13:45
mandelsorry for my typing, the hand is tired :P13:47
* alecu needs to catch up with warthogs...13:54
=== yofel_ is now known as yofel
nessitahello eveyrone!13:58
nessitaeveryone* as well13:58
dobeyhi14:00
nessitame14:00
mandelme14:00
alecume14:00
dobeyme14:01
nessitaralsina?14:02
ralsiname14:02
nessitathisfred ?14:02
thisfredme14:03
thisfredsry14:03
nessitaDONE: proposed branch for bug #714583 (need reviews!). Conversations re: bug #709496. Talk with chicharra team re bug #71577614:03
nessitaTODO: work on #71577614:03
nessitaBLOCKED: nopes14:03
nessitaNEXT: mandel14:03
ubot4Launchpad bug 714583 in ubuntuone-control-panel (Ubuntu) (and 1 other project) "Support share subscription in Folders tab (affects: 1) (heat: 3426)" [High,Triaged] https://launchpad.net/bugs/71458314:04
ubot4Launchpad bug 709496 in canonical-identity-provider "Need a way to set the 'displayname' property for newly created accounts using REST API (affects: 1) (heat: 6)" [Undecided,New] https://launchpad.net/bugs/70949614:04
ubot4Launchpad bug 715776 in ubuntuone-client "Shares dir name may not be unique (affects: 1) (heat: 6)" [Undecided,New] https://launchpad.net/bugs/71577614:04
mandelDONE: Update the man for u1trial to fix bug #715195. Fixed merging issue of os_helper branch for sd. Slipted branch that adds file system notification for easy review.14:04
mandelTODO: propose merges for filesystem notifications. Rearrange meeting with ralsina and ivanka. Get ralsina to tests changes on windows. Slip ipc brach for windows.14:04
mandelalecu, please14:04
alecuDONE: worked on pending UI branch to update unity launcher icon progressbar (bug #702116). started looking into tomboy oopses, found little robots and 503 couch timeouts14:04
ubot4Launchpad bug 715195 in ubuntuone-dev-tools "u1trial man is not updated (affects: 1) (heat: 6)" [Medium,Fix committed] https://launchpad.net/bugs/71519514:04
alecuTODO: find out root oops cause, finish progress branch above14:04
alecuBLOCKED: no14:04
alecuNEXT: dobey14:04
mandeluh blocked: no14:04
ubot4Launchpad bug 702116 in ubuntuone-client (Ubuntu) (and 1 other project) "Syncdaemon needs to show and update a progressbar in the Ubuntu One launcher for pending operations (affects: 1) (heat: 166)" [Medium,Triaged] https://launchpad.net/bugs/70211614:04
dobeyλ DONE: more shotwell research, more pth fixing, bug 715450, bug 715488,14:04
dobeyλ TODO: shotwell plug-in research, finish bug 673012, evaluate SRUs for maverick14:04
ubot4Launchpad bug 715450 in ubuntuone-client "[r847] ubuntuone-client crashes with ImportError from ubuntuone.platform.linux.api.restclient import RestClient (no api.restclient in ubuntuone.platform.linux) (affects: 1) (heat: 6)" [Critical,Fix committed] https://launchpad.net/bugs/71545014:04
dobeyλ BLCK: None.14:04
ubot4Launchpad bug 715488 in ubuntuone-client "[r847] ubuntuone.credentials moved to ubuntuone.platform.linux. Syncdaemon ImportErrors (affects: 1) (heat: 8)" [Critical,Fix committed] https://launchpad.net/bugs/71548814:04
ubot4Launchpad bug 673012 in desktopcouch (Ubuntu) (and 1 other project) "Async monitoring of _changes (affects: 1) (heat: 43)" [Undecided,Confirmed] https://launchpad.net/bugs/67301214:04
dobeyralsina:14:04
ralsinaDONE: reviews (on windows, too), many many calls, canonicaladmin14:04
ralsinaTODO: reviews, management stuff, sprint planning, triage another 8 tons of bugs14:04
ralsinasomeday actual coding ;-)14:04
ralsinaBLOCKED: no14:04
ralsinathisfred?14:04
thisfredDONE: bug #702055, bug #702075, bug #702138, bug #70214414:04
alecuo/14:05
ubot4Launchpad bug 702055 in ubuntuone-client (Ubuntu) (and 1 other project) "Syncdaemon needs to send a notification when a new UDF is available for subscription (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70205514:05
ubot4Launchpad bug 702075 in ubuntuone-client (Ubuntu) (and 1 other project) "Syncdaemon needs to add an entry to the messaging menu when a new UDF is available for subscription (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70207514:05
ubot4Launchpad bug 702138 in ubuntuone-client (Ubuntu) (and 1 other project) "Syncdaemon needs to send a notification when a new share offer comes in (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70213814:05
ubot4Launchpad bug 702144 in ubuntuone-client (Ubuntu) (and 1 other project) "Syncdaemon needs to add an entry to the messaging menu when a new share offer comes in (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70214414:05
thisfredTODO: the other 3 | API14:05
dobeyand frack it's cold.14:05
thisfredBlocked: no14:05
thisfreddobey: amen to that14:05
nessitacomments anyone?14:05
dobeyhow did it go from 50F to 25F overnight :(14:06
nessitaralsina: so, we got the official approve for the sprint? :-)14:06
dobeyat least next week's forecast is pretty much all in the 60s14:06
ralsinanessita: waiting on Chipaca's word on it14:06
thisfreddobey: 21 here14:06
ralsinadobey: same here, only celsius :-)14:07
dobeygrr14:07
thisfredI found one flight that leaves at 6am on the 3rd that would work, but otherwise yeah14:07
ralsinaok, comments?14:07
nessitanone here14:07
dobeyjust one14:07
nessitaI need reviews for: https://code.launchpad.net/~nataliabidart/ubuntuone-control-panel/share-subs/+merge/48955 and https://code.launchpad.net/~nataliabidart/ubuntuone-client/get-sharesdir/+merge/4895414:08
dobeyDING DONG THE WITCH IS ALMOST DEAD14:08
dobeywhere by witch, i mean u1sync14:08
thisfredI also need reviews https://code.launchpad.net/~thisfred/ubuntuone-client/lp-702055/+merge/4898714:08
* ralsina will do them all14:08
ralsinafirst mandel, then nessita, then thisfred, then nessita214:08
ralsinaFirst come, first server basis.14:09
dobeyon review to bring them, and one to bind them?14:09
ralsinas/ver/ved/g14:09
dobeyi think that should be our policy14:09
thisfrednessita: that second branch I can probably do, unless my computer makes it impossible again14:09
ralsinadobey: don't do the full nerd. Yo never do the full nerd :-)14:09
nessitathisfred: let me know :-)14:09
thisfredI'm on it14:09
ralsinaeom?14:11
nessitaeom!14:11
mandelralsina: ready for reviews then :)14:12
ralsinamandel: cool.14:12
ralsinamandel: so I will re-merge that branch and test it in 2'14:12
mandelralsina: perfect, plus that one there are other 3 that you need to run on windows14:12
alecumy internet is flaking out.14:13
mandelso let me know if ou can do them14:13
ralsinamandel: sure I can14:13
ralsinawhat's the windows equivalent of rm -rf ?14:13
alecudeltree \ ?14:13
ralsinaalecu: that's DOS :-)14:13
mandeli though del works....14:14
thisfreddeltree \ -Y :)14:14
ralsinamandel: del /s /q leaves the folders14:14
dobeywindows is dos14:14
dobeyif you mean windows windows, it is "select the folder in explorer and press shift+del on keyboard"14:15
alecuralsina, rmdir /q /s14:15
thisfredhttp://bash.org/?5007014:15
ralsinadobey: I meant a command inside cmd14:15
ralsinaalecu: cool, thx14:15
dobeyhaha14:15
ralsinadobey: and it's not DOS if you don't have command.com :-)14:16
dobeysure it is14:16
dobeythe real question is, do you have gorilla.bas?14:17
ralsinadobey: no I don't :-(14:17
dobeyOOH14:18
* karni loads batteries with lunch14:18
dobeyhttp://inventwithpython.com/extra/gorilla.py14:19
dobeythis needs packaging.14:19
ralsinamandel: no module named pywintypes, what am I missing?14:20
karnii'm missing pygame x]14:20
mandelralsina: this http://starship.python.net/~skippy/win32/Downloads.html14:20
ralsinamandel: getting14:20
ralsinamandel: that page says that page is obsolete14:21
mandelralsina: we access the win32 calls from there to fix some issues with the rights of a file etc..14:21
mandelralsina: yes, but you can follow pointer :)14:21
ralsinamandel: ok14:21
mandelralsina: is the one i know heheh14:21
ralsinamandell fetching & installing14:22
alecudobey, that's an awful display of bad pygame.14:22
ralsinamandel: successful tests!!!!!14:24
dobeyalecu: yes, it crashed when i pressed arrow :P14:24
dobeyanyways14:24
mandelralsina: yes, and more are to come :)14:24
ralsinamandel: and it only runs the path I asked14:24
ralsinaSo +1 it is14:24
mandelralsina: ok, hre is the next: https://code.launchpad.net/~mandel/ubuntuone-client/windows_reuse_pyinotify/+merge/4906214:25
ralsinamandel: but just to be sure, what's the goal you are aiming for in this first branch?14:25
mandelralsina: i've reused pyinotify as max as possible so that most of the logic in the current code con stay the same way14:25
ralsinaI meant in the os_helper14:25
nessitadobey: what happened with the release?14:25
mandelralsina: there are os calls on linux python that do not exist on windows or that throw diff error etc...14:26
dobeynessita: will make it today. some stuff broke when mandel's branch landed and the fix just landed this morning14:26
ralsinamandel: yes, but what am I supposed to test to say "this works?" all the platform tests?14:27
mandeldobey, nessita UPS SORRY14:27
mandelralsina: yes, all the platform tests should run14:27
ralsinaok, they don't:-(14:27
ralsina    self.monitor = FilesystemMonitor(self, fs, ignore_config)14:27
ralsinaexceptions.TypeError: object.__new__() takes no parameters14:27
nessitadobey: we need https://code.launchpad.net/~verterok/ubuntuone-client/fix-712056/+merge/48826 landed as well14:27
mandelralsina: all the os_helper tests :)14:28
mandelralsina: not everything atm14:28
ralsinamandel: ok, let me check the output then14:28
mandelso you can do python u1trial tests/platform/test_os_helper14:28
dobeynessita: ok, i'd also like to get the branch i'm going to propose shortly, in as well14:28
* karni is back after lunch.14:29
ralsinamandel: in os_platform there are a couple of NotImplementeds14:29
mandeland python u1trial tests/platform/windows/test_os_helper14:29
ralsinaos_helper I meant14:29
mandelein?14:29
mandelralsina: can you pastebin it14:30
ralsinamandel: on it14:30
ralsinadamn, windows terminal history is TINY14:30
ralsinais there something like tee for windows?14:31
ralsinamndel: give me 1' and I'll re-run and pastebin it14:31
mandelralsina: use cygwin, is the best thing to do for us14:32
ralsinaActionQueueCommandTestCase object has no attribute action_queue14:32
mandelralsina: ok, i'll be out for 2 min i need to microwave my food :)14:32
ralsinaThat makes a bunch fail14:32
karniralsina: heh, I'm at that very place, but porting to Java14:32
mandelralsina: you have to run python u1tiral tests/platform/test_os_helper14:32
ralsinaoh, wait, it's running the wrong tests!14:32
karnipython is so freaking smart it's not making it easy sometimes.14:32
mandelralsina: and python u1trial tests/platfrom/windows/test_os_helper14:33
ralsinamandel: with FORWARD slashes?14:33
mandelralsina: no, with back, but I cannot type very well :P14:33
ralsinaThen that's what I did :-(14:33
mandelralsina: pastebin please :)14:34
mandeland include the command you used and from where14:34
ralsinamandel: I am getting cygwin, I just can't get a useful copy from the cmd window14:35
ralsinamandel: I used that command. It starts with the right tests but doesn't stop, and starts running other tests14:39
ralsinaargh, my mistake of course14:39
ralsinaI was using run-tests.bat instead of u1trial14:40
ralsinaIt's perfect. +114:40
mandelralsina: cool :)14:44
mandelralsina: shall we move to the next14:44
mandel?14:44
ralsinayes please14:44
mandelralsina: https://code.launchpad.net/~mandel/ubuntuone-client/windows_reuse_pyinotify/+merge/4906214:45
ralsinaOk, I am now starting with that one14:45
mandelthat is part of a huge merge, it get the code i can reuse from pyinotify14:45
mandelwhich later i reuse for the file notifications so that we cna reuse as much logic as posible14:46
mandelralsina: is a copy paste, so running the tests on windows and get the fail is the expected result :P14:46
ralsinamandel: ok, that should be achievable ;-)14:46
mandelotherwhise the merge was of 3000 lines or more14:46
ralsinamandel: bzr is again whining about limbo and permissions. That means I have to whack the whole repo here to unstuck it. Will take a minute or two.14:47
mandelralsina: ok, i"ll get a coffee then :)14:48
* ralsina is starting to hate bzr, windows and life14:53
mongytea, hot, with hints of brand new kettle14:54
mandelralsina: so do i deserve a pay raise? :)14:55
ralsinamandel: or sainthood :-)14:56
mandelralsina: i had to try :)14:56
mandelnessita: ping14:58
nessitamandel: pong14:59
dobeywhoot whoot14:59
mandelnessita: can you give me a read review on  windows branch?14:59
nessitamandel: sure! shoot15:00
mandelnessita: thx!15:00
mandelthere you go: https://code.launchpad.net/~mandel/ubuntuone-client/implement_windows_os_helper/+merge/4663015:00
nessitadobey: a couple of branches have been approved for u1client, so let me know before you make the release so I can confirm they are landed15:01
* ralsina is paddling in a river jello. And not the nice jello, ugly green jello. Guacamole flavored jello.15:01
ralsinamandel: ok, finally slapped bzr into giving me a merged branch15:03
dobeyhttps://code.launchpad.net/~dobey/ubuntuone-client/remove-u1sync/+merge/4907015:03
ralsinamandel: runnint tests15:03
nessitamandel: why this file tests/platform/linux/test_os_helper.py appears as added?15:03
dobeyand https://code.launchpad.net/~dobey/u1sync/move-u1sync-here/+merge/4907215:04
ralsinamandel: they fail as you predicted. That means approve? :-)15:04
mandelnessita: because on linux we are testing certain things that are specific to it, the idea is that the linux one stays and the more general one too, it may appear the test the smae thing, but there are small differences to take intoaccount15:04
mandelralsina: yes hehe15:04
mandelralsina: you can read the code, but it is a copy paste from pyinotify15:05
ralsinamande: are you checking that these are not breaking anything on Linux?>15:05
nessitamandel: right, but I wonder is why that file, that has as author only verterok, is added as a new file15:05
mandelralsina: yes, and i'm also asking people to do linux reviews to make sure15:05
ralsinamandel: ok15:05
mandelnessita: no idea, maybe i used the cp command instead of bzr move15:06
ralsinamandel: +1 applied15:06
mandelralsina: ok, in the next we use that code, ready?15:06
nessitamandel: can you please revert that change and use bzr move? otherwise the bzr history will be screwed up15:06
ralsinayes, shoot15:07
mandelralsina: take a look at this: https://code.launchpad.net/~mandel/ubuntuone-client/windows_pyinotify_missing_parts/+merge/4906115:07
mandelralsina: the new tests to run are python u1trial tests/platfrom/windows/test_fylesystem_notifications15:08
dobeymandel: copy/paste? is pyinotify GPLv3?15:08
ralsinamandel: ok, merging15:09
mandeldobey: is MIT15:09
mandeldobey: is that a problem15:09
mandel??15:09
dobeymandel: the original (C) notice must be preserved15:09
ralsinamandel: tests pass now. cool.15:09
mandelnessita: it would be kind of hard to do since i have other branches based on that one….15:09
dobeycut+paste code is not fun15:10
mandeldobey: it is there...15:10
* mandel checks15:10
nessitamandel: but this is not good, we lose all the bzr history on that branchy15:10
nessitaon that file, sorry15:10
dobeymandel: also, it is not 2009 any more15:10
ralsinadobey: if it says (c) 2009 it's because 2009 was the last time the file was edited by that author, regardless of what year it is ;-)15:11
* alecu__ hates bad internet days15:11
dobeyralsina: look at line 8 of the diff15:11
dobey8+# Copyright 2009 Canonical Ltd.15:11
dobeyin a newly added file :P15:11
nessitahi alecu__, look what rye found: http://ubuntuone.com/p/cIS/15:11
mandeldobey: uh, which diff?15:12
nessitamandel: you can fix this branch and then merge the branch again on the depending branches15:12
alecu__nessita, yeah. I knew that would bite us... but not in such an ugly way.15:12
dobeymandel: https://code.launchpad.net/~mandel/ubuntuone-client/windows_pyinotify_missing_parts/+merge/4906115:12
alecu__nessita, that's because I'm considering the amount of pending operations towards the %15:12
nessitabut allowing this just because is too much work to fix something that was made not properly the first time... I don't know, I don't feel comfortable15:12
nessitamandel: ^15:13
nessitaalecu__: which makes sense. But why the total does not count that?15:13
alecu__nessita, the 52/52 is the number of UploadCommands that were done. The 95% counts the total number of operations...15:14
mandelnessita: well, is not that much work, but taking into account that: 1 I can just yype with my left ahdn, 2: is a test file, 3: I need to get this wokring for the release, well it is a PITA for what i get back15:14
alecu__nessita, so I'm open to finding out a better way of counting that.15:14
mandeldobey: I must have copy the header from somehwere15:14
* mandel fixed that15:15
nessitamandel: where the file come from? there is no file deleted in your branch15:15
ralsinahmmm u1trial ran the tests successfully, and then locked up the terminal session.15:15
alecu__nessita, the thing is that if I count the "other" operations towards the count of uploads it will be misleading.15:15
dobeyralsina: u1trial did, or run-tests did?15:16
ralsinadobey: u1trial15:16
alecu__nessita, because each "upload" may be a MakefileCommand followed by an UploadCommand.15:16
ralsinaalecu: count only the uploads for the %?15:16
nessitaalecu__: this is why at the beginning I said we should count the MakeFIle as operations15:16
nessitain the sense that one upload is 2 operations pending15:17
dobeyralsina: i blame twisted15:17
alecu__ralsina, if I only count uploads for the %, my "all completed!" message would be misleading as well. (but perhaps it would work)15:17
mandelnessita: tests/plafrom/test_os_helper was modified adding the general changiges, the linux one is ne, i really donot see an issue here15:18
ralsinaalecu__: it would be misleading in that there will be some operations pending, but the files will be uploaded anyway15:18
alecu__nessita, I'm counting MakeFile as operations, yes. But I can't say "2 files uploaded" just because I have two operations if only one file is being uploaded.15:18
mandelnessita: there one new added and one modified? what is the issue you see?15:19
nessitamandel: I'm not following you. IN the diff, the file is a whole new file tests/platform/linux/test_os_helper.py. If you created it from scratch, you should be the author. If you didn't, and you took it from somewhere in the repo, I'm asking from where, and in that case, it should not be in the diff as 'completely new'15:19
alecu__ralsina, yes. So... in that case, would we still be showing the progressbar, or will be consider everything as "done" ?15:19
ralsinalI say done15:19
alecu__yes, I like that.15:20
ralsinaIt's lying, but the important part is really done.15:20
nessitaalecu__: I agree. I would suggest then changing the wording a bit, for example:15:20
alecu__ralsina, we should find out what other types of operations those can be, and if they can be "dangerous" at all.15:20
ralsinaIn the case of dangerous operations, count them in too.15:20
nessitaalecu__: '52 of 52 files uploaded. Still 5% operations to be in sync.'15:21
ralsinanessita: that's just soooo nerdy :-)15:21
nessitanerdy?15:21
nessita52/52 is nerdy :-)15:21
nessita52/52 == 1 is nerdy :-D15:21
dobey42 is nerdy15:22
dobey52 is just a bit over the top15:22
ralsinawhat's a user supposed to figure out from "all my files are uploaded but it still has to do things, it seems. 5% of things :-)"15:22
mandelnessita: cp tests/platform/test_os_helper.py tests/platform/linux/test_os_helper.py, vim tests/platfrom/test_os_helper.py :wq bzr add tests/platfrom/linux/test_os_helper.py bzr status added tests/platfrom/linux/test/os_helper.py modififed tests/platfrom/linux/tests_os_helper.py15:22
ralsinaOr, lie harder: put the "other ops" at the beginning.15:22
ralsinaie: until all ops are done, say there is one file left to sync.15:23
nessitamandel: there, the error is using cp. You should bzr move tests/platform/test_os_helper.py tests/platform/linux/test_os_helper.py15:23
mandelnessita: well, the modified should be the platfrom one, i misstyped that15:23
nessitamandel: and the file will not appeared as new15:23
alecu__rye, that's a lovely screenshot: http://ubuntuone.com/p/cIS/ Would you mind opening a bug for it?15:23
nessitamandel: is important to maintain the bzr history in the file15:23
mandelnessita: but tests/platfrom/test_os_helper.py would15:23
nessitamandel: but tests/platform/linux/test_os_helper.py should not be new15:24
alecu__ralsina, "until all ops are done, say there is one file left to sync" <- this is butt ugly, but I think it could work out.15:24
nessitait already existed15:24
ralsinaalecu__: or spread them.15:24
mandelnessita: no, it never existed15:24
karnicheezaz fck. yield is a PITA.15:24
ralsinaalecu__: suppose you have 3 files and 10 non-upload ops, then count one file every 4.3 ops or so :-)15:24
karniverterok: any hints on blocking the deferred in Java like yield does in Python?15:25
alecu__ralsina, right :-)15:25
nessitamandel: you moved one file from one place to another. That have to be done with bzr move, to move the history as well.15:25
karniverterok: the run method of ActionQueueCommand is pretty fck twisted :<15:25
nessitamandel: all this time arguing is enough to do the fix ;-)15:25
mandelnessita: i added a new file, and modified a second one, look at trunk15:25
mandelnessita: that is what the diff says, i added a new one, and modified a second one, if i do a bzr move, from platfrom to linux, what happens with the platfrom code i want to  keep15:26
verterokkarni: no, that's a python specific stuff15:26
nessitamandel: maybe I misunderstood. What file you added as new?15:26
karniverterok: uh :<15:26
mandelnessita: the new is the linux one, but verterok wrote it15:27
verterokkarni: it's juts syntactic sugar15:27
nessitamandel: where was that file located before your branch?15:27
nessitamandel: if you didn't create it, is existed. So you moved it from somewhere, right?15:27
ralsinawho has REAL unity working? Alecu?15:27
karniverterok: that's true. I'm thinking how to reorganize -- the python code calls 'continue;' of a while loop, which using the Deferred.callbacks can't be ported 1:1 just like that.15:28
karniverterok: thanks, I'll handle it :)15:28
alecu_wtf! internet!15:28
verterokkarni: are you writing syncdaemon in java?15:28
ralsinaalecu__: do you still have unity-3d?15:28
karniverterok: yes I am. does that sound crazy?15:28
verterokkarni: depends :)15:29
karniverterok: I'm quite far actually15:29
alecu_ralsina, I do. But it keeps crashing on startup.15:29
mandelnessita: the linux tests never existed, i modified the platfrom ones to be more generic, and added the linux tests based on code written by verterok, the diff states clearly, modified in platfrom, added in linux. if you go to trunk, you will see , no file in linux, therefore is new, and present in platfrom15:29
ralsinaDo you think you could take a screenshot?15:29
ralsinaalecu_: oh, on startup. I guess not :-(15:30
karniverterok: certainly I can't do 100% work of 4+ programmers, but I like the logic of things you guys implemented.15:30
alecu_ralsina, so I have a launcher on the desktop to start up gnome-panel and metacity.15:30
alecu_ralsina, what kind of screenshot do you need?15:30
mandelnessita: the platfrom code needed to be changed, the linux one had to be added and there is not bzr cp15:30
ralsina"a screenshot of the control panel showing off the tab for selecting folders to sync" for joshuahoover15:30
nessitamandel: so you copied a filed into linux dir? and now we have 2 pretty  much the same files in 2 directories?15:30
ralsinaalecu_: on unity to make it all pretty15:30
mandelnessita: yes, we have15:30
alecu_ralsina, I'll try starting it all up under xephyr15:30
mandelralsina: did the tests work?15:30
ralsinamandel: yes!15:31
nessitamandel: what for? let's avoid duplication!15:31
verterokkarni: :)15:31
karniverterok: it's pretty crazy anyway ;D15:31
dobeynessita: your branch failed make test15:31
alecu_"xoo - graphical wrapper around Xnest/Xephyr"15:31
nessitamandel: what is tests/platform/linux/test_os_helper.py testing than tests/platform/test_os_helper.py is not testing?15:32
nessitadobey: checking15:32
mandelnessita: because they are similar yet not the same, because the assertions test different things and the platfrom one are there  simply to ensure that both implementations are following the same interface15:32
mandelnessita: let me get and example15:32
nessitamandel: so, linux spoecific tests should inherit from general tests and customize the specific bits15:33
nessitamandel: we should not duplicate the whole file15:33
alecu_ bah, xoo is ugly.15:35
mandelnessita: they cannot inherit, on window the handle has to be managed in a different way because you cannot rename/remove a file used by a process while you can on linux. If you do not take care of that you will have failing tests on windows, yet not on linux. The linux tests assert that a unix behaviour is done, iheritance will not work, i;ll have to use composition, create a class tha later is accessed by the two diff tests to be able to t15:38
nessitamandel: and why you did do that? :-D15:40
nessitadobey: I forgot a push from yesterday! pushing now15:41
dobeyok15:41
mandelnessita:  why i did the extra test, ot why i did not do that?15:42
mandelnessita: i did not understand the question15:42
nessitamandel: why you didn't do the composite stuff. My main concern is:15:42
ryealecu_, https://bugs.launchpad.net/ubuntuone-client/+bug/71584215:42
ubot4Launchpad bug 715842 in ubuntuone-client "Percentage in notification is a bit off: Uploaded 52/52 field, 95% completed (affects: 1) (heat: 6)" [Medium,Confirmed]15:42
mandelralsina: so i do not get the +1 in the last branch you tested?15:42
alecu_rye, thanks!15:42
ralsinamandel: gack15:43
ralsinamandel: give me 1'15:43
nessitamandel: let's suppose we find a problem with how we're handling something on os_helper. We want to add a test for that, in order to solve. We will have to edit 3 files to do so?15:43
ryefield15:43
rye?15:43
alecu_rye, that bit is really interesting: "This happens because sd is still "processing" stock Move()s but all uploads and downlads are complete."15:43
alecu_ralsina, nessita ^^^15:43
mandelnessita:  i did not do it because I'm just one on this with a tight schedule and I have to prioritice my efforts15:43
mandelnessita: in which platform did it fail?15:44
alecu_nessita, would it be fine if we showed "all done" but some moves were still pending?15:44
alecu_nessita, what would happen if the user closes the laptop in that case?15:44
nessitaalecu_: from my POV, nopes. I think we need to show all done only when SD is IDLE15:44
ryealecu_, facundobatista said there's a bug there15:44
mandelnessita:  if it was in all, then in platform, if it was on windows, then on windows, if it was on mac os, the …  and so on15:44
nessitaalecu_: anyways, you can have all your uploads done but you can have pending downloads, right?15:44
nessitamandel: if it was in all, we need to edit only one file?15:45
nessitathat will cover all two?15:45
alecu_nessita, right. But downloads and uploads are handled right now (as different lines in the bubble)15:45
alecu_nessita, it's those Moves (and other operations) that may be pending.15:45
nessitaalecu_: right, but I mean that a user can have 10/10 uploads done and be 55% completed15:45
mandelnessita: yes, the platfrom one, that is why is there15:45
mandelplatfrom is ran i all platfroms15:46
nessitamandel: ok, now I understand a bit more15:46
nessitamandel: thanks for taking the time to explain15:46
mandelagg i've been spelling platfrom all teh type wrong...15:46
mandelnessita: always a pleasure :)15:46
alecu_nessita, right. if all pending operations are downloads, it will show as "10/10 uploads. 4/10 downloads. 70% completed"15:47
mandelnessita: although Im more interested in you bashing my code15:47
alecu_nessita, but if they all are "other" operations it will show as "10/10 uploads. 70% completed"15:47
nessitaalecu_: ok, I think we only need to tweak the phrasing15:48
nessitaalecu_: I think the info we'e showing is correct but the wording is confusing15:48
karniverterok: theoretically, Twisted can be replaced with Java Future, isn't that right?15:52
verterokkarni: do you mean Deferred?15:53
karniverterok: yes, I meat Deferred15:53
verterokkarni: kind of. Deferred has a lot of nice features. also the java Future is just an interface...so you need to do all the heavy lifting :/15:53
karniverterok: I see. Thank you.15:54
alecu_ralsina, I've just fixed my unity-3d!15:55
alecu_ralsina, I'll screenshot after updating control panel15:55
ralsinaalecu_: cool, please send it to joshuahoover15:56
verterokkarni: I'ld like to try to migrate to java Future at some point15:56
karniverterok: aha!15:57
verterokkarni: Deferred might be tricky to get right :)15:57
karniverterok: I kinda like the .get() method of FutureTask :> very similar to pythons yield15:57
verterokkarni: but the whole thing needs to be changed...that's why I never started15:57
ralsinamandel: there is your +1, sorry15:57
verterokkarni: no, it blocks!15:57
karniverterok: I know :D15:57
verterokkarni: yield doesn't block15:57
karniverterok: but there's no way I can block a deferred heheheh15:58
karnio sh*t..15:58
verterokkarni: that's the idea of deferreds, you just add callbacks ;)15:58
karniverterok: I'll be right back!15:58
mandelralsina: cool, what take a lok at the last one?15:58
ralsinamandel: shoot, but this one will take a bit longer still15:58
mandelralsina: no problem, here you go: https://code.launchpad.net/~mandel/ubuntuone-client/implement_notifier/+merge/4906415:59
verterokkarni: the magic of yield + deferred is briefly explained here: http://twistedmatrix.com/documents/10.0.0/api/twisted.internet.defer.html#inlineCallbacks16:00
mandelralsina: adds the file system events to the event q on winndows, this means that the sd starts to know what is going on in your drive :)16:00
verterokkarni: and to know more about yield: http://docs.python.org/reference/simple_stmts.html#yield and http://www.python.org/dev/peps/pep-0255/16:00
mandelverterok: ping16:01
verterokmandel: pong16:01
karniverterok: I'vee seen the first link, true :) brb16:01
mandelverterok: can i use u fore reviews? or too much work?16:01
verterokmandel: I can try16:01
verterokmandel: trying to get resumable uploads finished, bah...at least proposed :/16:01
ralsinamandel: oh, neat branch then16:02
mandelverterok: cool, if you have time, there are a couple or merges for windows, just if you can, take a look, we should have the file system notifications working on windows thise week :)16:02
mandelverterok: but only if you can16:03
verterokmandel: I don't have a properly configured windows vm,what I can do is just "code" reviews16:03
mandelverterok: i'm more it interested in code reviews and the changes i have made to  the linux code, ralsina is taking care  of windows16:04
mandelverterok: running the tests on linux will be good too :)16:04
verterokmandel: ok16:05
ralsinaI could run the tests on linux, but I can't approve twice ;-)16:05
mandelralsina: i;m taking the assumtion that is u and me on windows and the other on linux :)16:05
mandeland I use nessita for the crazy code reviews :)16:05
nessitamandel: crazy?!?!?!16:06
nessita'sofisticated'16:07
mandelmandel: good crazy :)16:07
* mandel is crazy for the crazy reviews :P16:07
mandelnessita: he i autocomplited my nick… stupid arm that ^ was for you :P16:08
ralsinanessita: crazy as in "mad code skillz"?16:09
=== beuno is now known as beuno-lunch
joshuahoovernessita, ralsina: is it possible to make u1 connect right after the user first signs up/sets up u1 in natty?16:11
nessitajoshuahoover: not as how we have things today16:12
joshuahoovernessita: how hard would it be to add? it's one of those annoying things that's bugged me for quite some time16:13
nessitajoshuahoover: we can't have syncdaemon autoconnecting if the credentials are not in place, because that causes the SSO window to be popped out of nowhere in some cases16:14
nessitajoshuahoover: we could have it listening to the credentials found signal 'for ever' and connect in that case, but...16:14
nessitajoshuahoover: there will be people against that. If you reach consensus between ralsina and Lunar_lucio I'm happy to implement16:15
joshuahoovernessita: don't we know when we have the credentials?16:15
nessitajoshuahoover: in syncdaemon, today, the way is coded, nopes (it disconnects from all siganls immediatly)16:15
joshuahoovernessita: and how does it work when the user selects "connect"? is that a call to syncdaemon to tell it to connect?16:16
karniverterok: sorry, was on call. thank you so much for the links, you my man :)! btw I'm happy you mentioned the fact of moving to Future one day, I'll have that in mind!16:16
=== teknico_away is now known as teknico
karniI'll be back shortly.16:17
nessitajoshuahoover: yes, just like u1sdtool -c but thru dbus16:18
nessitajoshuahoover: I see your point, and I agree16:18
nessitajoshuahoover: but there are people that does not want SD connecting unless explicitely asked16:19
joshuahoovernessita: cool...i was thinking we could make that dbus call after we get the credentials since we know about that...save the user that extra setup step16:19
nessitajoshuahoover: good idea! we can do that from the control panel...16:19
joshuahoovernessita: it would only be for setting up  u116:19
nessitajoshuahoover: and leave syncdaemon out of the question, I like that16:19
dobeyhehe, the irony16:19
joshuahooverdobey: i know you're loving this16:20
nessitajoshuahoover: would you please file me a bug under the u1cp project?16:20
joshuahoovernessita: sure16:20
nessitajoshuahoover: good thinking :-)16:20
dobeyjoshuahoover: it is exactly what we used to do anyway16:20
joshuahooverdobey: i know...and it's bugged me ever since we removed it...Chipaca can tell you how i made his life miserable as desktop+ manager about this one small thing ;)16:21
adam_hello16:21
adam_what is ubuntu server16:22
kristianlybaekHello - I can't change my preferred email address at either launchpad or Ubuntu one - It tells me my gmail is already registrered but I cannot choose as my preferred mail. Can anyone help?16:22
adam_pytam. jaki masz problem16:22
dobeyadam_: i think you want #ubuntu maybe? but ubuntu server is the version of ubuntu for server installations16:22
nessitamandel: I'll finish your review once I finish one from verterok's16:23
nessitakristianlybaek: did you try setting that on login.ubuntu.com?16:23
kristianlybaekYes - I tried both there and on launchpad - same problem.16:24
adam_ok16:24
mandelnessita: sure, np16:25
Chipacakristianlybaek: what are you trying, exactly?16:25
kristianlybaekChipaca: I want to change my preerred email from my hotmail to my gmail, when I try adding my gmail it says it is alredy registrered, but I can't seem to choose it as my preferred email.16:26
nessitawho removed the credentials module??!?!?!16:26
Chipacakristianlybaek: maybe you have unwittingly signed up using the gmail address?16:27
dobeynessita: it was moved16:27
nessitadobey: why? where? by who?16:27
dobeynessita: to platform.linux.credeentials16:27
dobeynessita: mandel, presumably because it is all dbusified16:27
nessitamandel: care to explain? :-)16:28
kristianlybaekChipata: My gmail is rather new - shouldn't I be able to choose it as my preferred anyway?16:28
Chipacakristianlybaek: not if they are two separate sso accounts16:29
Chipacakristianlybaek: which is what I think it's telling you16:29
ralsinamandel: https://pastebin.canonical.com/43048/ on lp:~mandel/ubuntuone-client/implement_notifier16:30
kristianlybaekChipata: I don't think so - it is so new, that I would remember if I just created a new account. And I have tried logging in with all my passwords and nothing happens.16:30
Chipacakristianlybaek: try telling login.ubuntu.com you forgot the password for the gmail account, see where it takes you16:30
kristianlybaekI will16:30
Chipacakristianlybaek: the other option is that the first time it sent you an email to confirm, and you haven't clicked it yet16:33
nessitamandel:  ping16:33
mandelnessita: dobey is rigth, it isa linux specific code, it had to be moved out16:34
mandelnessita: pong16:34
mandelralsina: loking16:34
nessitamandel: why did you added ubuntuone/platform/linux/__init__.py:51:from ubuntuone.platform.linux.credentials import CredentialsManagement16:35
nessitamandel: the question is why you added the import clause to the __init__ file if is not used16:35
Chipacakristianlybaek: I've asked the people behind login.ubuntu.com, and they say I'm to ask you to join the #canonical-isd channel please16:36
kristianlybaekChipata: It seems you were right. I have an account on my gmail, but without any applications. Sorry. Can I delete this account, so I can add my gmail to my other account?16:36
mandelralsina: is a threading issue in which the thread takes longer than expected and therefore the test fails, it work sometimes and sometimes it does not, the timeout can eb increased and it will always succeed, problem is, i do not know if there is a reason for the test to use 2 seconds16:36
ralsinamandel: may be related to the hangs I get when u1trial ends?16:36
Chipacakristianlybaek: I'm glad that was the case (as opposed to something weirder). I don't know if you can do that, or if you can merge them ... ask in #canonical-isd :)16:37
ralsinamandel: may be some windows oddity16:37
mandelnessita: because of the platfomm/__init__.py, take a look there16:37
kristianlybaekChipata: Thank you very much. Ciao.16:37
dobeyChipaca: you can file a request to merge accounts, yes16:37
mandelralsina: yes, is weird, did you run it with run-test or u1trial?16:37
ralsinau1trial16:38
nessitamandel: I'm looking at that file, and I still don't understand. CredentialsManagement should not be used outside from where is used16:38
mandelralsina: try to run it again after you have killed the u1trial process, but you have to wait16:38
ralsinamandel: ok16:38
mandelralsina: and the signals come from the winodws kernel, which is not very public, so no real idea of why it does that sometimes16:39
ralsinamandel: it passed now16:40
ralsinaSo +116:40
mandelnessita: well it is used in ubuntuone-login which i do not know if it will go to windows16:41
mandelnessita: actually i do not know what login does...16:41
nessitamandel: but ubuntuone-login uses the glib main loop16:42
nessitaso I don't think you'll be using that in windows...16:42
mandelralsina: misteries of the windows kernel…. we will not have issues in prodcution since the events will always arrive, just slower than o linux16:42
nessitamandel: and even if you do, you're still importing the class as from ubuntuone.platform.linux.credentials import ...16:42
mandelnessita: no idea to be honest...16:43
nessitamandel: grhm16:43
nessita:-)16:43
mandelnessita: which branch is this?16:43
ralsinamandel: ok, if they bug too much, we'll skip them16:43
=== alecu is now known as alecu-lunch
nessitamandel: I don't know, one that already landed :-(16:43
nessitaI mean, I'm seeing this in trunk16:43
mandelnessita: mmm bullocks! how bad is this affecting you?16:44
nessitamandel: is not affecting me other to my OCD syndrom :-)16:44
mandelnessita: oh, then file a bug and appoint me to fix it :)16:45
nessitamandel: :-)16:45
mandelnessita: I'll do it asap16:45
nessitadobey: is tarmac running? https://code.launchpad.net/~verterok/ubuntuone-client/fix-712056/+merge/48826 has been approved 2 hours ago and it has commit message16:46
mandelralsina: yes, having test failing due to multithreading is a pain… i could do something to allow a number of retries increasing the time, and if it takes to long, failing, but it would be complicated16:46
dobeyyes it's running16:47
nessitadobey: any idea why that branch hasn't landed?16:47
ralsinamandel: as long as we know how to tell if that's the problem and retry, I don't care much yet.16:47
dobeyUnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128)16:47
nessitadobey: ?16:47
dobeysomething causing tarmac to fail16:47
nessitaouch16:47
dobeyprobably from when your branch failed16:49
karniback to code.16:49
mandelralsina: indeed, but i'll target that when we work on using run-test and we want all of them to pass, so far this are just the stepping stones16:49
dobeyoh well, cleaned the tree, so it should hopefully work ok on the next run16:49
ralsinamandel: fine by me16:49
mandelralsina: if everything is ok, we should have file system code my tom, and ipc by middle of next week, from there we should be very close16:50
mandelralsina: have you talked with the msi guy?16:50
dobeyok, lunch time16:51
dobeybbiab16:51
ralsinamandel: sent mail16:51
mandelralsina: cool, let me know how it goes16:51
nessitaoki, lunch!17:00
mandelall: i'm done for the day, arm has started tohurt, will catch you tom17:15
=== mandel is now known as mandel_afk
ralsinamandel_afk: have fun!17:21
karniverterok: facundobatista: what is the uniqueness of commands used for? which commands don't have to be unique for instance, which have to ?17:24
=== beuno-lunch is now known as beuno
facundobatistakarni, the uniqueness is used for those commands that should be only one of them (for example, Upload)17:30
karnifacundobatista: since there's need for uniqueness, I assume it happens that there appears second request for the same item sometimes, and it's rejected based on the uniqueness?17:31
facundobatistakarni, the uniqueness attribute indicates what is the uniqueness about... Upload defines share/node ids, so it will not be two Uploads for the same share and node17:31
karniI see. I'm just wondering how is it possible to arrive at such situation.17:31
facundobatistakarni, don't know which client version are you looking at, but right now each command takes care of this17:31
karnifacundobatista: unleash-617:32
facundobatistakarni, two uploads for the same node?17:32
karnifacundobatista: any situation where uniqueness is necessary.17:32
facundobatistakarni, change a file, an Upload is queued, before it's finishes, change it again, the second Upload should cancel the first one17:32
karnidoes it happen that SD want's to upload twice at the same time to the same node?17:32
karnifacundobatista: perfect! thanks buddy :):)17:33
facundobatistakarni, :)17:33
ralsinafacundobatista: we told you uniqueness was a confusing name for that :-)17:34
karniralsina: it's not the name actually. I thought it should be well defined and not arrive at such situations - I can now see, that it (SD) can. Thus, the uniqueness :)17:36
facundobatistaralsina, ^ :p17:37
ralsinaI am feeling really sick (stomach pain). I think I'll go to the doctor now.17:47
ralsinaI will probably be back in a couple of hours, and may work some more, so feel free to ask for reviews, etc, I will check it17:48
karniralsina: Wish you get better17:50
=== ralsina is now known as ralsina_doctor
dobeytoo much asado18:02
alecujoshuahoover, ralsina_doctor said you wanted a screenshot of the new control panel with the "subscribed cloud folders" tab18:57
joshuahooveralecu: i think i've got what i need now, thanks!18:57
alecujoshuahoover, I see that the nightlies have a controlpanel that shows the UDFs, but no shares yet....18:57
joshuahooveralecu: yeah, i saw that too...18:57
joshuahoovernessita: are you still working on selecting shares to sync in the control panel?18:58
nessitajoshuahoover: yes18:59
joshuahoovernessita: ah, ok :)18:59
nessitajoshuahoover: what do you need?18:59
* nessita provides18:59
joshuahoovernessita: nothing...was just curious about that feature...was getting a screenshot for the monthly report and would be cool if select shares was in there but it's not quite ready yet :)19:00
nessitajoshuahoover: no, not yet. SYncdaemon has given me quite some headaches :-)19:00
nessitabut is closer!19:00
joshuahoovernessita: good (well not about the headaches)19:01
karnifacundobatista: in MakeThing(ACQ) in _run(): there's a call to maker = getattr(self.action_queue.client, self.client_method), and then the maker is used return maker(self.share_id, self.parent_id, self.name).20:16
karnifacundobatista: how do you know if it's supposed to make a new node (file) or a directory?20:16
karnifacundobatista: I'm asking, because I've got 2 methods in verteroks JAva source, makeFile and makeDir -- so I'm wondering which should I call in MakeThing ;]20:16
karnifacundobatista: ah! nvm forget my question :)20:18
karnifacundobatista: sorry to bother, I've got it.20:18
facundobatistakarni, I'm back, sorry, was in a call20:45
karnifacundobatista: no problem :) I found my answer20:45
facundobatistakarni, ok :)20:45
karniThe python client has list_shares() and list_volumes() separate implementation - I suppose it's just an implementation thing, right? (getVolumes() in u1-java-sp returns just all)21:07
karniverterok: ↑21:07
verterokkarni: no, list shares is a different thing21:07
verterokkarni: I think you can safely ignore it21:08
karniverterok: but we do get shares in the getVolumes call (type .SHARE), no?21:08
verterokkarni: yes21:08
karniverterok: interesting. what's list_shares then ^ ^?21:08
verterokkarni: but there is also a getShares() :)21:08
karnioh!21:08
karni:>21:08
* karni chuckles21:08
verterokkarni: a list of non-accepted shares to you, and the shares shared by you21:08
karniverterok: perfect! I'm then far from ignoring it. I'll need that :)21:09
verterokkarni: regarding makeThing, the implementation of MakrFile and MakeDir is actually MakeThing :)21:09
karniverterok: ;D21:09
verterokkarni: kind of21:09
verterokkarni: the list of non-accepted shares to you only include the shares offered using the protocol, which no one use21:10
karniverterok: it was only few line of code duplicaiton, so I've let myself create two AQCommands, not extending a common MakeThing21:10
verterokkarni: because you need the username21:10
karniverterok: aha21:10
verterokkarni: and now (with sso) the username is some ugly url21:11
karniverterok: right.. true :<21:11
verterokkarni: so, consider the non-accepted shares deprecated/old  stuff21:11
verterokkarni: currently all the shares offer/accept is done via web21:11
karniverterok: ok. I do know however I extract the share owner names from stuff returned by getVolumes, so it's good21:12
karniverterok: I see. So I'll probably play with some REST then, too.21:12
karniverterok: thanks :)21:12
verteroknp21:12
karniverterok: ah. if you could have just a short glance at PM I've sent you, I would really appreciate.21:15
* verterok looks21:16
verterokkarni: think of the yield+deferreds as a way to inline the callbacks (the method is decorated with @defer.inlineCallbacks ;))21:17
karniverterok: yes, I've noticed that ;)21:17
verterokkarni: so, what "yield self.deferred" does is something like pausing the flow until the deferred result is available21:18
karniso whenever there's yield, a deferred is inlined -- is that returned at the same time?21:18
verterokkarni: the result of the deferred is discarded in this case21:18
karniverterok: so it _is_ like blocking (not really, but resebmles)21:18
verterokkarni: it helps to make the code simpler21:19
verterokkarni: becuase it looks like regulard blocking code21:19
verterok*regular21:19
karniverterok: but it's not.. o_O21:19
verterokexactly21:19
karniverterok: this is seriously Twisted ;d21:20
dobeyhaha21:20
karniverterok: thanks. I don't think you can explain that better :)21:20
verterokhehe21:20
verterokkarni: I'm sure there is a better way to explain it...that's the way I can :)21:20
verterokdobey: :)21:20
karniverterok: I appreciate :)21:20
karniverterok: what I wanted to add to your question if I was writing the SD in Java - I think that having relatively similar SD on Android, we'll be able to use less or more of it's potential when we want, depending if it's a phone/tablet/misc21:23
karniverterok: so instead of continuing to come up with my own way to the sync stuff, I thought I would go for it and try to implement the SD as it is. at least some parts of it.21:24
verterokkarni: sure, but I was thinking that maybe is too much :)21:24
karniverterok: that's also possible hehehe21:24
verterokkarni: IMHO, you should pick/steal the features/design you need/like from SD, and build from there21:25
karniverterok: there are moments when I'm testing faith in myself (the core of ACQ with those inline deferreds is the worst part since ever I think)21:25
karniverterok: uhm :)21:25
karniverterok: I think once I have the ACQ - I'm basically there. if anything is to heavyweight - I'll strip that.21:26
verterokkarni: the components layout is good IMO, having the networks stuff isolated in ActionQueue, sync logic in a separate compoent, etc21:26
karniverterok: can't agree more. I like that, too.21:26
verterokkarni: what I don't really like about SD/u1-sp is that we have a lot of duplication21:26
karniverterok: uhm..21:27
verterokkarni: mostly in the network/protocol stuff21:27
karniverterok: right. I also didn't want to reach to low (although I happend sometimes, and I will, because I want to implement trottling at some point)21:28
verterokkarni: e.g: the python storage protocol have Volume classes (share, udf, etc), and we have a separate Volume class hierarchy (share, udf, etc) in syncdaemon21:28
karniverterok: and focus on the app itself - but sometimes that wasn't possible - like now, with SD. much flesh.21:28
verterokkarni: same happens with the commands/requests21:28
karniverterok: aha..21:28
verterokbut it's just my opinion :)21:28
karniverterok: indeed sounds like some duplication21:28
verterokif I have to write the thing from scratch I'ld probably allow highly coupling between ActionQueue and the protocol21:29
karniverterok: I'll be happy to help / keep a close eye on that21:30
verterokkarni: it will probably have a different set of problems :)21:30
verterokkarni: good luck!, need to go afk for a while21:30
karniverterok: I'm aware it will be too low level high tech for me ;)21:31
karniverterok: ok, thanks! bye bye21:31
karniwe'll use Java Future then, too ;)21:31
verteroksure! hehe21:31
karniIt wouldn't be too low level if the dang thing was well documented ;D (the protocol)21:31
karniok, will code a bit more now.21:32
verterokkarni: got it...will write some docs sometime21:33
karniverterok: it's not your fault. I mean the really low stuff, like packing bytes etc21:34
verterokkarni: ahh, that's my fault too ;)21:34
verterokhehe21:34
karniverterok: ;D21:34
karniverterok: you my best man verterok, anyway :)!21:34
karnibeuno: I got a little stuck with one Twisted method of ActionQueueCommand - so instead of blocking work, I implemented 7 commands. will get back to AQC tomorrow.22:36
karniIt's been nearly half a day, so I'm EODing. Have a great evening everybody.22:36
karniThat was a good day :)22:37
dobeylater22:41
beunokarni, sounds great22:48
karnibeuno: my next TODO is complete the AQC (the tricky one), implement Upload and Download commands (I've got unlink, makefile, makedir, getdelta, listvolumes, etc), and integrate.23:09
karni"When you debug a platform, you sometimes have to understand what apps do. It can be very scary." -- romain guy :D (the guy from Android team)23:14
beunoheh23:37
* karni was reading Twisted docs but seems it's time to get some sleep23:42
karnigood night guys \o23:42

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