[09:54] <mpt> Where do I report bugs in the U1 music store?
[09:54] <mpt> oh, https://bugs.launchpad.net/ubuntuone-music-store
[11:11] <gatox> good morning!
[11:49] <alecu> good morning!
[11:51] <gatox> alecu, good morning to you sir!
[11:53] <gatox> alecu, i have a branch stuck in approved since yesterday.... it has a commit message, and i didn't see any reason why it doesn't land...... but it's stuck there....
[12:04] <alecu> gatox: I'm sure you've already tried putting it as "needs review" and back to "Approved", right?
[12:05] <gatox> alecu, no..... i didn't know that trick..... trying...
[12:49] <ralsina> good late morning!
[13:46] <mmcc> good morning everyone.
[13:46] <gatox> brb
[13:50] <ralsina> morning mmcc!
[13:53] <gatox> back
[14:37] <mmcc> Any opinions on the version number for the mac app? For test builds, should we have some per-build number, or include the date in it somewhere? There's both a numerical version number and a localizable string that we can put things like "build 20120808-12" into
[14:38] <gatox> back..... i'm having some issues with my internet connection
[14:45] <ralsina> either tests are getting slower every day or I am getting more impatient every time I run them
[14:45] <ralsina> mmcc: is there a separate version and build number?
[14:47] <ralsina> mmcc: trunk is supposed to be 3.99.x but something like a date is a better idea at this moment
[14:48] <gatox> ralsina, i don't know which one it is.... but i'm having the same problem
[14:49] <ralsina> gatox: it seems to happen every few months, then someone wastes a week making them go fast again
[14:51] <mmcc> sorry, had to step away for a sec.
[14:52] <mmcc> ralsina: there's a version number that has to be period-separated digits, then a "version string" that shows up in finder's get info box, that can be anything - convention is that it includes the version number
[14:53] <mmcc> I just now made it throw the contents of revnos.txt into that version string, so it looks like this: "3.0.0 (ubuntu-sso-client: 988, ubuntuone-client: 1289, ubuntuone-control-panel: 343, ubuntuone-storage-protocol: 159)"
[14:54] <mmcc> A little messy for distribution but seems handy for testing
[14:59] <gatox> ralsina, do you know how to run specific qt tests for u1-cp?? i forgot something..... or something change.... i'm trying to do: u1trial --reactor=qt4 path/to/test.py
[15:02] <briancurtin> me
[15:02] <alecu> me
[15:02] <gatox> me
[15:04] <ralsina> me
[15:04] <ralsina> thisfred, mmcc: say me
[15:04] <mmcc> me
[15:04] <thisfred> ni
[15:04] <ralsina> gatox: --gui ?
[15:04] <gatox> ralsina, don't know.... will try
[15:05] <mmcc> ralsina, gatox it's both - --gui and --reactor=qt4
[15:05] <briancurtin> DONE: installer upgrade testing, 1-1, installer sent for testing
[15:05] <briancurtin> TODO: metaclass/next porting, 2to3 runs to see what else is left
[15:05] <briancurtin> NEXT: alecu
[15:05] <gatox> mmmm it's failing with boths.....
[15:06] <alecu> DONE: reviews, finished a branch for bug #1031197, needing reviews itself
[15:06] <alecu> TODO: more tests of the ported protobuf with python3, catch up with py3k and briancurtin
[15:06] <alecu> BLOCKED: no
[15:06] <alecu> NOTE: I'm taking off this friday
[15:06] <alecu> NEXT: gatox
[15:06] <ubot5`> Launchpad bug 1031197 in ubuntuone-client (Ubuntu) "DownloadFinished signal triggers when file has not yet completed writing" [Undecided,Confirmed] https://launchpad.net/bugs/1031197
[15:06] <ralsina> gatox: I'll help you after the standup
[15:06] <gatox> DONE:
[15:06] <gatox> Propose u1-client branches for sync menu (need reviews on this one: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ipcmenu/+merge/118621)
[15:06] <gatox> TODO:
[15:06] <gatox> Keep working on u1-cp implementation.
[15:06] <gatox> BLOCKED:
[15:06] <gatox> No
[15:06] <gatox> ralsina, go
[15:06] <ralsina> DONE: calls calls calls (to the tune of Motley Crue's girls girls girls) reviews, some bug triaging, finished contract wrangling (twisted port on the way!)  TODO: fix a bug or two, reviews BLOCKED: no NEXT mmcc
[15:06] <gatox> TODO: 1-1 with ralsina
[15:06] <mmcc> DONE: cert loc code, reviews, looking at filemonitor bug
[15:06] <mmcc> TODO: package for test builds, bug filing
[15:06] <mmcc> BLCK: none
[15:06] <mmcc> NEXT: thisfred
[15:06] <thisfred> DONE: cosas conflict resolution TODO: same BLOCKED: 1/2 (API decisions need to be made that I don't feel comfortable making all by myself, but I can continue on other aspects)
[15:07] <alecu> ralsina: "(twisted port on the way!)" yay!
[15:07] <ralsina> thisfred: happy to give biased unfounded opinions on API matters
[15:07] <thisfred> ralsina, in that case see the backlog in the internal u1db channel ;)
[15:08] <ralsina> thisfred: will do
[15:08] <ralsina> thisfred: it's LONG though
[15:09] <thisfred> yep :)
[15:11] <alecu> mmcc: did you find anything in the filemonitor bug?
[15:12] <mmcc> alecu, well, I noticed that if you kill and restart syncdaemon, the files get uploaded. Still looking at what might be going wrong. I am suspicious of the RPC errors about on_upload_finished.
[15:12] <ralsina> thisfred: the idea of the extra argument in query calls feels natural, but it also feels strange in that, when would the user *not* want to know of conflicts?
[15:13] <ralsina> thisfred: although I am probably misunderstanding because I read it quickly
[15:13] <gatox> can anyone try this on u1-cp: u1trial --gui ubuntuone/controlpanel/gui/qt/tests/test_filesyncstatus.py ??? and tell me if that works for you?
[15:13] <gatox> i'm probably doing something wrong.... but i don't know what
[15:13] <gatox> i thought that should work
[15:14] <ralsina> gatox: --gui without reactor is not going to wrk for qt tests
[15:14] <gatox> ohhhhhhh long time without using both!!!!
[15:14] <gatox> ralsina, thx!!!
[15:15] <gatox> that's why you are the manager!!!! \o/ jeje
[15:15] <ralsina> gatox: jeje
[15:15] <ralsina> gatox: besides, alecu already told you that a ew minutes ago ;-)
[15:16] <gatox> oh.... totally miss that meesage.... sorry alecu
[15:16] <ralsina> Any pending reviews?
[15:16] <gatox> ralsina, yes please
[15:16] <thisfred> ralsina, right. Problem is we can't do the extra argument, because the queries have a *arg parameter
[15:16] <gatox> ralsina, this one: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ipcmenu/+merge/118621
[15:16] <thisfred> which means no keyword args allowed
[15:16] <ralsina> thisfred: ugh
[15:17] <ralsina> thisfred: ok, no good suggestions then
[15:17] <alecu> gatox: ralsina, it was mmcc that said it, not me :-)
[15:17] <thisfred> ralsina, discussing with aq now, but I think we're steering towards just always including the information on whether there are conflicts
[15:17] <gatox> sorry mmcc then :P
[15:17] <ralsina> thisfred: that makes more sense
[15:17] <ralsina> thisfred: like I said, why would the caller not want to know that? :-)
[15:18] <alecu> mmcc: hmmm... if sd finds the files after being restarted, it sounds like some events were missed the first time.
[15:18]  * gatox lunch
[15:18] <mmcc> gatox :) no prob
[15:18] <ralsina> alecu, mmcc: could be that argument error is making it drop some events?
[15:18] <thisfred> ralsina, I agree. The only reason it might not want to know if the app never syncs. Then why use u1db ;)
[15:19] <ralsina> thisfred: and willful ignorance is easy to achieve, just ignore the data ;-)
[15:19] <alecu> mmcc: that happesn because after the restart sd has a chance to rescan the filesystem.
[15:19] <thisfred> and it's easy to ignore, you'd just pay a tiny performance price
[15:19] <thisfred> right
[15:19] <mmcc> alecu: on the first run,  it sees the file create, it generates a MakeFile, but no corresponding Upload log entry ever shows up.
[15:19] <alecu> ralsina: which "argument error" ?
[15:19] <mmcc> alecu, right- the restarted daemon sees the files in the local rescan
[15:20] <alecu> mmcc: oh, ok. Were you able to reproduce that consistently?
[15:20] <ralsina> alecu: the "requires 2 arguments, received 3" ior something, it was in mmcc's log
[15:20] <ralsina> alecu: it was on on_upload_finished, IIRC
[15:20]  * alecu needs fosfovita
[15:20] <mmcc> alecu, ralsina: 2012-08-07 12:12:46,689 - ubuntuone.SyncDaemon.Pb - WARNING - Could not emit signal 'on_upload_finished' to <twisted.spread.pb.RemoteReference instance at 0x10512ad40> due to 'on_upload_finished() takes exactly 2 arguments (3 given)'
[15:21] <ralsina> OMG *my* fosfovita worked :-)
[15:21] <ralsina> translation: fosfovita is a minerals/vitamins pill that claims to improve memory because it has phosphorus
[15:21]  * ralsina would rather lick a matchbox
[15:22] <mmcc> mmmmmm phosphorus
[15:22] <alecu> ralsina: remember to lick the matches, not the box!
[15:22] <ralsina> alecu: all the phosphorus on safety matches is in the box :-)
[15:22] <ralsina> alecu: that's why you can't light them in your boot like a cowboy
[15:23] <alecu> ralsina: then why do we still call them "fósforos" ?
[15:23] <ralsina> alecu: tradition
[15:23]  * alecu tries licking a lighter
[15:23] <ralsina> alecu: and because "little sticks with some thing that burns on the tip but is not phosphorus" is not marketable
[15:24] <mmcc> ralsina: you've heard of "I can't believe it's not butter," right?
[15:24] <ralsina> mmcc: I even tried it!
[15:24] <ralsina> mmcc: I totally believed it!
[15:24] <alecu> mmcc: I don't think that error has anything to do with the missed events problem.
[15:25] <ralsina> mmcc: http://boingboing.net/2012/07/04/walmarts-i-cant-believe.html
[15:25] <mmcc> alecu - ok, so it just gets logged and ignored, and doesn't leave anything wedged?
[15:26] <ralsina> alecu: the other possibility that comes to mind is a semantic difference or out-of-order events
[15:26] <ralsina> alecu: which is scary
[15:26] <alecu> mmcc, ralsina: right
[15:27] <alecu> ralsina: remember that macfsevents does not get events for individual files, but for some changes in a folder
[15:27] <ralsina> alecu: then maybe there is a bug in the code to figure out the diff
[15:27] <alecu> ralsina: and it's synthezising (wow, that was hard) some events from the changes it sees.
[15:27] <ralsina> right
[15:28] <alecu> hmmm\
[15:29] <alecu> but, mmcc says that the event was received. And it's just the Upload that's missing....
[15:29] <mmcc> alecu - well, I'm not sure it's just the upload missing - I don't know what *should* be there. here's the log: https://pastebin.canonical.com/71687/
[15:29] <ralsina> if there is a makefile, and no upload, maybe it thinks it's still open
[15:30] <mmcc> I'm going to go log in to my u1 account in ubuntu and try the same thing and see what log messages I get so I know what's up
[15:30] <ralsina> and/or the nanny is preventing the upload
[15:30] <mmcc> ralsina: if the nanny was blocking it, would there be a log message? there's no 'nanny' string in the log paste
[15:30] <ralsina> mmcc: no
[15:33] <briancurtin> alecu: if you have a chance, would you mind running the tests on lp:~brian.curtin/ubuntu-sso-client/py3-unicode-part-3 to see what you get. this is that SyncTimestampChecker that is failing
[15:33] <mmcc> IIRC you guys did a sprint a while back with presentations on syncdaemon, right? are those presentations around anywhere for me to refer to?
[15:35] <alecu> mmcc, it was more like a workshop, and there were no slides, sorry.
[15:36] <mmcc> alecu: ok.
[15:36] <alecu> we should definitely record it next time
[15:36] <briancurtin> mmcc: i have the hand-written posters and diagrams if you want them, but like alecu said, it was more of a workshop. there was a lot of talk going along with reading code
[15:36] <mmcc> briancurtin: hand-written posters and diagrams sounds great, got to be better than nothing
[15:37] <briancurtin> mmcc: i'll see if i can take good pictures of them or something
[15:38] <mmcc> briancurtin: oh, I thought you already had pics :) ok, but take your time - and don't worry too much about quality
[16:17] <alecu> briancurtin: here, right? test_server_date_sends_nocache_headers
[16:17] <briancurtin> alecu: yep, that's the one
[16:17] <alecu> briancurtin: I get the same 500. I'll take a further look.
[16:18] <briancurtin> alecu: the odd thing is that i do what that test does in the interpreter just fine. i can also use urllib to hit that URL just fine. it only seems to fail when run in the test suite :/
[16:18] <alecu> briancurtin: what is the url?
[16:19] <ralsina> lunchtime
[16:19] <briancurtin> alecu: "http://one.ubuntu.com/api/time"
[16:20] <alecu> briancurtin: I think we should not be hitting that from the tests. We should be using a mock webserver if needed.
[16:20] <briancurtin> alecu: i don't disagree, but this should work. it works fine on trunk
[16:21] <alecu> briancurtin:         self.patch(SyncTimestampChecker, "SERVER_URL", self.ws.get_iri())
[16:21] <briancurtin> it also works if you just open up an interpreter, import that, and call get_server_time just fine
[16:21] <alecu> briancurtin: so, we are not using that url in the test, as it's being patched.
[16:22] <briancurtin> alecu: ah
[16:25] <alecu> briancurtin: one more thing: I *think* this code is not used anymore.
[16:26] <alecu> briancurtin: oauth_headers and the timestamp_checker module instance of SyncTimestampChecker
[16:27] <alecu> briancurtin: right. I think I forgot to get rid of the SyncTimestampChecker when it was no longer needed. I surely seem to have gotten rid of the AsyncTimestampChecker.
[16:28] <briancurtin> alecu: ah, well then that makes this easier. im doing a double check that we dont need it. i think you're right
[16:29] <alecu> briancurtin: I've done a quick grep in u1-client and u1cp and they are not used either.
[16:29] <briancurtin> alecu: cool
[16:30] <alecu> briancurtin: I think we should do a branch to delete both, and see if anything breaks. And if it breaks, it should be using the new webclient anyway.
[16:31] <briancurtin> alecu: i'll go that route and take SyncTimestampChecker out outside of the unicode branch
[16:46] <alecu> this netsplitting is just awesome.
[16:46] <alecu> briancurtin: don't know if this reached you:
 briancurtin: I think we should do a branch to delete both, and see if anything breaks. And if it breaks, it should be using the new webclient anyway.
 briancurtin: would you mind creating a bug for this and assigning it to me?
 briancurtin: you can skip those fixes in this branch. Thanks for finding it!
[16:47] <briancurtin> alecu: now i got it, and i'll create the bug shortly
[16:47] <alecu> thanks :-)
[16:48] <gatox> alecu, dobey is on vacation?
[16:49] <alecu> gatox: calendar says he returns tomorrow
[16:49] <alecu> hey! it's joshuahoover's birthday today!
[16:49] <gatox> alecu, ok..... usually he knows with the branches are not landing :P
[16:50] <alecu> gatox: we should probably ping sidnei about tarmac when dobey is not around
[16:53] <alecu> lunch time for me.
[17:32] <ralsina> gatox: 1-1?
[17:32] <gatox> ralsina, right!
[17:33] <gatox> mumble or irc?
[17:33] <ralsina> mumble
[17:33] <gatox> ralsina, ack
[17:39] <mmcc> ok, early lunch here. back in a bit
[18:08] <ralsina> mmcc, briancurtin, gatox, alecu: any reviews pending?
[18:09] <gatox> ralsina, nop
[18:09] <briancurtin> none at the moment
[18:09] <alecu> ralsina: https://code.launchpad.net/ubuntuone/+activereviews
[18:09] <gatox> ralsina, ahhhh yes, tihs one: https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ipcmenu/+merge/118621
[18:09] <ralsina> alecu: prefiero el human touch ;-)
[18:09] <gatox> ralsina, i thought you already approve it
[18:09] <alecu> ralsina: https://code.launchpad.net/~alecu/ubuntuone-client/fix-download-finished/+merge/118759
[18:09] <briancurtin> alecu: i created bug #1034528 for that SyncTimestampChecker. working on it right now
[18:09] <ubot5`> Launchpad bug 1034528 in Ubuntu Single Sign On Client "Remove SyncTimestampChecker" [Undecided,New] https://launchpad.net/bugs/1034528
[18:09] <ralsina> gatox: no, seen it but not reviewed it entirely yet
[18:10] <ralsina> alecu: got it
[18:10] <gatox> ralsina, ahh ok
[18:10] <alecu> briancurtin: ok, great. I can work on that if you want to keep going over the unicode branches.
[18:10] <ralsina> gatox: will +1 as soon as I run the tests
[18:10] <gatox> ralsina, ack
[18:10]  * alecu has just conflated py3 and unicode.
[18:11] <alecu> I wonder how much of that is true :P
[18:11] <briancurtin> alecu: it seems easy enough. i just started on it a few mins ago
[18:11] <alecu> briancurtin: great then.
[18:12] <ralsina> alecu: unicode in python2 is gatox, so you can conflate them only in some cases ;-)
[18:19] <ralsina> grrrr I have to check the assertIn argument order every time I run into it
[18:19] <ralsina> yes, it's arg1 in arg2 but then that reads "assertIn needle, haystack" which makes my eyes stumble
[18:28] <alecu> ralsina: I always remember that bit (thanks fosfovita), but I never type it right.
[18:29] <ralsina> gatox: +1
[18:30] <gatox> ralsina, thx
[18:31] <ralsina> alecu: have to love a 5-line patch with 55 lines of tests, right? :-)
[18:31] <alecu> lol
[18:32] <alecu> I had to refactor one of the tests, that's why :-)
[18:33] <alecu> and yes... 11:1 is too high. Usually it's 3:1 or 4:1
[18:35] <ralsina> at least the problem seems well contained :-)
[18:35] <ralsina> alecu: +1 ran tests only on linux though
[18:36] <alecu> thanks
[18:50] <mmcc> ralsina: I have another high test-to-code branch for you: https://code.launchpad.net/~mikemc/ubuntuone-storage-protocol/fix-1025950-cert-locs/+merge/118603
[18:50] <mmcc> (because there weren't tests before)
[18:50] <ralsina> mmcc: got it
[18:50] <ralsina> mmcc: he
[18:50] <ralsina> mmcc: storage protocol is mostly very old code before we got religion
[18:53] <gatox> ralsina, as some parts of u1-client.......
[18:54] <ralsina> gatox: on some parts of u1-client I expect to see *mold*
[18:54] <gatox> jeje
[19:06]  * mmcc just wrote "import tracebacon". 
[19:08] <beuno> mmcc, did it work?
[19:11] <alecu> it's just a whiff away
[19:16] <mmcc> sadly, no… it did not work.
[19:26] <briancurtin> alecu: so i'm looking at this SyncTimestampChecker removal...it doesn't look like TimestampChecker is intended to be used by itself, so it doesnt seem as easy as just replacing its use
[19:27] <briancurtin> unless im misunderstanding it
[19:27] <briancurtin> it looks like its consumed by BaseWebClient, but i dont think the places which used a timestamp checker want a BaseWebClient (or other web client)
[19:28] <mterry> Are U1 oauth credentials stored in my home directory?
[19:30] <mterry> Ah, in the keyring I bet
[19:33] <gatox> alecu, when you have a moment:  https://code.launchpad.net/~diegosarmentero/ubuntuone-control-panel/refactor-sync-status/+merge/118809  -  https://code.launchpad.net/~diegosarmentero/ubuntuone-client/ipcmenu/+merge/118621
[19:43] <alecu> hey all, ralsina has just smsd me: his house ran out of power
[19:43] <briancurtin> that sucks
[19:44] <gatox> :S
[19:45] <alecu> briancurtin: afaik SyncTimestampChecker is not used anymore.
[19:45] <alecu> briancurtin: only TimestampChecker is used nowadays.
[19:46] <briancurtin> alecu: there were a few things that seem to have been using SyncTimestampChecker this whole time. they were getting it from utils.timestamp_checker, which pointed to an instance of SyncTimestampChcker
[19:54] <alecu> briancurtin: I can't find any usage of that timestamp_checker other than the tests for it
[19:54] <alecu> briancurtin: in ussoc, in u1c nor in u1cp
[19:54] <alecu> and u1sp
[19:55] <alecu> briancurtin: in which module did you find that usage?
[19:55] <briancurtin> alecu: maybe i'll post the branch in a minute. i removed STC and its tests, but things are still depending on utils.timestamp_checker
[19:55] <alecu> ack
[19:58] <briancurtin> alecu: i guess it's just line 207 in ubuntu_sso/utils/tests/test_common.py - it patches that utils.timestamp_checker (which would be SyncTimestampChecker)
[19:59] <briancurtin> alecu: and the oauth stuff in ubuntu_sso.utils then uses timestamp_checker, which is the SyncTimestampChecker
[20:01] <alecu> briancurtin: right. And that oauth_headers method is not used anymore either.
[20:02] <alecu> briancurtin: I rolled up both into the new webclient.
[20:02] <briancurtin> alecu: alright, i'll remove that then see what happens
[20:02] <alecu> briancurtin: previously every webclient user would check the timestamp and would sign oauth.
[20:03] <alecu> briancurtin: with the new one, this is done automatically by the webclient.
[20:04] <briancurtin> alecu: so i should then remove the entire SignWithCredentialsTestCase? because that was still using oauth_headers
[20:11] <alecu> briancurtin: it looks like it should be gone, yes.
[20:13] <briancurtin> alecu: ah there we go, i think it's good now
[20:13] <alecu> great
[20:14] <briancurtin> i guess that was easier than i thought...it seemed like a whole bunch of important stuff to just be ripping out
[20:16] <gatox> eod here!!! bye all!
[20:20] <ralsina> hello again, sorry, was out of power & internet
[20:28] <alecu> hello back there, boss.
[20:49] <briancurtin> alecu: when you have a minute: https://code.launchpad.net/~brian.curtin/ubuntu-sso-client/remove-SyncTimestampChecker/+merge/118826
[20:55] <alecu> briancurtin: looking
[20:57] <alecu> briancurtin: small needsfixing
[20:57] <alecu> briancurtin: we should also remove the unused imports
[21:00] <alecu> ok, EOD here.
[21:00] <alecu> cheers, all!
[21:12] <ralsina> bye alecu!
[21:22] <ralsina> EOD for me as well. bye!
[22:56] <mmcc> ok, I'm done for today. see you all tomorrow