/srv/irclogs.ubuntu.com/2012/10/15/#ubuntuone.txt

=== m_conley_away is now known as m_conley
=== m_conley is now known as m_conley_away
=== eu is now known as adorilson
mandelmorning all!08:11
JamesTaitHappy Monday, everyone! :-D08:28
gatoxgood morning!11:12
mandelgatox, morning!11:37
mandelgatox, I have a question for you!11:37
mandel:)11:37
gatoxmandel, shoot11:37
mandelgatox, I'm fixing bug #106551311:38
ubot5Launchpad bug 1065513 in Ubuntu One Control Panel "Double gathering info screen " [Medium,Triaged] https://launchpad.net/bugs/106551311:38
mandelgatox, it seems to happen because one of the overlays (don't know which) is drawn at the wrong position or something, that is, if you set the lodaing overlay to be a singleton you won't get the second one11:38
mandelgatox, why do we have server overlays? could we have used a single one and hide and show according to the tab?11:39
gatoxmandel, i'm not sure i understand what you mean.... we are showing the overlay in each tab when the user press in some tab and the info need to be refreshed11:40
mandelgatox, yes, but we are creating 10 instances of the overlay11:41
mandelgatox, one for the folderspanel, other for the share links panel, devices etc...11:41
mandelgatox, the question is, why do we create one for each panel, should we use a single one and use a ref to it to tell it to be shown or not?11:42
gatoxmandel, let me recheck the code11:42
mandelgatox, the code imports UbuntuOneBin (which I have no clue of what it does) in several places, which is what instantiates the overlay11:43
gatoxmandel, yes... i see it11:44
mandelgatox, which means that the overlay has more than one sintance and is shown per tab, could mean that the double overlay we see in other systems (I cannot get it on ubuntu) is because of that11:45
mandelgatox, the ideal way would be to have a single overlay that is shown or not as per request of the tab11:45
gatoxmandel, can you show me a screenshot of the double overlay?11:46
mandelgatox, sure, give me a sec11:46
nessitagatox, mandel: I can help with that, if you want11:46
mandelnessita, one sec, uploading pict so that we all can see the problem :)11:46
nessitagatox, mandel: if it's what I think it is, "is not a bug is a feature" :-)11:47
nessitaevery request that hits the "network" or syndaemon has to show feedback to the user that we're fetching data that may take a while11:48
gatoxnessita, i don't think is a bug either..... but i want to see what mandel means too11:48
nessitaso, when opening the control panel, we fetch 2 different pieces of info11:48
gatoxyes11:48
nessitathe account info, which shows a "global" overlay, covering the whole window11:48
nessitaand the folder info, which shows an overlay only on top of the folder tab11:49
nessitaunifying those could be a little (a lot) complicated11:49
mandelit is a bug because it looks like this: http://ubuntuone.com/73sN9YTCoGkv4wEIMpsGG311:49
nessitacuz each piece of info can arrive a very different times11:49
gatoxmandel, that is exactly what nessita explain11:50
nessitamandel: yes, is not a bug11:50
nessitadoes not look ideal11:50
nessitabut is not a bug11:50
nessitamandel: each overlay is referrring to different info11:50
mandelnessita, gatox, is a bug, if there is loading info we should not show redundant information, we should ensure that if the loading overlay is shown we don't show it again11:50
nessitamandel: that's very very hard to do11:51
mandelyou could have a singlenton in yo which you can register as a timed operation, and you removed yourself when done11:51
mandeloverlay gets the signal I'm done, and if all are done gets out of the way11:51
mandelnessita, yes, I know it is a lot of work11:51
nessitamandel: ok, what I care the most if that you don't remove it without understanding why there is 211:52
nessitaFYI, this is only happening when the account info is retrieved11:52
nessitathen we never show more than one overlay11:53
gatoxmandel, yes........ but you will have a parentship problem if you want a single overlay....... where it can blocks the ui, so when something is loading you can't press other buttons.....  and to avoid that you need to add it in each widget, so you can set the parent and resizeEvent properly11:53
nessitamandel: also, is worth noting that you should not block the whole ui when fetching info for  single tab11:53
gatoxnessita, ^11:53
nessitagatox: exactly (what I just also said)11:53
gatoxnessita, yep!11:53
mandelnessita, yes, that is why if the tab is not visible should be taken into account11:53
nessitamandel: not sure what that means11:54
mandelnessita, as in, if a ui element that requires certain info to be ready is not visible do ignore it and do not show the overlay11:54
* mandel hopes he makes sense11:56
nessitamandel: yes, and that's currently the case11:57
nessitamandel: if your screenthost, the 2 elements that are showing an overlay are visible:11:57
nessitathe account section, and the folders tab11:58
Chipacadobey: ralsina: ping11:58
mandelnessita, exactly, which repeats the information an adds redundancy that is not needed, a single overlay should be shown in this case for any possible combination, that is account is there and tab is not or the otherway around11:59
nessitamandel: I agree that a bug is worth reporting to design a proper solution...11:59
mandelnessita, has been reported already and ralsina pushed it my way, that is why I'm asking the reasoning from doing it like it is done :)11:59
nessitamandel: reasoning: was the not extremely complex way of doing it12:00
mandelnessita, ack12:00
nessitamandel: other ways are pretty complex. If you have any proposal for solving this, I would love to read it and help you decide if it will solve the problem12:00
mandelnessita, I'll write something about my toughs about it12:01
nessitamandel: let me know :-)12:01
gatoxmandel, if you have a moment, could you review this one? (small) https://code.launchpad.net/~diegosarmentero/ubuntuone-client/deflated-size/+merge/12921512:13
mandelgatox, yes, will do asap12:17
gatoxmandel, thx12:17
mandelgatox, nessita, a small idea on how to possible change the current implementation: http://paste.ubuntu.com/1280969/12:19
mandelgatox, nessita, the signal I mention does not have to have an overlay specific name, maybe currentWorkLoad or something like that is better12:20
nessitamandel: did you read the message I wrote before about not blocking the whole ui when fetching info for a single panel?12:21
mandelgatox, nessita we might want to talk with lissette to consider how to show the loading oeverlay, may be being over the entire ui is as bad as having two12:21
mandelnessita, yes, with this idea you will just do so in the first case..12:21
nessitamandel: how come? if we hav a single instance, that instance will be as big as the whole window, no?12:22
mandelnessita, we can have two overlays and one do not show the message if the other is (I'm more interested in the idea of using signals to do it)12:22
nessitaor perhaps I'm missing something?12:22
mandelnessita, yes, you are right, there I did not consider that case12:22
mandelnessita, could have a single instance for all tabs and one for the account into12:23
gatoxmandel, you can't one instance for all the tabs12:23
mandelnessita, the one in the account info will show the loading message only if the other overlay is hidden12:23
mandelgatox, why?>12:23
nessitamandel: well, the instance for the tabs needs to leave the tabs "out" so the can be clicked12:23
gatoxmandel, because the overlay has as it parent the content of the tabs..... not the qtabwidget12:23
nessitagatox: so, when fetching shares links info, the user needs to be able to click on devices12:24
gatoxwhich avoid having the problem nessita mention12:24
nessitasorry, mandel I meant :-)12:24
nessitamandel -> so, when fetching --for example-- shares links info, the user needs to be able to click on devices12:24
nessitaso we can't have an overlay per the whole tab group12:24
gatoxand that's why you can't use singleton either12:25
mandelnessita, gatox, hm... then maybe same number of instances, make the tab overlay instances be in-sync with the accounts overlay via signals12:25
mandelgatox, I hate singletons in most use cases :)12:25
mandelnessita, gatox, so that account info overlay instance know when to show or not the loading message12:25
nessitamandel: not sure how that solution would be implementable...12:26
nessitamandel: any chance you outline the specifics a little more?12:26
mandelnessita, sure, fancy to talk over mumble, I think we would agree faster :)12:27
gatoxmandel, yep..... i would like to mumble..... i have some questions about that12:27
nessitamandel: I'm at the phone right now, could be in mumble in 15'...12:27
nessitamandel: but you can mumble with gatox, he understands the issue :-)12:28
nessita* I think * :-P12:28
mandelnessita, I'll mumble with gatox and then  I'll take some of you time after my lunch hehe12:28
nessitago ahead12:28
mandelgatox, to the mumble cave!!!12:28
mandelnananana12:28
ralsinagood morning!12:35
gatoxralsina, hi12:35
ralsinanessita, mandel: what we need is all overlays to be in the exact same place. That way, if we have the window-overlay, we don't see two ;-)12:38
ralsinabut that is mostly a cosmetic fix12:39
mandelralsina, wet think we have a better approach12:39
mandelralsina, join mumble :)12:39
ralsinamandel: can't, sorry12:39
mandelralsina, fuuuu12:39
ralsinamandel: but I am all for better approaches ;-)12:39
mandelralsina, ok, so, they can't all be in the same place because they don't know about each other12:39
ralsinamandel: nah, it's trivial12:40
ralsinamandel: so, I don't believe you ;-)12:40
mandelralsina, gatox and I were thinking of removing the one from the account panel and add a loading gif to the name and siable the button12:40
mandelralsina, then add the name and th enable the button when done12:40
mandelsuper simple12:40
mandeland no hack needed12:40
ralsina"button"?12:40
gatoxthe connect/disconnect12:40
alecuhello, all!12:40
ralsinamandel: is that the only bit that blocks the whole window?12:41
ralsinamandel: if yes,  +1 and remove the global overlay12:41
mandelralsina, for the accounts, yes12:41
nessitagatox: no need to disable the connect.disconnect button12:41
mandelnessita, me, right :)12:41
gatoxnessita, ah..... true12:41
nessitamandel: ^ since is not related to fetching account info12:41
mandelnessita, even better!12:41
mandelnessita, ralsina, gatox we just do it for the name and done :)12:42
gatoxso, easier.... just replace the name label12:42
mandelsounds like a great way to solve it then12:45
mandelI'll speak with lisette after lunch about it12:45
mandelnow, time for me to have food :)12:46
=== mandel is now known as mande|lunch
gatoxdobey, let me know when you are here please..... now i can access tarmac.... but it seems it can do bzr branch there....... this thing hates me12:47
gatoxit can't12:47
dobeygatox: ssh -A12:50
gatoxdobey, checking.... thx12:50
dobeyChipaca: hey, what's up?12:50
dobeygatox: but i pulled your branch on that instance and ran the tests, and they passed12:51
gatoxdobey, what?!....... why is failing then?!12:52
* gatox cries12:52
dobeyi have no idea12:52
gatox:(12:52
Chipacadobey: hey. Nothing, in the end.12:53
Chipacadobey: crises averted.12:53
dobeygreat12:53
ralsinahello dobey, welcome back!12:53
gatoxdobey, ah! and welcome back! :D12:54
dobeythanks12:54
gatoxralsina, so..... i'm running the tests manually in tarmac..... and they all pass!!.... but i have u1-cp branches bouncing on launchpad.... should i try to re-accept them again or that is the definition of insane?12:57
ralsinagatox: that's very strange. Locale?13:12
ralsinagatox: also it doesn't look like a timing issue at all... perhaps something in the PYTHONPATH is different in tarmac?13:13
gatoxralsina, locale??..... but i'm running them on tarmac too.... and they pass for me and dobey when i execute the tests manually13:13
dobeygatox: no, tarmac runs with en_US.UTF-813:13
gatoxdobey, that no was for me or ralsina ?13:14
dobeygatox: for you, it's not the locale13:14
gatoxah yes.... i suppose it's not13:14
dobeyand it's almost certainly not the PYTHONPATH either13:14
gatoxi just tried to re approve the branch....... crazy things happend....13:15
* gatox finger cross13:15
dobeygatox: i did that on your previous branch it failed again with the same errors, so i'm not sure that will help13:16
gatoxdobey, nop..... it didn't work again......13:16
gatoxthis is driving me crazy13:17
gatoxquick errand....... brb13:20
=== gatox is now known as gatox_brb
=== m_conley_away is now known as m_conley
dobeygatox_brb: well, one branch just merged ok13:28
dobeygatox_brb: and why did you delete https://code.launchpad.net/~diegosarmentero/ubuntuone-control-panel/shares-broken/+merge/128108 ?13:30
dobeygatox_brb: though i think i see why your branch is failing; not sure exactly the cause, but i think i know what change is triggering it13:36
gatox_brbback13:37
=== gatox_brb is now known as gatox
gatoxdobey, i deleted that branch.... because it was a workaround for the mac release..... and didn't land on trunk before i proposed the proper solution for the issue... so it's not actually needed anymore having the other branch13:38
ralsinagatox: don't delete branches, reject them13:39
gatoxralsina, ack13:39
dobeygatox: what ralsina just said; deleting them is discourteous13:39
ralsinagatox: on tarmac, are you just branching your code, or branching trunk and merging it?13:41
gatoxralsina, branching my code...... i'll try merging13:41
gatoxralsina, same result13:43
ralsinagatox: so, it passes?13:43
gatoxralsina, yes13:43
ralsinagatox: ok, we can do a nasty thing :-)13:43
* gatox accepts anything13:43
ralsinagatox: you could add some prints in your branch and try to merge again13:43
gatoxralsina, why?13:44
gatoxwhy some prints i mena?13:44
ralsinagatox: because it's failing with first argument of unbound method must have type 'QThread'13:44
ralsinagatox: and I want to know exactly what thing it believes is an unbound method13:44
gatoxralsina, ahhhhh you mean to debug it13:44
ralsinagatox: exactly13:44
gatoxralsina, ack..... i'll do that!13:45
ralsinagatox: worst case, it merges with a print and dobey hunts you down ;-)13:45
gatoxjejeje13:45
dobeythe merge *could* be broken13:46
dobeynope13:48
dobeypasses merged for me13:48
dobeyso probably timing13:48
gatoxdobey, yep.... for me too13:48
gatoxpassed i mean13:48
gatoxmande|lunch, after lunch, review this one too if you can: https://code.launchpad.net/~diegosarmentero/ubuntuone-control-panel/pointing-hand/+merge/12950213:49
dobeygatox: i don't quite understand what the changes in test_share_links_search.py have to do with the rest of the branch13:50
=== nessita1 is now known as nessita
dobeygatox: and i suspect those changes are what's breaking this13:51
gatoxdobey, that is actually fixing a timing issue that we used to have....... and making sure that the QThread is not executed as a thread13:53
dobeygatox: can you file a separate bug for that issue, remove those changes from that branch, and put them in a new branch for the new bug?13:55
gatoxdobey, of course..... will do that13:55
dobeythanks13:55
dobeygatox: please ping me when u1-cp-publishapi branch is updated to not have those changes, and we'll try to merge without them13:56
=== mande|lunch is now known as mandel
mandelgatox, ok13:56
gatoxdobey, ack13:57
gatoxmandel, thx13:57
dobeyanything else blow up while i was away? or just gatox's branch?13:58
mmcchi folks, welcome back dobey! hope you had a good break13:59
dobeythanks; and eh, it was not as good as was planned; weather failed me14:01
ralsinadobey: just gatox's14:06
ralsinagood morning mmcc14:06
ralsinammcc: how hard would it be to make a separate build for 32 bit macs?14:06
dobeyhrmm14:06
dobeyu1cp windows tests seem to be failing14:06
mandelgatox, here: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/deflated-size/+merge/129215 why changing the name from size to deflated_size ??14:07
briancurtindobey: there are failures on a bunch of windows projects, mostly because jenkins has been down recently so they snuck in14:07
briancurtindobey: and jenkins doesnt actually work right now (working on it)14:07
dobeybriancurtin: this seems to be like it's got a messed up checkout or something14:08
mmccralsina: I'm not sure. Definitely requires some tweaking on the fsevents daemon to get it 32-bit compatible - it uses objc language features that are only in the 64-bit runtime…14:08
gatoxmandel, check the bug description: https://bugs.launchpad.net/ubuntuone-client/+bug/106272914:08
ubot5Ubuntu bug 1062729 in Ubuntu One Client "sync menu uses wrong upload size for percentages" [Undecided,Confirmed]14:08
dobeybriancurtin: but i'll leave it to you then :)14:09
briancurtindobey: i'm probably going to rebuild the setup since it has some out-of-date stuff and should be on the same setup we're running on dev boxes14:09
dobeybriancurtin: sounds good14:09
ralsinammcc: ack, it's worth investigating14:10
ralsinammcc: we got one request for the 32-bit version at least14:10
briancurtinall: i'm going to post my standup done/todo now because i need to head to a doctor's appointment (bad time choice, i know). i came early and will stick around late depending on how long this takes14:10
briancurtinDONE: adjusted the sso bin-finding branch to work with the u1client branch, so now u1cp on windows works fine. two small branches to review: https://code.launchpad.net/~brian.curtin/ubuntuone-client/correct-subprocess-args/+merge/129506 and https://code.launchpad.net/~brian.curtin/ubuntu-sso-client/correct-subprocess-args/+merge/12944214:10
briancurtinTODO: look at jenkins (done a bit this morning) because it still isn't running the tests, but it executes a bunch of pre-test steps. review a few branches that have backed up14:10
briancurtin(ammendment to the TODO - probably just rebuilding the jenkins setup to make it easier)14:12
mmccralsina: ok. I'll see if there are any other issues for 32.14:12
ralsinammcc: at least knowing what needs to be done14:12
mmccralsina: ok14:13
=== yofel_ is now known as yofel
mandelgatox, oh, ok14:25
mandelgatox, both reviews done14:26
gatoxmandel, thx..... approved or need fixing?14:27
mandelgatox, both +114:27
gatoxmandel, awesome! thx14:27
gatoxdobey, the branch has been modified14:41
mmccok, just sent an email about using PyObjC for the menu. In short, I think it's a good idea (and it's working in code). But I'm sensitive to the fact that it's adding to the number of languages & frameworks we need to know to maintain the code…14:49
ralsinammcc: how does it affect binary size? It's a very minor concern.14:51
ralsinammcc: also, does it add any packaging complexity?14:51
chaselivingstonmmcc: you can probably kill this bug report, asked the user to submit a ticket in support. https://bugs.launchpad.net/ubuntuone-client/+bug/106692014:52
ubot5Ubuntu bug 1066920 in Ubuntu One Client "MacBook Pro (retina) will not shutdown while ubuntu one client is running" [Undecided,New]14:52
mmccralsina: good questions… binary size - negligible. just a few K for PyObjC python code, no new frameworks (just loads the AppKit that's already there, and that's OK to do.)14:54
mmccralsina: packaging complexity, not really. need to tweak things around to have the menu be a separate process anyway, this would roll into that14:55
ralsinammcc: ok, so no new concern there14:55
ralsinammcc: I don't expect it to be a complex program, as long as the reactor and pyobjc get along14:55
ralsinammcc: not much more than current systray.py at least14:55
mmccchaselivingston: that's a dupe, I'll find the orig. It sounds like maybe we need to add a FAQ about where the logs are on osx -- the reporter was looking in ~/.cache, but they're in ~/Library/Caches/ubuntuone14:56
mmccralsina: it's about the same, yeah.14:56
ralsinammcc: so +1 from me, and better now than later14:57
chaselivingstonmmcc: right, my script can get those if you want to tell them about that as well14:57
mmccralsina - oh I forgot something in the email: I haven't tried this yet - of course :) - but I do think we can use trial to test this thing, so we don't have to adopt a new test framework14:57
ralsinammcc: good one ;-)14:57
dobeyralsina: do we actually need a reactor in the process though?14:58
ralsinadobey: yes for the IPC14:58
dobeyoh, right :-/14:58
ralsinadobey: on mac/win we pretty much always need a reactor14:59
thisfredme?15:00
gatoxme15:00
dobeyme15:00
alecume15:01
mmccme15:01
thisfredDONE: wrap u1db TODO: ?? BLOCKED: no NEXT: gatox15:02
dobeygatox: hah, and your branch merged without those changes. so that set of changes is triggering another issues it seems :)15:02
gatoxDONE:15:02
gatoxProposed a couple of branches for control panel. A lot of ssh configurations and fights trying to connect to tarmac. Tested bouncing branches there. Refactor bouncing branch and updated. Working in another branch for the qthread problem.15:02
gatoxTODO:15:02
gatoxProposed a fix for the race condition with qthread. Keep fixing stuff in cp.15:02
gatoxBLOCKED:15:02
gatoxNo15:02
gatoxdobey, go15:02
mandelme15:02
dobeyDONE: holidays15:02
dobeyTODO: catch up, bug triage, fix bugs, move off pylint15:02
dobeyBLCK: None.15:02
dobeyalecu: go15:02
alecuDONE: got some medical checks, more planned for this wed, fixes in dash branches15:02
alecuTODO: get dash branches reviewed and merged15:02
alecuBLOCKED: no15:02
alecuNEXT: mmcc15:02
mmccDONE: pyobjc menu does progress bars15:02
mmccTODO: finish menu impl, tests15:02
mmccBLOCK: no15:02
mmccnext ralsina?15:03
ralsinasorry guys go without me :-(15:03
alecumandel: go15:03
mandelDONE: Review, reviews, reviews. Worked on bug 1065513 with nessita and gatox, talk with lisette on the design ideas.15:03
mandelTODO: Organize possible travels, get bug 1065513 fixed. 1-115:03
mandelBLOCKED: no15:03
ubot5Launchpad bug 1065513 in Ubuntu One Control Panel "Double gathering info screen " [Medium,Triaged] https://launchpad.net/bugs/106551315:03
ralsinagatox: wha? it merged?15:05
mmccoh I forgot one more thing about PyObjC: method names like "NSTimer.scheduledTimerWithTimeInterval_target_selector_userInfo_repeats_" make the pep8 checker go nuts. :|15:05
mmcc(or pyflakes, I forget which. line length, anyway)15:06
gatoxralsina, yes..... i'm proposing another branch with the qhtread thing to avoid the race conditionn15:06
alecummcc, ralsina: while we are on the pyobjc discussion, let's keep in mind that it's a bit undermaintained, and that support for python 3 is hacky at best: http://blog.pythonaro.com/2012/08/how-to-compile-pyobjc-for-python-3-on.html15:06
mandelmmcc, you can always tell it to ignore a file (pep8 I guess is the one complaining)15:07
mandelmmcc, if this is in ubuntuone-client is pyflakes in the others is pylint15:08
mandelmmcc, in pylint you can use a # pylint: disable=#NUMBER15:08
mmccalecu: yes, good point - ronald is the only person actively working on it. py3 support is what he's most actively working on, though. And the website is so far behind that I actually volunteered to help fix it15:08
alecummcc: nice15:09
mmccmandel, in my case it's emacs highlighting lines from the result of both pyflakes and pep8.py, so still :|15:09
dobeymandel: the long line thing is probably pep815:09
mandeldobey, I think so too15:09
mandelmmcc, well, that is a diff story, but if you ignore them tarmar will let you merge the branch, else it will be blocked15:10
mmccalecu: and despite low # of active committers, people do use pyobjc for real shipping things. I'm not sure if that means it'd get picked up if ronald stopped, but it's something.15:10
dobeymandel: i guess this isn't in a branch yet exactly?15:10
mandelmmcc, why not using ctypes?15:11
mmccmandel because ctypes is for C. calling ObjC with a C interface would mean reimplementing PyObjC, basically15:12
mandeloh, ok15:12
mmccevery message send in objc boils down to a C call to objc_msgsend(), so I'd need to wrap that, depythonify data structures, etc etc, boom I've rewritten pyobjc, badly :)15:12
alecu:-)15:12
ralsinaalecu: keep in mind that we will stay py2 on windows for a long time, so probably makes no difference to stay py2 on mac as well15:14
dobeyralsina: it would be nice to consider dropping python 2.6 (and with it, the classic non-GIR gobject bindings) at this point though15:15
ralsinadobey: that only affects lucid, right?15:15
dobeylucid is the only active ubuntu version that uses 2.6, yeah15:15
alecuralsina: right, I just want us to have in mind the limitations of pyobjc. And it would be nice having the possibility of switching everything to 3 when we have the chance.15:15
dobeyand the only reason we still support 2.6 in the client at all really, is for some of the tests that run on the server which is still on lucid15:16
mmccsomething else I forgot about - I think this might be best done as a separate project, if only because of the different test requirements (i.e., shouldn't have tarmac block on pep8 errors)15:16
mmccbut I'm not sure it needs to be separate, it just seemed simpler…15:17
alecudobey: right, gatox had to do some fixes very recently because of the server running on lucid.15:17
dobeymmcc: it should probably be a separate project just because it doesn't have any proper direct relation to the others15:17
ralsinadobey: yes, we can't drop 2.6 until the end of this cycle because of the server tests15:17
dobeyralsina: until 12.10 or until 13.04?15:17
ralsina13.0415:18
mmccdobey: well, it imports from all of them, but yeah, it is a distinct thing.15:18
dobeymmcc: it imports from things other than u1-client?15:18
ralsinafacundobatista: the timeline for switchng the servers to precise is 13.04 right?15:19
mmccdobey: it imports strings from control panel and syncdaemontool from u1-client, which ends up getting credentials from sso15:20
gatoxok..... lunch here15:21
=== gatox is now known as gatox_lunch
mmccbrb15:21
dobeymmcc: hrmm, the menu strings? i thought u1client had those strings as well?15:22
mmccdobey: maybe it does. I didn't look… I'll make a note15:25
dobeymmcc: i think it does, as the strings for the menu on ubuntu are in u1-client15:27
dobeywe probably need to fix control panel to import them from u1-client instead of having copies15:27
mandelralsina, gatox_lunch I'm aiming to get this as per design: https://docs.google.com/a/canonical.com/presentation/d/13LMJQfBA3NgbRZ82j4Il1lkutg0mR03WpJA87epw1j4/edit#slide=id.g20c9f360_0_3715:31
mandelis more work, but is better to get it done the right way15:31
alecummcc: oh, I'm just reading your email, and it already addresses my pyobjc concerns. Doh :-)15:37
dobeyok, need to get lunch; bbiab15:39
ralsinammcc: looking...15:42
ralsinathat was for mandel. So, mandel... how? ;-)15:42
mandelralsina, add an extra layout for the entire things that depends on the content of the name, leave the account pane with no layout15:43
mandelralsina, the rest works the same15:43
ralsinamandel: ok, want to see it15:43
ralsinamandel: so go ahead :-)15:43
mandelok15:44
mandelralsina, that sounded like a challenge hehe15:44
briancurtinback after 1:45 complete waste of time15:50
alecubriancurtin: what happened?16:10
briancurtin"oh, you have an appointment? we don't do monday appointments since they doctors aren't here today" - "oh..." - "who set your appt up?" - "cathy" - "that's me"16:11
briancurtinso i guess the real appointment is now thursday if i can trust them16:12
alecumandel: there's one catch with that design16:12
mandelalecu, tell me16:12
alecumandel: when starting, the "getting information" bubble will move at some point, when the account info is retrieved, but the folder info is not yet.16:13
alecumandel: so, it will appear to "jump".16:13
mandelalecu, true16:13
mandelalecu, and that is not good at all16:13
mandellisettte, ^^16:14
alecumandel: my opinion is that it should remain in a fixed place, and yes, the tabs and the top could be "unobscured" when the account info is available.16:14
lisetttealecu, mandel: depending on what the 'jump' looks like, it seems better for users to have all the functionality they can have in the shortest possible time16:15
mmccyeah, let's please not make it jump around. even the font resizing when the quota percentage is finally drawn is annoying enough.16:15
lisetttealecu, mandel: what exactly is going to jump?16:16
aleculisettte: the "getting information bubble"16:16
mandellisettte, it will move down a little16:16
aleculisettte: in slide 5 the bubble is many pixels below, compared to slides 3 and 416:16
lisetttealecu, mandel: we should see how this works in reality, but it seems we need the partial cover anyway: right now it shows me the waiting animation briefly every time i move to a different tab16:17
mandellisettte, yes, that is because it does a request for every tab change16:18
lisetttealecu, mandel: i am not sure it is a huge problem for it to move down16:18
mmccmight be a big change, but can we fix this instead by storing locally the username and quota and just not displaying the loader for the account info? Seems crazy to wait 10 seconds to see my name.16:18
alecummcc: your name comes free when we request the available space16:18
lisetttealecu, mandel: the alternative is to cover it until everything is available, which was my first choice, but then we would still need the partial cover for moving between tabs?16:18
mandelis just that the name is the most notizable pieze of info16:19
alecummcc: and the quota should be updated when we start, right?16:19
lisetttealecu, mandel: which would be 4 states16:19
mandellisettte, alecu, yes, if you want to move between tabs that is the issue, if you add an overlay on top the tabs wont be clickable16:19
mmccalecu: the name comes free but slow!  the quota could be out of date for a few seconds, or just display a dash instead of the actual percentage…16:20
lisetttemandel: can you show us how irritating the jump is? it seems the least of all evils16:20
mandellisettte, sure, I'll have that done by tom and we can see how bad it is16:20
mandelI'm close to my EOD16:21
lisetttemandel: awesome!!!!! :)16:21
alecumandel: I see what lisette proposes now: when starting, let's keep everything occluded until the folder info is retrieved16:21
mandelalecu, lisettte, I'll do both options and will record a video so we can choose16:21
=== gatox_lunch is now known as gatox
mandelis better to see it16:22
lisetttemandel: saweet!16:22
alecumandel: that means having some logic in the first tab to know this is the starting, and not the switching...16:22
mmccalecu: and the first tab could be any tab16:22
mandelalecu, mmcc, is not the first tab, but the main widget16:22
mandelwhich is diff16:22
mmccko16:22
mmccer ok16:22
alecummcc: I believe that it was chosen not to cache the name, because it was something that could be changed on the website.16:22
gatoxmandel, so..... is going to be the option with the whole overlay?16:23
alecummcc: but yes, I agree that it's slow, and ugly16:23
mmcchmmm.16:23
alecummcc: perhaps we can poke nessita to explain the reasons not to cache the name and total available quota in the control panel (at least until they are updated by the first webcall to the account api)16:24
mmccnot caching the quota makes some sense, since the cached quota could be wrong often, but the cached name would never be wrong for almost everyone...16:24
alecugatox: not with the whole overlay. The whole overlay when starting, the per-tab overlay when switching tabs.16:25
gatoxalecu, yes.... that's what i mean16:25
alecugatox: I understand that. mandel can confirm.16:25
mandelalecu, exactly, use a global overlay for the first time, use tab overlays later..16:26
mandelis not a simple solution though ..16:26
mandelI'm nearly done with the first solution, I'll continue tom and we can decide then16:28
mandelnow, I need to EOD16:28
mandelcatch you all tom!16:28
alecummcc: bybye!16:29
gatoxalecu, mmcc is not leaving :P16:30
alecuI meant mandel, sorry :P16:30
mmccgatox: shhhh, I was making brunch plans16:30
mandellol16:31
alecummcc: so, checking the code, it seems that the account webcall is used to get the subscription plan details. Then a different call is used for the quota, but the results are returned together.16:31
alecumy guess is that the quota webcall might be taking significantly longer.16:32
alecu(because of server processing)16:32
alecubut I better test irl.16:32
alecualso, we are doing the quota call only once, when starting. So while the control panel is started, the quota info won't ever be changed.16:33
mmccso if you click on the button to get more storage and get more storage, the quota will be wrong? hmm… be nice to update that16:34
mandelalecu, mmcc, it should as updated as possible16:36
alecummcc: also, if you run out of u1 space, you get a popup warning you about that, but you look at the control panel and it says otherwise.16:36
ralsinaalecu: we do need to make that a looping call. That it's never updated is a linux-ism since there u1cp is not a persistent process, but something that starts/stops every time the user looks16:39
alecuralsina: yes, absolutely.16:40
mandelralsina, but if the user does have the control panel opened for longs periods you will have the same problem16:40
alecumandel: yes, but it's much more frequent on win/mac, since even when the user closes the window, the process persists.16:41
ralsinaalecu, mandel: so, gather that info in sd and signaling out to u1cp and the indicator?16:41
mandelralsina, alecu, it does make sense that this is more on the sd side... since it is all the time running for sure16:41
ralsinamandel: exactly16:41
ralsinasame pattern as we are using for the sync menu, more or less16:42
dobeyhmm16:42
alecuinteresting tidbit: when starting u1cp, these webcalls are done *twice* :P16:42
alecuaccount call: 1.940618991851806616:42
alecuaccount call: 2.448563098907470716:42
alecuquota call: 0.2843420505523681616:42
alecuquota call: 0.315200090408325216:42
mmccalecu, yep I've noticed that too… I think one of them gets cached now, since I added a deferred lock around them (or was that just the credentials?)16:43
ralsinaalecu: Measure twice, cut once?16:43
mmcchm, maybe I'm thinking about getting the credentials, never mind.16:44
alecummcc: is that on trunk?16:44
mmccalecu: yeah, it's from a while back, let me look16:44
dobeymeh16:45
mandelmmcc, I think is the creds16:46
mmccyeah, I was thinking of this one: https://code.launchpad.net/~mikemc/ubuntuone-control-panel/fix-credentials-race16:46
mandelthat code is a little messy16:47
mandelwell, I really need to go now16:47
mandellaters all!16:47
mmcchuh, so this is weird - this is merged, but doesn't have a MP: https://code.launchpad.net/~mikemc/ubuntuone-client/guard-ipc-connect16:48
dobeymmcc: you probably had the changes included in another branch16:49
gatoxanyone else is having problems trying to push code to launchpad?16:49
dobeygatox: wfm16:50
gatoxmm..... i'll reconnect16:50
mmccdobey: that makes sense, but I can't guess which branch it'd be… oh well16:51
dobeymmcc: http://bazaar.launchpad.net/~ubuntuone-control-tower/ubuntuone-client/trunk/revision/1302#ubuntuone/platform/ipc/ipc_client.py16:53
mmccdobey: indeed. thanks16:55
gatoxneed to restart16:57
briancurtinralsina: in order to fix jenkins i think i'd like to redo its setup to be based on buildout. i never got around to doing that, partly since it worked via the old "install everything globally" way it was done before. however, now it needs buildout. the question is: can i create a new project in LP to house the scripts/devsetup folder of windows-installer, especially since its now sufficiently cross-platform?16:58
nessitaalecu: hi, just saw your ping16:58
dobeybriancurtin: the plan was to just rename windows-installer to something more amiable to what we actually do with it16:59
dobeybriancurtin: so i'd say just keep it in there, and we'll rename it when we get the chance16:59
briancurtindobey: well it does have some code for windows installer stuff16:59
nessitaalecu: no reason for caching other than not having the infrastructure in place within the project (meaning there is no current caching, so you need to persist the info somehow)16:59
dobeybriancurtin: yes, and mac 'installer' stuff16:59
dobeymostly that project is 90%+ buildout though17:00
dobeythe windows-specific actual installer bits are very minimal17:00
ralsinabriancurtin: I don't see a reason for another project, besides the bad naming17:02
ralsinabriancurtin: so, let's keep it there17:02
aleculunch and bank time for me.17:08
gatoxjust a heads up....... my connection is working like crap today17:12
* ralsina lunches17:20
gatoxdid you get my message about my connection being crap?17:20
gatoxanyone?17:20
dobeyno17:20
gatox<gatox> just a heads up....... my connection is working like crap today17:20
briancurtingatox: i got it17:20
dobeylol17:20
briancurtin:)17:20
gatoxjeje thx17:20
gatoxdobey, troll17:20
gatoxjeje17:20
mmccI only see gatox's vowels17:21
dobeyhaha17:21
alecubeats seeing gatox's bowels17:24
gatoxdobey, so now we should try to land this one :P https://code.launchpad.net/~diegosarmentero/ubuntuone-control-panel/u1-cp-qthread/+merge/12972217:25
gatoxalecu, ^17:25
dobeygatox: it will fail17:26
gatoxdobey, ok..... i'll do here what roberto suggest..... and put a couple of prints so i can debug it when it fails17:26
dobeygatox: i've needs fixing it. can you please document in the bug report description the actual failure cases when the race occurs?17:28
gatoxdobey, ok17:29
dobeymuahahahah17:44
gatoxdobey, what happend?17:44
dobeyi think i fixed the overzealousness of "redefinition of unused var" in pyflakes17:44
gatoxdobey, thank you :'D jeje17:45
dobeyi have no idea how to propose the change to upstream though, or how to run their test suite17:54
dobeybut presumably i also have to fix some tests17:55
gatoxmmcc, ping17:59
mmccpong gatox18:00
gatoxmmcc, sorrry to bother you again with this.... i had the tab opened with the change to remember, but firefoxx decided that my tabs weren't important.... can you  remind me again the line in u1-cp that should be commented in order to run the testts please?18:01
mmccgatox: sure, np. just a sec18:01
gatoxmmcc, thx18:01
mmccgatox http://paste.ubuntu.com/1281605/18:04
gatoxthx18:04
dobeyugh18:07
gatoxdobey, please let me know if this is ok for you: https://bugs.launchpad.net/ubuntuone-control-panel/+bug/106689418:13
ubot5Ubuntu bug 1066894 in Ubuntu One Control Panel "Tests from test_share_links_search are causing timing issues with QThread" [Undecided,In progress]18:13
dobeygatox: those failures happen consistently on osx?18:18
gatoxdobey, yes for me18:19
gatoxdobey, running just that script.... i've seen it pass sometimes18:19
gatoxbut few18:19
dobeyhrmm18:20
gatoxdobey, i have a really slow machine for osx18:20
dobeygatox: can you run the tests with QTHREAD_MAX_IO_WORKERS=0 to see if they pass then? or maybe QTHREAD_AFFINITY="no"?18:22
dobeythese failures are quite odd indeed18:23
gatoxdobey, sorry.... where i should add that?18:23
dobeygatox: those are environment vars18:23
gatoxack18:24
dobeyi think they work with qt4 anyway18:24
dobeyof course, this may be a completely different qthread library i'm looking at documetnation for18:24
dobeyindeed i am18:25
dobeyso nevermind those vars :(18:25
dobeywith18:25
dobeyerr18:25
dobeysigh18:25
dobeyso i don't know18:25
dobeyi guess just try the prints then :-/18:25
* dobey also wonders how to get details for import aliases in python _ast18:26
gatoxdobey, but the failures makes sense.... the patching is happening after the function is called..... so it executing everything in a thread instead as part of the same flow.....18:28
gatoxand the branch fix that..... but for some reason is failing in launchpad..... so i'll need to debug that with lots of prints18:29
dobeyok18:31
briancurtinugh. i think im going to try and remove all dependence on windows batch files. they are constant pain and we have python right in front of us...18:31
dobeybriancurtin: do it! :)18:32
=== m_conley is now known as m_conley_away
gatoxdobey, should we try to land this branch? https://code.launchpad.net/~diegosarmentero/ubuntuone-control-panel/u1-cp-qthread/+merge/12972219:21
gatoxdobey, or should we ask for reviews?19:21
gatoxs/we/i19:21
dobeyi don't know19:22
gatoxralsina, ping19:22
=== mmcc_ is now known as mmcc
dobeygatox: i guess i'll try to land it19:23
dobeysince it will almost certainly fail19:23
gatoxdobey, please....... so i can check the prints19:23
gatoxdobey, because the fix is right....19:23
dobeywell, not entirely i guess19:24
gatoxdobey, maybe..... or maybe launchpad is crazy somehow19:24
ralsinagatox: pong19:24
dobeyit has nothing to do with launchpad19:24
dobeyor how crazy it might be19:24
gatoxralsina, nothing..... it was to ask you if we could try to land the branch that has the qthread tests fix and is causing problems.... but dobey already said that he will try to land it.... so we can see the prints19:25
=== mmcc_ is now known as mmcc
ralsinagatox: ack19:35
dobeyalso ugh for last minute critical bug that we should have caught a year ago :-/19:39
mmcclooks like my connection is patchy here, probably because I'm testing upload progress bars IRL.19:40
dobeygatox: ah i see what's wrong19:45
gatoxdobey, with mmy branch?19:45
dobeygatox: well i think the problem was already there, and your branch just exposes it finally19:45
gatoxdobey, tell me please19:45
dobeygatox: actually, this branch seems to have two problems now19:47
dobeygatox: the old problem seems to be that _thread_explore is not yet initialzed when you try to start the thread from the patched method19:47
dobeygatox: and the new problem seems to be that self.ui is None in some cases19:48
dobeySearchBoxTestCase has the problem of self.ui being None19:48
gatoxmmmmm19:49
gatoxdobey, so..... probably this is not the proper solution..... and it is necessary to refactor a couple of things..... am i right?19:49
dobeygatox: possible. i don't really know anything about QThread, but looking at the traceback and the code, it seems there is still a race there19:49
dobeygatox: but your current branch seems to have isolated the race to be a consistent issue19:50
gatoxdobey, ok....... i'll try to thing this carefully..... specially because i'm not being able to see it fail here....... and propose a branch fixing those stuff....... sounds ok?19:50
dobeygatox: interesting19:51
dobeygatox: so the new SearchBoxTestCase failures are failing for me as well, in your branch19:52
gatoxdobey, what i say? or did you find something else?19:52
dobeythe other QThread issues are still passing for me when i run the tests though19:52
dobeygatox: so fix the SearchBoxTestCase failure first, i think19:52
dobeyit might be related to your addition of prints19:53
dobeythough not sure how exactly :)19:53
gatoxdobey, ack....... i'll do that! i'll check the race condition of ui being None sometimes19:53
gatoxthat is the root of some problems19:53
dobeygreat19:53
gatoxawesome..... thx dobey19:54
dobeysure; let me know when you have an update to the branch and i'll run the tests again19:55
gatoxdobey, yap19:55
gatoxok....... eod here..... i'll keep fixing the qthread tomorrow20:10
gatoxbye peopleeeeeee..... see you tomorrow120:10
ralsinadobey: I feel so guilty about that qthread code... it started as "the simplest solution" for the problem. Looks like it wasn't :-/20:19
dobeyeh, at least it's not bug #106694320:20
ubot5Launchpad bug 1066943 in ubuntuone-client (Ubuntu Quantal) "CredentialsError starting UbuntuOne for Ubuntu 12.04" [Critical,In progress] https://launchpad.net/bugs/106694320:20
ralsinawell, yes, that's true20:20
dobeyfor which i just proposed https://code.launchpad.net/~dobey/ubuntuone-client/grrrrr-gir/+merge/12975420:21
ralsinadobey: looking20:21
ralsinadobey: we are still packaging trunk for lucid, but noone is actually using it, right?20:22
ralsinadobey: also, how did that ever work and/or pass tests?20:22
dobeyno, we are only packaging nightlies for 11.04+20:22
dobeyit won't build on lucid20:23
ralsinadobey: yes, noticed that :-)20:23
dobeyit's in the scripts, which don't have tests20:23
ralsinabut really, where was that getting glib from?20:23
ralsinadobey: +120:25
dobeypython-zeitgeist maybe?20:25
ralsinaso, random dependency chain...20:26
dobeyin nightlies ubuntuone-control-panel was still depending on it for some reason20:26
dobeybut i fixed that just now20:26
alecudobey: +120:27
dobeythanks guys20:27
dobeyi hope there aren't any other bugs i need to fix in quantal today20:34
ralsinadobey: fingers crossed!20:42
dobeyoh, crap20:43
dobeyfinal release is thursday; so i guess this has to be an SRU and rel-noted20:43
ralsinadobey: it should not happen in the default install, right?20:44
dobeyi'll have to check the manifest20:44
dobeyralsina: yeah, python-gobject is part of the default install20:45
dobeyso maybe i should change it to high instead of critical20:45
ralsinadobey: so SRU is more than ok20:45
ralsinadobey: right20:45
ralsinadobey: this happened to this guy because he did a "minimal" install, if it happened in default I would have noticed20:46
ralsinaby the bug report flood ;-)20:46
dobeyor even mediaum20:46
dobeyyeah; true20:47
ralsinahigh is ok to justify the SRU20:48
dobeyeh, justifying the SRU is easy, for this one anyway20:53
dobeyalso20:55
dobey_ast is hard to use20:55
ralsinadobey: you are not supposed to use _ast directly20:57
ralsinaalso, IIRC gatox knows a ton about ast because of ninja20:58
elopiopedronis: dobey. is u1lint also used on the web projects ?21:02
elopiosorry pedronis.21:02
elopiowrong key :)21:03
dobeyelopio: on servers? i think it is not right now21:03
elopiodobey: got it, thanks.21:03
elopiobeuno: do you use some kind of style checker?21:04
beunoelopio, I'm using ninja-ide which does pep-8 checking by default, yes21:04
dobeyelopio: servers has a similar wrapper around pylint21:04
elopiobeuno: I meant, is it enforced by jenkins or tarmac?21:05
beunoelopio, no, not at the moment21:05
beunowill be soon21:05
elopiobeuno: awesome. Can I be involved when you are doing it?21:06
dobeyalright, well i think it's time for me to call it a day21:10
dobeyhave a good evening all!21:10
ralsinaTime to take a long break now.21:10
elopiobye dobey, have a good evening.21:10
ralsinapost review reqs etc here!21:10
elopiobye ralsina, have a good long break.21:11
mmccclient tests so so slow21:13
mmcchere's a brief review request for ralsina after his good long break: https://code.launchpad.net/~mikemc/ubuntuone-client/fix-dummy-sync-menu-again/+merge/12976721:23
briancurtinmmcc: review trade? mine's easy: https://code.launchpad.net/~brian.curtin/ubuntuone-windows-installer/remove-lazr-mentions/+merge/12976521:24
mmccbriancurtin: sure. you'd be a good review for mine, since it fixes something that probably broke windows syncdaemon too21:25
mmccbriancurtin: +1 on code review only, I killed those in setup-mac early on.21:27
briancurtinmmcc: i had them killed in setups where i had been building the installers from, but apparently hadn't proposed the branch21:28
mmccbriancurtin: been there!21:29
mmccok, lunch time21:30
briancurtinmmcc: my u1client tests aren't currently passing, but your branch has no overall effect on the fail/error count21:48
mmccbriancurtin: another test is to see if syncdaemon starts for you with/without the branch…21:50
briancurtinmmcc: ah, shows up IRL21:57
briancurtini also realized a stupid mistake i checked in with those bin finding branches...two three-char changes if you can squeeze them in your schedule21:58
briancurtin(after your lunch, of course)21:58
mmccbriancurtin: I'm back, what's the deal? I actually haven't reviewed those branches yet, sorry…22:33
briancurtinmmcc: i approved your branch. i was looking at the changes i made and one branch got merged that needs to be adjusted (https://code.launchpad.net/~brian.curtin/ubuntuone-client/take-first-element/+merge/129779) and the other doesn't have any reviews yet (https://code.launchpad.net/~brian.curtin/ubuntu-sso-client/correct-subprocess-args/+merge/129442) - it's all related to the python at the front of the path problem, should22:34
briancurtinbe quick22:34
mmccbriancurtin - aha, ok. I'll look at those later today. have to run for a few hours now, will be back later.22:40
briancurtinmmcc: cool, thanks22:40

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