/srv/irclogs.ubuntu.com/2012/09/21/#ubuntuone.txt

JamesTaitOh, happy Friday, everyone! :-D08:37
gatoxgood morning11:12
alecuhello, all!11:59
mandelhello!12:00
* mandel is back from the doctors12:00
gatoxalecu, mandel hi12:00
alecuhola gatox! did you see the comments on your branch?12:02
alecuhola mandel! what happens?12:02
gatoxalecu, nno.... checking now12:02
mandelalecu, nothing, I had an appointment just to check, blood analysis etc..12:02
alecugatox: basically, the cpu is still being used when SD is Idle12:02
mandelalecu, I'm trying to be a little healthier this year :)12:03
alecugatox: I think there's a logical error in the branch12:03
alecumandel: oh, so that's why you've stopped playing rugby, right?12:03
mandelalecu, lol12:04
mandelalecu, I consider that exercise :)12:05
mandelalecu, I went mainly to make sure I don't collapse again in the sushi restaurant12:05
ralsinagood morning!12:05
gatoxralsina, hi12:05
mandelralsina, hola o/12:06
nessitahello everyone! gatox, did you see the bugtwit I made last night? :-)12:07
nessitagatox: ah, yes, you assigned yourself12:08
nessitagatox: but this is not quantal (I see you put the tag u1-quantal in it)12:08
gatoxnessita, i didn't do that..... i just saw it12:08
nessitaah, je12:08
nessitagatox: alecu assigned it to you (thanks alecu!)12:09
ralsinaoh, the joy of the post-b2-freeze morning and 560 emails12:09
alecuhola ralsina!12:10
gatoxnessita, how can i reproduce that'12:10
gatox?12:11
nessitagatox: just run syncdaemon trunk in precise12:11
gatoxnessita, mmmm..... ok, i'll need to install a precise vm12:11
nessitagatox: you can use my box, if you need. See also that: <type 'exceptions.TypeError'>: object.__new__()12:11
nessitagatox: so the creation arguments for the sync menu may be different from precise to quantal?12:12
gatoxnessita, i don't know..... i'm on precise and it doesn't fail for me12:12
nessitagatox: are you in precise with a fully updated box?12:12
alecunessita: there's no sync menu in precise!12:13
alecugatox: too12:13
gatoxalecu, but if you look at the code, when there is not a syncmenu..... it creates a dummysyncmenu12:13
alecugatox: oh, I see what you mean.12:13
nessitagatox: so how are you testing this in precise if you have a dummy sync menu? /me no entiende12:14
gatoxnessita, we are testing it on Q12:15
gatoxalso running the tests on precise12:15
nessitagatox: but you're now running a precise installation? do you have any special PPAs?12:15
gatoxnessita, nop12:16
nessitagatox: what does apt-cache policy ubuntuone-client reports for you/12:16
nessita?12:16
gatoxnessita, ubuntuone-client:12:18
gatox  Installed: 4.1+r1319-69~precise112:18
nessitagatox: great, what does u1sdtool -q; u1sdtool -s report?12:19
nessitain my case, u1sdtool -s reports:12:20
nessitaState: INIT12:20
nessitaand it never moves to another state12:20
gatoxnessita, -q keeps saying is still running.... and with -s i'm having a dbus error12:20
gatoxi'm killing the process and trying again12:21
gatoxgatox@utopia:~$ u1sdtool -s12:21
gatoxState: LOCAL_RESCAN12:21
gatox    connection: Not User With Network12:21
gatox    description: doing local rescan12:21
gatox    is_connected: False12:21
gatox    is_error: False12:21
gatox    is_online: False12:21
gatox    queues: IDLE12:21
gatoxgatox@utopia:~$ u1sdtool -s12:21
gatoxState: READY12:21
gatox    connection: Not User With Network12:21
gatox    description: ready to connect12:21
gatox    is_connected: False12:21
gatox    is_error: False12:21
gatox    is_online: False12:21
gatox    queues: WORKING12:21
nessitagatox: with the state is enough :-D12:21
nessitagatox: do you have any particular gir package installed, for this?12:22
gatoxnessita, yes..... gir1.2-syncmenu-0.112:22
gatoxnessita, but if it fails to import that, creates the dummy syncmenu12:23
nessitagatox: if it's not too much trouble, could you please uninstall it and try again?12:23
nessitagatox: perhaps the creation params of the dummy menu does not match the real one12:23
nessitagatox: my apt does not know the gir1.2-syncmenu-0.1 and this http://packages.ubuntu.com/search?keywords=gir1.2-syncmenu-0.1 reports that the package is available since Q. How did you install it? from a PPA?12:25
gatoxnessita, nop12:27
nessitagatox: would you please paste the output of apt-cache policy gir1.2-syncmenu-0.1 ?12:27
gatoxnessita, ok..... i'm seeing u1sdtool -s stuck in init.....12:28
dobeyi see the problem12:28
dobeysigh12:28
nessitamine says N: Unable to locate package gir1.2-syncmenu-0.112:28
nessitahola dobey12:28
dobeythere is no gir1.2-syncmenu for precise12:28
nessitadobey: right, and I'm wondering how gatox has one installed :-)12:28
dobeythe problem is DummySyncMenu doesn't override __init__12:28
gatoxahhhh yes :S12:28
dobeynessita: he installed it from source i suspect12:28
gatoxok..... i'll fix that in this branch12:29
nessitathanks!12:30
ralsinaour "main" in u1cp  has reached a level of complexity that is quite scary12:40
gatoxnessita, dobey could you check this one? https://code.launchpad.net/~diegosarmentero/ubuntuone-client/fix-dummy/+merge/12569612:41
gatoxnessita, dobey  i'll change the name of the test case to leave TestCase at the end of the name of the class12:42
nessitagatox: is this intentional self.assertTrue(dummy, "start_timer") ?12:42
nessitaor it was an assertEqual?12:42
gatoxnessita, ok..... that was an hasattr....... why didn't fail?12:43
nessitagatox: assertTrue(a boolean condition, message) is a correct syntax12:44
nessitaif the condition fails, the message is printed12:44
gatoxnessita, test case fixed12:44
gatoxchanging the name and adding hasattr12:45
nessitaack, reviewing12:48
dobeywhy not assertNotRaises()?12:49
gatoxdobey, for the constructor? do you think??..... in lot of tests we just use the object in the way we expect it to work12:50
gatoxor to check if we have the start_timer method?12:51
dobeyto check that the object is instantiable12:51
dobeychecking that start_timer is an attribute doesn't guarantee it's callable; and i don't see a good reason to check that it exists, here12:52
dobeyChanging the docstring to something describing that it's a requirement of the API or something, and just doesn't do anything for the dummy class, might be better12:53
mandellunch time here12:53
=== mandel is now known as mande|lunch
dobeyand i suppose you still need to call super().__init__() for these classes derived from object12:53
ralsinagatox: on semi-related bugnews, --with-icon seems to be broken on trunk on precise12:56
gatoxdobey, i can change the docstring to make it more clear.. but we need to check if it has start_timer because is going to be called when syncdaemon starts..... and..... yo mean to call super().__init__() for DummySyncMenu?? why?12:56
gatoxralsina, ¬¬12:56
dobeygatox: so that object.__init__() is called12:57
gatoxdobey, i don't think that is necessary.... and we are not doing that in any part of the code12:58
nessitagatox: looks good, and removing the __init__ makes the test fail, so approving13:01
dobeyhttp://stackoverflow.com/questions/8611712/what-does-objects-init-do-in-python13:14
gatoxdobey, so........ should we change all the places in the code where we are using object?13:15
ralsinagatox: forget my mentioning --with-icon, it seems I had a too-old sd running (or something) and it was causing IPC errors13:15
gatox:P13:15
gatoxralsina, fiuuuuu13:16
dobeyi can let the __init__ chain slide, since these ojects really should not be subclassed ever, but anyway the other issues i mentioned on the proposal do need fixing13:16
ralsinagatox, alecu, mandel: remember that conversation about ripping the systray out of u1cp so that we can fix the mac experience? DONE https://pastebin.canonical.com/75032/13:17
gatoxdobey, also..... TestCase from twisted doesn't have an assertNotRaises, because it doesn't have much sense..... is just using the object..... if it fails, the test will fail13:17
ralsinammcc: if you are around, too ^13:17
dobeygatox: ok, well, perhaps assertIsInstance() on the resulting object then13:18
gatoxdobey, ok13:19
dobeygatox: but testing the object can be created, and that a method inside it can be called should be separate tests13:19
gatoxdobey, ack13:19
gatoxdobey, done13:21
gatoxralsina, so we are going to extract the systray from u1cp?13:22
ralsinagatox: right now, I am just thinking of using this onmac13:25
ralsinagatox: where having u1cp do the tray causes a sea of awkwardness13:25
ralsinagatox: then, come november, we do it right13:25
gatoxalecu, ping13:25
ralsinawe can even ship a "ubuntuone-tray-icon" package that's this, depends on u1cp and suggests sni-qt13:26
ralsinaso we support non-unity and pre-quantal desktops13:26
dobeyi guess we should drop the messaging menu integration, at least on q13:29
ralsinadobey: true13:29
ralsinadobey: although if sync menu is not there by default that's a regression13:30
dobeytrue13:30
alecugatox: pong13:30
dobeycomplexity of complexities13:30
ralsinaohyes13:30
gatoxalecu, i'm looking at the branch about cpu consumption.... and i don't see anything weird.... i'm going to test if this might be happening just to be connected to the syncmenu or something13:31
alecugatox: but do you get the cpu usage when idle?13:32
alecugatox: you need to transfer some files before it starts using cpu13:32
alecugatox: it's .3% of continuos cpu usage on my 8 core i7, so it will get annoying on atom and arm devices.13:33
gatoxalecu, are you meassuring with top or what? can you explain to me which steps are you following so i can check that here?13:33
alecugatox: let me point at the offending code13:33
=== m_conley_away is now known as m_conley
alecugatox: the error is around line 211 here: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-timer/+merge/12549913:34
alecugatox: let's detail the sequence.13:35
alecu1) first sd starts, and has no file to transfer, so "update_transfers" was not called yet.13:35
alecu2) now you transfer some files13:35
alecu3) update_transfers is called. There's no timer, so update_progress is called. And then a timer is created, that will call _timeout when the time has passed.13:36
alecu4) if new events arrive at this point, they are ignored (and that's ok).13:36
alecu5) when the timeout happens, _timeout is called13:36
alecu6) it sets the timer to None... and it creates a new timer!13:37
alecugatox: ^ 6 is the bug.13:37
nessitaalecu: I'm not following this thread of conversation in deep, but why not just tracking progress with the event of _PROGRESS?13:37
alecunessita: please wait a sec :-)13:38
gatoxalecu, ah..... so the timer should be created only when the call come from aggregator..... that's what you mean?13:38
nessitaFILE_UPLOAD_PROGRESS and FILE_DOWNLOAD_PORGRESS13:38
nessitasire13:38
alecugatox: perhaps13:38
alecugatox: here's how I think it should work:13:38
gatoxalecu, so.... timeout just execcutes self.transfers.update_progress() and set the timer to none13:38
alecugatox: that's better13:39
alecugatox: I would go so far as to suggest not doing update_progress in update_transfers, but let me think of your solution.13:39
gatoxalecu, i'll make that change and check the cpu usage13:39
gatoxok.... think! :P13:39
alecugatox: no, wait. Let's check the logic first!13:39
gatoxbut i think we should13:40
gatoxbecause we can receive a call from aggregator to create the menu in that moment13:40
gatoxnot 3 seconds later13:40
alecugatox: but in that case we would be updating the menu twice, "al pedo"13:41
alecugatox: hmmm....13:41
alecugatox: say, we get the call from aggregator that the transfers have completed. We set up the timer, and update everything twice. But there was no need to do it twice...13:41
alecugatox: anyway, I think it's an acceptable compromise.13:42
alecugatox: so:13:42
alecugatox: I found another problem.13:43
gatoxwhich one?13:43
alecugatox: suppose we are transferring files quickly13:43
alecugatox: and we get events every .1 seconds13:43
alecugatox: what happens with your proposed solution (calling update_progress from _timeout and from update_transfers) ?13:44
gatoxalecu, we create the menu..... updated 3 seconds later..... and again .1 seconds after that..... and repeat13:45
alecugatox: it will get updated at 0s, then at 3s, then at 3.1s, then at 4.1s, then at 4.2s...13:45
alecugatox: right13:45
gatoxeh?? why 4.1, 4.2?13:45
alecugatox: so, if we just update in _timeout, we will get updates at 3s, then at 6s, etc.13:45
alecugatox: sorry, not 4.1: I meant 6.1 and 6.213:46
gatoxi'll say: 0, 3, 3.1.... 6.1, 6.2..... etc13:46
gatoxahh13:46
alecugatox: right, my bad :)13:46
gatoxok....... let's do that then13:46
gatoxjust in timeout13:46
alecugatox: so, the best would be to do it like 0s, 3s, 6s... right?13:46
alecugatox: what if we store the last timestamp we updated it?13:47
gatoxyes....... if we accept to have a 3 sec delay everytime some transfers starts.....13:47
alecugatox: I propose storing the last timestamp that we updated it13:47
alecugatox: so, if we have not updated for the past three seconds, we update it again13:48
gatoxalecu, to check if the diff is greater than 3 sec?13:48
gatoxthat13:48
alecugatox: right13:48
alecugatox: let me paste what I mean13:48
gatoxalecu, ack.....13:48
gatoxalecu, i understand13:48
gatoxalecu, btw..... did you filed the bugs you mention yesterday about pause?13:49
alecugatox: I did, yes13:50
gatoxahh i see it, thx13:50
gatoxdobey, just to let you know.... the branch has been updated..... and i'm not convinced about the super in object..... if we are going to start doing that..... it should be a bug to do it everywhere in the code i think...13:54
gatoxspecially in this case, where the class is not thinked to be extended13:55
dobeythe better solution would be to fix all our stuff to install the "internal" python bits somewhere other than the standard python library directory. only public interfaces we want people to use should be installed there really13:56
nessitaalecu: you still busy?14:01
gatoxdobey, so..... what we should do with this?? i personally don't see the point of super in object in these cases..... but i don't want to block the branch for that..... so if you think it's necessary14:01
dobeygatox: chill. i'm looking at it. just doing 500 things at once, so haven't got back to your branch yet :)14:02
alecugatox: http://pastebin.ubuntu.com/1218643/14:02
alecunessita: sorry14:02
gatoxdobey, ack.... let me know if something need to be add/change14:02
alecunessita: you wanted to discuss _PROGRESS, right?14:03
gatoxalecu, make sense14:04
nessitaalecu: right, I was wondering if you considered using those events instead of polling for upload/download progress14:04
gatoxalecu, testing it14:04
nessitaalecu: *if* that's what you're doing ATM14:04
alecunessita: we are listening to _PROGRESS for this. we are not polling14:04
nessitaalecu: ah, even better! so what's the timer for?14:04
gatoxnessita, to not update in everyy progress14:04
alecunessita: the timer here is so we don't update the menu more often than say... every 3 seconds.14:05
dobeygatox: i think for the assert in the start_timer test, you need to assertTrue(hasattr(dummy.start_timer, '__call__')) no?14:05
nessitaalecu: ah... any rationale behind that? (curious, not criticism)14:05
alecunessita: in trunk, the timer was polling, indeed, but in the current gatox's branch it gets fixed.14:05
gatoxdobey, i think using isinstance(asd, Callable) is the recommended way14:05
alecunessita: if we get _progress events every .1 seconds, then the menu would blink horribly, because it would be updated that many times.14:06
nessitaalecu: ah, so you gather progress info in one place by listening to the _PROGRESS  signals (no polling at all), and then just upgrade the syncmenu every 3 seconds?14:07
alecunessita: we already do the same with the unity launcher progress bar. We have a limit on the number of updates we do in a given amount of time14:07
dobeygatox: then why not use assertIsInstance() instead of assertTrue(isinstance())?14:07
alecunessita: right. But not "every 3 seconds", but "every 3 seconds if SD is not idle"14:07
gatoxdobey, right.... reflex14:08
dobey:)14:08
alecunessita: if SD is idle we do not update the menu.14:08
dobeygatox: please fix it real quick14:08
gatoxdobey, yap14:08
nessitaalecu: ack, thanks for sharing the reasoning :-)14:08
gatoxdobey, done14:09
alecunessita: you are welcome! All of the SD status aggregator works like that, only calling libunity, or showing the bubbles, as few times as possible, and only if it makes sense.14:09
alecugatox: I've not proved "delay = min(0, self.next_update - time.time())" to be right, so please add some tests for it.14:10
nessitaalecu: so, if, let's say, magicicada would want to re-use the logic in the aggregator where data is, on coincidence, aggregated... is that possible somehow?14:10
gatoxnessita, right now you can susbscribed to the updates with status_frontend (with the next branch)..... and aggregator will call your callback when a progress is processed14:12
alecunessita: I *think* this logic is not exposed on ipc (nor dbus) yet. We may be able to export all this as dbus signals14:12
gatoxahhhh.... yes..... but not that14:12
nessitaalecu: ack, thanks!14:12
alecunessita: and it would make sense to deprecate some of the more heavy dbus operations, and only export "aggregated" lighterweight ones.14:13
nessitaalecu: right14:13
nessitaalecu: or just "replace" the logic that send the FileUploadProgress dbus signal14:14
nessita(but not the underlying event that is used by the aggregator)14:14
alecunessita: that makes sense: sending the fileuploadprogress dbus signal less often, with something similar to this.14:14
nessitaalecu: right, so magicicada keeps working the same :-D14:15
alecunessita: let's discuss this after Q is released :-)14:15
nessitasuuuure14:15
alecuI can't forsee such a change going thru the Freeze Exceptions :-)14:16
dobeyour 4.0.0 release is on oct 1.14:16
nessitaalecu: of course, magicicada already uses the progress signals and is working like a candy14:17
nessita(?)14:17
mande|lunchback14:18
alecumande|lunch: got a minute for mumble?14:18
mande|lunchalecu, yes, let me launch os x :)14:19
=== mande|lunch is now known as mandel
alecumandel: you are mumbling on osx? shame on you!14:19
* alecu hides in shame too14:19
mandelalecu, only os where the thing works14:19
alecumandel: it used to work in P!14:20
mandelalecu, you said it, used to... since I moved to q lots of things are broken14:20
alecumandel: the bleeding edge of the distro is like an ore mine. And we are like the chilenean mine workers!14:21
ralsinaalecu: that's the best case scenario14:22
alecuralsina: I want to be rescued from the bottom of this pit! It's been months already14:23
chaselivingstonping mmcc: unfortunately it doesn't look like the issue w/ dragging files into the u1 folder has been fixed14:23
ralsinaalecu: we are digging!14:25
mmccchaselivingston: bummer. can you send me the syncdaemon log and tell me what file you dragged in?14:33
mmcchi folks14:33
ralsinahi mmcc14:34
mmccralsina, that standalone menu looks pretty good :)14:34
mmccbtw, did anyone see my last irc comments from yesterday? the loading overlay on the cloud-to-computer bug happens on linux (and apparently windows) too - not just darwin14:35
chaselivingstonmmcc: it was actually a folder named codecanyon https://pastebin.canonical.com/75045/14:35
mmccif I delete my credentials and re-log-in as myself, I get an eternal loading overlay on the cloud-to-computer page14:35
mmccon precise14:35
chaselivingstonmmcc: quitting the cp and the sd task and restarting forced the upload14:36
mmccchaselivingston: thanks, looking now14:36
dobeymmcc: same here14:36
ralsinammcc: I did see it on windows, not on linux last I tested14:37
mmccchaselivingston: so it looks like it did upload a lot of stuff, what's missing on the server?14:38
chaselivingstonmmcc: nothing now that i restarted it14:38
mmccchaselivingston: oh, ok, did you restart it around 10:22:52?14:39
mmccchaselivingston: if so, I need the previous log file14:39
chaselivingstonmmcc: yeah, that sounds about right, let me see what i can find14:39
mandelalecu, latests changes and style should be in  lp:~mandel/avani/u1-payment-preview14:39
mandelalecu, revno  269414:39
chaselivingstonmmcc: how's this? https://pastebin.canonical.com/75047/14:41
ralsinammcc: I did not try it on mac, so if it works there, it's pure luck ;-)14:42
mmccchaselivingston: that one looks like it's from after you restarted too. the earliest line in there is 10:22:4114:51
mmccchaselivingston: big folder, huh :)14:51
chaselivingstonmmcc: try this, appears to be a bit earlier https://pastebin.canonical.com/75051/14:52
joshuahooverdobey: bug #856551 shouldn't impact q since u1-installer isn't there, right?14:53
ubot5Launchpad bug 856551 in ubuntuone-installer trunk "ubuntuone-installer fails uncleanly when authorization denied" [Undecided,Triaged] https://launchpad.net/bugs/85655114:53
dobeyjoshuahoover: it no longer affects q, correct14:54
dobeyor rather, it was 'fixed' there by removing ubuntuone-installer14:54
joshuahooverheh, right14:54
ralsinadobey,mandel, gatox, briancurtin2, mmcc, alecu, thisfred: standup in 2'14:58
gatoxack14:58
mandelack14:58
thisfredack14:58
ralsiname15:00
mmccme15:00
dobeyme15:00
gatoxme15:00
thisfredme15:00
briancurtin2me15:00
mandelme15:00
ralsinaalecu is last, go me!15:00
ralsinaDONE: chased people around, talked with people, convinced people, wrote to people, wrote POC separate-systray-script TODO: avoid people, get internet working at home BLOCKED: PEOPLE! NOTE: Soylent Green is a great idea. NEXT:  mmcc15:01
mmccDONE: chased wizard startup bug15:01
mmccTODO: more of same15:01
dobeyDONE: releases/uploads, re-upload of client with syncmenu support15:01
dobeyTODO: reviews, icons in client-data15:01
dobeyBLCK: None15:01
mmccBLOK: need feedback on how to solve that inactive queue issue15:01
dobeygatox: go15:01
gatoxDONE:15:01
gatoxPropose a branch to fix a bug in versiones previous to Q with the syncmenu. Improved the u1-client syncmenu timer branch. Finishing with u1-lient syncmenu menu order branch.15:01
gatoxTODO:15:01
gatoxPropose last branch and fixes.15:01
gatoxBLOCKED:15:01
gatoxNo15:01
dobeyoops, sorry mmcc15:01
gatoxthisfred, go15:01
thisfredDONE: u1db playlist migration code TODO: integrationy tests for migration code, hand over work to webm0nk3y, drive to Oregon **2 WEEK VACATION** BLOCKED: no NEXT: briancurtin215:01
briancurtin2DONE: merging, debugging, playing with old implementation15:02
briancurtin2TODO: keep on pushing the buttons until it works15:02
briancurtin2NEXT: mandel15:02
mmccdobey: np, I was slow :)15:02
mandelDONE: More preview state machine fixing. Found the root of the problem yet I need to speak with gork to decide the right approach. Our first changed to unity landed \o/15:02
mandelTODO: Meet with jose in person to talk about finder integration. Talk with gork, get the thing working.15:02
mandelBLOCKED: no15:02
mandelalecu, please15:02
thisfredralsina, everyone: if you need me for something (which I doubt ;), it has to be today, or wait two weeks.15:02
ralsinathisfred: coffee please!15:02
ralsina;)15:03
thisfredI may read mail, but internet and even phone service will be spotty15:03
mmccthisfred, driving? yowtch15:03
thisfredralsina, best to wait until I'm there then, MUCH better coffee in Portland15:03
dobeythisfred: i need you to demonstrate the proper pronounciation of "van gogh"15:03
thisfredmmcc, yeah, but also cool :)15:03
thisfredI hope15:03
thisfredmmcc, we didn't want to fly the dog15:03
ralsinathisfred: no worries, have a safe trip!15:04
mmccthisfred: makes sense. we did the same thing. have a good trip15:04
dobeythisfred: are *you* driving? or your wife is doing all the work and you're looking at lots of farmland?15:04
thisfreddobey, easy, it's pronounced exactly as written ;)15:04
thisfreddobey, that, since I don't have a license15:05
thisfredI married my chauffeuse15:05
dobeyyou dutch and your crazy spellings!15:05
mmccdo you need a license for a double-decker fixie?15:05
alecuouch, missed the standup :P15:05
thisfredmmcc, no, it's implied by the moustache and cut off jeans15:06
* alecu writes notes15:06
ralsinaalecu: you know that's a paddling15:06
mmccthisfred: nice15:06
ralsinaOk, maybe somewhat important: I just got a call from my new ISP, technician coming sometime this afternoon, so I got to go wait for him in about 1 hour15:08
ralsinaAs soon as the 21st century finally arrives at my home in the form of electric signals, I will be back here15:09
alecuDONE: vala coding, a review for gatox, team mumble, more mumbles15:09
alecuTODO: clean up and add finishing touches on lens15:09
alecuBLOCKED: no15:09
thisfredwhy anyone would want a fixed gear bike, *especially* when you have hills, is beyond me. They can't *all* be suicidal.15:09
dobeyralsina: electrons are so 20th century. we're all about photons now.15:09
thisfredI'm all about the bonbons15:10
dobeythisfred: sufficiently developed ignorance is indistinguishable from being suicidal15:10
thisfredheh15:11
alecuthisfred: not driving is the way to be billonaire. Or so they say in social networks nowadays.15:13
ralsinadobey: I feel electrons have a classier feeling, because they have more mass15:14
alecuthisfred: I suppose there's no need to drive in Portland either, right?15:14
thisfredalecu, I am gonna try and learn when we get to Portland, because it's a good skill to have, but I expect we'll be using our car a lot less there15:15
thisfredright15:15
* alecu is reminded to take driving lessons.15:15
alecuperhaps next year.15:15
thisfredit scares me15:15
ralsinadobey: it's like cameras, they could weight 100 grams, but they just feel cheap. Same with webpages delivered as photons.15:15
thisfredbut hey, I can still learn new things at 4015:15
thisfredI learned to use vim, touch type, C and Go in the past year15:15
thisfredand some spanish :)15:15
alecuthisfred: genial!15:16
ralsinaI should learn how to drive too15:16
ralsinaSo, this means almost 50% of the team can't drive? What are the odds!15:16
thisfreddobey makes up for it with his car collection :)15:17
dobeyheh15:17
thisfreddo you have a nascar team yet?15:18
dobeynascar is boring15:18
* gatox lunch15:22
=== gatox is now known as gatox_lunch
dobeyok, need to get lunch. bbiab15:28
ralsinaI'm off to see the wizard, the wonderful wizard of the internet16:03
ralsinaI'll be back ASAP16:03
=== gatox_lunch is now known as gatox
=== yofel_ is now known as yofel
mmccI have to run a quick errand, be back in ~1hr, will make that time up tonight16:26
gatoxalecu, this branch is ready: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-timer/+merge/125499 after the transfers the cpu usage returns to 016:37
alecugatox: awesome!16:38
mandelwell, eod here, have an awesome weekend!!!16:42
gatoxmandel, byeeeeee16:44
gatoxalecu, and this one is ready too: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-menuorder/+merge/12576816:44
* dobey is not ready16:51
dobeyoh *THAT* is what you meant by that bug report16:52
dobeyi supposed it would have helped if i'd read the description16:52
dobey:)16:52
alecugatox: in the first branch, instead of "import time" I think we should be patching the time.time from the function that we are testing.16:54
* dobey changes the bug summary16:54
dobeyi think i want to vote disapprove on this branch though16:55
gatoxalecu, or i can use it from linux.time...... why patching'16:55
dobeygatox: do you have a video of this change in action, with the transfers menu held open for ~30 seconds while multiple files are transferring?16:56
gatoxdobey,  i can make one16:56
dobeygatox: because the implications of how this might behave, scare me a little16:56
alecugatox: yup, there's no concerns with using time.time in tests. It's just that importing time on the test file raises a red flag inside my brain.16:57
alecugatox: I've seen enough time.sleep in tests to be scarred for a lifetime!16:57
gatoxalecu, that's not how i'm using it.... i'm changing the one already registered in the class to avoid using time.sleep16:58
gatoxdobey, what? i don't understand16:58
gatoxdobey, do you want me to make the video and send it to you?16:58
dobeygatox: writing a comment in the proposal…16:58
gatoxdobey, in which one?16:59
dobeygatox: the transfers ordereddict one17:00
alecugatox: right, that's why I said that time.time in tests is ok17:00
alecugatox: so, don't worry about it17:00
gatoxalecu, do you want mme to change it in some way?? or you are not scare anymore?17:00
alecugatox: no, don't worry17:00
alecugatox: on a related note... why did you replace the "min(..)" with the if... else?17:01
gatoxalecu, because the logic for that was wrong17:01
alecugatox: it's not exactly the same.17:01
gatoxalecu, let me explain17:01
gatoxif you do: min(0, something)..... it always going to return 017:01
dobeygatox: posted needsinfo comment on the menuorder branch17:01
gatoxdobey, ack17:02
gatoxalecu, ^^17:02
dobeyunless something is less than 0?17:02
dobeybut if something is a uint, then yes :)17:02
gatoxdobey, well..... in this case is for time.... so it always going to move forward (i hope :P)17:04
alecugatox: you are right! I think I meant min(DELAY_BETWEEN_UPDATES, self.next_update - time.time())17:05
alecugatox: let me explain how the tests should be for this17:06
gatoxalecu, wait17:06
gatoxalecu, i thought about that..... but..... it wasn't sure either, because:17:06
alecugatox: EXAMPLE: there's an event at 0s. The menu is updated immediately. Then comes an event at 0.5s. The menu should be updated at 3s17:07
alecugatox: with the if...else, the menu is updated at 3.5s17:07
gatoxalecu, if a lot of time pass since the last update.... you can have something like: min(3, 8)..... and it's going to be updated after 3 seconds..... but if a lot of time passed since the last update..... we can force the update in that moment.... so it should be 017:07
gatoxooooookk17:08
alecugatox: I think this is something that can be absolutely handled with +, -  and min() or max().17:09
gatoxok..... changing the code then17:09
alecugatox: perhaps: min(0, max(3, -8))17:10
alecudoh17:10
alecugatox: perhaps: max(0, min(3, -8))17:11
gatoxi prefer this one:  min(DELAY_BETWEEN_UPDATES, self.next_update - time.time())17:13
alecugatox: but that can be negative, right?17:14
alecugatox: as in a negative delay... I wonder if callLater handles that right.17:14
gatoxalecu, and avoiding the +3 and doing: self.last_update = time.time()17:15
gatoxand then: min(DELAT, time.time() - self.last_update) ?17:15
dobeygatox: is it using time, or bytes written?17:16
gatoxdobey, time17:16
dobeyamount of time it's taking to do the transfer, or what exactly?17:16
gatoxdobey, nono..... it's just to avoid refreshing so soon.....17:17
gatoxlike the progress bar in the launcher17:17
alecugatox: here's the potato: Timer(max(0, min(DELAY_BETWEEN_UPDATES, self.next_update - time.time())))17:17
gatoxjeje that sounds right17:18
dobeygatox: how often does it refresh?17:18
dobeyor are you talking about your other branch?17:19
gatoxdobey, yes17:19
alecudobey: no faster than every 3 seconds.17:19
gatoxdobey, but yes.... the other branch17:19
dobeygatox: ok, i think my concerns are a separate issue, and unrelated to how often you update17:19
gatoxdobey, about you need info..... the only items that change position..... are the one that finish being uploaded17:20
gatoxdobey, i'll do the video after fixing the other branch17:21
dobeyok; then i am misunderstand what you want exactly, and the bug description and commit message could be improved17:22
dobeyoi, i am not feeling so great today either :-/17:24
dobeyhmm, this launchdaemon branch is pretty huge :-/17:28
alecugatox: is there a visual difference in the menu between the current transfers and the completed transfers? (besides the progress bar)17:35
alecugatox: like, ie, a menu divider line?17:36
gatoxalecu, no.... i didn't find how to add that17:36
alecugatox: I see that many items in the indicators have that line, so I guess there must be a way to do it via dbusmenu17:39
gatoxalecu, i'll keep looking for that..... btw..... the timer branch has been updated17:42
gatoxalecu, although it can be that is not dbusmenu related..... and just the way the menu is constructed in the origin...... but i'm just guessing17:46
dobeythere is probably a SEPARATOR type for DBusMenuItem17:48
briancurtin2ugh, this computer is completely hosed. reboot.17:52
gatoxdobey, here is the video: http://youtu.be/qOmaBCayQAo?hd=117:57
dobeyawesome, a black rectangle17:57
gatoxdobey, about the size of the items in the menu..... charles already has a bug for that17:58
alecugatox: http://pastebin.ubuntu.com/1219094/17:58
gatoxso they don't look so big17:58
gatoxalecu, ack...... i'll create a new bug for that..... because i think it changes a little bit the logic of adding and removing new items according to the position...... and start working on it right now17:59
dobeygatox: is there no api in dbusmenu to specify ellipsize mode for menu item labels?17:59
gatoxdobey, not that i'm aware of....18:01
dobeyi suspect fixing the size issue will require new API then18:01
gatoxdobey, but we already discuss that this should be a responsability of how is showing the thing18:01
gatoxof who18:01
dobeygatox: rendering is a responsibility of the renderer, yes; but it needs the correct context to do the right thing18:02
dobeyin our case, we need to crop off the beginning probably. one thing to do here would probably be to replace the "/home/foo" with "~" for display18:03
dobeybut yes, that menu does change quite often, especially with lots of small files :918:04
dobeyerr :(18:04
gatoxdobey, yes..... but..... that's the idea......18:04
gatoxspecially because now we are refreshing it every 3 seconds..... so..... small files in 3 sec finish being uploaded18:05
dobeyand if it's only uploads, and you can't click on any of the items, it's lost most all utility as well :-/18:05
gatoxand you have to change the ones that finish for new ones18:05
dobeyanyone want to review https://code.launchpad.net/~dobey/ubuntuone-client/update-4-0/+merge/125781 please? doesn't seem appropriate to have basically have gatox review his own code :)18:14
gatox:P18:15
briancurtini'll take a look in a few mins18:16
gatoxdobey, if you need me to review it let me know :P (waits in the bench)18:16
dobeyheh18:16
dobeythanks briancurtin18:16
briancurtindobey: approved18:26
alecugatox: this is the bug I opened last night: bug #105363118:38
ubot5Launchpad bug 1053631 in Ubuntu One Client "The sync state in the sync indicator can get out of sync" [High,Triaged] https://launchpad.net/bugs/105363118:38
gatoxalecu, yes.... i have it in my tabs18:39
alecugatox: great. I found it in my tabs, and wanted to remind you before closing it :-)18:40
gatoxalecu, ok, thx..... right now i'm with the separators one.... and then i'll take that one18:40
alecuok, since the internet is working so awfuly here, I'm going to take a walk, get something to eat, and see if I get better luck in an hour.18:41
gatoxalecu, ack, enjoy18:43
dobeyanyone like reviewing SVG? :)19:25
dobeyhttps://code.launchpad.net/~dobey/ubuntuone-client-data/new-old-icons/+merge/12580419:25
dobeygatox: ^^19:25
gatoxdobey,  on it19:25
gatoxdobey, where is the test_svg? jejeje19:27
gatox+119:27
dobeygatox: your eyes are in your head :)19:27
gatoxjeje19:27
alecumy hurting brain thinks that tests for svg would look like opencv + a png of the expected result :P19:31
* alecu hates sinusitis19:31
dobeysinuses do suck :(19:32
dobeyalecu: the great thing is that we already ahve the PNGs! we generate them from the svg :P19:32
dobeygatox: can you review https://code.launchpad.net/~dobey/ubuntuone-client-data/update-4-0/+merge/125810 real quick too? :)20:02
gatoxdobey, yes20:10
gatoxdobey, +120:11
gatoxnow....... eod for me....... see you on monday people!20:11
ralsinaI HAVE INTERNETS!21:11
dobeyYAY!21:13
dobeyis it reliable?21:13
=== m_conley is now known as m_conley_away
ralsinadobey: 5 minutes 100% uptime so far ;-)21:15
ralsinaIt has 2x the bandwidth but 3x the latency21:17
dobeyheh21:17
ralsina150 msec to 8.8.8.8 :-/21:17
dobeywhee21:17
dobeyno MMOFPS for you21:18
ralsinanever played beyond urbanterror21:18
dobeyif i want urban terror, all i have to do is go out and see other people. plenty terrifying that is21:19
ralsinabut very few ak47s that way, i hope21:21
ralsinaeven shutting down the old service is annoying :-(21:21
dobeyand it's definitely time for me to call it a day21:22
dobeyand week21:22
dobeyhave a good weekend all!21:22
dobeyand have a safe trip/vacation thisfred21:23
mmccbye dobey. how is it this late already? wow21:24
mmccSo I have a fix for the wizard not showing remote folders, working on the tests now. Even better: I think I can explain why it works :)21:25
ralsinammcc awesome :-)21:26
ralsinammcc: that makes one of us! ;-)21:26
* ralsina wrote that thing21:26
thisfreddobey, thank you!21:27
thisfredhave a great weekend all!21:27
mmccbye thisfred, good trip!21:27
thisfredand see you on the flip side!21:27
thisfredmmcc, thx!21:27
mmcchope you aren't stuck with mcdonalds at every stop21:27
mmccI ate dinner at a DairyQueen twice on my drive out here :\21:28
mmcchrm, "Passwords and Keys" app in precise doesn't update when U1 adds its credential…22:07
mmccno way to refresh except restarting it22:07
ralsinapressing F5?22:07
mmcclet's see22:08
mmccno22:10
mmccbtw, I noticed that SSO client loads the captcha image even when you launch it with login-only22:10
mmccseems like it could be faster to avoid that22:10
mmccon darwin SSO is showing its window with placeholders before it has the app name, and I was wondering if avoiding network access at startup could help22:11
mmcchrm, my fix didn't fix this bug on linux…? or I am not running it correctly22:11
ralsinammcc: remember that now you can switch from login to signup22:12
ralsinammcc: so, although that's not the reason why it does that, we still should do it22:12
ralsinammcc: we may defer it though22:12
mmccralsina: yeah, I'm not sure it's actually causing a delay, anyway22:13
ralsinammcc: shouldn't22:13
ralsinammcc: did you get a chance to try my script on mac?22:19
ralsinaif it works, and packaging is not horribly hard, we may get to fix that dock-icon-whatever situation22:19
mmccah, sorry, stepped away for a sec there. no, i haven't tried it22:23
mmccif it works, packaging won't be hard at all,22:24
mmccI'll try it soon22:24
ralsinammcc: cool22:38
ralsinammcc: what may not work there is mostly installing/not installing the right/wrong reactor/IPC thingie. Also, our app initialization is a maze.22:40
mmccyes it is. but I understood it recently enough, I think I can make it work22:40
mmccjust wish I knew why this fix for the wizard didn't work on linux22:41
ralsinammcc: if you push it to launchpad I can take a look over the weekend22:53
ralsinammcc: as long as you include an explanation of why it's supposed to fix it ;-)22:54
mmccralsina: ok, I still have some time today to puzzle it out, I'll send you an email if I need your help over the weekend22:58
mmccmy explanation is in the commit message here: https://code.launchpad.net/~mikemc/ubuntuone-control-panel/fix-cloud-computer-page22:59
mmccbtw, is that abusing the commit message? I tend to appreciate more complete commit messages, but that might be overkill…23:00
ralsinammcc: it's better to put explanations in the other text field23:05
ralsinammcc: and keeping the commit message short23:05
mmccralsina: well, this is just the branch, not the merge, right, so the final commit message on trunk can be short23:05
mmccmy issue with the long messages in merge proposals is that they don't show up in bzr annotate23:05
mmccso any info in there is sort of lost to the ages once the branch merges to trunk23:06
mmccI mean, you can find it via a linked bug, usually, but it's much easier to have it in the bzr commit message23:06
ralsinayes, but the bzr commit message is also used fr the package changelog and the stable branches changelog and it gets overwhelming23:11
mmccah, ok23:11
ralsinathe commit message should reference the bug always, so commit msg -> bug -> branch -> long message (which I know is long)23:11
mmccyeah it'd be nice if the merge details were faster to get at. I like the qannotate UI that lets me scan through changes and see commit messages23:14
mmccif bug  and merge comments were in there too it'd be really handy23:14
ralsinammcc: did you try bzr qlog?23:14
ralsinaI use it every day :-)23:14
mmccI have used qlog, yeah - I go back and forth with qannotate and qlog when I need to look at one file vs. what files a branch changed23:18
mmccralsina: in a qwizard, does it only get initializePage: when next() is called to send us to that page? I think I have a timing problem on linux that didn't show up on darwin23:24
ralsinayes, doesn't happen with back() for instance23:25
mmccok, looks like connecting the files service doesn't finish in time on linux, so we still don't have the action queue active when we try to send the ListVolumes…23:26
ralsinainteresting23:27
mmccok, I'm not going to finish this in the next ten minutes. I'll come back later tonight23:47

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