/srv/irclogs.ubuntu.com/2012/09/04/#ubuntuone.txt

JamesTaitGood morning all! :)08:43
* mandel re-booting for testing09:11
ralsinagood morning!10:04
mandelralsina, morning!10:08
mandelralsina, you were looking for me, right?10:08
mandelralsina, and we forgot the 1-110:08
ralsinamandel: let's do that later, everyone is still sleeping here ;-)10:14
mandelralsina, sure no problem10:14
mandelralsina, what did you need from me?10:14
ralsinamandel: nothing urgent it can wait10:39
mandelralsina, but, I'm just curious :)10:39
ralsinajust wanted an update on whether you could catchup with alecu10:39
ralsinathat kind of thing10:39
mandelralsina, oh, we can do that in the 1-110:43
mandelralsina, right now I'm trying to understand how to create a new preview for u1 payment sine alecu already did some of the work in vala10:44
ralsinaok cool10:44
mandelralsina, I also got to understand the arch of the lenses.. so far they have given us a basic skeleton that does nearly nothing.. I wonder how is the preview and the lens connected..10:44
mandelralsina, do you know the internal irc room to talk about this?10:45
ralsinamandel: not really, sorry10:46
mandelralsina, ok, no worries, I'll play around.. by the way, cpp looks horrid10:47
mandel:)10:47
ralsinaok, school run10:47
ralsinamandel: good luck with that :-)10:47
ralsinamandel: mumble?12:14
mandelralsina, give me 5 mins, is that ok?12:15
ralsinasure12:15
mandelralsina, I need a pit stop :)12:15
ralsinachange your oil!12:15
mandelralsina, lets mumble :)12:18
=== eu is now known as Guest23428
=== Guest23428 is now known as adorilson
dobeythe world didn't fall apart without me, did it?12:33
mandeldobey, I little, I'm reading c++12:43
mandeldobey, which is as bad as falling apart12:43
ralsinadobey: it did, but we had an ample stock of duct tape12:43
ralsinadobey: just don't try to cross the equator dragging a cutter12:43
mandelok, I'm off to have lunch :)12:44
j0nrhey folks...12:46
dobeyhi12:47
j0nri don't suppose.....anyway to...when listening to music via the U1 website (which I do most of the time) I can scrobble to last.fm??12:47
dobeyno, there isn't12:48
alecuhello all!13:11
ralsinahello alecu113:13
dobeyhmm13:13
=== m_conley_away is now known as m_conley
popeymy u1 on ios 6 is a bit crashy :(14:16
popeyi have to kill it to get it to upload new photos14:16
ralsinapopey: looks like urbanape is not here yet14:16
popeyah, will poke him later14:17
beunopopey, hop on to the private channels14:17
popeyO_O14:17
mmccHi folks.14:22
ralsinahi mmcc!14:22
briancurtinralsina: before i get too far on this, we have the ability to package or somehow otherwise include Antoine Pitrou's twisted port for Python 3, correct?14:23
ralsinabriancurtin: no14:23
ralsinabriancurtin: we can use it by installing it manually though14:24
briancurtinralsina: because i'm working in that twisted port right now - i talked to Antoine on friday and dev-tools is touching a bunch of areas that he hasn't ported outside of a simple 2to3 run, so i'm fixing bytes/str stuff (only touching parts along the function call path that we need)14:25
ralsinabriancurtin: ouch14:26
briancurtinralsina: so, yeah, that's not really great14:26
ralsinabriancurtin: what you need is trial, right?14:27
briancurtinralsina: this is in actual twisted.http.client, in devtools txsocketserver14:27
ralsinaugh14:28
ralsinaok, no ideas there14:28
ralsina:-(14:28
briancurtinralsina: well i already fixed two or three small twisted parts to get it further along. i'm hoping this doesn't jump around to 100 functions or something. i will update14:29
mmccping mandel re https://code.launchpad.net/~mandel/ubuntuone-fsevents-daemon/commserver-tests/+merge/11739314:35
mandelmmcc, pong!14:35
mandelmmcc, hello hello14:35
dobeythese apple icon requirements are insane14:35
mmcchi mandel :) so, how important is it that processName be tested in testInitWithStruct there?14:36
briancurtinralsina: although it would be blocking, i guess i could just rewrite it to use urllib to avoid twisted.web.client.getPage all together, maybe with a TODO to change it when its ported14:36
mmccmandel (in FSEventTests.m)14:36
ralsinabriancurtin: could be14:36
mmccdobey: which parts? can I help?14:36
briancurtinralsina: i'm writing to exarkun now, unless he has something immediately i'll try that route14:36
dobeymmcc: all the @2x junk14:36
ralsinabriancurtin: ok, that's a plan14:36
mandelmmcc, not very.. it was a test to ensure that we do get called.. I think and assertion of it not being null will be more than good enough14:37
mmccmandel: sounds good. I'm still not totally sure why the process name is different on mine, but if it's not critical it might be worth a tweak to avoid that issue14:37
mandelmmcc, yes.. how busy are you.. I mean I need to work on the dash stuff, can you overtake those branches fix what is appropiate and do an MP14:38
mandelmmcc, I can find time for reviews.. but coding is a diff story14:38
mmccmandel: yeah, sure, no prob14:39
mandelmmcc, thx a lot, really appreciate it :)14:39
dobeybriancurtin: if that testcase code in devtools could just not use twisted at all, it would probably be best to go that route. the less twisted we use there, the better.14:40
briancurtindobey: sounds good14:43
ralsinaLooks like I have to go do something really quick. Please have the standup without me, I'll read it when I get back.14:52
mandelme15:00
dobeyme15:00
briancurtinme15:00
mandelalecu, mmcc ?15:02
mandelthisfred, ?15:02
mmccme15:02
alecume15:03
dobeymandel: go15:03
mandelDONE: Compiled and installed unity from source to get a grip on how things are done. Read lots of code to understand how we lenses and dash previews interact.15:03
mandelTODO: More playing around with code. Talk with alecu about dealing with the password.15:03
mandelBLOCKED: no15:03
mandeldobey, please15:03
dobeyDONE: holiday, reviews, started icon generation work, started music store poking15:03
dobeyTODO: icon magic, music store15:03
dobeyBLCK: None.15:04
dobeybriancurtin: go15:04
briancurtinDONE: holiday, ported some of the path we need in t3k to finish dev-tools porting...but we're not going that way15:04
briancurtinTODO: port twisted.web.client.getPage usage to a urllib-based function, removing twisted from the equation. this should be the end (i really, really hope...)15:04
briancurtinNEXT: mmcc15:04
mmccDONE: holiday, pyobjc, reviews15:04
mmccTODO: daemon branches, menu icons, pyobjc?15:04
mmccBLCK: no15:04
mmccNEXT: alecu15:04
alecuDONE: started with dash work, misc mumbles15:04
alecuTODO: more dash and music-lens15:04
alecuBLOCKED: no15:04
alecubriancurtin: the porting of getPage to urllib, is that on devtools?15:06
alecubriancurtin: or on sso?15:06
briancurtinalecu: devtools15:06
alecuok15:06
thisfredme? :S15:08
alecubriancurtin: are you also replacing ubuntuone.devtools.testing.txwebserver.HTTPWebServer ???15:08
thisfredoh whew, no ralsina :D15:08
thisfredDONE: u1db basic auth TODO: u1db-servers get_all_docs | u1db playlists BLOCKED: no15:09
briancurtinalecu: i didn't have plans to since it hasn't yet affected anything, but should i do so? doesn't look like it'd be hard to replace with stdlib15:10
dobeybriancurtin: it might be harder than it looks. there are a few annoying differences between BaseHTTPServer in 2 and 3 that i ran into when trying to make the example code for python-oauth work on both15:17
alecubriancurtin: the thing is that txwebserver.HTTPWebServer will block if you try to use urllib to read from it.15:18
dobeygrr15:18
briancurtinnice...15:18
alecubriancurtin: and you can't easily replace txwebserver.HTTPWebServer without changing all the tests on sso that use it15:18
alecubriancurtin: unless you make urllib run in its own thread... but this opens a bigger can of worms.15:19
mandeljoshuahoover, ping!15:25
joshuahoovermandel: pong15:25
briancurtindobey: how annoying were those differences? like unworkable, or do-able but annoying?15:26
mandeljoshuahoover, is there some way to do 'testing' music purchases?15:26
mandeljoshuahoover, or do I have to search for free music?15:26
joshuahoovermandel: right, you'll want to search for free tracks on 7digital's site and then find those in the music store to test a full loop15:27
mandeljoshuahoover, ok, thx..15:27
dobeybriancurtin: doable, but i was unable to get it working such that the client and server could run under the different versions; both had to be running under 2 or 3 together15:34
dobeymandel, joshuahoover: you may have difficulty finding free tracks in stores other than the US store, though :)15:34
briancurtindobey: interesting. thanks15:34
joshuahooverdobey: ah, i guess i've never looked for stores other than the US :)15:35
mandeldobey, yes, there are very very few..15:35
mandeljoshuahoover, racist!15:35
joshuahoovermandel: clearly15:35
dobeybriancurtin: maybe i missed something and it was doable, but it was definitely a high point of frustration in that respect. possibly not so much an issue here though, as the trial script will only ever run that code under one version of python at a time15:36
briancurtindobey: that's what i was thinking. making it cross-version could probably come later, as long as it 2 works with 2 and 3 works with 315:37
dobeyactually15:39
dobeyoh, no; the poauth tests don't use an http server or client at all15:40
mandelwhoever though a bulldozer should have an annoying siren is an asshole..15:42
* mandel wants to go out and swear at the workers..15:42
dobeyok, need to get lunch and stuff. bbiab15:44
mandelalecu, I managed to crash unity16:38
alecumandel: doesn't sound too difficult :-)16:38
mandelalecu, hehe16:38
mandelalecu, tell me, I think I'm getting grips with this, at least getting a preview with useless info16:39
alecumandel: I'm about to go have lunch... shall we mumble for a bit?16:39
mandelalecu, by the way is there a way to get back the shortcut to kill x, it would be kind of useful16:39
mandelalecu, sure, I was about to eod, lets do it :)16:39
alecumandel: sure: there's an option in xorg.conf about that...16:40
mandelalecu, can you hear me in mumble?16:41
karnialecu: oh man.. thanks for the comment. that sucks :( how does SD work around the per process limitation on the number of registered observers?16:51
ralsinakarni: we fail, and then support tells the user to raise it :-/16:52
karniralsina: hahahahhaha :D (sorry, that.. was kinda funny :) ). Too bad..16:52
karniralsina: So we basically hope we're under the limit, eh?16:52
karniralsina: There was a user asking about sync in U1F for Android, and one of possible ways is to use inotify, so we're brainstorming.16:53
chaselivingstonralsina, mmcc: when do you guys expect a new mac build to be out?16:53
karniI have already looked into that, but the fact that its non recurisive makes it much less appealing option.16:53
ralsinakarni: yes, basically.16:57
ralsinachaselivingston: a bit under two weeks16:57
karniralsina: ack16:57
ralsinachaselivingston: maybe a little earlier16:57
chaselivingstonralsina: cool thanks, looking forward to getting it working on my mac :)16:58
ralsinakarni: it's possible to intercept the problem because it fails with a clear error, but it's not a setting users can actually change easily :-(16:58
ralsinakarni: OTOH the limit is crazy high so it doesn't fail all that often16:58
karniralsina: I see. At least it doesn't fail silently.16:58
ralsinachaselivingston: I would love to have you try the version with the root daemon16:59
ralsinammcc: how far are we from a test build that packages the root daemon?16:59
karniralsina: Hasn't the number of watches been a potential memory hog/CPU eater in the history of U1 desktop client? I haven't researched the footprint yet.16:59
chaselivingstonralsina: I'm up for trying anything, what exactly is the root daemon?16:59
ralsinakarni: not that I recall17:00
karnicool, thank you17:00
ralsinakarni: limit right now here is 128 per user, that shouldbe enough on a phone17:00
ralsinachaselivingston: it's another implementation of the code that watches for file changes17:00
chaselivingstonralsina: ah, gotcha17:00
ralsinachaselivingston: uses a different API that can only be accessed as administrator, so it needs to be run as root17:00
chaselivingstonralsina: ah ok, that makes sense17:01
karniralsina: Basically, we can't watch more than 128 folders? On one hand it sounds scary, OTOH I have no clue how many folders I store in U1.17:01
karniThat sounds kinda little.17:01
ralsinakarni: see? ;-)17:01
ralsinakarni: sorry, saw the wrong file. Make that 52428817:01
karniralsina: AHAHHAHAHAHAAH17:01
karniralsina: that is BETTER! :D17:01
karniThat indeed sounds much better.17:02
ralsinakarni:  there is a max_user_instances  and a max_user_watches I don't really recall the meaning of each in detail17:02
mmccralsina, sorry, was afk for a bit there, the root daemon is packaged now, installs and runs, but it doesn't connect correctly, mandel was looking at it but now I'm going to pick it up. Not sure what the issue is yet…17:02
ralsinammcc: ok, so let's say a couple of couples of days?17:03
karniralsina: I see. I'll look into that if necessary. Thanks!17:03
ralsinachaselivingston: so "a few days" is my scientific estimate :-)17:03
mmccralsina: sure. either one or several days…17:04
chaselivingstonralsina: haha, sounds good17:04
ralsinammcc: up to an integer number of them, I assume :-)17:04
ralsinammcc: could be a fraction > 1 though!17:04
=== m_conley is now known as m_conley_away
dobeyhmm17:44
briancurtinwow, this is much deeper than i thought. fun.18:02
dobeyhow do you open a directory as a file handle in python?18:08
dobeyos.open() hates me :(18:08
dobeymaybe i should just do subprocess.call(['touch', 'directory'])18:09
ralsinadobey: good question. let me google18:11
briancurtindobey: doesn't os.open("yourdir", os.O_RDONLY) do it?18:11
dobeybriancurtin: no18:12
dobey  File "./setup.py", line 103, in run18:12
dobey    with os.open(iconsdir, os.O_RDONLY) as f:18:12
dobeyAttributeError: __exit__18:12
dobeythat's what happens :-/18:12
briancurtinoh, we'll it's probably working but just not as a context mgr18:12
briancurtinor at least that call by itself seems to work for me18:12
dobeyoh, it just doesn't work with 'with' then?18:13
dobeyboo :-/18:13
briancurtindobey: yep18:13
ralsinadobey: you'll have to close your descriptors manually. LIKE A CAVEMAN.18:14
dobeyah, i guess because os.open returns an int18:17
dobeybut it's working at least18:18
mmccno comment: control panel backend calls "sd_client.get_current_status", which just returns "SyncDaemonTool.get_status", which makes a remote call to "SyncdaemonStatus.current_status", which just returns _get_current_state.18:29
* mmcc starts a patch to add "contemporaneous_disposition()"18:29
ralsinammcc: ubuntu-sso is a maze of twisted little passages, all alike.18:34
mmccralsina: that's all in control-panel and u1-client, but that's not to say I disagree with you :)18:34
ralsinammcc: well, the IPC in general18:36
dobeyi wonder what the best way to deal with getting this new project into ubuntu and replacing existing stuff, is18:42
dobeyralsina: did you get any design comments on bug #974637?18:54
ubot5Launchpad bug 974637 in Ubuntu Single Sign On Client trunk "[UIFe] [FFe] Qt Registration and Log-in dialogs have no way to perform the other action" [High,In progress] https://launchpad.net/bugs/97463718:54
ralsinadobey: yes18:54
ralsinadobey: I have a working fix, it just needs a bit of feedback about where to put the links18:55
ralsinadobey: so, no worries18:55
ralsinaok, my fix is a bit light on tests, but after I get design feedback, it's a 4-hour fix.18:55
dobeyright. just asking if you got that yet, and if the strings are 100% already. was just preparing the ffe request18:55
ralsinano, no strings yet, probably tomorrow18:55
dobeyhopefully we can re-use existing strings18:56
dobeyalthough, i guess those strings in question are in the control panel, and not sso18:56
ralsinahopefully, but I saw none that really fit. Perhaps from somewhere else in the translations :(18:56
ralsinathese have to go in SSO, do we have those strings in the gtk version?18:57
dobeythere were, yes18:58
dobeydon't know where exactly they were defined though. i thought there was a shared .py file for them18:58
ralsinadobey: that wouldbe ubuntu_sso/utils/ui.py but I don't see those strings there. Maybe they went away19:01
ralsinaOh wait, there they are19:02
ralsinadobey: thanks, sent design the old strings for reapproval19:03
dobeyawesome19:04
dobeyralsina: I see the "Sign in with existing" label, but which constant is the "register a new thing" label?19:06
ralsinadobey: LOGIN_BUTTON_LABEL19:07
ralsinaoops EXISTING_ACCOUNT_CHOICE_BUTTON19:07
ralsinaso one or the other depending on the pag19:08
dobeyralsina: those both mean the same thing19:08
ralsinahaha19:08
ralsinayeah19:08
ralsinaI am not at my smartest today19:08
=== yofel_ is now known as yofel
ralsinadobey: JOIN_HEADER_LABEL19:09
ralsinadobey: or SET_UP_ACCOUNT_CHOICE_BUTTON19:09
ralsinaSET_UP_ACCOUNT_CHOICE_BUTTON = _('I don\'t have an account yet - sign me up')19:09
dobeyah19:09
dobeythat one works better, yeah; though lengthy it is19:09
ralsinawell we have horizontal space for it19:12
ralsinahowever the help text for Ubuntu One on SSO is so long it's cutoff.19:12
mmccso, earlier I took over a daemon branch that mandel proposed a long time ago that needed a minor tweak, and re-proposed it. Is there any easier alternative to manually creating my own branch of everything after it in the pipeline, merging and pushing, and re-proposing?19:24
mmccI have four more branches of his to review, branch/merge/repropose, and it'd be nice if there were a faster way19:24
ralsinammcc: no alternative that I know19:26
dobeymmcc: if it's made with bzr pipelines, it might be a pain19:27
dobeymmcc: maybe you could make a new branch and only merge in the relevant changes you want to propose, and just leave the rest out19:27
mmccdobey: I believe it was. oh well.19:27
dobeyalthough, the changes in the other branches shouldn't be in the one branch you're fixing up, i don't think19:28
dobeyi thought you could just merge his branch, make your changes, push, propose, and when your branch is approved/landed, his will be as well, and the proposal should get marked as merged19:28
dobeyand then the later branches with the prerequisite on it, should be able to merge just fine19:29
dobeysave for the first try that launchpad somehow always manages to lie about the prereq status for19:29
mmccinteresting. well, let's see if that works.19:30
ralsinaI'm gone for school run, will do reviews at night, so ping me for those19:30
mmccdobey: I think the way I did my new proposal means his won't merge - I 're-proposed' his original proposal, so his is now marked as superseded19:32
dobeymmcc: then you didn't propose your branch, you reproposed his19:34
dobeymmcc: if you have separate branch under your username, you need to propose it separately19:35
mmccdobey: when I re-proposed his, I edited the source branch to be my branch… see https://code.launchpad.net/~mikemc/ubuntuone-fsevents-daemon/commserver-tests-2/+merge/12274119:35
mmccnote that I also approved it, per discussion with mandel and ralsina either today or yesterday about moving these branches along with just one review19:36
dobeyoh, didn't know lp let you do that19:36
dobeyok19:36
dobeyi don't know if it updates the prerequisites that depend on that branch though, when you do that19:37
dobeyso it may cause a problem19:37
dobeybrb, gotta run for a few19:37
mmccright, that was the problem I was asking about. now that I've tweaked his proposal, the downstream proposals need to also be changed to point to new prereq branches. looks like I was right, gonna be a pain19:38
mmccok19:38
mmccthat wasn't too bad.20:08
dobeyright; if you had just proposed your branch separately, rather than doing the tweakery that i'm surprised lp let you do anyway, it would have 'just worked' :)20:17
pavolzetorhi guys,20:20
mmccbummer. well, at least doing it wrong only led to busywork… and a learning experience :)20:20
pavolzetoris it planned to make ubuntu one startup faster?20:20
pavolzetornow it takes 1 minute to start, which is horrible and slows down ubuntu experience20:21
pavolzetorI have windows 8 too, and there is not that issue, so it has to be possible to fix20:22
dobeypavolzetor: it starts pretty much isntantly for me. how many files do you have synchronized in Ubuntu One on that computer?20:22
pavolzetortons20:22
pavolzetorI can check number20:22
pavolzetorhold sec20:22
dobeyis the same number being synced on win8 where you say you don't have the problem?20:23
pavolzetoron windows there is a lot photos too20:23
pavolzetorbut probably less20:23
pavolzetorbecause I have documents here too20:24
pavolzetorit should be aroun 120020:25
dobeypavolzetor: how are you getting the time of "1 minute" exactly?20:26
pavolzetorcounting in head20:26
pavolzetorbut it takes some time to launch iotop20:27
dobeyfrom what points though?20:27
pavolzetorso I log in20:27
pavolzetorlaunch terminal20:27
pavolzetorrun iotop20:27
pavolzetorand 99% is used by ubuntuone-syncdeamon20:27
dobeyubuntuone isn't actually started until 30 seconds after logging in on ubuntu20:27
pavolzetorI am going to try it again than, but I am pretty sure it is20:28
pavolzetorbrb :)20:28
dobeyand yes, ubuntuone has to rescan all of your synced directories, every time it starts, to see if there are any changes20:28
dobeyso the more files and folders you have in ubuntuone, the slower it will get.20:30
pavolzetor_okay20:32
pavolzetor_you were right20:33
pavolzetor_at startup it is at first ubuntuone-launch20:33
pavolzetor_than ubuntuone-syncdaemon20:33
pavolzetor_it together takes about minute to load20:33
pavolzetor_also gwibber slows it down too20:33
pavolzetor_but not that much20:34
mmcctime for lunch here.20:37
pavolzetorparents disabled wifi :)20:38
pavolzetoralso u1 control panel is slow to load (probably loading QT libraries)20:39
pavolzetorhow can I help to speed this up?20:39
mmccwhile I'm out - when does control-panel-backend get run? I need to tweak how it adds its status listener and I can't find any code actually launching it…20:39
dobeymmcc: yes; it's activated by dbus20:40
dobeymmcc: deja-dup uses it20:40
pavolzetoranyway, can somebody post link to blueprint or something20:43
pavolzetor?20:43
dobeypavolzetor: there is no blueprint for speeding things up. there has been work on reducing memory usage and such, but it's a general thing we always have to work at, and not something we can just make a goal for and then say we're done20:44
pavolzetorI see20:45
pavolzetorthese daemons should not start if Ubuntu one is disconnected at startup till it will be faster20:45
pavolzetorI think checking folders for changes is o(n) (sadly I have not SSD), I think, there should be some interface so, every app like nautilus, can after adding file submit it to ubuntu one20:47
pavolzetorotherwise, there is probably no way to do it without checking20:47
dobeywhatever scans the files, will at some point, have to actually scan the files20:55
pavolzetorso why scan files each startup?20:56
pavolzetorwe can make some dbus service called ubuntuone-daemon or so20:56
pavolzetorcom.canonical.ubuntuone sorry20:56
pavolzetorand other apps can add, remove, update fiels20:56
pavolzetorfile20:57
pavolzetorss20:57
pavolzetorlike zeitgeist works20:57
dobeybecause if something changed in the files that are synced in u1, while u1 wasn't running, it won't be known without rescanning the directories20:57
dobeyubuntuone-syncdaemon has a dbus interface20:57
pavolzetorhmm20:57
dobeybut it really shouldn't work like zeitgeist works20:57
dobeythey are two extremely different problems20:57
pavolzetorI thought, if e.g. nautilus change file, it can let know u1 (it will start automatically)20:58
pavolzetor.service file20:58
dobeyno, and nautilus doesn't really change files20:58
dobeyubuntuone has to be running all the time20:59
pavolzetorCopying20:59
dobeywell the kernel tells us when new files appear in u1 folders, while u1 is running20:59
dobeyso that's not an issue20:59
pavolzetorI see20:59
pavolzetorso issue is startup than20:59
pavolzetorthen20:59
pavolzetorcan you make ubuntuone running all the time? (ignoring adding files from other OS)21:06
dobeyit does run all the time21:06
pavolzetor[22:57] <dobey> because if something changed in the files that are synced in u1, while u1 wasn't running, it won't be known without rescanning the directories21:06
pavolzetorso this is not an issue21:06
pavolzetor(if you do not copy from other OS)21:07
pavolzetoredit21:07
pavolzetormove21:07
pavolzetordelete21:07
briancurtinhm, i have HTTPWebServer replaced...now for HTTPSWebServer :/21:07
dobeypavolzetor: well it is an issue. there are many ways you can edit files on the local computer without having u1 running21:08
pavolzetorI think, for basic users21:09
pavolzetorthey do not edit it other wat21:09
pavolzetorway21:10
dobeybut we have to handle all the situations in the most general way possible21:10
dobeyif we optimized for people who never edit their files, we wouldn't be a sync service at all :)21:10
pavolzetoralso, you can edit other files (/usr/ etc.), so with this approach, system should check all files for changes, if they are not broken :)21:10
pavolzetorI would love to have this simple mode21:11
pavolzetorI know :)21:11
pavolzetorbut most cases are editing on ubuntu (service running)21:11
dobeythe system does check; if you break those system files, the system will break.21:11
pavolzetorI meant some app21:12
pavolzetorin /usr/share21:12
pavolzetorat least for mine it was not checked ;)21:12
dobeyyour what?21:12
pavolzetorI created PPA with my app, and then installed it via APT21:12
pavolzetorlater edited file in21:13
pavolzetor /usr/share21:13
pavolzetorto test something21:13
pavolzetorand I haven't got any warning from system21:13
dobeyyes, and had you broken the syntax of that file, the app would have broken21:13
dobeywhether it be in a subtle or perhaps not so subtle way21:14
pavolzetoryes, but my point is21:14
pavolzetoru1 should be some kind of key part21:14
pavolzetorlayer of ubuntu21:14
pavolzetorso everybody runs u121:15
pavolzetorif they have default installation21:15
pavolzetorand I would not care about modifications from other distros (win is not an issue)21:15
pavolzetorso if I connect my camera21:15
pavolzetoror it would be even better to hide files/folders layer21:15
pavolzetorshotwell pops up (no nautilus choice)21:16
pavolzetorand shotwell is synced via u121:16
pavolzetorso user do not handle files21:16
pavolzetordoes21:16
ralsinapavolzetor: and you can only have 5GB of files without paying.21:16
pavolzetorand then u1 scanning should not be an issue (i know, somebody special can modify these files from e.g. fedora, but)21:17
pavolzetorI have 25 gb21:17
ralsinapavolzetor: not just from fedora.21:17
pavolzetorralsina: there could be choice about selecting particular pictures21:17
ralsinapavolzetor: root has permission for changing files21:18
pavolzetorralsina: you can get 25 gb for free21:18
ralsinapavolzetor: you have to cheat or get 40 friends to sign up21:18
ralsinapavolzetor: system processes can change files when you are not logged, too21:18
pavolzetorralsina: but as dobey pointed out, they can see from kernel21:18
ralsinapavolzetor: I am leaving for some parenting work, but trust me, if it were that easy, we would have done it ;-)21:19
pavolzetorralsina: I suggest to have some layer (u1), handling storage and every app has to use it21:19
ralsinapavolzetor: and we have to modify all apps...21:19
dobeyi tried to write software that behaved that way once. then it went off and sent some guy back in time to kill john conner21:19
ralsinapavolzetor: sounds like an interesting idea that is only remotely related to what u1 is :-)21:20
pavolzetorralsina: that's true, it was not cheating, it was accident and I reported bug (not fixed probably yet)21:20
ralsinapavolzetor: it is fixed but we are letting you guys keep it ;-)21:20
pavolzetorralsina: u1 can be file storage layer, so you can plug sky drive or so later21:20
ralsinapavolzetor: how do you accidentally create 40 throwaway subscriptions?21:20
pavolzetorralsina: thanks :)21:20
pavolzetorralsina: it wasn't by subscriptions21:21
* ralsina is not speaking in behalf of Canonical whom may decide to cut that off anytime21:21
ralsinapavolzetor: anyway21:21
pavolzetorralsina: I am not aware of this bug, mine was, I registered u1 music trial and canceled it21:21
ralsinapavolzetor: yes, u1 could be a layer above storage which synced to the cloud. However, syncing everything ijust doesn't work.21:22
pavolzetorralsina: and 25 gb stayed, you can check if it is fixed21:22
pavolzetorralsina: I would let user to decide what to sync21:22
ralsinapavolzetor: for example, if you sync a sqlite database and you use it heavily on two devices, you will generate conflicts faster than you can upload the changes21:22
ralsinapavolzetor: then it's not a thin layer over storage21:22
pavolzetorralsina: there can be some policy, so layer check, if changes are made often and block it21:23
pavolzetorralsina: I believe for future it is essential to have something like that21:23
ralsinapavolzetor: the odds of gettting that to work for a majority of users is null21:23
ralsinapavolzetor: if you figure out how to do it, you will make a ton of money21:23
ralsinaSo far, we couldn't :-)21:24
pavolzetorralsina: how to do what, I am a little lost21:24
ralsinapavolzetor: how to create something that transparently syncs what the user tells it but blocks the problematic files, is easy to use, doesn't require a ton of maintenance, provides enough storage to be useful and works crossplatorm21:24
ralsinapavolzetor: if you hit those points, you have it made21:25
ralsinaCurrently we have: works crossplatform, doesn't require a ton of maintenance, is easy to use and sycs transparently.21:25
pavolzetorralsina: I think majority does not use two devices at once21:26
ralsinapavolzetor: phone and pc21:26
ralsinapavolzetor: phone, tablet and pc21:26
ralsinapavolzetor: phone tablet pc and website21:26
pavolzetorralsina: I see, but you need low latency only for one21:26
ralsinapavolzetor: you want low latency too? Ok, let's add it to the requirements :-)21:27
pavolzetorralsina: I mean, when I am on phone, I do not use pc at same time21:27
pavolzetorralsina: so phone can be slower21:27
ralsinapavolzetor: slower doing what? Syncing only once in a while?21:28
pavolzetorralsina: the problem would be race condition21:28
ralsinathat actually makes the conflicts harder to resolve21:28
ralsinaif we knew every device is *always* connected, we could just use locking21:28
dobeypavolzetor: the phone app doesn't do synchronization21:28
ralsinathat too21:29
pavolzetordobey: what phone app? you mean u1?21:29
dobeypavolzetor: yes21:30
pavolzetordobey: doesn;t it sync files?21:30
dobeypavolzetor: no. you can download files to your phone, though; and it can auto-upload new photos you take. but it does not keep them in sync21:30
pavolzetorralsina: for that disconnected, I still assume user uses one device at particular time, so I would record changes and sync it21:32
ralsinadobey: you have a strange 4 day request from 9/10/12 to 12/10/12 is that an error?21:32
pavolzetordobey: I see21:32
ralsinapavolzetor: I could draw you a diagram showing how that doesn't work :-(21:32
dobeyralsina: no. why is it strange?21:32
ralsinabecause you also asked for the 12th?21:32
ralsinaso you are asking for it twice?21:33
dobeyralsina: eh? i also asked for the 8th21:33
ralsinacolumbus day is the 8th? Ok then :-)21:33
dobey8th is national holiday, 9-12 regular holiday21:33
pavolzetorralsina: why? could you send me a link, I meant something like "journal"21:33
ralsinadobey: there you go!21:33
dobeythanks21:34
ralsinapavolzetor: let's assume there are two devices A and B and a single file called F21:34
ralsinaBoth devices start disconnected21:34
dobeylet's not asusme anything21:34
dobeyassuming == broken software :)21:34
ralsinaEdit in A.21:34
ralsinaEdit in B.21:34
ralsinaConnect B21:34
ralsinaConnect A21:34
ralsinaWhat is the true, valid version?21:34
pavolzetorralsina: later one I would say21:35
ralsinadobey: I am trying to show that this software would not wrk, so allow me ;-)21:35
ralsinapavolzetor: then what happens to the changes you made in A?21:35
pavolzetorralsina: I would discard it21:35
ralsinapavolzetor: ok, you just pissed off half the users :-)21:35
pavolzetorralsina: :), I like to do that, or just allow editing when user is online21:36
dobeythat's what conflicts are21:36
pavolzetorralsina: did I piss other half?21:36
pavolzetordobey: so you have to be online to avoid them right?21:37
pavolzetordobey: or ask user to resolve them21:38
dobeypavolzetor: no. in the situation ralsina just described, it should result in a conflict when the two computers try to sync21:38
pavolzetordobey: but there is no way for computer to decide, how to resolve them21:39
dobeyright, the user will have to decide that21:39
pavolzetordobey: hmm, I do not know then how do I fix21:41
pavolzetordobey: I would like to have at least offline reading, but there is no way to decide if user read it or not if it is online21:42
dobeyi don't understand what you mean21:42
pavolzetordobey: e.g. I have app on phone21:42
pavolzetordobey: I read something (like article), and if it is cachced offline and I turn my pc, I do not see I read it21:43
pavolzetordobey: so I assume best solution is to require for app to be online21:43
pavolzetordobey: how other apps solve tihs?21:44
dobeyin ubuntu one?21:45
pavolzetordobey: yes, or google reader21:45
dobeyubuntu one doesn't care if you read articles. and you can't know if some other device read the same article or not, unless both are connected somehow (typically via some service like google, u1, etc)21:45
dobeybut both devices have to connect and synchronize to know what's what21:46
pavolzetorI see21:46
pavolzetorthnkas guys for your time, I will think about it, gotta go to bed :)21:46
pavolzetorthis is one issue I need to solve for my app too21:46
ralsinadobey: we are either getting old, or they are getting too young.21:47
dobeyheh21:52
dobeyoh, look at the time. i think i need to gtfo :)21:53
ralsinahahaha22:01
mmcchey, looks like I missed quite a conversation22:03
dobeylater all22:04
mmccbye dobey22:04
mmccso the dbus interface to dbus_service - It looks like it's a separate process and will thus always create its own ControlBackend object, even though it first checks whether it has one before it creates it…22:06
mmccthe reason I'm looking at this is that I stumbled on the cause for bug 104419722:07
ubot5Launchpad bug 1044197 in Ubuntu One Control Panel "sync menu and sync indicator in main window are out of sync" [High,New] https://launchpad.net/bugs/104419722:07
mmccthere's one backend with one variable for a status changed callback, and both indicators set that variable22:07
mmccso it needs to be a list of callbacks22:07
mmccand I'm looking at the places that set it, and this dbus backend checks if the callback is none before setting it, even though it should always be none…22:09
ralsinammcc: interesting22:11
ralsinammcc: I don't remember enough of that code to follow it right now22:12
ralsinammcc: maybe mail? I can try to assist a little tomorrow, maybe22:12
mmccralsina if you're curious, it's ubuntuone/controlpanel/dbus_service.py:281 where it checks it, and starting at line 596 is the init…22:13
mmccralsina: sure, I'll just propose what i think is the right solution and mail you the proposal…22:13
ralsinammcc: I'll try to take a look tonigh22:13
ralsinat22:13
ralsinaawesomer22:13
mmcclooking at annotate to see if I can figure out why that code was there22:14

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