nhaineskarni: ooh, is this an official U1 Android client?  :)00:33
karninhaines: that's correct :)00:35
nhaineskarni: yay!  Did I mention I have  T-Mobile G2 and love testing?  ;)01:44
karninhaines: I don't recall but I'm happy to know. I'm digging it right now so I'll ping you once it's done, how about that?01:46
nhaineskarni: that's because I didn't mention it.  But sure, I'd love to try it out.01:54
karninhaines: I was kidding ;) I'm happy you have an Android phone!01:54
nhaineskarni: I'd still be using my Nexus One if I didn't need a keyboard for ConnectBot and screen/irssi.  ;)01:55
karninhaines: hah, I have HTC Hero and I'm using Irssi ConnectBot as well ;) touchscreen doesn't scare me. I do make quite a few typos, though.01:56
nhainesI used my Nexus One for a weekend after Gingerbread came out.  It was beautiful until I had to type something; then I wanted to punch a kitten.01:57
* CardinalFang hugs Nexus One and Swype.01:57
nhainesCardinalFang: annoyingly, I didn't think to install it until that next Tuesday.  :)01:58
karniWhy is there list_shares_retries and list_volumes_retries if volumes are the same thing as shares??04:45
karniI get it. root and udfs are volumes. shares are shares.04:56
karniI ran out of mineral water. Not good.05:04
karniverterok: Root and Udf classes are listed under ListVolumes, while VolumeManager retrieves the root volume from self.shares - I'm lost.05:17
karninoo not now.. maintanace :< ?08:31
karniOk, time to get 1h sleep.08:34
JamesTaitBuenos días a todos!09:47
verterokkarni: the root is in self.shares just for storical reasons...now all the volumes are retrieved from the server using listVolumes10:55
verterokkarni: VolumeManager keeps the local volumes metadata, which is done in: self.shares and self.udfs10:57
verterokkarni: but Root, Udf and Share volumes metdata is retrieved using ListVolumes10:57
ralsinagood morning everyone!12:39
duanedesignmorning all12:39
alecuhello all!13:07
duanedesignrye: have you made anything in python using the libsyncdaemon api?13:07
duanedesignhello alecu13:07
ryeduanedesign, well, it is a bit hard to do13:07
ryeduanedesign, bug #62073513:08
ubot4`Launchpad bug 620735 in ubuntuone-client "connect method of SyncdaemonDaemon object conflicts with connect from GObject (affects: 2) (heat: 6)" [High,Confirmed] https://launchpad.net/bugs/62073513:08
ryeah, connect_after()13:08
ralsinastandup in 3'13:58
ralsinaalecu, please14:03
alecuDONE: a sample application that uses DroidCouch to get the tomboy notes from Ubuntu One servers (bug #725293), Docstrings for all exposed methods in DroidCouch, both Ubuntu One related and CouchDB related (bug #729096)14:04
alecuTODO: sort u1-unity, u1cp and zeitgeist bugs, work on them14:04
alecuBLOCKED: no thanks14:04
ubot4`Launchpad bug 725293 in droidcouch "Sample application that uses DroidCouch (affects: 1) (heat: 6)" [High,Fix committed] https://launchpad.net/bugs/72529314:04
alecuNEXT: ralsina14:04
ubot4`Launchpad bug 729096 in droidcouch "Documentation on how to use DroidCouch (affects: 1) (heat: 6)" [High,Fix committed] https://launchpad.net/bugs/72909614:04
ralsinaDONE: holiday x 214:05
ralsinaTODO: organize a quality push, triage bugs14:05
ralsinaBLOCKED: not yet14:05
thisfred* DONE commented on bug #72015514:06
thisfred* DONE reviewed https://code.launchpad.net/~sil/ubuntuone-couch/add-headers/+merge/5267614:06
thisfred* NEEDSREVIEW bug #729055 https://code.launchpad.net/~thisfred/ubuntuone-client/filenames-in-notifications/+merge/5248314:06
thisfred* INPROGRESS bug #702172 https://code.launchpad.net/~thisfred/ubuntuone-client/quota-notifications14:06
thisfred* INPROGRESS bug #728722 https://code.launchpad.net/~thisfred/ubuntuone-control-panel/dbusify14:06
ubot4`thisfred: Bug 720155 on http://launchpad.net/bugs/720155 is private14:06
thisfred* TODO bug #70200714:06
thisfred* TODO bug #73066114:06
ubot4`Launchpad bug 729055 in ubuntuone-client (Ubuntu Natty) (and 2 other projects) "File names should be shown on notifications (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/72905514:06
thisfred* TODO bug #73102314:06
ubot4`Launchpad bug 702172 in ubuntuone-client (Ubuntu Natty) (and 2 other projects) "Syncdaemon needs to send a notification when a folder shared to the user exceeds the owning user's quota (affects: 1) (heat: 6)" [Medium,In progress] https://launchpad.net/bugs/70217214:06
ralsinamy internet is cominf and going, sorry about delays14:06
thisfred* TODO bug #73092914:06
thisfredNEXT: dobey14:06
dobeyλ DONE: branched libu1, start on updating libu1 for new webkit14:07
dobeyλ TODO: releases, new webkit api in libu1, bug #727558, mp3 install in banshee14:07
ubot4`Launchpad bug 728722 in ubuntuone-control-panel (Ubuntu Natty) (and 5 other projects) "control panel should have a .service file so it can be opened through dbus (affects: 1) (heat: 6)" [Medium,Triaged] https://launchpad.net/bugs/72872214:07
ubot4`Launchpad bug 702007 in desktopcouch (Ubuntu Natty) (and 2 other projects) "get_all_records does not return records with their attachments (affects: 1) (heat: 6)" [Medium,Confirmed] https://launchpad.net/bugs/70200714:07
ubot4`Launchpad bug 730661 in ubuntuone-client "progress bar does not show up in Unity or something (affects: 1) (heat: 6)" [Undecided,New] https://launchpad.net/bugs/73066114:07
dobeyλ BLCK: None.14:07
ubot4`Launchpad bug 731023 in libunity (Ubuntu) "ubuntuone-syncdaemon crashed with ImportError in get_interfaces_for_object(): No module named Dee (affects: 121) (dups: 45) (heat: 544)" [Critical,Fix released] https://launchpad.net/bugs/73102314:07
ubot4`Launchpad bug 730929 in dee (Ubuntu) (and 1 other project) "ubuntuone-syncdaemon crashed with SIGSEGV in g_typelib_get_dir_entry_by_gtype() (affects: 1) (heat: 6)" [Critical,Fix released] https://launchpad.net/bugs/73092914:07
ubot4`Launchpad bug 727558 in libubuntuone (Ubuntu Natty) (and 3 other projects) "Need to notify user when Purchased Music folder is not subscribed (affects: 2) (dups: 1) (heat: 14)" [Medium,Confirmed] https://launchpad.net/bugs/72755814:07
mandelDONE: bug triagging for windows. Code review for thisfred. Worked on qt UI for ubuntu_sso.14:07
mandelTODO: Work on UI for ubuntu_sso. Automated tests for UI. Write py2exe/pyinstaller for ubuntu_sso on windows. installer POC.14:07
mandelBLOCKED: no, but reviews on windows/linux for the sso stuff are welcome. (alecu/ralsina)14:07
mandelHATE: lint + twisted14:07
ralsinaok, comments14:07
mandelralsina: I would not mind chatting with you an how we will approach the UI on ubuntu_sso14:08
dobeyλ DONE: branched libu1, start on updating libu1 for new webkit14:08
dobeyλ TODO: releases, new webkit api in libu1, bug #727558, mp3 install in banshee14:08
ralsinamandel: let's mumble in 5'?14:08
ubot4`Launchpad bug 727558 in libubuntuone (Ubuntu Natty) (and 3 other projects) "Need to notify user when Purchased Music folder is not subscribed (affects: 2) (dups: 1) (heat: 14)" [Medium,Confirmed] https://launchpad.net/bugs/72755814:08
dobeyλ BLCK: None.14:08
mandeldobey: did you do it twice :)14:08
ralsinaI want a new release as soon as that unity thing works again, is that ok? Any branches that SHOULD merge ?14:09
mandelralsina: ping me whenever you can14:09
ralsinaThen I want to invite all of canonical to try it. Of course I want to try it myself first to see how broken we are ;-)14:09
thisfredralsina: I 'd like my ^^ branch to be merged, need 1 more review14:10
thisfredit's not a must have14:10
* alecu is updating 320mb worth of packages.14:10
ralsinaAnd from here forward, we are mostly in bug fixing mode, except for dobey on the banshee stuff which is a separate thing.14:10
thisfredbut a very nice to have14:10
ralsinathisfred: the names in notifications? I'll review it.14:10
alecuthisfred, on it too14:11
thisfredalecu: no need I have a +1 already14:12
thisfredalthough, I'd like your feedback14:12
thisfredso go ahead :)14:12
ralsinaok, alecu, you do it ;-)14:13
alecuthisfred, we should build up the list of u1-unity strings for christian to review.14:14
thisfredalecu: yes, I think they're all there now14:14
dobeyralsina: there are a couple things that must merge before a release, yes14:14
ralsinaO sea, creas un QPixmap (o un QImage? no me acuerdo), un QPainter que dibuje en el QImage, y haces widget.render(painter). Despues QPixmap.toImage().save()14:15
dobeyone i guess i have to make14:15
ralsinaouch, wrong channel14:15
ralsinadobey: cool, there's no rush, today or tomorrow is the same to me.14:15
alecuthisfred, it should include not only the strings shown on notifications, but also the string shown when trying to log out when SD is running... and perhaps the strings on the messaging menu, if any.14:15
alecuthisfred, right, we should do it after this  branch lands.14:16
thisfredalecu: yep, basically, if we've done it right, we can search for everything that's i18n-ed :)14:16
* alecu hates losing his wm decorations.14:17
dobeyralsina: and the unity issue should be 'fixed' now i think. though you will have to test with the nightlies for the moment14:17
ralsinadobey: 'fixed' as in 'no unity integration' ?14:18
alecudobey, ralsina: what's the status of the problem with the Dee dependency?14:18
ralsinaalecu: that's what we are discussing :-)14:18
dobeyralsina: fixed as in kenvandine fixed 2 issues with the libdee/libunity packages yesterday14:18
ralsinadobey: oh, much better14:19
ralsinaso I need to update unity to unbreak u1?14:19
dobeyralsina: current 11.04 packages are "no unity integration" though since i pushed an update to prevent it14:19
dobeyralsina: but if one is running nightlies it *should* work again14:19
* ralsina goes to update then14:19
dobeyyes you need to install the latest updates and it should unbreak14:19
ralsinaOne administrivia thing that affects all of you: I will be taking the performance review training on friday because, yes, performance reviews are coming. Just so you know.14:21
dpmhey all, I'm getting ubuntuone-syncdaemon taking 100% cpu on natty. Any tips on debugging this or on how I can just stop it? Thanks14:23
dobeydpm: apt-get update && apt-get upgrade14:24
dpmdobey, I did it like half an hour ago. Was that a known bug and has that just been fixed?14:24
dobeyreally? what version of ubuntuone-client do you have installed?14:24
dpmdobey, 1.5.5-0ubuntu214:25
dpmah, it comes up as an update now14:25
dpmlet me upgrade then, thanks dobey, that was an easy one :-)14:26
dpmI'll pick a harder issue nex time14:26
ralsinamandel: ping14:27
mandelralsina: pong14:27
mandelralsina: mumble?14:28
alecudpm, you are organizing the ubuntu developer week, right?14:28
ralsinamandel: mumble!14:28
* mandel starts mumble14:28
ralsinamandel: desktop+ mano a manouh14:28
dpmalecu, yeah (AppDeveloperWeek), you up for a session? :-)14:29
alecudpm, yes, I was thinking on making an improved version of the DBus talk of last AppDevWeek.14:30
alecudpm, I guess I should just write it down on the wiki...14:30
dpmalecu, awesome - sure, pick up a slot at https://wiki.ubuntu.com/UbuntuAppDeveloperWeek/Timetable14:31
alecudpm, I've added my session... thanks for organizing this :-)14:39
dpmalecu, cool, thank you!14:40
dpmAnyone else from the Ubuntu One team is up for a session? Or any ideas on topics related to U1 interesting for app developers?14:41
beuno*cough*aquarius *cough*14:43
dobeyi have an appt to go to. be back soon14:44
aquariusdpm, yeah, yeah, I just haven't got around to replying to your email yet. Pencil me in :)14:51
dpmaquarius, \o/, thanks. Any preferences for time/day? What cool thing would you like to talk about?14:52
aquariusdpm, Monday 18.00: make your applications work in the cloud with Ubuntu One14:54
dpmaquarius, cool, added, thanks! -> https://wiki.ubuntu.com/UbuntuAppDeveloperWeek/Timetable14:58
alecuthisfred, ping15:03
thisfredalecu: pong15:03
alecuthisfred, I'm reviewing your branch: I like it a lot, but I have a small observation15:03
thisfredgive it to me straight, doc15:04
alecuthisfred, I don't like the self.uploading_filename being set side effect.15:04
thisfredalecu: yeah, me either, but I couldn't immediately figure out a better way15:05
alecuthisfred, that is: it is set in the first function, and used in the second and third.15:05
thisfredsince the queue may not have the filename anymore by the time we complete,15:05
thisfredunless I read that wrong15:05
alecuthisfred, perhaps that should go in a different function, and we would call it from the first, second and third.15:05
alecuoh, right.15:05
alecuI see.15:05
alecuthisfred, that makes sense.15:06
thisfredso we need to keep it around somehow, but there may be a less ugly way15:06
thisfredI have not thought of it yet15:06
alecuthisfred, I was worrying about the case of files being uploaded at the start while building the discovery_message15:07
alecuthisfred, then new files show for download, but the discovery_message is not shown.,15:07
alecuthisfred, then they would not appear on the progress nor final messages. Or something like that.15:08
thisfredI'm not sure I understand, but yeah the order things happen in is not always 100% clear. I'll have a look at whether I can make it more robust. If I can't do it quickly, I'll file a bug.15:08
alecuthisfred, great.15:09
thisfredalecu: my assumption was, that discovery will always happen for new uploads/downloads, but that is not the case?15:11
thisfredalecu: so the problem is, discovery shows, then new files come in, but because of throttling, we don't show the message?15:12
thisfredbut the final message will have an updated count in that case though, right? And the progress bar would be updated in that the total would go up too?15:13
alecuthisfred, after the initial discovery, there are 10 seconds where the bubble is updated if new files are found, but after this there are 5 full minutes of not popping up the bubble again, even if new files show up.15:13
thisfredright, but that's the choice we made, I don't think that's a problem15:14
thisfredas long as the message at the end is accurate15:14
thisfredwhich it will be if the numbers are correct.15:14
alecuthisfred, right. But if only uploads happened during the first 10 seconds, then a download happens during the 5 minutes wait, that means that the string is still ""15:15
thisfredwhether it says 'foo' and 11 other files were uploaded, or 'bar' and 11 other files...15:15
alecuthisfred, so the progress and final will say 'foo' and 11 other files were uploaded, and '' was downloaded15:15
thisfredalecu: ah, so the get_discovery_message is not called at all, rather than called but not displayed?15:16
alecuthisfred, I think it's not called.15:16
thisfredso I need a lower level event to do this15:16
alecuthisfred, that's what I don't like about the side effect15:16
alecuthisfred, hold a sec.15:16
alecuthisfred, I believe the queue is emptied *after* the final message is shown15:17
thisfredoh, so I can just look at the queue after all?15:17
thisfredthat would be great15:17
alecuthisfred, yes, queue_done shows the bubble and after that it resets the list of uploaded/downloaded files.15:18
thisfredawesome, that should be an easy fix15:18
alecuthisfred, so I guess you should be able to move those bits to a new method, and call them from the three string building methods.15:19
thisfredalecu: yeah. Looks like the tests don't have stuff in the queue though, but that may be because they're not faking well enough15:21
thisfredyeah, we just fake the numbers, and not the queue, looks like15:24
alecuthisfred, yes, very likely :-)15:24
thisfredalecu: hmm, it looks like the tests are talking to the real aggregator... :(15:31
thisfredalecu: I've noticed this happening before when anything goes wrong. Looks like the HundredFeetTestCase pollutes other tests, or at least that's what it looks like to me15:32
thisfredhmm, wait these tests are for the real aggregator, nm15:34
karniI'm back. God I hate shopping.15:36
* alecu breathes back15:36
thisfredalecu: I don't think that the files are left in the queue until the end15:36
karniverterok: thanks for explanation. so Root is treated as a share, isn't it?15:36
thisfred    def handle_SYS_QUEUE_REMOVED(self, command):15:37
thisfred        """A command has been removed from the queue."""15:37
thisfred        if isinstance(command, action_queue.Download):15:37
thisfred            self.status_frontend.download_finished(command)15:37
thisfred        elif isinstance(command, action_queue.Upload):15:37
thisfred            self.status_frontend.upload_finished(command)15:37
thisfred        else:15:37
thisfred            self.status_frontend.queue_removed(command)15:37
verterokkarni: only for the place to store the metadata15:37
verterokkarni: the Root for syncdaemon is a "special" volume15:37
alecuthisfred, you are right: "self.files_uploading.remove" in upload_finished.15:37
karniverterok: I see15:37
alecuthisfred, sorry for the mixup :-(15:37
verterokkarni: in the old days, there was no such concept (volumes), we only had shares + root15:38
thisfredalecu: np, I should look at where the totals are being updated, and keep state there as well, I think, that's the safest15:38
verterokkarni: so, the root was stored in the same "place" (metadata  storage) as the shares15:38
karniverterok: I kinda get lost, because once we talked and I thought in the end shares are treated as volumes currently15:38
karniverterok: aha15:38
verterokkarni: right, now we have volumes, and everything is a volume (root, shares and udfs)15:39
karniverterok: ack15:39
verterokkarni: but the storage of the metadata is legacy stuff :p15:40
karniverterok: it's quite challenging to read sources that once were totally new to me, and yet be able to differ what is 'fresh' and what is 'legacy' ;) that's why I can't wait to meet you all in person and listen-on all the interesting discussions you may have15:41
verterokkarni: :)15:41
verterokkarni: think of this as an implementation detail of VolumeManager ;)15:42
karniverterok: ok :)15:42
alecukarni, it took me six months after joining canonical to meet all the non-argentinian people in the u1 team :-)15:42
verterokkarni: VM, expose a get_volume(<id>) method15:42
thisfredalecu: r914 pushed15:42
alecukarni, hopefully it will be much faster for you :-)15:42
alecuthisfred, cool, re-re15:42
karnialecu: :O :)15:42
verterokkarni: what is doing to actually get the volume metadata depends on the implementation :)15:43
karniverterok: right. for instance, I have the sqlite3 database.15:43
verterokkarni: in the case of syncdaemon, it check if the ID in the "self.shares" or "self.udfs" storage15:43
verterokkarni: right, you can put the root, shares and UDF in a single table :)15:44
karniverterok: mdid is metadata id -- it is just unique meta identifier, isn't it?15:44
karniverterok: I'm doing just that15:44
verterokkarni: yes, for filesystem manager metadata nodes15:44
karniverterok: in the end, I think it'll take me still quite some time to have a nice, complete implementation of what u1 SD already contains on the desktop15:45
karniverterok: so the biggest challenge was to "try to be smart" and implement it the easiest way possible :)15:46
karniI've gotta use one more thread, as it seems I'm running part of sync commands on the UI thread, which is not good at all.15:46
alecuthisfred, StatusAggregator.__init__ already calls self.reset(), so I don't understand why it should do the same things as reset does.15:47
alecuthisfred, btw: I think that moving the initialization to download_started looks much better.15:50
thisfredalecu: ah, yeah, should have removed the reset, maybe15:51
alecuthisfred, why removing the reset? It's already done there, and it should be done as the first thing in the constructor.15:51
thisfredalecu: defining properties outside the __init__ is a bad idea in general, but yeah, since the reset is called, it's fine15:52
thisfredchanging back15:52
alecuthisfred, yeah "defining properties outside the __init__ is a bad idea" sounds right.15:53
alecuthisfred, I agree with that, so do it as you prefer.15:54
thisfredalecu: well, in this case it's done inside the init, but by calling a method that is later reused, so I think we shouldn't make the code worse to satisfy pylint/pep8 because they're too dumb to see that15:56
thisfredalecu: r915 pushed15:56
dobeyralsina: so the unity stuff is working for you in nightlies then?15:56
ralsinadobey: havent finished updating yet15:56
ralsinadobey: 5 days of updates are a lot of updates :-(15:56
ralsinaand my internet is having a bad hair day15:57
ralsinadobey, I'm 120 of 350MB done. So it's going to take 1 or 2 more hours at this rate. I'll go eat.16:00
ralsinaI usually get about 300KBps, but it's now at 40 :-(16:03
alecuI updated after the standup. Now I see that there's a new gir1.2-dee-0.5 and gir1.2-unity-3.016:04
alecustrange: I'm getting ~30kb as well :-(16:04
dobeyralsina: nromally i get 3000KB/s, but last night I was getting about 200, when updating my laptop :(16:05
dobeyalecu: and you are running nightlies right?16:05
alecudobey, right16:06
alecuwe should all move to south korea.16:06
ralsinadobey: this internet thing is dying, probably. We'll all be back to faxes and UUCP in no time.16:06
dobeyralsina: i can convert the .debs to text documents full of 1s and 0s if you want, and you can scan it in page by page after i send you 435543435464 pigeons with notes attached16:07
ralsinadobey: well, if you can mail it via fedex overnight it's the same speed I am getting, as long as you use a 8GB usb thingie.16:08
alecudobey, make sure to send one checksum bit pigeon.16:08
dobeyalecu: the checksum bit is a sparrow16:09
ralsinasparrow for 1s, seagulls for 0s16:10
alecudobey, ah, un gorrión!16:10
dobey"What is the air speed velocity of an unladen swallow?" "What do you mean, African or European swallow?"16:11
ralsinagood thing mandel is at lunch, or he would have a picnic with that one16:11
mandelafrican would be faster on feet while the european is a faster swimmer16:13
ralsinamandel: I was expecting more of a pornographic/racist joke, so good thing you went in that direction :-)16:14
mandelralsina: is racist, but you din't get it ;)16:14
ralsinaohhhhhhh ok ;-)16:14
mandelralsina: I'm sure dobey gets  it :P16:15
ralsinaolympic sports joke?16:15
ralsinaok then, I'll just go eat.16:16
dobeywell not entirely racist16:16
dobeybut i got it :)16:16
=== ralsina is now known as ralsina_lunch
mandeldobey: is enough for a public channel :)16:24
dobeyalright i need to get some lunch. bbiab16:34
mandelalecu: ping16:37
alecumandel, pong16:44
mandelalecu: just a funny failure in one of the tests of ubuntu_sso: /dev/null is nu on windows16:45
mandelgod I hate windows….16:45
karnimandel: haha16:45
mandelis nul, not nu but same thing :P16:46
alecumandel, don't know who included /dev/null in a test, but we should put his/her head in a wrench next time :-)16:50
alecumandel, also: addinfourl asused in that bit of code is not documented nor public.16:55
=== beuno is now known as beuno-lunch
mandelalecu: I dot think it was a big deal, but when I saw the test fail I was WTF? is my vm network broken16:57
mandelthen I saw the code an easily fixed it :)16:57
thisfredalecu: did you get a change to rererereview?16:57
CardinalFangmandel,  os.path.devnull ?17:01
mandelCardinalFang: ah, nice I had no idea that existed :)17:01
ryeok, i have an undelete script now17:10
ryewell, for couchdb17:10
karnirye: sounds cool, what can you undelete?17:26
ryekarni, earlier desktopcouch library used a deleted: True flag in the document itself to mark it as removed, undeleting the document should have been trivial if couchdb library in maverick was working seamlessly with oauth and notes supported temporary views - there's now a bug for the latter).17:28
ryekarni, if you remove your note online then you can undelete it17:28
karnirye: oh, nice :)17:29
karniverterok: oh! by the way, so what's it all about with the String name and String path arguments to CreateUDF request?17:35
karniverterok: When I run the request, it created a ~/name/path UDF - why not just ~/path ?17:35
verterokkarni: Gimme 15' finishing lunch :)17:45
karniverterok: of course! :)17:45
karniI see I'm not the only one lurking on the channel while eating lunch.17:46
karniJamesTait: I like that Dashboard/Files/Notes bar more than the tabs we had before, congrats to you and the design team17:49
JamesTaitkarni: I can take no credit whatsoever for that, but thanks - I'll pass on the comments. :)17:50
karniJamesTait: :)17:50
thisfredalecu: I'm struggling a bit with DBus/u1-control panel. I assume you're lunching now, but I would like to ask some n00b questions when you're back, seen as how you teach DBus ;)17:51
alecuthisfred, :-)17:52
alecuthisfred, tell me17:52
JamesTaitkarni: ivanka and her team are responsible for that. :)17:52
alecuthisfred, will re-review in the meantime17:52
thisfredalecu: right, it's about bug #72872217:53
ubot4`Launchpad bug 728722 in ubuntuone-control-panel (Ubuntu Natty) (and 5 other projects) "control panel should have a .service file so it can be opened through dbus (affects: 1) (heat: 6)" [Medium,Triaged] https://launchpad.net/bugs/72872217:53
karniivanka: Nice job on the redesigned webpage!17:53
thisfredalecu: the parts that make it a little bit tricky, are 1) the backend has a dbus interface already, so do I reuse that for the gui, or make a new service (new service I'm pretty sure)17:54
alecuthisfred, looking17:55
thisfred2) The new service is used to start the gui, and not much else (well, maybe bounce the launcher separately) for that, which parts of dbus do I/don't I need17:55
karniverterok: when you're back, 1st question was about UDF name/path, 2nd question: what is listShares for and how it relates to listVolumes?17:55
ivankakarni: thank you - I will pass on your congratulations to the team!17:55
karniivanka: please do! :)17:55
thisfred3) if I add a new foo.service.in, I assume I will need to look at the packaging branch to make sure that that is built, or is there autodiscovery?17:56
verterokkarni: 1) the path is just "the path *to* the UDF" and the name is the name of the UDF, so the "path of the udf is: path + name17:58
alecuthisfred, 1) it's tricky, because the current dbus service runs on the control-panel-backend, but you really want to open the gui instead17:58
verterokkarni: syncdaemon creates all the udfs using a kind of "special" path, "~" + <extra path elements>17:59
karniverterok: could you provide a dead simple example so I won't mix up names/paths/names ?17:59
karniverterok: uhum17:59
karnioh oh I see.17:59
verterokkarni: so, syncdaemon will use those "special" paths as the "home" of the user18:00
verterokkarni: so, if you create a UDF in $HOME/Documents/Foo (using syncdaemon/nautilus/u1sdtool)18:00
verterokkarni: you will end up with a protocol message like this: CreateUDF(path="~/Documents", name="Foo")18:00
karniverterok: I see. how about a UDF in $HOME/Baz ? what is the path? null or empty string?18:01
alecuthisfred, 2) probably a dbus method call from sd into the ui. If the ui is not running, dbus activation should start it automatically. But let's double check because a dbus signal from the sd perhaps is more convenient.18:01
karniverterok: errr.. is it "~/" in such case?18:02
verterokkarni: nope, message would be: CreateUDF(path="~/", name="Baz") (or just "~")18:02
karni*t ;)18:02
verterokI don't remember exactly18:02
thisfredalecu: I think a dbus signal from sd makes it easier for instance to not start the control panel twice, which is currently the case18:02
verterokkarni: are we good with 1)?18:02
karniverterok: ok, but I understand the point :) yes, thanks!18:02
alecuthisfred, regarding 3) I've no idea about the way our .services are built, nor about packaging branches. I'm sure dobey knows a lot about that.18:03
verterokkarni: regarding 2), listShares return a list of the shares you created/shared to someone and the shares offered to you (but not accepted yet), you should ignore the later as it's only for shares created using the protocol which no one uses18:04
alecuthisfred, the problem with dbus signals is that they don't do activation (I think), so the gui or backend should be running to listen for that signals beforehand.18:04
thisfreddobey: ohai: If I add a new .service.in to u1-control-panel18:04
verterokkarni: the shares offered via the webui, are not listed there, because they aren't "shares", they are "share offers"18:04
thisfreddobey: will that be autodiscovered by the packaging branch, or do I need to modify that too?18:04
dobeythisfred: do it the same way ubuntu-sso-client does it18:04
karniverterok: and they're fetched via REST I imagine18:05
dobeyand no, the packaging won't get it automatically, we'll have to update it18:05
verterokkarni: what?18:05
thisfreddobey: ok thx18:05
* thisfred looks at sso-client18:05
verterokkarni: no, a share offer is just a link, syncdaemon knows nothing about share offers created via the web18:05
karniverterok: how to retrieve the list share offers? http oaht-signed reques...18:05
karniverterok: so I can't list them in my app and give possibility to accept them, can I?18:06
alecuthisfred, yes, dobey advice is sound. SD already uses the sso-client thru dbus to get at the credentials.18:06
verterokkarni: you can create a share via the protocol, but you need to know the username18:06
verterokkarni: no, you can't...at least not right now18:06
verterokkarni: so, that's why these "shares via the protocol" are kind-of deprecated18:06
=== beuno-lunch is now known as beuno
karniverterok: ok. well.. that kinda makes my life easier ;d but I think we'll want that in the future :)18:06
karniverterok: ack18:06
karniverterok: then were' good with 2) as well. thank you!18:07
verterokkarni: np18:07
thisfredalecu: but if we can't *start* a service through dbus, the bug is probably invalid?18:09
alecuthisfred, wait18:09
alecuthisfred, we can't start a service to listen on a dbus signal, but we can surely start a service to reply to a dbus method.18:10
alecuthisfred, that's what dbus activation does.18:10
karniaquarius: beuno: one question (not relating to today, but nvm that) -- AFAIR we talked about implementing the new login/registration API. will we drop the browser-dance? is it because the app will be now official and ppl don't have to worry about providing their credentials to the app itself? (as AndroidU1 was 3rd party)18:10
thisfredalecu: I don't know the terminology well enough to parse that sentence18:10
alecuthisfred, right, sorry :-)18:11
beunokarni, well, implementing the SSO API means we can auth from within the app, yes18:11
beunois is not a priority, though18:11
karnibeuno: right. so we're fine with that, now that it'll be official app. okey.18:11
alecuthisfred, since you're going to be working with that dbus code, you better start here: http://dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html18:12
karnibeuno: sure, sync is the most imporant core the users will expect to work. btw I moved almost all of it to the ActionQueue since yesterday, one command left. looks promising.18:12
alecuthisfred, also, make sure you install d-feet and play with it for a while.18:13
beunokarni, \o/18:14
thisfredalecu: thx!18:14
karnibeuno: this is kind of an experiment, as the whole sync logic is 3k+ lines and not that obvious to port (involves VolumeManager, FileSystemManager, etc), but this will certainly be 1) much cleaner 2) more robust 3) more uniform (like the rest of commands)18:14
karnioh, and obviously 4) smaller and faster to implement.18:14
alecuthisfred, things to keep in mind while reading the tutorial: DBus is not used only by python, so data types are usually very strict18:15
beunokarni, right, I understand it's not straightforward at all18:15
alecuthisfred, also: sync calls in dbus usually end up in some evil bugs because of incompatibilities with other libs, that's why we always end up adding the reply_handler and error_handler to make all dbus method calls async.18:18
dobeywell your dbus api should generally support both18:22
thisfreddobey: alecu: so we need to start a dbus service which we can then call to start the gui or return it if it's already open?18:24
thisfredand then what starts the service?18:24
alecuthisfred, I believe we should make the control panel gui a dbus service too18:25
dobeyi am not even clear on what you're doing exactly, beyond adding a service18:25
alecuthisfred, so we call a method in that dbus service when we need to open the control panel to a given tab18:25
thisfreddobey: bug #72872218:26
alecuthisfred, and if it's not running, dbus activation will do it.18:26
ubot4`Launchpad bug 728722 in ubuntuone-control-panel (Ubuntu Natty) (and 5 other projects) "control panel should have a .service file so it can be opened through dbus (affects: 1) (heat: 6)" [Medium,Triaged] https://launchpad.net/bugs/72872218:26
alecuI mean...18:26
alecuthisfred, and if it's not running, dbus activation will start it.18:26
thisfredalecu: ah ok, so nothing needs to be running18:26
alecuthisfred, just syncdaemon.18:26
dobeyso not entirely clear still but eh :)18:26
alecuthisfred, anyway: this all looks like a lot of work just so we don't use os.system...18:27
alecuthisfred, why don't we keep using os.system, or whatever we are using right now?18:27
thisfredalecu: true, but it will solve the problem that multiple control panels are opened as well18:27
thisfredand it allows us to bounce the launcher and switch tabs more elegantly18:29
thisfredI hope :)18:29
alecuthisfred, right :-)18:29
dobeythisfred: doesn't the control-panel-backend thing provide a dbus service already?18:30
thisfreddobey, it does18:30
thisfreddobey: so one of my questions was, can I (ab)use that18:30
dobeythisfred: then you probably just need to add API to that, and hook it up to the UI instead18:30
dobeyso that every different toolkit UI doesn't have to reimplement the same dbus service to switch tabs and whatnot18:30
dobeywhich reduces the change set to only having the one "hard" problem of deciding which front-end to open, and how to open it18:31
dobeywhich may require a simpler dbus activation thing in the front-ends, but not the entire API18:31
thisfreddobey: so you're saying, add all of the API to the current service, including an API call to open the gui?18:32
thisfredor everything except that18:32
alecuthisfred, I think we should: 1) add a new dbus service to the control-panel UI. (the UI is only a dbus client right now). 2) add a new dbus interface. 3) add a "open_tab(tabname, bring_to_front, bounce_icon)" method to that interface. 4) set the .service file to map the dbus name to our executable. 5) call the method from sd. 6) profit.18:33
alecuI don't believe this should be part of the control panel dbus backend.18:33
dobeythisfred: i think including that18:35
thisfreddobey: won't this cause an unfotunate dependency graph?18:35
thisfredright now I assume the GUI depends on the backend, but the other way around18:36
thisfredbut not18:36
aleculet's scratch the "open_tab" method. Instead we should have methods with the names of the conditions that need to open the tab, and have the control panel decide whether to open a tab or show an error or bounce the icon or whatever.18:36
dobeythisfred: we already have an unfortunate dependency graph, because someone was brilliant and decided to make u1cp an external thing18:36
alecuthisfred, right now the gui depends on the backend.18:36
dobeythisfred: you've already introduced a dependency on u1cp in syncdaemon, which in turn has a dependency on syncdaemon18:37
dobeythisfred: say hello to the oroborus.18:37
alecuI've seen Ron Jeremy doing that.18:38
thisfredalecu: ok, so what's a compelling argument to *not* include this in the current service? (which is named com.ubuntuone.controlpanel.service, incidentally)18:44
thisfredalecu, is that not a case where we could have a /gui path?18:44
alecuthisfred, the compelling reason: we have two separate executables for the gtk ui and the backend.18:46
alecuthisfred, the only one that's started by dbus activation (that is: from a .service file) is the backend.18:46
thisfredright, and we need the service pointing to the ui executable for activation to work?18:46
thisfredok, I get it18:47
alecuthisfred, exactly.18:47
dobeythere are two issues18:47
thisfredat least :)18:47
dobeyplease don't conflate them into one solution :)18:47
alecudobey, what are the two issues?18:47
dobeyalecu: the actual API vs. the activation of the gui18:48
dobeyalecu: and i don't think we should force all the frontends to reimplmeent the same API over and over just because they want to use a different toolkit18:48
dobeybut *shrug*18:49
thisfreddobey: sure, but if the activation of the gui requires a new service, then doesn't putting the UI API there make sense?18:49
dobeynot necessarily, no18:49
thisfreddobey: and won't they have to reimplement those things (switching tabs, asking for attention) in their own ways anyway?18:49
thisfredwell, not switching tabs, but showing relevant information18:50
dobeythisfred: the backend could just have a signal for "switch_tab" or something18:50
thisfredtabs are a detail18:50
dobeyand the front-end could just listen to the signal and respond accordingly18:50
alecuwell, that makes sense.18:50
dobeyrather than having to deal with all the dbus machinery to provide a service18:50
thisfredI don't understand the difference between listening to a signal and providing a service I guess18:51
* karni reboots18:51
dobeythisfred: i guess you haven't written enough dbus services to hate writing dbus services yet18:51
thisfredexactly zero, but I'm not looking forward to it18:52
thisfredso if I don't have to that's great18:52
dobeyeh, i don't think we should do any of it18:52
dobeybut you already know that18:53
dobeycircular dependencies are evil18:53
thisfredI agree, but18:53
karniI'm back.18:53
thisfredwe do need to show the control panel when a user runs out of quota18:53
thisfredI would much prefer a U1 indicator, but it is not to be18:54
dobeyi don't understand why we have to show the control panel18:55
dobeyinstead of doing what we're already doing, or slightly improving it18:55
dobeyi mean, what does the control panel do special here? it just shows a warning with a button that opens the web page, right?18:56
thisfreddobey: well, I'm just executing what was decided at UDS where I was not present, so I don't know the rationale behind everything18:57
thisfredbut what we currently do, does not integrate with unity at all18:58
dobeyi don't recall deciding opening the control panel for low quota, being a decision at uds18:58
thisfredwhich we should18:58
dobeyor at the rally18:58
thisfredwe definitely talked about it at the rally, since that is where I opened the bugs18:59
dobeyin fact, rather, at the rally, i am pretty sure we decided "the gnome-settings-daemon will be running, so we don't have to bother with it"18:59
dobeythe only thing i recall from rally where we would have needed to open control panel was for the "accept shares" stuff19:00
dobeybut eh19:00
dobeyi blame nessita for keeping this code separate19:00
thisfredwell, I'm at a loss as to what to do then. If you say everything is fine as it is, that definitely sounds attractive to me.19:02
dobeymaybe i'm missing something, but i don't see the point of increasing complexity here19:03
thisfredexcept I don't see how we can integrate with the launcher from the current situation19:03
alecudobey, didn't we disable the pop up quota message when the folder was a share from another user?19:03
dobeywell we don't need to because we currently just open a dialog19:03
thisfredbut that may be because I don't know the current situation very well19:04
dobeyalecu: no, i had to add that back iirc19:04
dobeyalecu: but i don't like it19:04
alecuoh, right.19:05
=== ralsina_lunch is now known as ralsina
dobeyanyway, i don't see how having circular deps is at all good here19:08
alecudobey, thisfred: anyway: I recall discussing this with nessita and agreeing that we would be opening the control panel, and showing something. The "showing something" nessita has mostly taken care of, the opening is what we need to do.19:09
dobeyalecu: i'm not questioning that agreement. just the sanity of it :)19:10
dobeyalecu: i am fully aware we agreed opening to the folders tab for accepting shares made sense for the UX19:11
thisfredalecu: sure, but if it's contentious, and nobody is wildly enthousiastic about it,19:11
dobeybut the practicality situation concerns me19:11
thisfredmaybe we shouldn't spend all this time and do it with popen for now after all19:11
alecuthisfred, I think I agree with that19:12
dobeythisfred: but what happens when the unity integration is enabled, but control-panel-gtk isn't installed?19:12
thisfreddobey: I can put a try except around the popen ;)19:13
alecuthisfred, also, we should find some way to do only one instance from the control panel itself.19:13
dobeythisfred: and what would happen in the except clause?19:14
alecuthisfred, also: we will need to add more cmdline flags to signal the "bouncing" or the "show window below other open windows."19:15
thisfredalecu: that's done, or at least the first one is19:15
thisfredalecu: popping under does not seem to be possible, currently19:16
alecudobey, would inverting the order of dependencies fix that?19:16
alecudobey, making sd depend on a control-panel, and control-panel-gtk providing that.19:16
thisfredalecu: opening only a single window should be possible without dbus, and is a separate issue, but I have time to look at that if we scrap the new service for now19:17
dobeyalecu: fix my concerns? no19:18
ralsinathisfred: the current canonical solution is using dbus19:18
dobeyalecu: a circular dependency is a circular dependency no matter how many times you try to walk around it :)19:18
ralsinacanonical as in "established and correct" not as in "the company' :-)19:19
dobeyralsina: in gtk+ it's libunique usually, but dbus feels saner in most cases19:19
thisfredralsina: sure, but it seems at this point there is barely a consensus on what the problem is and if we need to solve it19:20
dobeyralsina: and i think the way libunique works, it uses X atoms19:20
dobeythisfred: well the having multiple open control-panel-gtk windows is a separate problem, which i don't think there is any contention on19:20
ralsinadobey: a X atom in the root window? How quaint :-)19:20
thisfredah ok, sry19:21
dobeyralsina: yeah. it's very 198719:21
thisfredI thought ralsina was commenting on the whole discussion19:21
dobeyralsina: is nessita gone the entire week?19:22
thisfredso, we can add a service just for activation19:22
ralsinadobey: 2 weeks19:22
thisfreddobey: yup holidays19:22
dobeywell i hope here branch isn't important19:22
ralsinadobey: which one?19:22
dobey Thanks, I can see it.19:23
dobey> >19:23
dobey> Great.19:23
dobeygrr, X19:23
dobeythat one19:23
ralsinaactually that one is very important19:23
dobeyit would have to be19:24
ralsinaIs there a big problem with it?19:25
dobeywell it failed to merge, because for some reason pylint is being used directly instead of u1lint there19:26
dobeyand she added some #XXX comments19:26
dobeyand pylint doesn't like them19:26
ralsinadobey: oh, great19:26
ralsinaBut yes, it is a very important branch because the UX for the services tab was bad19:27
thisfreddobey: I can make a branch to switch run-tests to u1lint...19:27
dobeyand i don't know why she is using straight pylint there19:27
ralsinadobey: well, she's not around to ask :-)19:27
dobeythisfred: well i'd like to know why it's not doing so already19:27
ralsinathisfred: if you can make that branch merge, that would be awesome19:27
thisfredprobably just historic reasons19:28
thisfredI'll see if u1lint works19:28
dobeyand why is color output being used19:28
dobeythisfred: u1lint probably breaks with the pylintrc in there, because of the output19:29
dobeyand i don't know what all is in the pylintrc there that's different from the one in devtools19:29
dobeyand *sigh*19:29
mandelralsina: ping19:30
ralsinamandel: pong19:30
thisfreddobey: I have no compunctions about deleting that either :)19:30
dobeythisfred: well if it has any ignores, those would be important19:31
mandelralsina: I've fixed all the sso test that failed on windows so right now we are missing the UI and the installer bits for it (py2exe)19:31
thisfreddobey: u1lint shows only 2 easily fixed warnings19:31
ralsinamandel: yay!19:31
mandelralsina: have you see the installer doc? what is that help button in the title bar?19:31
ralsinamandel: ignore that, windows doesn't have it19:32
ralsinamandel AFAIK19:32
dobeythisfred: ok, no ignores? (if so i think they can be added as cmdline arguments now)19:32
mandelok, I'll start without it19:32
thisfreddobey: removed the pylintrc, and it had no effect. Fixed the two issues, and rerunning the tests, then I'll propose19:35
alecuthisfred, the branch looks great. One tiny detail hoping you won't throw your monitor at me:19:36
alecuthisfred, the "if not self.uploading_filename" should be tested in test_file_download_started19:37
alecuthisfred, and perhaps add a new test for when self.uploading_filename is set19:37
thisfredright you are19:37
alecu(same for download)19:38
alecumandel, ralsina: I think windows used to have a help icon on the title bar...19:39
mandelreally? I probably never looked for it19:40
mandelalecu: by the way, I'd really welcome if you can do some reviews for the branches I proposed in sso since you worked on it19:40
alecumandel, sure19:41
ralsinathat help gives you access to the "whatis" (or similar) property on Qt widgets, BTW19:41
ralsinaI had never seen it on  windows, KDE has it though :)19:42
mandelalecu: this would be the first https://code.launchpad.net/~mandel/ubuntu-sso-client/implement_windows_keyring/+merge/5208919:42
mandelralsina: I think we are missing a big amount of steps in the design of the UI for sso, I'll do something similar to what we have on linux and then we can decide from there19:45
ralsinamandel: cool19:45
mandelalecu: is there a doc of the different screens used in sso?19:45
alecumandel, don't think so...19:46
alecumandel, do you need screenshots?19:46
mandelalecu: if you already have them it would be great, otherwhise I can see in a vm19:46
alecumandel, no, I don't have them, I would need to log out and take them while registering anew.19:48
mandelalecu: no worries I can do that19:49
alecumandel, why did you end up using deferToThread ?19:51
dobeyralsina: review my branch?19:52
mandelalecu: I want to make sure that the call was not blocking and since the windows client will have a twisted main loop I went down that path19:53
alecumandel, cool.19:53
thisfredwtf. There is one lint error that will just not be disabled. dobey: have you ever seen that before (it's happening with W0201 specifically)19:56
thisfredwhether I disable it globally or locally or with the inline comment, it keeps being reported by u1lint19:56
dobeyis that the foo not in __init__ warning?19:57
thisfredperhaps that was the reason u1lint is not used19:57
dobeyno, that is an issue with pylint19:58
dobeybut maybe the pylintrc disabled it19:58
dobeyyou are doing disable= right, and not disable-msg?19:58
alecumandel, tests ran fine, by pylint cries like this: https://pastebin.canonical.com/44495/19:58
dobeythisfred: but yes, i have seen that before a long time ago, before we even had ubuntuone-dev-tools19:59
dobeythisfred: is it complaining about it in a test?19:59
thisfreddobey: maybe because it's setting a property on a property of a property19:59
mandelalecu: take a look at the comment on top of the use of the delete19:59
alecumandel, I don't worry about how you use it, it's pylint that's whining20:00
dobeythisfred: does changing it to setattr(object, value) instead of object.attr = value work?20:00
mandelalecu: hmm I'll add the diasble comment, since it will tkae long until the patch is applied and packaged for ubuntu20:00
thisfredlet's see20:00
alecumandel, I ran "make check" and that's what the merging bot will run.20:01
dobeyerr, setattr(object, "attr", value) i guess20:01
dobeycan't remember that api exactly right now20:01
mandelalecu: yes, I know, I forgot to do that20:02
thisfreddobey, no dice, pylint is too smart in its stupidity20:03
thisfreddobey: since it's a style warning, I'd be happy to pass it as a global ignore to u1lint, but what's the switch for that? man u1lint is subhelpful20:04
dobeythere isn't a switch for it20:04
thisfredlet me see if i can just fix the issue20:05
dobeythisfred: if you "bzr diff pylintrc|grep W0201", does it show up?20:05
thisfreddobey: so u1lint and pylint behave differently in this respect?20:09
thisfreddobey: looks like it's not able to deal with self.patch very well, and it looks at the original class rather than the fake/mock one or something20:10
dobeythisfred: no20:10
dobeythisfred: all u1lint does is run pylint and parse the output20:10
dobeythisfred: but u1lint handles the W0511 warnings specially to avoid failing for XXX/FIXME comments20:11
dobeythisfred: so if this warning wasn't showing already, there is likely something in the pylintrc that was there, which ignores it at that level, rather than in the code20:12
dobeybecause pylint is buggy20:12
thisfreddobey: well running pylint passes, running u1lint does not20:13
thisfredperhaps because of the invocation20:13
dobeythat makese absolutely no sense at all20:13
thisfredI know20:13
ralsinadobey: I'll review it right away20:14
* ralsina has a3yo kid onhis lap becuse the nanny is sick20:14
dobeyshen me niao pylint20:16
mandelalecu: you did make check or ./run_tests in ubuntu sso?20:16
dobeythisfred: "pylint --output-format=parseable --include-ids=yes --rcfile=/usr/share/ubuntuone-dev-tools/pylintrc" passes or fails?20:17
thisfreddobey: it gives me yet another warning20:18
dobeyof course it would do something completely different20:19
alecumandel, sorry: ./run-tests20:19
dobeythisfred: that is how u1lint is calling pylint20:19
alecumandel, (make check is for u1-client)20:19
thisfred pylint --output-format=parseable --include-ids=yes --rcfile=pylintrc ubuntuone/ works though, so the local pylintrc must escape that warning somehow20:20
mandelalecu: ok, then if you pull the new version it should be fixed20:20
dobeythisfred: that makes no sense20:20
dobeythisfred: you were running u1lint with the pylintrc still in the tree?20:20
thisfredboth with and without20:21
dobeythisfred: and it failed in both cases?20:21
alecumandel, you have more branches to review, right?20:21
thisfreddobey: yep20:22
mandelalecu: yes, but give me a min, I've discovered that the pipeline plugin does funny things,20:22
thisfreddobey: anyhow, I think I'll add W0511 to pylintrc and leave this for another day20:22
mandelI'm fixing them20:22
dobeythat makes absolutely no sense whatsofnever20:23
thisfredyeah I can't figure it out at all either20:23
dobeymaybe we should just stop using pylint and pyflakes both20:23
dobeyor just use pyflakes everywhere20:23
ralsinadobey +1 on new-icon20:25
mandelalecu: can you take a look at https://code.launchpad.net/~mandel/ubuntu-sso-client/implement_windows_networkstatus/+merge/5209120:26
thisfreddobey: ralsina https://code.launchpad.net/~thisfred/ubuntuone-control-panel/escape-W0511/+merge/52759 should unblock nessita's branch20:26
mandelalecu: also if you can tell me where is the merge conflcit cause I dont understand it20:26
dobeyralsina: btw, did you ever get the updates installed to test unity crashiness with?20:32
mandelI'm done, see u all alter!20:34
thisfredalecu: r916 adds assertions for the filenames20:37
ralsinadobey: good question! Let's check20:38
ralsinaHey, got the ubuntu one shutdown inhibition :-)20:39
karniralsina: what's that?20:41
karniralsina: does it not let you shutdown the PC when syncing or something of that sort?20:42
ralsinadobey: no crashiness, but it seems a bit stuck in "processing the commands pool'20:43
dobeysigh, and gtk+ image loaders aer broken it seems20:43
ralsinakarni: exactly20:43
dobeyralsina: well that's got nothing to do with me. talk to facundo, or delete all your files :)20:43
ralsinakarni: of course you can tell it to shutdown anyway, but at least you know it's not syncing and it's your fault :-)20:43
ralsinadobey: hahaha20:43
karniralsina: oh. don't tell me it's gonna be like Windows updates.. aha, good!20:44
dobeyralsina: and you *do* have gir1.2-unity-3.0 installed right?20:44
ralsinadobey: I even got the unity integration working correctly it seems20:44
dobeyok good20:44
ralsinayup, 3.6.2-0ubuntu320:44
ralsinaSo that's looking good.20:45
dobeyok well hopefully i can actually make a release today20:50
ralsinaI would prefer nessita's branch to be in the release20:50
alecumandel, approved the first branch.20:50
thisfredralsina: then review mine ;)20:50
ralsinathisfred: oh, tricky :-)20:50
dobeyralsina: wrong project20:50
thisfredralsina: well it unblocks nessita's:20:50
thisfredso right he is20:51
dobeybut yes we need to release that too20:51
ralsinadobey: hahaha I am thinking product, not project ;-)20:51
ralsinathisfred: approved.So now nessita's branch has to be marked as approved again after this one merges, right?20:52
thisfredralsina: correct20:52
thisfredralsina: I will do that20:52
ralsinalaunchpad sometimes makes me feel I am programming for the DMV20:52
ralsinaThat's why on weekends I program like a hippie20:53
thisfredralsina: you'd prefer to be able to land branches with failing tests? :)20:53
ralsinathisfred: no, and I believe the DMV has a place in all proper civilizations, too :-)20:53
thisfredralsina: launchpad will happily let you do that btw, tarmac luckily will not ;)20:54
dobeytarmac will happily land branches with failing tests if i tell it to20:55
thisfredwhich you luckily don't20:55
thisfredunless we offer enough beer20:56
ralsinadobey: I talked to chipaca today about getting some "hardware" in ubuntu's private cloud for tarmac.20:58
ralsinadobey: I am scared your server will go to heaven while you are in Argentina :-)20:59
dobeyi will fix it not to21:01
ralsinadobey: don't worry, you will still manage it.21:02
ralsinadobey: unless you don; t want to21:03
dobeyi'm not worried21:04
thisfrednessita's branch approved again, let's see21:05
ralsinain fact, I don't even care to use the new hardware, as long as it's available if we ever need it21:05
dobeythe reason it's not all in the DC already is because we need to retain control over it21:06
dobeybecause we need to have certain versions of certain things installed on certain versions of ubuntu, to do all the tests21:06
dobeywe did set up a few things in the DC, but i am not even sure that tarmac is actively running any more. i have no control over it at all21:08
dobeyguess i can roll some releases now21:09
ralsinadobey: the idea is that we would have the same control as now21:10
karniverterok: facundobatista: what's the difference between FS_FILE_DELETE and SV_FILE_DELETED? the latter means a file has been created on the system? and the first.. ?21:10
ralsinaI don't want one where ww depend on faceless admins.21:10
alecumandel, both your branches show this in launchpad: "Conflict adding file run-tests.bat.  Moved existing file to run-tests.bat.moved."21:11
facundobatistathe first indicates that a file was deleted in the FS (file system), the second indicates that a file was deleted in the SV (server)21:11
facundobatistakarni, ^21:11
alecumandel, it also happened around here when merging.21:11
dobeyralsina: of course.21:11
dobeyralsina: but i also need my server to not be going to sleep while i'm away, for other reasons :)21:12
karnifacundobatista: ah, SV is the server. thanks, you _rule_, rule! ;)21:12
ralsinadobey: I image so :-) However I would prefer if our sprint was flaming-pigeon-proof :-)21:12
dobeyralsina: murphy won't allow it21:14
ralsinamurphy always wins eventually, but he wins easier when we let him.21:14
thisfreddobey: I just set my branch to approved, will that make it in?21:14
dobeyi tried to shoot murphy once, and ended up with a hole in my foot21:15
thisfredI would like it to, but it's not a blocker21:15
dobeythisfred: i know not of this 'branch' you speak21:15
thisfreddobey: https://code.launchpad.net/~thisfred/ubuntuone-client/filenames-in-notifications21:15
ralsinadobey: I once tried to shoot murphy but he came back as a robot policeman and I ended melting because I was immersed on toxic waste.21:15
thisfredthat statik is a busy guy21:16
dobeythisfred: is he on a boat?21:16
thisfredhis own island by now, surely21:17
thisfredall evil genii have one21:17
thisfredralsina: nessita's branch is merged21:18
karnibeuno: be advised I'm still working on it. minor adjustments that put the puzzle together. from what I've seen up to now I'm very happy with it.21:19
beunokarni, sounds pretty encouraging!21:19
dobeythisfred: wouldn't a true evil genius have a moveable island?21:20
thisfredHis is a giant sea turtle21:20
ralsinagiant sea turtles have so many disadvantages as mobile evil bases21:21
ralsinaok, will EOD. Will come back in 2 hours, so please mail me any review requests, please?21:21
dobeyralsina: well they are much better if you hollow them out first21:21
thisfredyeah, feeding them is expensive21:21
dobeythisfred: if you get them to shed their dependence on foreign oil, they are much cheaper21:25
thisfredhow many cars do you have again? :P21:25
dobey4, but only 3 are running right now21:26
thisfredyou leave them running while you work? That's awesome! :D21:27
dobeyyeah, for the background noise21:28
thisfredmy branch was merged, so if you wanna cut a release now, I don't have any objections ;)21:40
dobeyi think i'll revert your branch, just for spite :)21:42
dobeybah i need to take a break for a bit, my brain is obviously not all there at the moment. but i will do the releases today21:58
karniverterok: Is public link part of meta data? I receive new volume generation when I pulish a file, which is not exactly what I'd like.. Especially if a file is marked as syncable and starts to redownload. How does SD solve it?22:24
verterokkarni: public url isn't part of the metadata, at least not yet22:31
verterokkarni: syncdaemon check the hash of the file22:31
karniverterok: and redownloads only if differet, correct?22:32
karniverterok: thanks for dropping by so late and answering22:32
* verterok bbiab, need to make some mate22:33
thisfredneed to open some beer. See y'all tomorrow!22:48
karnican I use multiple --fixes switches when commiting branch ?23:24
thisfredkarni: not sure, what I usually do is multiple commits with --unchanged --fixes23:45
karnithisfred: oh, thanks!23:45
sorenkarni: I'm quite sure you can just pass multiple --fixes.23:45
karniwill try in a moment, thanks.23:45
sorenWorked for me.23:46
karnioh cool23:46

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