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

=== eu is now known as Guest45697
=== eu is now known as Guest81574
mandelmorning all!08:01
JamesTai1Good morning all! :)08:25
mandeldobey, I found the issue, the problems is that QNetwork.setApplicationProxy does not work and we have to set the proxy on the NetworkAccessManager, which will mean that the code won't work in older versions..09:44
mandeldobey, lets talk about the best approach whenever you are around09:44
=== mpt_ is now known as mpt
=== eu is now known as Guest32810
gatox_macgood morning11:21
gatoxgood morning here too11:23
mandelgatox, morning to both of you11:32
gatoxmandel, jeje thx11:32
gatoxmandel, i'm in Q now.... and it's really fast11:32
gatoxsuccessful upgrade11:32
mandelgatox, yet proxy support for u1 is broken due to an update of qt11:33
mandel:P11:33
gatoxouch11:33
mandelgatox, might be a big deal if we have to be compatible with older versions11:35
mandelgatox, they fixed a bug that broke a workaround hehe11:35
gatoxmandel, jejeje well... we might have something as we do for the multiplatform code..... based on the qt version..... is a PITA but it will work11:36
mandelgatox, which will be a fuuuuu from my point of view ;)11:36
gatoxyap11:36
* gatox is really happy about how Q is working in his machine :D11:37
=== eu is now known as Guest80106
mandelfuuuuuu http://paste.ubuntu.com/1257851/12:28
ralsinagood morning!12:43
gatoxralsina, hi!12:43
gatoxralsina, 12.10 is working like a charm...... just to let you know12:44
ralsinagatox: awesome!12:44
mandelralsina, morning!12:44
ralsinahello gatox, mandel12:44
mandelralsina, I hate unity => http://paste.ubuntu.com/1257851/12:45
mandelralsina, also, QNetwork.setApplicationProxy() is not working in the new qt as it did in the old one, it is easy to fix, but.. which qt version are we using in old ubuntu distros?12:45
ralsinamandel: 4.8.something12:46
ralsinamandel: let me check12:46
mandelralsina, will it get updated, do we have to behave in a diff manner according to the qt version?12:46
ralsinamandel: I am guessing it will get updated in 12.04.112:46
ralsinamandel: but who knows. In any case, we should still try to support the old way if it's not a huge mess12:46
ralsinamandel: 4.8.112:46
mandelralsina, ok, I'll talk with dobey on what to do, is as simple as not using the application proxy and set the proxy for the networkaccessmanager12:46
mandelralsina, we can always have an ugly if statement12:47
ralsinamandel: you are missing a file in a build dep, obviously12:47
ralsinamandel: exactly12:47
ralsinamandel: if it's just *one* if, I don't mind12:47
ralsinamuch12:48
=== Guest80106 is now known as adorilson
mandelralsina, should not be.. but might have to check for version and os.. :(12:49
mandelralsina, so is not as nice12:50
gatoxmandel, do you were involved in the code for SyncDaemonTool signals handling?12:50
mandelgatox, nop, I might know something but I was about to change the nick to mandel|lunch :P12:50
ralsinamandel: hmmmm version & os? Really?12:51
gatoxmandel, no problem..... it wasn't to ask you something now...... i'm still trying to figure it out something..... i just wanted to know who to ask if this get more awful :P12:51
mandelralsina, we need to check12:51
mandelralsina, I have not tested it on windows12:51
mandelgatox, I think I can give you a hand12:52
mandelwell, I'm off to have lunch12:52
=== mandel is now known as mandel|lunch
ralsinamandel|lunch: hopefully, we try it on windows and it's broken in a cross-platform-compatible manner12:55
dobeymandel|lunch: hrmm, can we just make all the calls all time, so it works on both versions regardless?12:59
dobeymandel|lunch: is there documentation on why this broke? this seems like a regression in qt, so perhaps we can just push a fix to it?12:59
ralsinadobey: good idea, should not break anything setting it twice13:00
=== yofel_ is now known as yofel
alecuhello #ubuntuone!13:09
dobeyhola alecu13:09
facundobatistaHello, fellow desktoplings! Vengo en paz. And with a MP: https://code.launchpad.net/~facundo/ubuntuone-client/fix-path-retrieval/+merge/127583 (thanks!)13:11
alecuhey all, I'm taking the morning off to pay another visit to the doctors13:11
* alecu aims his raygun to facundobatista13:11
facundobatistaalecu, :)13:12
ralsinafacundobatista: ya casi terminé el review de esa13:16
facundobatistaralsina, maravilloso, gracias13:18
ralsinafacundobatista: +113:20
facundobatistaralsina, :D13:20
facundobatistaralsina, thanks13:20
ralsinaI am rebooting to windows to help test some u1db stuff, will be back in a bit13:26
ralsinaDamned, I had forgotten how painful it is to boot windows if you have not done it in a while13:41
ralsinagatox: since you just upgraded to 12.10, did your u1 icon in launcher go away?13:43
gatoxralsina, i didn't have it there anyway..... so i don't know13:43
ralsinagatox: could you create a fresh accout and see if it's there?13:44
gatoxack13:44
gatoxbrrb13:44
ralsinagatox: just switch to the guest account :-)13:44
gatoxralsina, the guest session is enough?13:45
gatoxyes..... it's there13:45
=== mandel|lunch is now known as mandel
mandelralsina, dobey well, is not that easy, we used the setApplicationProxy over the NetworManager.setProxy because in previous versions of qt there was a bug in it (setProxy)13:56
mandelralsina, dobey you could not set the proxy with the correct auth (after the first requests which has no auth) because it would be cached in the nam13:56
mandelwe would need to test if setting both is the correct approach, yet i'm 100% sure that if you set it in the nam the tests will pass in Q13:57
ralsinagatox: can you doube-check that it's the control panel and not the music store? Just in case :-)13:59
gatoxralsina, i have both13:59
dobeyralsina: i have seen it go away on upgrade though14:00
ralsinadobey: right, that is what I got reported. It seems to go away for accounts that already existed?14:01
dobeyralsina: it goes away if you upgrade while logged in, i guess14:02
ralsinadobey: makes a little sense14:02
ralsinadobey: any idea who we should ping about it?14:02
dobeyralsina: not sure14:03
dobeyralsina: i guess dx probably, as it might be a bug in bamf14:03
ralsinadobey: I am doing other stuff right now  and in windows to boot, could you report the bug?14:04
dobeygoing to test upgrade on other laptop first14:05
ralsinadobey: awesome14:05
dobeyi hope upgrading doesn't break the world on that machine though. (intel gma500)14:12
dobeyhrmm, i think maybe the issue is that ubuntuone-installer gets removed at the beginning of the upgrade, and and new control panel isn't isntalled until much later (which could be an hour apart or something), and so as far as unity is concerned, the thing was in fact removed :-/14:22
dobeybut it would only in fact affect users who run the upgrade while logged in as their user14:23
dobeyso you know, everyone.14:23
dobeyand the "base-files" just failed to install for me. whee :-/14:25
gatoxdobey, i can try to upgrade my other laptop if you need14:27
dobeywell it's obvious what happened14:29
dobeyi am just not sure it's possible to fix it14:29
ralsinadobey: well, then we have to tell DX I suppose and see if they figure it out14:33
ralsinadobey: I am asking in ubuntu-desktop let's see what happens14:41
dobeyi can't even find where that list of launcher items is even stored, any more14:44
=== m_conley_away is now known as m_conley
dobeygatox: did you get to look at those control panel tests failing?14:55
gatox_macdobey, hop… i'm kind of stuck with the u1-cp issue in mac yet14:57
ralsinagoing back to linux, see you all in a bit or two14:57
dobeygatox_mac: can we postpone that to fix the tests issues?14:58
gatoxdobey, fine by me if ralsina agrees14:58
dobeyralsina: ^^14:59
mandelme15:00
gatoxme15:00
briancurtinah crap, typing now15:03
mmccme15:04
briancurtinme15:05
dobeyme15:07
gatoxmandel, go15:08
mandelDONE: FOund out what changed in qt and broke proxy. QNetwork.setApplicationProxy does not work as it used to. We need to set the NetworkAccessManager proxy instead. Merge u1 payment preview with tunk, everything went down to hell15:08
mandelTODO: Try to fix the merge problems which stops my code fomr compiling :*( Propose fix for proxy.15:08
mandelBLOCKED: no15:08
mandelgatox, please15:08
gatoxDONE:15:08
gatoxFight a lot with twisted and u1-cp signals for the public files list.15:08
gatoxTODO:15:08
gatoxFigure it out why the last part of the signal is not reaching the share_links module, although we are getting the correct data from u1-client. Fix u1-cp tests15:08
gatoxBLOCKED:15:08
gatoxTrying to understand some part of the twisted signaling implementation.15:08
gatoxmmcc, go15:08
mmccDONE: tests for cmd-q catch, daemon crash debugging15:09
mmccTODO: merge cmd-q, daemon work15:09
mmccBLOCK: no15:09
mmccNEXT: briancurtin15:09
briancurtinDONE: well U1CP starts up now, usually, in most cases, somehow.15:09
briancurtinTODO: figure out what's still in the way of it operating, possibly the recent changes to finding the binaries15:09
briancurtinNEXT: dobey15:09
dobeyDONE: releases, uploads15:09
dobeyTODO: finish 4.0.0 releases/uploads, poke py3 twisted guys about packaging15:09
dobeyBLCK: New Qt broke SSO authenticated proxy support. CP tests breakage.15:09
dobeyralsina: go15:09
ralsinagrmbl, sorry, ubuntu update broke network :-(15:14
gatoxralsina, yep..... here too..... but it get connected eventually (specially if i'm close to the router.. magic :P)15:14
mandeldobey, I'll propose a fix for that block asap, let me finish first with some work on unity15:15
mandeldobey, I'll try to test it in P and Q15:15
gatoxralsina, so..... about what dobey says......15:15
gatoxralsina, <dobey> gatox_mac: can we postpone that to fix the tests issues?15:15
ralsinaDONE: calls, helped u1db test on windows, some reviews, helped around a bit TODO: try to figure out that upgrade problem, help around some more, etc. BLOCKED: no15:15
ralsinagatox: how stumped are you on the mac u1cp stuff?15:15
gatoxralsina, the problem seems that we are getting all the info from u1-client..... i'm printing that and i see it..... but in some place in the endless callbacks to return the signal from u1-client, one of the callback is not getting called and the method which receive the data and process the info in share_links is never being called...... and i'm not really familiar with that part of the signal and wait_for_signals stuff in u1-client and i do15:18
gatoxn't quite understand yet what is happening with a deferred that set a callback to i-dont-know-what15:18
ralsinagatox: ok, you may get some help from mandel for that tomorrow morning15:19
ralsinagatox: so, switch to the tests now, and then you go back to the shares tab tomorrow early15:19
gatoxralsina, i was about to execute the same thing on windows.... that uses the same calls...... and try to follow everything backwards with the stack..... to see what funcions should be called on the response15:19
mandelhm.. ralsina may or will? :-)15:19
ralsinamandel: I am not the "thou shall" kind of manager, so add a "?" there where appropiate ;-)15:20
mandelhahahahaha15:20
mandelralsina, I suspected that :)15:20
ralsinamandel: I really hope you will though15:20
mandelwill do my best15:21
gatoxralsina, ok..... i'll move to the tests.... then try the windows option to see if i can track which should be the proper path of calls...... and if i start to have suicidal thoughts..... i will ask mandel :P jeje15:21
mandelgatox, for how to kill yourself? I would go for alcohol and unprotected sex15:22
gatoxjejejeje15:22
mmcchey guys, I need to do some emergency babysitting now, sorry. I'll peek in occasionally but might be gone for an hour15:24
mmcc(my wife is sick this morning)15:24
ralsinammcc: sure, go ahead15:24
briancurtingatox: if you are going to be testing things in windows from source, make sure you already have creds otherwise you wont be able to start U1CP15:25
gatoxbriancurtin, ack, thx...... and i have creds15:27
dobeyok, i need to get some lunch. bbiab15:28
* gatox lunch....... brb15:32
=== gatox is now known as gatox_lunch
ralsinalunch for me too16:02
=== gatox_lunch is now known as gatox
briancurtinlunch + quick_errands = brb16:27
mandelEOD for manuel16:28
mandelaka me16:28
gatoxmandel, bye16:32
dobeyso just need to get sso and control-panel released and uploaded, but grrr qt16:35
gatoxdobey, where are the tests failing? llinux?16:53
dobeygatox: yes, in taramc16:54
dobeygatox: https://code.launchpad.net/~dobey/ubuntuone-control-panel/update-4-0/+merge/12755916:54
gatoxdobey, ahhhhhh it was client...... i was confuse16:54
dobeymandel: you had a branch?17:15
gatoxdobey, do you know if there is a bug for the failing test or it should be?17:18
dobeygatox: i haven't filed one yet17:18
gatoxdobey, ok.... i'll do it and propose the branch now17:18
dobeygatox: ok, thanks. what was the problem there?17:19
gatoxdobey, some part of the test wasn't updated with one of the latest changes adding the separator, which counts as another item17:20
dobeygatox: a branch isn't needed i guess17:21
dobeyif that's the issue17:21
dobeyuh, wait, what does that have to do with control-panel?17:21
gatoxdobey, do you want to add the patch in your branch17:21
gatoxdobey, no, i'm talking about the failing tests in u1-client17:21
dobeywhat failing tests in u1-client?17:22
gatoxdobey, there was a test failing in u1-client.... i thought you were talking about that one17:22
dobeygatox: no i'm talking about control-panel17:22
gatoxdobey, the one in u1-cp is failing only in mac..... at least for me17:23
dobeygatox: a lot of tests are failing with regards to the shares tab17:23
gatoxi'll double check right now17:23
dobeygatox: look at the failure message here: https://code.launchpad.net/~dobey/ubuntuone-control-panel/update-4-0/+merge/12755917:23
gatoxdobey, yes.... i saw that..... but i get all green on linux...... and that only on mac17:24
gatoxthat's why i was working on mac17:25
dobeygatox: on precise, or quantal?17:25
gatoxdobey, now i'm on quantal..... but yesterday i was in precise and i had u1-cp tests green..... that's when i notice the tests failing on mac and not on linux17:26
gatoxand i said the part about being consistent....17:26
gatoxbecause for some reason that is not working on mac17:26
dobeygatox: they pass for me on precise too, but these failures are on quantal in tarmac17:27
gatoxdobey, weird....17:28
gatoxgatox@utopia:~$ lsb_release -a17:28
gatoxNo LSB modules are available.17:28
gatoxDistributor ID:Ubuntu17:28
gatoxDescription:Ubuntu quantal (development branch)17:28
gatoxRelease:12.1017:28
gatoxCodename:quantal17:28
* briancurtin back17:29
gatoxdobey, if you can...... this fix the failing test on u1-client: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-fix-tests/+merge/12783617:31
gatoxdobey, now i'll go back to mac..... there i'll be able to fix those broken tests..... plus that tab not working there17:31
dobeygatox: ok; you are getting those same errors on mac?17:34
gatoxdobey, yes..... only there17:34
dobeyhrmm17:35
chaselivingstonmmcc: ping17:41
mmccjust got back. what's up chaselivingston ?17:41
chaselivingstonmmcc: just created this http://bazaar.launchpad.net/~chaselivingston/+junk/scripts/view/head:/mac-logs.sh17:42
chaselivingstonwhat's the best way to distribute that for people to use relatively easily17:42
mmccyou can make a double-clickable command file that opens in the Terminal. letme look and see how17:43
chaselivingstonok cool, that would be helpful17:43
mmccalso, if you could add /Library/Logs/DiagnosticReports/com.ubuntu.* to that zip that'd be good too :)17:44
mmccthat's where crash reports for the daemon are saved17:44
chaselivingstoncan I add that to the same line somehow?17:45
mmccyeah, if you just add it to the end it should work17:46
chaselivingstonok, i'll give that a shot17:46
mmccok, so if you just make that .sh file executable then people can double-click on it. I thought you had to use the .command suffix, but the help says you don't17:46
chaselivingstonmmcc: so how do i make it executable17:47
mmccchmod +x mac-logs.sh17:47
chaselivingstonok cool17:47
mmccbtw, you might not have any crash reports in /Library/Logs/DiagnosticReports for the daemon (actually I'd like tos ee them if you do)17:48
chaselivingstonthat file path you sent for the daemon logs isn't working, not sure how to grab individual files, although i do see them in there17:48
chaselivingstonand running chmod +x mac-logs.sh doesn't seem to do anything...17:50
mmcchrm17:50
mmccso, 'ls -l /Library/Logs/DiagnosticReports/com.ubuntu.* ' shows files ?17:50
chaselivingstonyes17:50
mmccchmod is quiet if it worked, btw. check ls -l mac-logs.sh to see if there's an 'x' in the permissions string17:51
mmcclike this: -rwxr-xr-x   1 mmccrack  staff   8.7K Aug 29 13:36 setup.py (the permissions are at the beginning)17:51
chaselivingstonyes, there is17:51
mmccok, so it's executable. try double-clicking it17:51
chaselivingstonit just opens in xcode17:51
mmccer, ugh17:52
chaselivingston(or dashcode, maybe)17:52
mmccwhat happens if you rename it mac-logs.command17:52
mmccand doubleclick that17:52
chaselivingstonone sec...17:52
chaselivingstonthat works17:53
chaselivingstonmmcc: now i just need to figure out how to grab those other crash reports17:54
dobeywtf, there are 7 of the not so great orange u1 windows icon on my panel now, while running the tests on quantal17:56
chaselivingstonmmcc: i can get the entire DiagnosticReports directory, but not those individual files17:56
mmccchaselivingston: what command are you using, verbatim? This just worked for me:  zip -r ~/Desktop/logs.zip ~/Library/Caches/ubuntuone/log/ /Library/Logs/DiagnosticReports/com.ubuntu.one.fsevents*17:57
dobeythankfully they've all gone away17:57
dobeyhrmm17:58
chaselivingstonmmcc: hm, worked that time w/ what you sent17:58
chaselivingstondon't think i had fsevents on there previously17:58
dobeywhee, and pylint is leaking like crazy17:58
chaselivingstonmmcc: just pushed the latest revision17:59
dobey400M RES so far17:59
mmccchaselivingston: ok…  com.ubuntu.one* will match all the files that com.ubuntu.one.fsevents* does, but as long as it works17:59
dobeyi'm surprised pylint doesn't get OOMed on tarmac17:59
chaselivingstonmmcc: yeah, well there we go. we'll probably add an faq about that once the beta goes public18:00
chaselivingstonthat way people can easily attach logs to bug reports18:00
mmccchaselivingston: yeah, helpful. thanks!18:01
chaselivingstonmmcc: np18:01
mmccchaselivingston: btw, you might also want to know about the shortcut "Control-Option-Command-Shift-Period". it runs 'sysdiagnose' -  https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/sysdiagnose.1.html18:01
chaselivingstonmmcc: interesting, i'll take a look, thanks18:02
mmccthat's kind of a last resort, but if you suspect something's weird with their system, that gives you all kinds of info, including apps installed, OS version, running apps, etc etc18:02
chaselivingstonok great18:02
mmcckind of intrusive though, so not usually something I'd ask for. just worth knowing about18:03
chaselivingstonmmcc: right18:04
dobeyweird, the tests passed for me on quantal :(18:13
chaselivingstonmmcc: fyi, http://people.canonical.com/~chaselivingston/scripts/mac-logs.dmg18:26
mmccchaselivingston: thanks18:26
mmccHere's one for a blog post: unicode test path in our control-panel tests was crashing the fsevents daemon!18:30
chaselivingstonmmcc: is there a command to quit terminal after that process has run?18:31
mmccchaselivingston: I don't think so. You wouldn't want it to quit if there were other windows open, for instance18:31
ralsinammcc: uh?18:31
chaselivingstonmmcc: ok gotcha18:32
ralsinammcc: Oh, I get it! AMAZING :-)18:32
mmccralsina: it's great! I was getting a lot of daemon crashes and wondering why no one else was…18:32
ralsinammcc: that's becaue you are the only one running the crazy filename tests with the daemon running :-)18:32
mmccwas also wondering why I got a ton of crashes on monday afternoon and none over the weekend… :) I even left Spotify on over night thinking that might be it18:33
ralsinammcc: so yes, that's totally blog-worthy18:33
mmccadded a bunch of debug dumps and figured it out just now when I started running the tests again. Hooray for having a clue!18:33
mmccanother funny twist, the 'mdworker' system process that does indexing for spotlight also complains about the path that was crashing our daemon…18:47
gatoxralsina, could you review this one: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ubuntuone-client-fix-tests/+merge/127836 ?18:50
ralsinagatox: por supus18:50
gatoxralsina, thx18:50
ralsinammcc: hey, a corner case! ;-)18:51
mmccralsina: well, this is interesting. it's in test_folders.py where we add '\xe7\xa7' to a file name before opening it and writing to it… I'm not clear on what that's testing, and if it's something that'll actually happen18:56
mmccie, I can just ignore the event if it has an invalid filename, but we shouldn't if that happens in real life18:57
ralsinammcc: I *think* we are testing invalid unicode18:57
ralsinammcc: which yes, should not happen IRL but does because people have ancient files from dubius zip files and such18:57
mmccbtw, I recreated that test and crashed the daemon again, but it did create a file - it shows in the finder as %XE7%XA718:58
mmccthe place where it causes problems in the daemon, it's expecting a utf-8 filepath from the fsevents device and it can't translate it18:59
mmcchmm19:00
dobeymmcc: what test is this?19:00
ralsinammcc: yes, that's a "invali utf8 filename"19:00
ralsinammcc: so it's a real bug in the daemon19:00
mmccdobey: class CalculateSizeWithInvalidPath(CalculateSizeTestCase): in test_folders.py in controlpanel19:00
ralsinammcc: since it seems fsevents sometimes passes things that are *not* utf-8 paths19:00
dobeymmcc: what's the full string for the path that's failing?19:01
mmccyeah, it's a real bug for sure.19:01
mmccdobey: if you open("\xe7\xa7", 'wb') from the python console, it'll poke this . but it's not failing the test, it's causing a failure in the daemon19:02
mmccthe tests are fine :)19:02
karniHey guys, does our Windows client need to replace some file system unsafe characters when downloading files form U1? (Say, someone has FAT or VFAT partition)19:03
ralsinakarni: yes19:03
karniOr do we assume any sensible person has NTFS?19:03
ralsinakarni: lots and lots of them19:03
karniralsina: oh, tell me more!19:03
ralsinakarni: on windows, even on NTFS there are invalid characters19:03
ralsinakarni: that includes * ? : and others19:04
karniralsina: http://en.wikipedia.org/wiki/Filename says / and null only o_O19:04
ralsinakarni: mandel is the expert in the fiel19:04
ralsinad19:04
karnimandel: still around?19:04
ralsinakarni: invalid for the filesystem and invalid for the OS are different things :-)19:04
karniah "forbids the use of characters in range 1-31 (0x01-0x1F) and characters " * : < > ? \ / | unless the name is flagged as being in the Posix namespace. "19:05
ralsinakarni: for example, you can't create a file called AUX.SVG IIRC19:05
karniright19:05
karniI've read that up, yes.19:05
karniralsina: Maybe you'll be able to answer the following question for me:19:05
ralsinakarni: I will try!19:06
karniif we download a file, say we replace those unsafe characters with _. we may cache the resource path it came from, but what if the user reinstalls U1. do we upload those files back to U1 with underscores?19:06
ralsinakarni: yes because we have no way to know19:06
karniso that foo* and (reuploaded foo=)foo_ will appear along in U1?19:06
karnifuck..19:06
karniralsina: That answers my question, thank you!19:07
ralsinakarni: if we tried to be that smart, then we fail in the opposite way19:07
karniralsina: That's what I thought :(19:07
dobeymmcc: was that the full path? i'm just asking because the \xe7\xa7 seems a bit familiar19:07
ralsinakarni: basically, we are losing information, we can't just create it when it moves the other way19:07
karniralsina: Exactly. As simple (and sad) as that.19:07
ralsinakarni: same thing about upper/lower case :-(19:07
karniralsina: Yeah :/ what do we do with that on VAT? Say, user as foo and FOO in U1. What syncs down?19:08
mmccdobey, no the full path was /my-path/to/_trial_temp/not-existing-dir/\xe7\xa719:08
ralsinakarni: sorry for foul language, but basically, shit happens19:08
karniralsina: omg :<19:08
ralsinakarni: we got a report of foo vs Foo today19:08
karniFAT, go away!19:08
ralsinakarni: the user ended with both on ubuntu19:08
ralsinaand only one on windows19:08
karniralsina: Right...19:08
ralsinaI am scaredd to ask what happened to the files inside the folder19:09
karniralsina: Did he/she say what they expected (knowing the limitation) ?19:09
ralsinakarni: AFAIK "magic"19:09
karnibesides having foo and FOO appear on Windows (which they can't)19:09
karni:/19:09
ralsinakarni: I mentioned the problem with case sensitivity, no response yet19:09
karniralsina: I feel like you feel my pain. Thank you for sharing that, it's easier for me that way ;<19:09
dobeyah ok19:10
ralsinakarni: np19:10
ralsinakarni: buy mandel a beer in the sprint, he has stories19:10
karniralsina: btw. if foo and FOO are in U1, and, say, foo gets downloaded, then FOO gets downloaded (overwriting locally foo), foo (having FOO content) will overwrite foo when reuploaded to U1 o_O?!19:10
karniralsina: totally19:10
ralsinakarni: probably19:11
karnioh shit19:11
ralsinakarni: or maybe it will get even more confused and delete everything. Dunno.19:11
ralsinakarni: wanna try? ;-)19:11
karniralsina: hahaha19:11
karniralsina: I.. I don't think I have windows :|19:11
karniralsina: Anyways, thank you for confirming these issues.19:12
ralsinakarni: chicken! ;-)19:12
karniLOL :D19:12
ralsinakarni: as a punishment https://answers.launchpad.net/ubuntu/+source/ubuntuone-client/+question/21027019:12
ralsinayou need to rename it "u1-files-which-doesn't-sync-your-changes-to-the-server.apk"19:13
karniralsina: f!@# I WILL!19:14
karnichaselivingston: ↑ Shall I write a FAQ for you to add to our FAQ's page?19:14
karniralsina: FWIW there's a community person working with me to get things spinning around real sync in U1F.19:14
chaselivingstonkarni: yeah, you could do that, not a bad idea19:14
dobeyah windows19:15
karniralsina: But GOD we never EVER said it does SYNC.19:15
karniI should review Android market description, this smells.19:15
dobeykarni: but it's files! they should obviously sync!19:15
karnidobey: it's an expectation from desktop U1, yes19:16
karnidobey: FWIW I wanted to implement it long ago. There are just priorities I have to follow.19:16
dobeykarni: does dropbox on android automatically push changes back to the server too? or box.net? or any of the others?19:16
dobeykarni: sorry if you couldn't detect the sarcasm in my voice over text. clearly some information was lost. ;)19:17
karnidobey: only if you open that file for edition from within the app itself, which I found plain stupid (read, limiting)19:17
karnidobey: :D19:17
chaselivingstondobey, karni; would be pretty cool if we were the first to implement syncing like this well19:17
karnidobey: I never wanted to deliver sync solution to U1F that is half baked. I would hate that.19:17
karnichaselivingston: We have some work done already, we're in good direction.19:18
dobeykarni: yes, i agree19:18
chaselivingstonkarni: good to know19:18
karniif a file appears or is changed, in the background, not even touching U1F, U1F should still detect it.19:18
dobeybut i also don't use android :)19:18
karniAnyways, gotta talk to Chad about (V)FAT.19:18
karnidobey: hehe19:18
mmccSo I have a problem - if I can't represent a file path in utf-8 then I can't really send it to syncdaemon in JSON…19:23
dobeymmcc: right; but you can log/ignore it19:24
mmccdobey: which means that the path won't get synced. How does syncdaemon handle invalid paths in its scan code? maybe I can send a fake dropped event19:25
ralsinammcc: yes you can, json can encoe arbitrary bytes19:27
mmccralsina: well, it'd take a bunch of reworking of the json writing code in this library we're using…19:28
mmccit just blindly writes everything out as utf819:28
dobeymmcc: we don't sync them afaik19:28
ralsinammcc: I take that back, json can't19:28
ralsinasheesh19:28
ralsinaeverything breaks19:29
ralsinammcc: I suppose we could just ignore all events regarding invalid filenames19:29
ralsinammcc: they are, by definition, a broken corner case19:29
mmccralsina: I think that's the way to go for now, yes19:29
ralsinain the future we could base64-encode the bytes paths (ugh)19:30
mmccbtw, dropbox silently ignores a file with invalid filenames...19:30
mmccer, with an invalid name19:30
ralsinayes, you are not able to create those except by writing a program19:30
ralsina(or unzipping ancient media)19:31
dobeyi say just log invalid filenames, and ignore them19:31
dobeyif it's not utf-8, it's not acceptable19:31
mmccsounds good to me19:31
ralsinadobey: we do support them on linux, IIRC19:32
ralsinadobey: since we don't need to push them through IPC19:32
dobey2012-10-03 15:34:24,101 - ubuntuone.SyncDaemon.InteractionInterfaces - DEBUG - handle_FS_INVALID_NAME: args (<ubuntuone.syncdaemon.interaction_interfaces.SyncdaemonEventListener object at 0x9ffc7cc>,), kwargs {'dirname': u'/home/dobey/Ubuntu One', 'filename': '\xe7\xa7'}.19:34
dobeyno we don't :)19:35
ralsinahaha19:36
ralsinaok, so we just need to fail a bit earlier here19:36
dobeyhuh19:36
dobeyone.ubuntu.com requires 2-factor now? :(19:36
ralsinadobey: just for us19:36
ralsinadobey: because they love us and want us to feel safe19:37
ralsinadobey: and no, we can't make it go away19:37
ralsinanot without quitting canonical, at least19:37
briancurtinoooh a python crash19:45
dobeyoi, this weather is tiring20:00
karnimandel: karni chat you with, tomorrow | Joda style20:08
mmccralsina: I have a qt question. my test from yesterday was failing because my code was subtly broken :) So I'm trying to get the test going again, and I want to know if I can find out, for a given qaction, what is connected to its triggered signal ?20:10
ralsinammcc: hmmm no20:10
ralsinammcc: not in an obvious and reasonable manner, AFAIK20:11
ralsinammcc: gatox? second opinion? ^20:11
ralsinammcc: to test those things we usually use fake QActions20:11
mmccoh wait, I think that's a dumb question. I need to know if it's connected to a particular function, which I can patch :\20:11
ralsinaor trigger it and see if it calls it20:12
gatoxmmcc, ralsina, not in this qt version....... it seems is going to be possible in the next one20:12
ralsinagatox: I am getting the vibe of "of course Qt 5 has ponies for everyone!"20:12
mmccoh, no, that's no good either. this test will be pointless. I'm just going to leave it off20:12
gatoxralsina, yes :'D jeje20:12
dobeysigh20:13
mmccthe test went from "check if the action I want is in the main menubar" to "check if the action my function returns has the right signal set", which is not the point20:14
ralsinammcc: right, those are very different things20:19
ralsinammcc: I would do both tests, maybe20:19
ralsinammcc: one to see if the action is there, and one to see it's connected correctly20:19
mmccralsina: I don't think I *can* test that it's in the main menu. I can't see how to get a ref to the main menubar - I can *create* a new main menu by creating one with no parent, but I don't know how to get a ref to the currently displayed main menubar20:21
ralsinammcc: did you try the findChildren() I mentioned yesterday?20:21
ralsinammcc: window.menubar() gives it to you IIRC :-)20:21
mmccwell, to make things more fun, when it does its magic that moves the action into the app menu from wherever you have it, it appears to create a new QAction and does not copy the objectName20:22
ralsinamake that menuBar20:22
ralsinaoh, screw it then20:22
mmccand window.menubar() shouldn't work, because we've explicitly created one with no parent window, so it's still around after the window goes away...20:22
mmccI know, right/20:22
mmcc?20:22
ralsinammcc: you would have to keep a reference to it somewhere20:23
ralsinammcc: maybe in a member of the tray icon's object20:23
ralsinammcc: but yikes20:23
mmccralsina: yeah, that was the problem I was having yesterday. I'm just keeping it alive in main20:24
ralsinayes but that means you can't reach it from the tests, right?20:24
mmccwell, you can, because I have a function that's returning the new parentless menubar, and I'm just saving its return value in main20:25
ralsinaok20:25
mmccthe mp is here : https://code.launchpad.net/~mikemc/ubuntuone-control-panel/catch-quit/+merge/12760520:25
mmccjust pushed that update20:25
ralsinammcc: ok, waiting for the diff to catchup20:26
gatoxeod here....... see you tomorrow people........ time to rest for gatox20:27
mmccralsina - cool. I'm open to suggestions for moving that code around, btw.20:27
ralsinabye gatox20:27
gatoxralsina, bye20:27
mmccbye gatox, see you tomorrow20:27
ralsinammcc: we can do tests for install_platform_event_handlers itself20:28
ralsinammcc: so I would do a test that checks that the menubar has an action in it with the right shortcut20:28
ralsinammcc: and one that checks it triggers the right thing20:28
mmccralsina: those are the tests I was just complaining about…20:28
ralsinammcc: so, for the first, maybe findChildren could work, since you have the original menubar20:29
ralsinammcc: and for the second, I would patch QAction to be a fake action20:29
mmccoh, I see, just test the returned menubar, and trust that it is actually in the right place20:29
ralsinammcc: exactly, trust magic to do its work20:29
ralsinaso it's not perfect coverage but it's *some* coverage20:29
ralsinaalso, you could run start and then generate a cmd-q and see what happens ;-)20:30
mmccok, going back through my undo history…20:30
ralsinavia QApplication.event()20:30
mmccso, menubar.findChild(QtGui.QAction, "objname") should find a QAction that I called .setObjectName("objname") on, right?20:32
ralsinammcc: yesss20:33
* ralsina has never used that20:34
mmccnope20:34
ralsinammcc: you could just do menubar.the_action = QAction(foo) and find it that way20:35
ralsinammcc: although that quickly approaches the "useless test" line20:35
mmccit's really doing something weird behind my back here. I am setting a name on both the qaction and the menu that I add to the menubar, then returning the menubar.20:36
ralsinammcc: do you set the parent of the action to be the menubar?20:36
ralsinammcc: just in case20:36
mmccinteresting :)20:36
ralsinaI would expect it to reparent, but maybe it doesn't20:36
mmccI have been setting the parent of the action to be the app20:36
ralsinahaha!20:37
mmccbut I don't have a good reason for that…20:37
ralsinammcc: welcome to impedance mismatch city, population Qt and garbage collectors ;-)20:37
mmccwhee20:38
ralsinayou can either try to find the qaction via the app, or check app.actions() or make the menubar the parent20:39
ralsinaone or more of the three should work*20:40
ralsina(* maybe none works)20:40
mmccmaking the menubar the parent worked.20:44
mmccso I can test the function but I can't test the magic.20:45
joshuahooverralsina: any ideas on this error from a q user? http://paste.ubuntu.com/1258871/20:45
mmccjoshuahoover: I recognize that, it was fixed recently20:45
joshuahoovermmcc: oh yeah?20:45
mmccjoshuahoover: well, probably. I'm looking again20:46
joshuahoovermmcc: i noticed we just landed a new u1-client package so it's possible it's fixed there20:47
dobeyjoshuahoover: it's fixed. but installing gir1.2-syncmenu-0.1 will also resolve it20:47
ralsinajoshuahoover: looking20:47
ralsinajoshuahoover: yes, fixed in today's package20:48
joshuahooverdobey, ralsina, mmcc: thanks guys :)20:48
mmccok ralsina, I pushed a test that checks the triggered function on the qaction. I don't think I can test the key shortcut, as that's part of the magic. note that I don't set a key shortcut on the action myself20:55
ralsina1st EOD for me. Will be back for a quick check tonight, if anyone needs reviews just say it here :-)20:55
ralsinammcc: looking20:55
ralsinahad not noticed that the shortcut was magical :-/20:56
mmccyep20:56
ralsinaI am tempted to say 'why' but will not20:56
ralsinammcc: just to make me happy, what happens if you create the menubar and put no action there?20:57
mmccyou mean, what happens to the test?20:57
ralsinammcc: IRL, does it work?20:57
mmccor what happens to the app when you run it?20:57
ralsinabecause I don't see how this action gets triggered IRL, so I am thinking qt is adding a second one20:57
mmccif I create a menubar but don't add anything to it? let's see…20:57
mmccyes, I think Qt always creates its own set of QActions for the 'required' menu items, and if you have versions it 'moves' them by just copying their connections…20:58
mmccbut I'm not 100% sure20:58
ralsinammcc: because the problem here may be something else and you are fixing it by keeping the menubar reference20:59
mmccnot sure I understand, what problem am I fixing?21:00
ralsinammcc: the cmd-q21:00
ralsina"the cmd-q not closing things correctly" problem21:01
mmccSo, at the bottom of all this, there's an actual NSApplication running, which loads a menu from an actual .nib file, and those are things I understand - there will always be a menu with a quit menu item because it's there in the nib that the NSApplication class loads… The issue is what Qt decides to hook up to the signals it gets from that item21:01
ralsinaright21:02
ralsinaI don't see how it goes from "this action says quit" to "let's connect the action's callback to this item in the menu"21:03
ralsinaso I am guessing that maybe the problem is something else and it's being avoided as a side effect of creating our own QMenuBar and/or keeping a reference to it21:03
ralsinain which case we would not need to add the QAction to it21:03
ralsinaand less code == less things that can break21:04
mmccwell, the docs say that it's doing a merging step on the menus in the outermost menu bar, it matches 'quit' or 'exit' and "moves" that action to the default menu placement for os x21:04
mmcchttp://doc-snapshot.qt-project.org/4.8/qmenubar.html#qmenubar-on-mac-os-x21:04
ralsinaok then, that's how it works :-)21:04
ralsinaso, good, I'll do the review and have it ready before your AM21:05
mmccsounds good, thanks :)21:06
* mmcc was looking at qt code to see where exactly it does that21:07
ralsinaalso explains why we could never find stuff with findChild before, because it's moved21:07
dobeywhat happened to gatox?21:07
ralsinadobey: he EODed21:07
dobeyright, i figured as much now; but last i saw of him was "i'll go back to poking on mac where those tests fail for me"21:08
ralsinadobey: he also had a headache21:09
dobeyanyway, i don't know why those tests failed in tarmac on quantal; i tried on my laptop and updated the tarmac instance and tried again, and they worked, so tried the branch merging again with tarmac, and it merged fine :-/21:10
ralsinadobey: they always worked on precise, too21:10
dobeyi do wonder what happened with mandel though. he said he was about to propose a branch to fix the SSO tests, and then went EOD21:11
ralsinadobey: probably ran out of time21:11
dobeyralsina: right, but precise doesn't have the new qt, which seems to be an annoying point21:11
ralsinano branches pushed for sso from mandel today21:11
dobeythough i don't know what version of qt we're using on mac21:12
dobeyyeah, i looked at that already :)21:12
ralsinadobey: 4.8.1 last I checked but mmcc knows better21:12
mmccyes, 4.8.121:12
dobeyah ok21:13
dobeythen definitely not qt changes causing those failures21:13
ralsinasame as in precise, too. Maybe a patch in the Q package?21:13
mmccwell, that's what I'm using. there's nothing in the buildout that enforces the qt version… but that's only on macos21:13
mmccI'm not sure I follow the context here, but fyi it's possible that gatox has a new Qt on his mac…21:14
dobeythat could be too21:14
mmccsince he just installed stuff this week21:15
ralsinayes, I have old stuff21:15
ralsinawe could lock 4.8.1 so we stay in the same version as Precise, though21:15
ralsinales moving parts21:15
dobeyralsina: could be a patch in the q version, but i doubt it. could be an issue in 4.8.3; or could be another issue21:15
ralsinafewer21:15
dobeyi suspect another issue for the cp tests at this point21:15
dobeythe SSO proxy tests issue is definitely qt21:16
=== m_conley is now known as m_conley_away
ralsinadobey: agreed21:16
ralsinanow, really taking a break21:17
ralsinasee you later/tomorrow21:17
dobeycheers ralsina21:17
mmccI'm just going to leave this here:     [newItem setTag:long(static_cast<QAction *>(action->action))];21:19
mmccthat's Qt abusing an integer ID field in an NSMenuItem object to store a pointer to a QAction21:21
dobeyah well, have a good evening all21:38
briancurtinwell, there goes another day of excellent fun in debugging22:08

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