[09:27] hello, is it possible to add this functionality to ubuntu one http://www.guidingtech.com/6757/create-share-screenshots-screencasts-simpleshare-box-net/ [10:16] morning! [11:30] mandel: ping? [11:31] ralsina: pong [11:31] buen dia! [11:31] Could I get a review for https://code.launchpad.net/~ralsina/ubuntuone-windows-installer/fix_800359/+merge/65703 ? [11:32] ralsina: claro! [11:32] gracias! [11:42] can someone tell me what for desktopcouch is used by U1? [11:42] and what it is? [11:43] I just uninstalled it after having it using 100% of cpu time (which equals to 1.5h battery time loose) [11:43] hrw: desktopcouch is a library build on top of couchdb that allows you to have a document base database that is synced over all your machines, atm it is used by the contacts (evolution contacts) and there is a copy of your notes [11:44] hrw: as more developers use it you will have your todo list, recepies, calendar etc... [11:44] and the weather applet too [11:45] teknico: is it? when was that added? [11:45] teknico: why the hell do we use desktopcouch for that?! [11:45] mandel, I heard that it uses desktopcouch at the london sprint, I don't know what for :-) [11:45] teknico: whoa! I had no idea [11:47] mandel: that's what everyone said at london [11:47] ralsina: hahaha [11:48] ralsina: question, the setButtonLayout is used so that the dialog does not have the crazy back button at the top on Windows Vista/7 right? [11:48] ralsina: in your merge proposal [11:48] mandel, it's not "we" (for some def of "we"), the weather applet is made by someone else [11:48] mandel: no, it's to ensure the order of the custom buttons and so on [11:48] the back button at the top you have to set the wizard to modern style or something [11:49] ralsina: ok, true, I forgot about that, is that set anywhere? [11:49] mandel: so no waste for me with uninstallation of that. no plans of keeping contacts on u1 [11:49] mandel: nope. Could be a trivial branch later [11:49] ralsina: ok, can we add a bug for that so we do not forget? [11:49] Gotta do school run. Will be back in 60 or so. [11:49] mandel: sure, assign to me [11:50] hrw: I suppose you wont have any issues, but take a look at the software that depends on it [11:50] teknico: I wonder why is desktopcouch used there at all… what do they sync? [11:51] mandel: indicator-weather (which do not work in xfce), evolution-couchdb (which is u1 only so no use here too) [11:51] mandel, as I said, no idea [11:51] hrw: then feel free to remove it, all the data you have in there is secured anyway [11:52] hrw: wait, the evo-contacts is used to provide the contacts you create shares in u1 with [11:52] hrw: so you might loose that, but I'm not 100% I've never worked in that part of the code [11:53] mandel: no problem for me. [11:53] hrw: ok then :) [11:56] ralsina: take a look at line 666 in the diff [11:56] mandel: whoa :-) [11:56] hehe [11:56] mandel: copied that from the sso-client tests [11:56] mandel: can't import it because tests are not installed [11:56] ralsina: are those safe to be there? [11:57] I dont remember, but I hope so, because if you copied them they are mine hehehe [11:57] why not? They are dummy values, aren't they? [11:57] :P [11:57] ralsina: lets say the are :) [11:57] mandel: well, I copied them from your code in bzr, so if they are yours, it's your fault ;-) [11:57] have a nice time guys [12:00] ralsina: hehe I'm sure they are fake or outdate, which is the same :) [12:01] morning all [12:04] ralsina: code looks good [12:04] ralsina: I'm going to walk the dog and will do a IRL to see how it looks and will give a _1 [12:04] +1 [12:06] good, I don't know what to do with a _1 :-) [12:08] ralsina: haha [12:09] * mandel walks dog [12:12] ralsina: ill be starting after standup today my landlord is around and checking my house [12:31] hello everyone! === clarita_ is now known as clarita [12:46] * mandel back [12:46] mandel: hey there. How is it going? [12:47] nessita: fine, updates the sdtool branch and added the script there for you to take a look [12:47] nessita: feel free to re-review, and the start method is nearly done, I'm thinking what is the best way to return the subprocess popen as a deferred so that the operation is asyn [12:48] mandel: what about bug #801734? it has more priority than sdtool [12:48] nessita: Bug 801734 on http://launchpad.net/bugs/801734 is private [12:50] nessita: I have also taken a look at that, is very interesting… I'm running sd on my machine to see if I can reproduce it [12:50] nessita: looks like it cannot find the path when performing a lstat and that brakes things in a terrible way [12:51] nessita: I also noticed that xdg is wrong, local internet files should not be used... [12:51] mandel: yeah, alecu mentioned that, it should be Temp === teknico is now known as teknico_away [12:52] mandel: so, I need you to please work on the Critical bug as top priority, before moving on with anything else. As soon as you have a diagnose, please let me know. [12:53] nessita: yes, should be very easy to solve… but I think that the best thing to do, rather than having that junk branch with that is too move it to platform… what do you think? [12:53] mandel: xdg? let's discuss that once syncdaemon is working on w :-) [12:54] ok [13:01] nessita: where did you find the sd logs on windows 7? [13:01] I'm having a hard time finding them [13:02] mandel: C:\Users\Test\AppData\Local\Temporary Internet Files\UbuntuOnelog [13:02] mandel: C:\Users\Test\AppData\Local\Temporary Internet Files\UbuntuOne\log [13:02] mandel: you need to cd to that in the cmd.exe, you will not be able to browse it [13:02] nessita: ok [13:06] * ralsina is back [13:06] morning nessita! [13:07] hi ralsina [13:07] ralsina, mandel: I missed a lot your reports last Friday [13:07] could you please send them before our stand up? [13:07] nessita: sorry, I felt really really bad.. will do [13:07] nessita: ouch, sorry. Basically, I worked on the branch you reviewed late friday [13:08] ralsina: I know, but is important that all of us know :-) [13:08] nessita: the good news are, I fixed the style tests so they actually run correctly on windows, so I should do better with that area [13:08] ralsina: nice [13:12] ralsina: did you notice you have a needs fixing in https://code.launchpad.net/~ralsina/ubuntuone-windows-installer/fix_800381/+merge/65502? [13:12] nessita: yes, but that branch has to be fixed to work with the sso one [13:13] nessita: and in fact, that's the wizard page we are not sure we really really want [13:16] nessita: report sent! (again, sorry, today will send it on time) [13:16] Hi nessita :) [13:16] ralsina: thanks!!! [13:17] hi karni, how is it going? [13:17] nessita: Could you remind me (I can't find it ;> ) what did the token look like when authenticating, "Ubuntu One @ host" ? or "UbuntuOne @ host" ? [13:17] nessita: Good thanks :) How are you? [13:18] karni: Ubuntu One @ something [13:18] nessita: when you have 5' I should talk to you about how to use u1cp to implement the wireframe for the wizard [13:18] nessita: coolio :) thank you! [13:18] karni: good! [13:18] ralsina: ok, in 3 minutes [13:18] nessita: :) [13:18] :-P [13:18] nessita: cool [13:20] nessita: I'm going to be splitting bug 801734 in diff smaller ones like bug 802498 [13:20] mandel: Bug 801734 on http://launchpad.net/bugs/801734 is private [13:20] Launchpad bug 802498 in ubuntuone-client "Error when doing a partial commit on windows (affects: 1) (heat: 6)" [Critical,In progress] https://launchpad.net/bugs/802498 [13:21] mandel: ok, please add all the new ones in the "master" one (inside a comment) [13:22] ok [13:22] ralsina: let me put some "abrigo" that I'm freezing and I'm right back with you [13:22] -3 C here!!!! [13:22] nessita: he, I had to walk my kid to school in -1C :-) [13:24] ralsina, nessita: dont complain in Madrid is 39 and in barna 25 with crazy humidity [13:24] * mandel early lunck [13:24] mandel: I *love* the cold, actually. [13:24] ralsina: well, cold is easier to fix :) [13:24] mandel: precisely :-) [13:25] mandel: before you go eat, did you try my branch? Any problems? === teknico_away is now known as teknico [13:28] ralsina: no really, I'm ready to approve, althoguh the irl instrctuions are confusing [13:28] mandel: hmmm I would love someone other than me to actually run this irl [13:28] mandel: I'll wait for you and help you through it after lunch [13:28] mandel: if that's ok [13:33] mandel: I prefer the hot, by far, since I usually I'm colder than everyone else by 5 degrees ~ [13:33] ralsina: I'm ready, shoot! [13:34] nessita: that's the one stereotype about women that's actually true :-) [13:34] nessita: ok, open the wireframes fr the wizard, version 2.5 [13:34] ralsina: link pliz? [13:34] https://docs.google.com/a/canonical.com/drawings/d/1vRvN30wnSkyt6UdYnUkgJWBIg803P7yXo9NMqbf-NGk/edit?hl=en_US [13:34] ralsina: there [13:35] the control panel widget I want seems to be the folders tab, for the page with the "Syncing your computerwith the cloud" title [13:35] loading... is very slow to draw the text [13:36] nessita: yes it is. [13:36] I will also need the "services" tab for another page, but that one seems easier [13:36] ralsina: ok, so, the folder sizes, are those local or from the cloud? [13:37] They are local [13:37] And that means they are expensive to calculate :-( [13:37] ralsina: but not impossible, like if they were from the cloud [13:38] yeah, at least that [13:38] I can even do it in background [13:38] but anyway, I am not sure using the u1cp widget for this is a good idea... it's not the same thing, really [13:38] or yes, I am just not sure [13:38] ralsina: ok, so, the folders panel do not have a widget to do that, only a button that right now is embedded but can be easily isolated into it's on widget [13:38] right [13:39] In any case, all I want is a widget to show a list of local folders, I can do that on my own. [13:39] And then I need to set them as UDFs, which means contacting syncdaemon via sdtool. Right? [13:39] ralsina: yes and no [13:40] ralsina: please note that in control panel we have a backend of our own, and you should be hitting that, *always*. [13:40] nessita: ok, will hit that. [13:40] need to activate it first, then [13:40] ralsina: activate it? [13:41] launch the backend? Oh, no it's in-process on windows. Sorry. [13:41] right, is just an import [13:41] ok then. Piece of cake. Will work on that page now. [13:41] ralsina: wait! [13:41] ralsina: for this particular case, adding a folder is a complex thing (lots of checks for the to-be-path) [13:42] we already have a button that does this, like I mentioned. I will isolated it into a widget for you to reuse. In the mean time, you have plenty to work on: load the local folder list, calculate size, build the folder list [13:42] ralsina: just leave the button placeholder in place [13:43] makes sense? [13:43] ralsina: makes sense? [13:44] jeeze, how fast I lost him [13:44] ralsina: don't start coding yet!!! :-) [13:47] sorry, phone call :-) [13:47] nessita: yes, was going to use the button! I was going to code the folder list only [13:48] so, you want to isolate that button? we can parallelize a bit [13:48] ralsina: ko, the button as a widget is not in place, I'm starting a branch for that [13:48] nessita: cool. [13:53] * mandel back [13:54] stand up in 6, crowd! [13:55] * thisfred flexes legs [13:58] * nessita freezes [14:00] Women are scientifically proven to be better at withstanding physical pain, but have less bloodflow to the extremities, so have worse temperature regulation than men. [14:00] mandel: it would probably be useful to have ubuntu-sso-client work with qt on linux. I am taking a quick look and it seems it's mostly that we don't have the right main() for that combination [14:00] Note I took care not to use the adjectives 'cold' and 'insensitive' [14:00] mandel: does that sound right? [14:00] ralsina: yes, it does [14:00] hello #ubuntuone! [14:00] thisfred: lol [14:00] me [14:00] hi alecu [14:00] me [14:00] holalecu [14:01] mandel, ralsina, dobey? [14:01] alecu ? [14:01] say me please! :-) [14:01] me [14:01] me [14:01] * alecu needs to write some notes [14:01] me [14:02] DONE: got ussoc and syncdaemon running on a W7 VM: found out and reported a couple of Criticals in the process. Meetings. [14:02] TODO: bug #802517, keep testing syncdaemon in windows [14:02] BLOCKED: no [14:02] NEXT: thisfred [14:02] DONE: Bug #801736 (needs reviews!) | Fixing launcher integration issues between u1cp and u1client TODO: wrap up fixes BLOCKED: no NEXT: mandel [14:02] Launchpad bug 802517 in ubuntuone-control-panel "QT UI: Split the "add folder" button out from the folders panel (affects: 1) (heat: 6)" [Undecided,New] https://launchpad.net/bugs/802517 [14:02] Launchpad bug 801736 in ubuntuone-client "Handle None reported as 'deflated_size' (affects: 1) (heat: 6)" [High,In progress] https://launchpad.net/bugs/801736 === m_conley_away is now known as m_conley [14:02] DONE: Recovered from migraine. Finished sdtool changes proposed by alecu on Friday. Started working on 801734 by splitting it in diff bugs. It looks like there are places where os_helper is not used. [14:02] TODO: finish splitting 801734. Fix at least 2 or three subbugs. [14:02] BLOCKED: no [14:02] dobey, please [14:02] ubot4: you're crazy! bug #802517 [14:02] λ DONE: testing on oneiric, bug #800723, triage, releases, uploads [14:02] nessita: Error: I am only a bot, please don't think I'm intelligent :) [14:02] λ TODO: more bug fixing/triage [14:02] λ BLCK: None. [14:02] Launchpad bug 800723 in ubuntuone-client (Ubuntu Oneiric) (and 2 other projects) "Install plug-ins to correct ABI directories (affects: 1) (dups: 1) (heat: 14)" [High,Fix released] https://launchpad.net/bugs/800723 [14:02] ralsina: go [14:02] DONE: Fixed needs-fixing on branch fix_800359 (need one more review). Fixed run-tests so it runs style checks properly on windows [14:02] TODO: bug #800376, maybe make sso-client-qt run on linux [14:02] BLOCKED: no [14:02] Launchpad bug 800376 in ubuntuone-windows-installer "Add "syncing your computer to the cloud" page to the installer (affects: 1) (heat: 6)" [Undecided,Triaged] https://launchpad.net/bugs/800376 [14:03] me [14:03] ubot4: bug #802517 [14:03] alecu: go! [14:03] DONE: debugging control-panel speaking txnamedpipes with sso [14:03] TODO: finish finding the bug, and do a branch to fix this [14:03] BLOCKED: no [14:03] alecu: any clues? can we help? [14:03] nessita: the point of making sso-client-qt run on linux is so that: a) it's easier to test b) someone on loan from web can do the CSS [14:04] alecu: what is the issue? [14:04] ralsina: makes sense. I would like to have this running on windows first, though, so we can *actually show something* to the bosses [14:04] ralsina: can we file a bug for the ussoc on linux and fix it once the rest is running on w? [14:04] nessita: it does run on windows, for everyone that has tried it (me ;-). +1 on the bug [14:05] ralsina: when I said "it runs" I was referring to the whole combo wizard + ussoc + sdtool + controlpanel :-) [14:05] nessita: oh, THAT "runs" :-) [14:05] mandel, right now it's stuck, with no errors, but the callback is not received. I found something I think was related to namedpipes, but I need to debug further. [14:06] yeap :-) [14:06] alecu: did you resgiter to signals on control panel as well? [14:06] alecu: ouch... [14:06] nessita, yes [14:06] nessita: when do we mumble? [14:06] alecu: for both services? (sorry, I need to ask) [14:06] mandel, give me a few minutes, since I'm on my desktop and I have not used it in a few weeks; I need to copy the vm from my laptop. [14:06] mandel: at half past this hour [14:06] nessita, what are "both" ? [14:06] nessita: ok [14:07] alecu: CredentialsManagementTool on one hand, and SYncDaemonTool (you may not care about the later though) [14:07] latter* [14:08] nessita, I am not caring about the latter. But I'm guessing that the txnamedpipes error that the second throws is somehow affecting the first. [14:10] :-/ [14:10] COMMENTS: could use (pretty simple) reviews please on: https://code.launchpad.net/~thisfred/ubuntuone-client/fix-progressbar-tests-on-windows/+merge/65838 [14:10] the branchname is misleading [14:10] thisfred: on it! [14:10] should read: fix-broken-progressbar-on-all-platforms [14:13] make-it-so-tests-fail-because-the-path-name-will-be-way-too-long-for-unix-sockets-to-work-correctly [14:13] is it possible to use u1sdtool on a CLI-only system? [14:13] dobey: what's the limit on the branch name length, roughly? [14:14] pmatulis: you need to start a DBUS session somehow and set its ID in an envvar [14:15] pmatulis: not easily, no [14:15] ralsina: I think full path name <= 256 [14:15] ralsina: just keep them as short as possible. the unix socket path limit is 112 i think [14:15] so it depends on the length of you username even ;) [14:16] thisfred: i think it's 112 [14:16] ah [14:16] thisfred: for unix sockets [14:16] dobey: that's a shame [14:16] dobey: wasn't it only a problem with the server tests though? [14:16] pmatulis: well, ubuntu server isn't our target market :) [14:16] thisfred: no, dbus uses unix sockets [14:17] ah, different problem then [14:17] thisfred: but we first experienced it with postgres, yes :) [14:17] maybe server tests have the 256 limit :) [14:17] don't think so [14:18] dobey: realize that. but it's a shame to lock out thousands of systems [14:18] but i guess there's lots of stuff to keep some filenames short [14:18] I know there was something where the length of the full path mattered, which was different on pqm than on users' systems, and between users, so it was fun to debug [14:19] The problem is that unix socket's paths have to fit in the same field as a DNS address! Kinky! [14:19] pmatulis: they're not locked out, they're just a pain to configure, because we decided to use existing technologies in ubuntu rather than developing yet another message bus system, that only we'd be using [14:20] pmatulis: should be doable using dbus-launch and some ingenuity. We would love a script to do it automatically (wink wink) [14:21] mandel, alecu, Chipaca, ralsina: mumble in 9 minutes [14:21] ack [14:22] ack [14:22] nessita: gack [14:22] (GNU ack!) [14:23] lol [14:23] ack [14:24] boy, my office is cold [14:24] alecu: I agree. I'm wearing, literally, 3 coats and the USB slippers [14:26] mandel, http://pastebin.ubuntu.com/633632/ [14:26] mandel, does that ring a bell? [14:27] mandel, the bit that puzzles me the most is: """d = self.waitingForAnswers[requestID] [14:27] exceptions.KeyError: 2""" [14:27] alecu: let me take a look [14:29] alecu: first thing I'd like to know is what is the type of sd_client it complains it is a module and not an object, weird… since we should be using SyncDaemonTool, right? [14:29] alecu: unless there is a linux.py and a windows.py and the windows part does not have that method, but sdtool does has it === kklimonda^ is now known as kklimonda === kklimonda is now known as Guest43465 [14:30] mandel, I'm trying to debug the credmantool; on this branch there's no sdtool usage yet. === Guest43465 is now known as kklimonda^ [14:30] mandel, in fact, I'll try commenting out the sd calls. [14:31] alecu: oh, ok, I'd try to remove the sd calls to see the errors as clean as possible [14:31] alecu: but certainly the keyerror is very weird... === kklimonda^ is now known as kklimonda === hallyn is now known as hallyn_afk [14:34] mandel, ralsina, Chipaca: mumble? [14:34] nessita: starting it! [14:34] mandel, so: the keyerror looks like the second call failing after the first one somehow closed the channel. [14:34] mandel, or something like that. [14:35] alecu: yes, that is my mpression too, the cleaner we get the error the better [14:36] Chipaca: ping? [14:36] nessita: ah! [14:36] going... [14:37] mandel, but this looks like a txnamedpipes thing, right? [14:37] alecu: yes, I dont think that any other reactor would have this problem... [14:37] mandel, or at least something in pb that's breaking, but does not look like something our code could be breaking... :P [14:38] alecu: no, it looks like something very very dirty... [15:04] http://pastebin.ubuntu.com/633632/ [15:11] alecu, ralsina: can you review this: https://code.launchpad.net/~mandel/ubuntuone-client/inline_windows_sdtool/+merge/65970 [15:11] mandel: sure [15:26] thisfred: forgot to mention I +1d your branch a while ago [15:26] why doesn't u1cp clear the token and fetch a new one if it gets AUTH_FAILED? [15:27] ralsina: saw that, thx [15:27] dobey: care to do a second review real quick like? [15:27] mandel: what kind of review do you suggest for that branch? Just tests and code review? [15:28] ralsina: ups, I forgot to write which tests to run, give me a min and I''ll do so [15:28] mandel: ok [15:28] thisfred: that's a trick question [15:28] dobey: It always is: https://code.launchpad.net/~thisfred/ubuntuone-client/fix-progressbar-tests-on-windows/+merge/65838 [15:28] also, nobody paid attention to my e-mail about tarmac a few months ago [15:30] ralsina: done, you can find instrcutions about the tests [15:30] ralsina: code review is very welcome [15:30] mandel: cool, reading [15:31] is it lunch time yet, i'm hungry [15:31] dobey: u1cp *does* that [15:32] mandel, I think the prefix test_* is kinda reserved for unit tests to be run by the test runner. Perhaps it makes more sense to name your test_tools_irl.py script some other way. [15:32] dobey: do you see another behavior? [15:32] alecu: good point [15:32] nessita: i have seen a lot of people with "auth failed" issues [15:33] ok so sorry my landlord was being a real pai [15:33] nessita: bug #801836 [15:33] *pain [15:33] Launchpad bug 801836 in ubuntuone-control-panel "cannot log into ubuntu one app (affects: 1) (heat: 6)" [Undecided,Incomplete] https://launchpad.net/bugs/801836 [15:33] me [15:33] mandel: you can name it run_sdtool [15:33] dobey: what email was that? [15:33] mandel, typo: "Uplaods" [15:33] mandel: also, please move it to inside the tests directory [15:33] mandel: so we don't provide as "API" [15:34] mandel, and perhaps you can call reactor.stop at the end of print_test [15:34] nessita: i can only presume he meant the cp there, but there isn't enough info to determine if that's true [15:34] alecu, nessita: ok [15:34] DONE * first round of wiki ports TODO * second round of ports [15:34] nessita, mandel, it is already inside tests. [15:35] thisfred: oh i guess it was one month ago. titled "Some tarmac changes" [15:35] dobey: maybe the user has an old version? [15:35] alecu, mandel: True, sorry [15:35] fagan, "was being" or "was having" ? :-) [15:35] nessita: you mean "old style token" ? [15:35] fagan: what happened? [15:35] alecu: was being a real pain [15:35] :D [15:36] hahaha [15:36] ralsina: she just was snooping around for an inspection checking everything out and needed me to follow her around to explain what was broken and who did it [15:36] dobey: ah so you mean 1 approve is sufficient? I still as a rule like to have two, as I don't trust myself very far [15:36] dobey: I mean he may be running old u1-preferences, for example. Or even the windows preferences panel. I would ask for a screenshot, at least. [15:37] I appreciate people are very busy right now though, so I'll risk it [15:37] ralsina: I couldnt really get back any earlier since she insisted on checking ever corner of the house [15:37] thisfred: i mean, for trivial stuff 1 is fine, but for larger changes you expleicitly make a second review request on launchpad [15:37] fagan: ok [15:37] nessita: well that's why i marked it incomplete, and asked for some more info [15:38] dobey: ah, explicitly request it. And then you request it of desktop+ ? [15:38] ralsina: could you give me that link you gave me on friday for that live checker of rst [15:38] fagan: let me google it again... [15:38] thisfred: no no. when you submit a merge proposal, it already has one review requested of ubuntuone-hackers [15:38] ralsina: cool thanks [15:39] dobey: reread your mail, get it now. that is all [15:39] thisfred: after you submit the proposal, it goes to the merge page, and at the top under the list of reviewers there is a "Request a review" link. you click that and add another request of ubuntuone-hackers [15:39] fagan: http://rst.ninjs.org/ [15:39] ralsina: thanks [15:40] dobey: ack, my point was that the user may not know what the control panel is, so he may not know how to answer your question :-) [15:40] nessita: well my questions were about removing the token. [15:41] nessita: but i have seen several other people also complain about similar issues, where they had a token in the keyring still that was failing. [15:41] hmm [15:42] and wtf is wrong with my weather applet? :( [15:42] dobey: well, I can confirm the backend code of the control panel handles the exception when the server reports 401 for a request. IN that case, we delete the current token and present the user with the overview screen [15:42] so s/he can login/register again [15:43] dobey: the web rest call *may* not be returning 401 though [15:43] there was a bug where it was returning 400 instead of 401 [15:44] yes, i know. because python-oauth sucks :) [15:44] mandel: when running tests from test_tools.py I get lots of "can't connect to syncdaemon": https://pastebin.canonical.com/49050/ [15:44] ralsina: do you have syncdaemon running? [15:45] ralsina: hm.. that exception does not give much info, I'll add the actual one with the extra info [15:46] nessita: well, tests should not require me to run syncdaemon, should they? [15:46] ralsina: hum, maybe I'm confused. The failure is from test_tools or test_tools_irl ? [15:47] ralsina: if it's the former, then you're right. If it's the second, then we need something that we still don't have, and is starting syncdaemon by "activation"(ish) [15:48] so for testing test_tools_irl, you need to previously run syncdaemon in another terminal [15:48] nessita: it's from python C:\Python27\Scripts\u1trial --reactor=txnp tests\platform\windows\test_tools.py [15:49] ralsina: oh, then you are right! :-/ [15:56] Ok, there is no way to do the folder size thing non-blocking without either a thread [15:57] folder size? [15:59] dobey: yes. [15:59] oops. "either a thread or making it very very slow" [16:00] ralsina: can yu tru with the version I've just pushed? [16:00] mandel: sure! [16:00] mandel: 50 successes! [16:01] he.. [16:02] mandel: tests_ipc.py also succeeds but never stops [16:02] ralsina: but is that correct to do, given that the local file size is not the same as the storage space used in u1? [16:03] dobey: well, it's close, isn't it? It's just to warn the user not to set UDFs with 90GB in them [16:04] ralsina: i suppose it depends on how many text files you have, vs. pre-compressed binary files [16:04] ralsina: that sounds like a thread being stupid.. I wonder where... [16:05] dobey: the quota es compared to the *compressed* size? Didn't know that. [16:05] ralsina: afaik, yes [16:05] dobey: then this *may* be pretty useless. Then again, most large files will be in some compressed format, unless it's source code. [16:05] dobey, ralsina: the quota is compared to the non-compressed size. [16:06] so it's not useless [16:06] ralsina: also, where are you shoing this? [16:06] dobey: setup wizard, it gives the user a screen to set a set of initial udfs [16:06] ralsina: so you're showing all the user's personal folders? [16:07] dobey: right [16:07] ralsina: so you should do it asynchronously as nautilus does, and just keep updating the display until each is finished [16:07] probably doing the stat calls in a thread [16:08] but it's going to be slow no matter what [16:08] unless it's on an SSD, then it might be fast :) [16:09] dobey: not *really* slow, it's 20 seconds for a largish folder (90K files) [16:09] but if I do it by interleaving the calls in the event loop instead of a thread, it takes like 200 seconds instead [16:09] ralsina: 20 seconds is really slow, especially if i'm trying to get through a process already happening :) [16:10] dobey: of course it won't be in the foreground ;-) [16:10] ralsina, nessita: I just got the same exception that alecu got but between sd and sso [16:11] mandel: guh [16:13] nessita: yep, this: http://paste.ubuntu.com/633682/ [16:18] hey guys...if I cancel my subscription to Ubuntu One, will it just drop the 20GB package I bought (currently using 450mb...so I'm in my free quota), or will it drop everything? [16:20] rye, joshuahoover: ^^ can you answer Monotoko please? :) [16:20] mandel, ping [16:21] mandel, there's an unused reply_handler inside get_shares [16:21] alecu: pong [16:21] alecu: I got the same error between sso and sd: http://paste.ubuntu.com/633682/ [16:22] mandel, ouch [16:23] alecu: doble ouch a lo homero [16:24] mandel, the rest of the code looks fine (minus that little unused reply_handler) [16:24] alecu: oh, I'll remove that guy, which line is it in the diff? [16:25] mandel, line 170 in the diff [16:26] ok [16:26] lunch time, bbiab :) [16:28] mandel, one more thing... when printing "No more downloads", the return value is True [16:28] alecu: excuse me? [16:28] mandel, sorry, in wait_all_downloads [16:29] mandel, (it's not touched by this branch, but it's in the same file) [16:29] mandel, self.log.debug('wait_all_downloads: No more downloads') [16:29] return True [16:29] mandel, so, the weird thing is that True is returned in one case, or a list of downloads is returned in the other case. [16:30] alecu: I think is the same on linux… let me check [16:30] mandel, ok, just checking. [16:34] Monotoko: we don't delete files when you drop subscriptions...if you're over your quota when you drop a subscription we don't allow more uploads [16:39] Monotoko: and, as alecu reminded me (thank you!), we may change how we handle quota and dropping subscriptions in the future...it's likely a ways off, but will likely change in the future [16:49] * Mandrew is away: I'm in the Hammock dont disturb [16:50] so has anyone seen the ubuntu one client hanging a natty machine? (or am i special?) [16:50] * Mandrew is away: I'm in the Hammock dont disturb [16:56] hallyn_afk, what operations are hanging? [16:56] rye: not operations. The whole laptop hangs, cpu tops out, fan goes berzerk, a few leds blink nonstop. Stays like that until i power-off. NOthin gin the logs. [16:57] It's been happening for months. i thought it was the video driver, bc it was only when i logged in on console. [16:57] hallyn_afk, leds as in caps lock, scroll lock? [16:57] yeah [16:57] hallyn_afk, that's kernel panic [16:57] but this weekend i started u1sdtool -s from vnc, and it did again the next night [16:57] yes [16:57] hallyn_afk, i.e. the kernel has encountered some bug and cannot proceed [16:57] yes, but it only happens when u1 is going [16:58] i dont' knwo how to go about diagnosing since it seems to be a middle of night affair, and there's nothing in logs... [16:58] hallyn_afk, uh, that can mean that either network adapter is causing that or something on the file system (though unlikely). Ubuntu One does not use any different kernel features than any other application (inotify, mmap, etc.) [16:59] i figured it might just be memory pressure [16:59] ok, so noone else has ever mentioned anything like this [16:59] ? [16:59] hallyn_afk, if you can reproduce this with your console being in the foreground it should be able to print the OOPS message === hallyn_afk is now known as hallyn [16:59] i can't make it happen. Once it happens, video does not respond [17:00] hallyn, i mean that when you are in virtual terminal already and do some actions from remote side... how often can you reproduce this? [17:00] not inconceivable that it's actually xfs related, but just walking the fs with find doesn't do it [17:01] i can't make it happen. it generally happens in the middle of the night, when i'm sleeping. tends t obe a few times per week. [17:01] if noone else has reproduced this, then i'm not sure i care to waste your time or my data [17:03] rye: thanks [17:03] (if i ever get more concrete data, i'll file a bug) [17:04] hallyn, thanks! [17:06] interesting. I just had a similar event with my new laptop. I have yet to configure U1 on it. Fan went nuts, system locked. [17:06] I didn't look at the indicator LEDs [17:06] * rmcbride goes looking for a core dump [17:06] rmcbride: did you get it working eventually? [17:07] fagan: had to power it off [17:07] fagan: I had suspected a compiz issue actually. Still tracking it [17:07] rmcbride: compiz does still have some issues in 11.04 [17:07] alecu: I just pushed a new version without the reply handler [17:08] rmcbride: right, i had been suspecting compiz/unity. but now that i've reproduced it without those, something else must be going on with mine [17:09] hallyn: interesting. I was about ot try a differnt desktop just to see if that helped. [17:09] rmcbride: if it happened to you pretty quickly it well may be video card still. I did have a lot of crashes esp with nouveau in the past [17:11] hallyn: it seems to happen afte rthe system has been idle a bit. This is a sandybridge system with integrated video, so I might be on the bleeding-ish edge or something [17:11] ralsina: ping [17:11] nessita: pong [17:11] ralsina: can't find the "emit signa code in windows-installer trunk [17:11] ralsina: is that landed? [17:12] nessita: no, it's in the branch that's stuck... let me find the link [17:13] https://code.launchpad.net/~ralsina/ubuntuone-windows-installer/fix_800359/+merge/65703 lines 462 and nearby [17:13] and then you can call self.loginSuccess.emit(blah) [17:13] of course using your own signal name [17:14] ralsina: why is it stuck? it has 2 approves [17:14] because I didn't get mandel's approve mail somehow :-( [17:14] * ralsina lands it [17:14] ralsina: ;-) [17:14] alecu's review is "pending" [17:15] ralsina: ? [17:15] argh, looked at the wrong branch [17:16] there, set to approve [17:20] mandel, I was able to execute run_sdtool.py. Success!!!! [17:20] mandel, one thing: http://pastebin.ubuntu.com/633717/ [17:20] alecu: toma ya! [17:20] mandel, the shares dir does not start with [17:21] \\?\ [17:21] alecu: ok, I'll file a bug for that, it should [17:21] mandel, perhaps that has to do with something? [17:21] mandel, the issue you were discussing during the meeting, I mean. [17:22] alecu: there is an issue, but is a diff one, nessita has problems with the root dir, which does have the \\?\ [17:22] oh, ok. [17:22] alecu: nevertheless is a great thing you have spotted that :) [17:23] just fyi, had a fun time stress testing ubuntu one today. downloading 20gb+ at 2MB/s or so, syncdaemon likes to eat up about 50% of my cpu [17:24] hmm [17:24] gord, is that using 100% of a dual core? [17:24] gord: how many files makes up that 20GB? [17:25] mandel, approved with A+ [17:25] ralsina: are you guys still in zomg mode? [17:26] dobey: until we die [17:26] dobey: what's zomg mode? [17:27] ralsina: rushing/stressing to get specific set of work done where you use a tag containing "zomg" on all the related bugs? [17:27] dobey: then yes [17:40] alecu, no - measured with top so 50% of a single core [17:40] dobey, lots and lots, music so 5-10 mb a file [17:41] its hitting IO enough to make the entire system sluggish and unresponsive though it seems [17:42] gord: that's probably why. That many files on a connection that fast is going to hit disk a LOT, and open()/close() constantly is going to eat resources :-/ [17:43] gord: heck, my system sometimes gets sluggish when i check for new mail in evolution. and this is a quad-core with virtual threading magical pony stuff [17:43] :( [17:43] just another reason i need an SSD in this laptop :) [17:45] it is the future damnit. where is my quartz disk? [18:37] tip for the next one: if you copy text into designer, and it has any sort of unicode stuff in it, our "setup.py build" breaks with error "must be str, not unicode" [18:37] fix it ;) [18:38] alecu, mandel: I tried to run syncdaemon a second time in the same environment, so I had to kill sso by killing the process and then re run it. That attempt (running syncdaemon for the second time) failed with the txnamedpipe error [18:38] nessita, that's lovely [18:39] nessita, and a good pointer too [18:39] alecu, mandel: the same one that alecu had. And sso will not retrieve credentials at all, so syncdaemon failed with AuthorizationDenied [18:39] alecu, nessita: so it happens in the second run after we killed it, that might be because the buffer of the pipe is dirty [18:40] mandel: that was my case, not sure if it was alecu's or your's. Was it? [18:40] mandel, ooooh! [18:40] the handle does not get closed properly and the next time we use it we go bannannas [18:40] mandel, that sounds veeeeeery reasonable [18:40] mandel, that also means that no more than two process can use the pipe at once. [18:41] that last bit sounds terrible [18:41] mandel, for instance, if both control panel and sd try to talk to sso, then this error may happen [18:41] specially since we may be hitting sso from several processes [18:41] alecu: well, you cannot have more than two servers using the same pipe, but you can have more than one client, right? [18:41] mandel, I don't know, you tell me :-) [18:41] nessita, exactly [18:42] alecu: there are two ways, server namedpipe and client, the listenPipe is creating a server so the second server we create brakes, but that is reasonable [18:42] alecu: I'd say lets add a test in the txnamedpipes where more than one client connects and gets something back, at least we remove the fear of not being able to have more than one client [18:42] also, I dont think there is any test of that type [18:43] juas [18:43] mandel, ok, I'll fetch a sandwich and give it a go. [18:43] joshuahoover, just wanted to say thank you for your great answer earlier...sorry for the late reply, I went AFK ^_^ [18:43] Monotoko: ah, np...happy i was able to answer :) [18:43] alecu: good luck! [18:43] alecu: me love u :) [18:44] mandel: aboiut to your your extra_foo bracnh [18:45] nessita: yes [18:46] ? [18:49] nessita: are you there? [18:50] mandel: on mumble, sorry [18:50] mandel: I'm back, about to run syncdaemon [18:51] mandel: guh, WIndowsError on other end [18:51] mandel: I'll report the bug and start over :-/ [18:52] nessita: ok, add me to the bug, maybe is an easy one.. [18:53] mandel: syncdaemon should be able to handle cases like this: http://pastebin.ubuntu.com/633762/ (filling report now) [18:54] mandel: bug #802670 [18:54] Launchpad bug 802670 in ubuntuone-client "WIndowsError when trying to create an existent dir (affects: 1) (heat: 6)" [High,Triaged] https://launchpad.net/bugs/802670 [18:54] nessita: that one is simple enough, just ensure that error 183 is handled correctly… bloody windows fs... [18:54] mandel: yeah. I need to clean everything up again and reboot and re test :-D [18:55] mandel, alecu: can I clean the txn pipe somehow, to avoid restarting? [18:56] nessita: if you have process explorer installed you can force the handle to be closed [18:56] which might leave your system unstable and blah blah blah [18:56] mandel: ok, I'll reboot... [18:56] haha [18:56] mandel: before, when we did the step together on mumble, we forgot to remove AppData\Local\ubuntuone [18:57] what does that think have? [18:58] mandel: in english please? :-P [18:58] nessita: que es lo que hay en ese dir? [18:58] don't know, I nucked it [19:02] mandel: syncdaemon running, same errors than before on the terminal [19:02] mandel: in a few minutes I'll kill and send logs [19:03] nessita: perfect [19:03] nessita: at least it is always happening [19:04] mandel: in that branch you didnot fix the ascci can't decode error, right? [19:06] nessita: no, I added logging to see what we are getting in the os_helper layer [19:11] mandel: http://pastebin.ubuntu.com/633772/ [19:12] KeyError: '\\\\?\\C:\\Users\\Test\\Ubuntu One\\' [19:12] line 360 from the diff [19:12] the paste, I mean [19:12] * mandel looks [19:12] nessita, alecu: please take a look at this tiny branch: https://code.launchpad.net/~mandel/ubuntuone-client/fix-802670/+merge/66039 [19:13] mandel: looking [19:13] mandel: tests pliz? [19:14] mandel: in particular we need tests to avoid regressions [19:14] nessita: already present in the test_os_helper which test for that case [19:14] nessita: and rename in linux is os.rename [19:14] nessita: found the issue, there is an extra \ at the end of the path [19:15] mandel: no, I mean we need tests to ensure that volume manager calls rename and not os.rename [19:15] nessita: hm…. I wonder how I can test that... [19:15] nessita: I'll think about a smart way to do that [19:15] mandel: patch your rename and test that is being called [19:15] and test that os.rename is not being called [19:16] which is exactly "the bug" here :-) [19:16] ok [19:16] mandel: regarding my paste, you're that the problem is the ending \\ in '\\\\?\\C:\\Users\\Test\\Ubuntu One\\' ? [19:17] nessita: yes, look at the line just above [19:17] nessita: you can see the _idx which has the dir but without the \\ [19:18] mandel: that should work, with the extra \\ [19:18] mandel: I mean: [19:18] we should be normalizing paths before keyring our metadata in fsm, that is not the case? [19:19] also, dirname in linux leaves the ending / as well, or no? /me tries [19:20] nessita: try normpath which is what is called just before [19:20] hum, dirname does not have an ending \ [19:20] >>> os.path.dirname('/home/nessita/Ubuntu One/logging.conf') [19:20] '/home/nessita/Ubuntu One' [19:20] let's see windows [19:21] nessita: try os.path.normpath please [19:23] mandel: I'll check, but FYI os.path.dirname on windows does not append \\ at the end (ie, they work the same in linux and windows) [19:23] mandel: what test with normpath you need? [19:24] mandel: os.path.normpath applied to os.path.dirname results in the exact path [19:24] on both OSes [19:24] mandel: what next? [19:25] nessita: I'd like to see what happens when you do os.path,normpath with the extra \\ in that exact path [19:25] ok [19:25] mandel: it removes the ending \\. Anyways, why are we having the ending \\ anyways? [19:27] nessita: that I don't know, wht I really want to uderstand is why line 774 in filesystem_manager is not removing the \\ [19:27] is doing path = os.path.normpath(path) [19:27] nessita: line 773 [19:27] mandel: pulling trunk to confirm [19:30] no idea [19:30] mandel: you should request some debugging help from facundobatista... [19:30] nessita: so.. windows is fucked up big time [19:30] I would go, for now, with PICNIC [19:31] I'm making a branch to have better debug there [19:31] nessita: what is PICNIC? [19:31] since we have 2 nested calls to fsm [19:31] mandel: Problem In Chair Not In Computer [19:31] hahaha [19:34] nessita: I'm going to get dinner ready and will be back to add the tests, let me know if you find anything [19:34] ack [19:38] any preferences on the pythonic way to make a bunch of threads stop? [19:38] * ralsina is thinking about reading a module-global variable, but that may be considered impolite ;-) [19:39] thread.join() [19:39] ? [19:39] dobey: that waits for the thread to end, doesn't tell the thread to end [19:40] dobey: I want to notify an indeterminate number of threads "guys, time to stop" [19:41] ralsina, you can not make a thread stop [19:41] ralsina, you can tell them to stop :) [19:41] normally, with a token in a Queue [19:41] facundobatista: I know. But it's in a pretty fast loop, so once I tell it to stop, it will stop in ~5ms [19:41] facundobatista: but if I have N threads, I need N queues [19:41] facundobatista: not that I mind, that's just fine if it's the "right" way [19:42] ralsina, the problem in these cases is if the thread is waiting for something... for example, stuck in a socket.read(), or queue.get(), etc === beuno is now known as bueno [19:42] facundobatista: it's just a loop over stat() so shouldn't happen (yeah, right ;-) [19:42] ralsina, you can always access the object in the other thread and do something like other_object.should_stop = True [19:43] facundobatista: ok, makes sense [19:43] * ralsina implements [19:43] well, just telling it to stop should be fine, you just need to keep a list of the Thread objects somewhere [19:43] ralsina, is it an os.walk +stat? [19:43] alecu: yes [19:43] dobey: have the list, so yes, doing what facundobatista said === bueno is now known as beuno [19:45] facundobatista: would you please do a quick review for sync https://code.launchpad.net/~nataliabidart/ubuntuone-client/clearer-handle_AQ_DELTA_OK/+merge/66044? is pretty trivial, but windows is exploding there and I want to check exactly where and why [19:45] nessita, exploding how? [19:46] ralsina, http://stackoverflow.com/questions/190010/daemon-threads-explanation [19:46] ralsina, so, don't stop it: set thread.daemon = True [19:46] facundobatista: line 384 http://pastebin.ubuntu.com/633772/, fsm.get_by_path fails with a KeyError for a directory that is there. Mandel's theory is that the trailing \\ is messing around, but fsm call normpath before accessing its own cache, so that makes eveyrhing senseless [19:47] alecu: but if we are using 100% I/O, that means it will continue after we close the program until it finishes [19:47] alecu: not polite ;-) [19:47] facundobatista: since, os.path.normapth('\\\\?\\C:\\Users\\Test\\Ubuntu One\\') trims the ending \\ [19:47] facundobatista: (I just tested it)( [19:48] alecu: correction "while we move onto the next pages" [19:48] ralsina: all this thread madness is to calculate the folder sizes? [19:48] nessita, yes, AFAIK paths in the indexes are without the trailing path separator [19:48] ralsina, oh, "move onto the next page" makes sense. [19:48] nessita: it's done already [19:48] ralsina: then what is all this threading stopping for? [19:49] (curious) [19:49] facundobatista: right, but we still are getting the KeyError... [19:49] nessita: just trying to do it the right way. Since I got the explanation it's already implemented [19:49] ralsina: with tests? :-) [19:49] nessita: yes. Not tests that pass because I need a better setUp, but yes ;-) [19:50] facundobatista: so, something is odd since the inner implementation of get_by_path calls normapth itseld [19:50] itself [19:50] nessita: tests should be up in 15 minutes or so, modulo getting coffee [19:50] nice [19:50] * ralsina is being a good boy [19:50] * nessita gives away a trick === lborda is now known as lborda_afk [19:53] mandel, should we set this branch to approved? https://code.launchpad.net/~mandel/ubuntuone-client/inline_windows_sdtool/+merge/65970 [19:55] facundobatista: so, any thoughts/ideas? [19:55] nessita, working on it [19:56] facundobatista: thanks [19:58] ralsina: can't find (still) your custom signal code. I pulled installer trunk and grepping for -i emit gives nothing [19:59] nessita: the emit is not there, just the signal declaration. To emit, call signalName.emit(arg1,...) [19:59] ralsina: shall I be using __pyqtSignals__ or something like argumentSig = pyqtSignal(int, list)? [19:59] the second one [19:59] nessita, with "I just tested it", what do you mean specifically? [19:59] ralsina: just curious, why would you define a signal if you don't emit it? :-) [20:00] nessita: because it's emitted by code in sso that has a reference to an instance of that class. That's also why I can't change its name :-) [20:00] facundobatista: I opened a cmd.exe, typed python, , import os; os.path.normpath('\\\\C:\\Users\\Test\\Ubuntu One\\') [20:00] the result of running that is '\\\\C:\\Users\\Test\\Ubuntu One' [20:01] facundobatista: I can share a screenshot [20:01] ralsina: ah, tricky. Thanks, I will browse the code [20:01] nessita, but that's now what is happening [20:01] now == not? [20:01] nessita, "not", yes [20:02] nessita, line 360, KeyError: '\\\\?\\C:\\Users\\Test\\Ubuntu One\\' [20:02] facundobatista: not following [20:02] nessita: http://stackoverflow.com/questions/4523006/pyqt-signal-with-arguments-of-arbitrary-type-pyqt-pyobject-equivalent-for-new-s the first response [20:02] >>> os.path.normpath("\\\\?\\C:\\Users\\Test\\Ubuntu One\\") [20:02] '\\\\?\\C:\\Users\\Test\\Ubuntu One\\' [20:02] nessita, ^ [20:02] facundobatista: is that a linux terminal? [20:03] nessita, windows [20:03] nessita, xp [20:03] nessita, where I'm fighting to see how the f*#k I change the keyboard settings [20:03] agree with facundobatista on windows 7 [20:03] bloody unusable systems [20:04] facundobatista: if you have a keyboard icon or the words "ES" or "EN" in the bottom-right, that's where [20:05] facundobatista, ralsina: you're both right for path beginning with \\\\?\\C:\\... I was testing \\\\\C:\\... [20:05] :-( [20:05] mandel: ^ [20:05] looks like a bug with normpath to me [20:06] ralsina, great, thanks! [20:06] ralsina: I still don't understand where the \\\\?\\ came from. Is it "standard" and "official"? [20:06] ralsina, nessita, "la culpa la tiene windows" (tm) [20:06] facundobatista: anyways, can you approve my branch? I think the code now is cleaner and more understandable [20:06] nessita, it's a trick to support not-stupidly-short paths, IIRC [20:07] facundobatista: yeah, but I wonder how "standard" is [20:07] facundobatista: if, for example, the python os.path library does not handle that properly, we're screwed [20:07] nessita, I don't have a clue about that [20:07] nessita, is that new debug line really needed? [20:08] nessita, it's really followable what happens to paths in the code [20:08] facundobatista: I think so, yes. handle_AQ_DELTA_OK is not called that often... [20:08] nessita, yes, handle_AQ_DELTA_OK is called on each delta, and you're adding a debug line inside the for [20:09] nessita, I'm -0 to a TRACE line (since I really think it's not needed), -1 to a DEBUG one [20:09] facundobatista: ok, removing the debug line then [20:09] removing debug and not adding anything [20:10] nessita, ok, let me know and I'll branch [20:11] facundobatista: Pushed up to revision 1024. [20:13] nessita, it's a special handled case: http://pastebin.lugmen.org.ar/6642 [20:14] guuuuh [20:14] why would they do that? [20:15] haha windows [20:17] windows + logic == does_not_compute [20:17] nessita, maybe what you can do is to move os.path.normpath to platform.normpath [20:18] nessita, other solution: avoid getting the \\\\?\\ into SD, as it's a windows specific hack [20:18] facundobatista: maybe, but I would like to understand why python devs decided that, in that case [20:18] facundobatista: right, that makes sense, \\\\?\\ should never leave the os_helper layer [20:19] but that can be a huge branch, I think. I will ask mandel when he returns [20:24] i think it's a special hack in windows that MS did, not Python [20:25] ie, python is just exploiting it in their API as well [20:25] dobey: but why would they specifically ignoring? [20:25] ignoring it* [20:25] nessita: why would Python ignore it? so that it gets passed on to the OS probably? [20:26] but why not treating it like a path and perform normalization on it? [20:27] what sort of normalization? [20:27] removing the trailing \\ [20:28] nessita, because it says it's a "literal path" [20:28] that goes beyond my understanding of windows. What is a literal path? [20:29] * nessita googles [20:30] nessita: because the other stuff it does, breaks the special magic parts, it seems; looking at the code [20:30] nessita, don't know... I pinged Georg Brandal in #python-dev (the author of those lines), he didn't answer yet [20:30] nessita: literal means shouldn't be changed. like a string literal in code [20:30] nessita, literal path in windows is a way of working around limitations in some apis [20:31] nessita, paths that start with "c:\...." are not literal paths, and have some size limitations [20:31] nessita: windows has a lot of path-shortening magic for 8.3 name compatibility [20:31] nessita, paths that start with "\\?\c:..." are literal paths, and can be much longer [20:31] ie C:\Progra~1\ stuff [20:32] dobey, this is post DOS limitations, it's for win32 limitations. [20:32] alecu: right, thing is that our code relies in literal path "normalization" and that is blowing in our faces [20:32] alecu: well, it's FAT limitations also [20:33] but yes, windows is a billion limitations from 30 years ago, rolled up into a massive ball of wtf [20:33] alecu, dobey: I understand, thanks. What looks blurry is what to suggest to mandel as a proper fix, since as discussed we need to prefix \\\\?\\ to handle long path names, but we also need to normalize. Having out custom normalizer for windows smells bug time [20:33] nessita, if I understood that correctly, the problem is a "\" at the end of a path [20:33] big* [20:34] and linux is more like a ball of tetrahydrachloride [20:34] nessita, "... at the end of a folder name" [20:34] alecu: yeah, fsm is KeyError-ing because there is and extra ending \\ that normpath will not remove [20:35] nessita, wait a minute. there's an extra \, not a \\. and literal paths are \\?\, not \\\\?\\ [20:35] nessita, now that we're talking, in the log you show me, it's logging the full index... I guess that's not permament, right? [20:35] nessita, all those doubling slashes are for python [20:36] alecu: yes [20:36] facundobatista: what exactly, sorrt? [20:36] facundobatista: not sure what you're pointing out [20:36] nessita, ok. now, having a custom normpath sounds reasonable for our use case. [20:36] alecu: I'm not that sure, but so far I can't think of a better option [20:37] how the heck this is working for others? :-) [20:37] alecu: you're not having this issue in SD logs @ win? [20:37] ralsina: how can I connect to a signal that sends a unicode as parameter? "folderCreated(unicode)" will not work [20:37] nessita, see for example line 377 of the pastebin [20:38] use object as the type [20:38] nessita, probably not that many people need to use literal paths. [20:38] alecu: but right now syncdaemon (windows version) prefixes the \\\\?\\ for every path [20:39] ralsina: not QString? [20:39] nessita, and that sounds reasonable, for our use case. And probably also for dropbox, since their client is python too. [20:39] nessita, and, more important: the index has mixed unicode and non-unicode paths... that's a recipe to future issues [20:39] nessita: nope. object lets you pass anything. Use the duck typing [20:39] facundobatista: I think that was added on a custom branch from mandel for me to debug on windows. That run is from lp:~mandel//ubuntuone-client/extra_os_helper_logging, not trunk [20:40] nessita, ok [20:40] nessita, probably my SD logs have some error like that, but I have not paid too much attention to them yet. [20:40] alecu: is reasonable, but since normapth will not normalize paths starting with \\\\?\\, how come our syncdaemon is giving only KeyErrors to me? (as far as we know) [20:41] alecu: it should be failing for everyone running it on W, read ralsina and you. So I'm puzzled about that. [20:41] alecu, ralsina: is the KeyError in your syncdaemon.log? [20:41] specifically: KeyError: '\\\\?\\C:\\Users\\Test\\Ubuntu One\\' [20:41] nessita: let me check [20:42] nessita, SD starts fine once, then the next time it throws some errors, then I go and remove all SD folders and metadata, and I restart it again. [20:42] alecu: have you checked the logs? can you confirm you have (or not have) the KeyError? [20:43] nessita, exceptions.KeyError: u'\\\\?\\C:\\Users\\user7\\Ubuntu One\\caracteres raros\\ab [20:43] c2\\\u200b\u203d\u200b \u200b\u26b9\u200b ' [20:43] alecu: do you have any file (not dir) inside Ubuntu One/? [20:43] I can't even start it: File "bin\ubuntuone-syncdaemon", line 77, in main [20:43] logger.configure_logging(options.logging_level, [20:43] AttributeError: Values instance has no attribute 'logging_level' [20:44] ralsina: copy the logging.conf from linux [20:44] alecu: ok [20:44] ralsina: you need the logging.conf file built from source tree. I usually do make on linux and copy that over [20:44] ralsina: logging.conf -> http://ubuntuone.com/p/110a/ [20:44] ralsina: copy that to data/ inside u1client tree [20:45] ralsina: and copy http://ubuntuone.com/p/110Z/ as clientdefs.py inside ubuntuone/ (inside u1client tree) [20:45] I have a clientdefs already [20:46] ok, it started [20:46] Now I have to stop it and then open the log, right? [20:47] ralsina, no logging.conf? first time you try the SD in windows? [20:47] * facundobatista never tried it yet [20:47] facundobatista: I delete everything in my canonical folder every few days [20:47] ralsina, :o [20:47] facundobatista: bzr on windows makes me do it :-( [20:47] ralsina: do not stop it yet [20:47] hmm [20:47] ralsina, what? [20:47] nessita: ok [20:48] facundobatista: files get stuck on limbo and I have to delete one folder higher than the local branch for it to unstuck [20:48] i wonder how we deal with localedir/libexecdir on windows [20:48] wow [20:49] ralsina: in bzr? are you using a shared repo? [20:49] ralsina: wait a few minutes, ideally, until syncdaemon finishing syncing. Are you syncing your real U1 account? [20:49] dobey: nope, just me here [20:49] nessita: yes, it's the real one [20:49] ralsina: before killing it, can you tell if the sync is completed? (by browsing the file system and opening files) [20:50] nessita: I can look at least [20:50] ralsina: shared repo doesn't mean "shared with other people" [20:50] but that is weird [20:51] are you sure you know how to use bzr? :) [20:51] dobey: ok, dont knw what you mean then, and I am only a social bzr user ;-) [20:51] dobey, if ralsina has to delete the parent folder, it sounds like a shared repo [20:51] alecu: that is why i asked :) [20:51] I have only an empty "shared with me" [20:51] alecu: but if he doesn't know what one is, then i have no idea what he's talking about, either :) [20:52] ralsina, if you do "bzr init-repo ." on the parent folder before checking out trunk in the child folder, then it is a shared repo. [20:52] alecu: no, nothing like that [20:52] ralsina: direct question: have you ever run syncdaemon and have all you data synced properly? [20:52] (in windows, that is) [20:52] nessita: nope [20:53] Ok, doesn't seem to sync anything [20:53] ralsina: ok. I think you can now kill SD and check the logs [20:54] ralsina: logs are located at: C:\\Users\Test\AppData\Local\Temporary Internet Files\UbuntuOne\log [20:54] ralsina: replaces "Test" as per your user name [20:54] Don't have an Ubuntu One folder in there [20:54] ralsina: no space, UbuntuOne [20:54] oops, I do [20:54] ralsina: and do not dir on it [20:54] it will say there is nothing in it, but is lying [20:55] No KeyError [20:55] ralsina: can you pastebin your log and share the url please? [20:55] ralsina, has syncdaemon connected? ie, does it have the proper credentials? [20:55] syncdaemon.log [20:55] https://pastebin.canonical.com/49068/ [20:55] alecu: good question [20:56] alecu: looks like it, yes [20:56] ralsina: did you run sso before running SD? [20:56] nessita: yes [20:56] ralsina: SYS_AUTH_ERROR, kwargs: {'error': 'AUTHENTICATION_FAILED'} [20:56] There is an auth error... [20:56] yeah [20:57] I may have wrong credentials, I suppose [20:57] ralsina: also, before retrying please cleaned up everything in your system, and by all I mean: [20:57] * c:\Users\Test\AppData\Local\xdg [20:57] * c:\Users\Test\AppData\Local\ubuntuone [20:57] * c:\Users\Test\AppData\Local\Temporary Internet Files\UbuntuOne [20:57] * c:\Users\Test\Ubuntu One [20:57] restart your system [20:58] start ussoc, then SD, then please let us know [20:58] ralsina, also, to make sso get the credentials, try starting ubuntu_sso/qt/tests/show_gui.py [20:59] ralsina, but first change the line that says [20:59] wait, I have to delete the credentials first [20:59] alecu: right, ideally he should clean them first, shouldn't he? [20:59] nessita, right [20:59] yield client.sso_cred.login_or_register_to_get_credentials('Ubuntu One', [20:59] ralsina: do you know how? I don't :-) [20:59] I do.... just a sec. [20:59] nessita: COntrol panel, search for credentials, look around :-) [20:59] ralsina: eh? [21:00] ralsina, in windows? what control panel? [21:00] alecu: yes, windows control panel. It's the equivalent of linux's keyring [21:00] ralsina: clear_credentials from code does not work, you have to do it "by hand" [21:00] cleared them already [21:00] ralsina: control panel in this namespace is U1 control panels :-D [21:00] ralsina, cool. Did not know it has the credentials there... I used python :P [21:00] * nessita too [21:01] ralsina: also, when you can: exceptions.TypeError: C++ type 'object' is not supported as a slot argument type [21:01] I'm trying to connect to a signal, from a test. The signal was declared as: folderCreated = QtCore.pyqtSignal(unicode) [21:01] "Control Panel\User Accounts and Family Safety\Credential Manager" [21:01] cool! [21:01] nessita: after we do this, push and I'll take a look [21:01] ralsina: ack [21:02] alecu: you said I have to change that line. What to? [21:02] ralsina, change the string to "Ubuntu One" [21:02] It says that here :-) [21:02] Ok, starting show_gui to get creds [21:03] ralsina, oh, right. I changed it many times for testing, sorry. [21:04] ok, got credentials, trying syncdaemon now [21:04] ralsina: did you clean up everything and rebooted? sorry to insist, but is needed [21:05] to ensure the first run to be the same as mine [21:05] I cleaned up everything [21:05] and rebooted? [21:05] didn't reboot because this is my "real" machine. Will reboot now then. See you in a few seconds. [21:05] that last part is needed to have a working txnamedpipes [21:05] ok [21:06] reviews appreciated on: https://code.launchpad.net/~thisfred/ubuntuone-client/add-counter/+merge/66050 (non-urgent, non-windows) [21:06] nessita, are you sure about rebooting? I have not rebooted my windows vm in many many days. [21:06] alecu: well, if I don't reboot, I can have syncdaemon getting the credentials the second run [21:07] alecu: the txn reactor will go crazy with the error you got (error 2) [21:07] I can't* :-) [21:07] alecu: maybe is my system only? [21:11] verterok: how can I run syncdaemon from the command line writing all the log info into stdout? was it --debug? [21:11] nessita: yes [21:11] --debug should do the trick [21:12] it works on windows as well!!! [21:12] verterok: thanks [21:12] windows atill shutting down... [21:12] mandel: ping [21:13] nessita: you can also set an env var...but not sure if that will work on windows :) [21:13] verterok: --debug is great, thanks [21:16] starting windows... [21:19] argh, windows lost my whole session, starting stuff up :-( [21:20] alecu: you sure you don't have a KeyError on Ubuntu One (root folder)? I'm puzzled if you don't [21:21] nessita, the last SD I ran gave me a KeyError on another folder, like I pasted above. [21:22] nessita, right now I've removed everything, and I'm doing txnamedpipes testing, I'll test SD later. [21:22] syncdaemon running at last [21:22] can i get a quick fairly trivial review for https://code.launchpad.net/~dobey/ubuntuone-client/fix-802702/+merge/66051 ? [21:22] alecu: right, but I wonder why not a KeyError on the root folder. According to what we found out re normpath, you should be having that. Do you have files inside Ubuntu One/ (not dirs, but files)? [21:23] syncdaemon logged in, doing a server rescan [21:24] nessita, last week SD in the VM created files in many of my folders, it downloaded 2Gb, so it synced all of my files. I didn't look to see if everything was there, but the size looked right. [21:24] nessita, I don't recall if there were files on the root folder. [21:24] syncing stuff... [21:25] nessita, but I don't have any *big* file on the root folder, so I might have missed it. [21:25] alecu: right, size is reported properly, but files are (apparently, at least my images are) corrupted [21:25] nessita, oh, ok. [21:25] nessita: the corrupted images happened before and it was a file open without the b flag on syncdaemon [21:25] nessita, anyway, I need to pick up Amelia in 5 minutes, and I'll return to work on this in a few hours [21:26] alecu: ack [21:26] ralsina: anyways, you can see my log file how is crowded with exceptions [21:26] ralsina: so it does not look like a (only) 'b' missing.... [21:26] nessita: yep [21:27] I am getting these now: https://pastebin.canonical.com/49071/ [21:27] * alecu will return later. Like Ballmer said "Hasta la Vista!" [21:27] ralsina: I've seen those, are caused by a bug that mandel needs to fix, but in theory those are harmless [21:28] ralsina: can you please you whole log in pastebin? (can be in a few minutes) [21:28] nessita: yes, I will let it sync a bit [21:29] sounds good [21:31] at least one file downloaded but it's corrupted [21:31] ralsina: is it binary or text? [21:31] nessita: binary, an .epub file (basically a .zip_ [21:32] files are syncing, all corrupted [21:32] * ralsina looks a bit harder [21:35] All files are slightly larger on windows. Seems to me the old b flag again. [21:35] ralsina: if you can confirm a text file corrupted, it will be interesting [21:35] sure thing! [21:35] and by interesting I mean worrying, but I'm trying to be euphemistic here :-P [21:35] nessita: it will take a while [21:36] ack [21:39] nessita: confirmed, it's changing the EOLs [21:39] guh [21:39] on windows: >>> print repr(open('test.txt','rb').read()) [21:39] 'Line 1\r\nLine 2\r\n' [21:39] On Linux: print repr(open('test.txt','rb').read()) [21:39] 'Line 1\nLine 2\n' [21:40] ralsina: can you please report a bug and share the link to it? [21:40] nessita: sure! [21:40] thanks :-) [21:40] against ubuntuone-client? [21:40] yes please, https://bugs.launchpad.net/ubuntuone-client/+filebug [21:41] on it [21:44] nessita: filed https://bugs.launchpad.net/ubuntuone-client/+bug/802728 [21:44] Launchpad bug 802728 in ubuntuone-client "Files are not written as binary (affects: 1) (heat: 6)" [Undecided,New] [21:44] thanks! [21:44] other than every file being broken, syncdaemon seems to work just fine here [21:45] anyone? :) [21:46] dobey: the review you mentioned earlier? Can you repaste it? [21:47] I can do one as well. dobey: you have my permission to *always* use my nick in review requests (as does everyone else on desktop+) I on the other hand reserve the right to say no/ignore, but at least I will see the request, whereas I don't read the channel all day long. [21:49] ralsina: can you please paste the whole log? [21:49] nessita: sure, in 1' [21:52] nessita: I have a syncdaemon-deug.log of 8MB, that's not ging to pastebin well. Is syncdaemon-exceptions.log enough? [21:52] ralsina: guuuuh that smelld [21:52] smells [21:53] ralsina: bzr revno on u1client what does it say? [21:53] ralsina: there should not be any -debug log file [21:53] not from today, at least [21:54] thisfred, ralsina: https://code.launchpad.net/~dobey/ubuntuone-client/fix-802702/+merge/66051 [21:54] nessita: 1022 [21:54] on it [21:55] thisfred: that doesn't work if you refuse though. (unless you go on there and choose "abstain" as your vote) [21:55] ralsina: what modification date has the -debug log file? [21:55] nessita: 5 minutes ago [21:55] nessita: I may have an old logger.conf though [21:55] because I cpoied that from Linux [21:55] ralsina: do you have some special setting? how did you run syncdaemon? [21:56] python bin\ubuntuone-syncdaemon --debug (which of course explains it) [21:56] ah! [21:56] because I wanted to see what it was doing :-( [21:56] dobey: I don't mean in the lp request, I mean on here, so I get dinged. [21:56] oh [21:57] ralsina: can you email me the log file, even if it's big? of course that 7zippping it wil compress it a lot [21:57] nessita: sure thing, doing it right now [21:57] thisfred: does your irc client support regex for matching hilights? [21:57] ralsina: please send it to my canonical email address [21:57] dobey: quite possibly [21:58] thisfred: if so, you could maybe add a regex to match on merge proposal urls :) [21:58] trying now [21:58] https://code.launchpad.net/~dobey/ubuntuone-client/fix-802702/+merge/66051 [21:58] thisfred: test [21:59] did it work? [21:59] no, but my own messages don't alert me anyway [21:59] oh [22:00] http://www.control-d.com/?p=81 [22:00] nessita: sending [22:01] hmm, that does only phrases, but I can hack on from there [22:01] at some point [22:01] dobey: my Lucid is broken so I can only test it visually :-( [22:01] eh [22:01] ralsina: no big deal, thisfred already approved :) [22:02] dobey: ok then [22:04] ralsina: you have some WindowsError: [Error 2] The system cannot find the file specified: [22:05] ok, i am off then. have a good evening all. :) [22:05] ralsina: and also, KeyError: '\\\\?\\C:\\Users\\ROBERTO\\Ubuntu One\\' [22:05] nessita: the "cannot find the file specified" I saw for files that later downloaded [22:06] Had not seen the KeyErrors, that may explain why the files in "Ubuntu One" didn't sync [22:06] ralsina: well, the exception should not be there [22:06] nessita: agreed [22:07] 16 KeyError on Ubuntu One. I'll file the bug, and explain that normpath issue [22:11] Ok, EOD for me (report sent! ;-). I will either be a few hours again late, or very early tomorrow, so ask me for reviews or whatever. [22:12] ralsina: ok, enjoy [22:13] nessita: will try! === m_conley is now known as m_conley_away [22:24] dobey: can you paste a merge prop? [22:25] the problem with this is going to be I'm going to be alerted about all proposals in all channels, unless I make per project regexps [22:30] I'm about to EOD [22:30] oh, me too! Have to walk the dog, no idea it was this late [22:30] ping me for reviews and I'll get to them after the walk [22:30] bbiab [22:34] ok, I'm off [22:34] bye all [22:40] nessita, chau === DanRabbit is now known as DanRabbit|Futbol === DanRabbit|Futbol is now known as DanRabbit|HeatDe === DanRabbit|HeatDe is now known as DanRabbit