/srv/irclogs.ubuntu.com/2010/01/05/#ubuntuone.txt

=== sandy__ is now known as sandy|lurk
=== lamalex_2 is now known as lamalex
=== Guest89509 is now known as Xalior
=== Xalior is now known as Guest46630
=== Guest46630 is now known as Xalior
lenyAre there any plans to add Maestro or Paypal to the billing options on uo ?12:49
aquariusleny, I don't know. I'll ask12:51
lenyThanks I'm sure I'm not the only one who doesn't use _credit_ cards but has a debit card. I'll wait12:52
aquariusit's on the list of stuff we'd like to do at some future point, but we don't yet have a time when it'll happen, sorry12:52
lenyaquarius, OK, announce it on the twitter etc if/when it happends and you'll have one more customer.  Thanks12:54
aquariusleny, no problem :)12:54
=== tcole changed the topic of #ubuntuone to: Have a question? Ask tcole | https://one.ubuntu.com | https://launchpad.net/ubuntuone | Please honk if you want a music store
CardinalFangDesktop+ MEETING BEGINS.  Say 'me' to claim a slice of the stand-up meeting, then take your turn by saying DONE/TODO/BLOCKED.15:00
teknicome15:00
jblountme15:00
CardinalFangme15:00
urbanapeme15:01
aquariusme15:04
teknicorodrigo_, vds?15:05
rodrigo_me15:05
teknicoI'll start15:06
teknicoDONE: started strengthening net access, started configuring funambol for sending sms messages (#418048), some bug triaging15:06
teknicoTODO: more bug triaging, finish configuring funambol for sending sms messages (#418048), finish strengthening net access15:06
teknicoBLOCK: none15:06
tekniconext: jblount15:06
jblountDONE: Catchup from holiday, started public links web ui15:07
jblountTODO: Finish public links web ui, chat with statik about prioritiz/sing stuff for this week15:07
jblountBLOCKED: Just updated trunk and got bit by #50339515:07
jblountCardinalFang: YOU!15:07
CardinalFangDONE: cleaned up local machines.15:07
CardinalFangTODO: code reviews.  put jobs in bugs or blueprints to placate boss.  fix tomboy subsequent-revision bug in server.15:07
CardinalFangBLOCKED: None15:07
CardinalFangurbanape, if you please....15:07
urbanapeDONE: Came up with a simpler, far more brilliant plan with the help of aquarius and thisfred. Started gutting code.15:07
urbanapeTODO: Finish it up, between on-call reviewing.15:07
urbanapeBLOCK: None15:08
urbanapeThis is the dawning of the Age of Aquarius! Aquarius! Aquarius!15:08
aquarius⚀ DONE: start putting together music store screenshots for review; allow music store widget to correctly log in to website; allow dev server to see live music store; update music store blueprint with work items15:08
aquarius⚁ TODO: package rhythmbox plugin; make music store views better; make workitems of outstanding todo items; make tomboy first-sync experience nicer15:08
aquarius⚂ BLOCKED:15:08
aquariusrodrigo ftw15:08
rodrigo_• DONE: Packaging of libubuntuone. More new XML<->HTML converter work. Music store discussions. More contacts picker work15:08
rodrigo_• TODO: Conflict resolver tool in pair tool. Look at becoming a MOTU (https://wiki.ubuntu.com/UbuntuDevelopers). Make sandy's snowy test suite work with our server (http://git.gnome.org/cgit/snowy/tree/api/tests.py). Discuss with jdo and aquarius about oauth token per app, not per machine? Add envvar to override music store default location15:08
rodrigo_• BLOCKED: no15:08
rodrigo_next vds15:08
aquariuser, put "package RB plugin" on rodrigo_'s todo :)15:08
rodrigo_aquarius: yeah15:08
rodrigo_aquarius: you need to do a release first though15:09
jcastrohey wait, the rb bits are a plugin? all self contained?15:10
aquariusjcastro, it's in two halves; a U1MusicStore gtk widget, and a RB plugin which embeds the widget.15:11
jcastrooh ok, I am just wondering how much surgery will be done to rb itself15:11
aquariusNone. It's a plugin.15:11
aquariusNo hackery in RB core required.15:12
jcastroright, that makes that mail I sent you guys about talking to rb upstream moot. So, yay!15:12
aquariuswell, kinda; I spoke to RB upstream anyway, with lots of "I want to do X. How do I do it?" questions, but they were very helpful :)15:13
* jcastro nods15:13
jcastroyou two make my job very easy15:13
aquariusI try :)15:15
aquariusvds?15:15
jcastrovds?15:16
aquariusjcastro, I'm pinging vds to take his part in the standup meeting :P15:17
jcastrooh, I suppose I'll stop interrupting, sorry!15:18
vdssorry was in a call15:19
vdsDONE: working on branch to configure funambol to send sms messages #41804815:20
vdsTODO: finish this branch to setup funambol to send sms messages15:20
vdsBLOCKED: I'm waiting for the funambol support guys to answer to the ticket I've filed15:20
urbanapean editor wish: bzr integration that shows real time diffs on the documents I'm working on.16:35
urbanapeI'm sure there's an emacs mode somewhere that does it.16:36
adiroibanhi. If this is the right channel for couchdb desktop, I have one question. In Ubuntu Karmic, any couchdb database will be synced with Ubuntu One, or only notes and contacts?16:47
tcoleWell, sort of. You can create other desktop-couch databases which will be synced16:47
tcolebut that doesn't automatically apply to any database you might have in a local couchdb instance16:48
adiroibantcole: by default, couchdb replication will not create new databases16:49
tcoleah, point16:49
adiroibantcole: does couchdb desktop also handle / initialize synchronizations?16:50
tcoleI don't actually know offhand16:50
tcoleurbanape: ping16:50
adiroibanon my default Karmic system, with Ubuntu One, the couchdb also contains the test suite databases16:51
adiroibanand ~/.cache/desktop-couch/log/desktop-couch-replication.log complains about them16:51
* tcole nods16:51
adiroibanis this the right place to talk about couchdb dektop?16:53
tcoleyes16:53
tcoleI'm hoping one of the desktopcouch devs will chime in16:53
aquariushey16:54
aquariusadiroiban, any databases in desktopcouch, except for those that are explicitly excluded, will be synchronized16:54
tcolethanks aquarius16:55
aquariusadiroiban, we go a step beyond "stock" Couch replication, in that we create the DBs in other couches (Ubuntu One, other paired desktopcouch servers) that are replicated to16:55
adiroibanaquarius: I see, so I can use Ubuntu one as my couchdb in the cloud ?16:55
urbanapetcole: pong16:56
aquariusadiroiban, that depends on what you want to use it for. You certainly can access it directly, but access to Ubuntu One's couchdb, like desktopcouch, is secured with OAuth16:56
tcoleurbanape: I've got a user with a question about deleting bookmarks with bindwood -- they delete from firefox, but the bookmark is coming back16:56
aquariusadiroiban, so you can't, for example, browse Futon in a browser. You can store data in it and retrieve data from it directly, though.16:56
adiroibanaquarius: well. I have a small desktop app for keeping track of my notes and tasks16:56
adiroibanright now I'm using sqlite16:57
adiroibanbut I will be happy to move the backend to couchdb using couchdbdesktop16:57
urbanapetcole: do you know what version they're using?16:57
aquariusadiroiban, excellent! I'd love to answer all the questions I can to help you do that16:57
adiroibanthe problem is that it is written in vala16:58
adiroibani start hacking the current vapi file16:58
adiroibanand it should solve the problem16:59
adiroibanbut I was not sure about the scope of couchdb desktop16:59
aquariusadiroiban, ooh, vala. I don't think there is, yet, a desktopcouch library for Vala. This is a good chance to create one, though :) You could either bind couchdb-glib to Vala, or build one from scratch (based on an existing couchdb library? is there one for vala?)16:59
adiroibanaquarius: I assume I can look at evolution-couchdb implementation and implement the same logic in my app17:00
aquariusadiroiban, certainly, yes, or desktopcouch.records, which is Python; I don't know which would be easier for you to follow17:00
aquarius(the python would certainly be easier for me, but I'm more a Python guy than a C guy :))17:00
tcoleurbanape: I don't; I will try to find out.17:00
adiroibanaquarius: I am not aware of any „native” couchdb lib for vala17:01
urbanapetcole: is there a bug #?17:01
tcoleurbanape: right now it's still a question and I haven't converted it to a bug yet: https://answers.launchpad.net/bindwood/+question/9510517:01
adiroibanbut I think a (nice crafted) binding for couchdb-glib should do the trick17:01
aquariusadiroiban, yeah, so you can either match the desktopcouch.records API or the couchdb-glib API (or invent your own, if you prefer, although sticking with an existing one would beideal :))17:01
aquariusadiroiban, the chap to talk to about details of couchdb-glib is rodrigo_, who's currently eating dinner or something :)17:02
adiroibanI don't like inventing that kind of things :)17:02
adiroibanaquarius: yep. I will hunt rodrigo later :)17:02
aquariuscool -- couchdb-glib is necessarily a more basic API than desktopcouch.records, just because C's more basic :)17:03
urbanapetcole: thanks. I have vague recollections of that being fixed a while ago.17:03
adiroibanaquarius: thanks for the info. I am happy to hear Ubuntu One can be used as a  generic couchdb replication server17:04
aquariusadiroiban, it can indeed, yep -- desktopcouch.replication handles the replication logic (in particular, OAuth-signing replication requests and so on)17:05
adiroibanaquarius: but from the point of view of a desktop app developer, I only need to care about reading and writing the local couchdb. No need for explicity replicationrequests. Is this correct?17:07
aquariusadiroiban, totally correct. You just write to desktopcouch; your data is replicated up to Ubuntu One and down to any other paired machines you have17:07
aquariusyou don't have to do any of that replication; we take care of that for you17:07
adiroibanaquarius: great. just like in a perfect world :)17:07
aquariusadiroiban, that's the Ubuntu One Promise. ;-)17:08
adiroibanIs there a problem with Cromium and Ubuntu One webpage?17:09
adiroibanor Epiphany17:10
aquariusadiroiban, there shouldn't be; I'm using Chromium :) What sort of problem are you having?17:10
adiroibanI can not use the online note editor17:10
aquariuswhat do you mean by "can't use"?17:11
adiroibanwell. I can not save notes17:11
aquariusah, that's a server problem; it's being worked on17:11
aquariusI'm not sure where the fix is for that; CardinalFang may know more, when he's around17:12
adiroibanalso the notes and contacts are not synced with my local couchdb17:12
adiroibanI was able to copy all my evolution contact to couchdb agenda17:13
adiroibanthey were pushed to Ubuntu One17:13
adiroibanbut I can no longer access the Ubuntu one agenda in evolution17:13
adiroibanand using Futon, I can see that contacts are not synced17:13
adiroibanis this also a known problem?17:14
aquariushttp://www.freedesktop.org/wiki/Specifications/desktopcouch/Documentation/Troubleshooting has some tips for if desktopcouch has got confused and stopped working with evolution17:14
homeasvsaquarius, ping17:15
aquariushomeasvs, pong! happy new year, pal :)17:15
homeasvssame to all of you!17:15
homeasvsso I have a branch of 0.5 on launchpad that uses python-keyring17:15
aquariusyou are a hero of the revolution17:16
homeasvsobviously since python-keyring is a simpler api it cannot generate exactly the same secrets as with gnome-keyring17:16
homeasvsI don't know if you need migration code then to cover that case ?17:16
aquariusah. I was worried that might happen, but I hadn't looked closely enough into pytohn-keyring to be sure17:16
aquariusthisfred, ping/17:16
aquariushomeasvs, what are the differences?17:17
thisfredyo17:17
homeasvsaquarius, I need to fix it on maemo so that it uses an unencrypted file store, otherwise dbus activation hangs because it asks for a password on the console17:17
aquariusthisfred, desktopcouch 0.5 with python-keyring! l00k! ^^17:17
homeasvsaquarius, it's a simple api - basically set_password(service, username, password)17:17
thisfredawesome!17:17
homeasvsaquarius, so none of the extra info you guys use, but I don't think that's a big deal17:17
homeasvsaquarius, my current problem on maemo is that desktopcouch-service now starts and launches couchdb, but then hangs because it can't find an avahi service file or something17:18
aquariusso we'd need to think about migration (or, possibly, having it deal seamlessly with both, rather than forcibly upgrading your keyring password, which would be better)17:18
homeasvswell, I'd have to say that the python-keyring api is a little too light to my taste17:19
homeasvsnot to mention, blocking, so ugh imo17:19
aquariushomeasvs, erm...desktopcouch-service hangs? that's not supposed to happen17:19
homeasvsthe keys have a generic name when you look at them in seahorse, not ideal17:19
aquariusyeah, the API's not ideal, but "don't bind desktopcouch tightly to gnome" is enough of a win that we can live with the pain of blocking simple APIs.17:19
homeasvsaquarius, oh, lots of things happened that aren't supposed to happen as I ported to fedora and maemo17:20
aquariusif there was something that was non-blocking and rich and also cross-platform then that'd be, y'know, great :)17:20
homeasvsapparently my six days erlang build on maemo is incomplete as it misses all of the ssl stuff17:20
homeasvshm, that might be a good twisted project to start at some point17:20
aquariusooh, that will probably mean that it won't sync to Ubuntu One if there's no SSL :(17:20
aquariusthisfred, so, what's the best way of us looking at getting this lovely python-keyring stuff into core desktopcouch?17:21
aquariuscould just submit a merge proposal for review, but I'm a bit concerned about it being very invasive17:21
thisfredaquarius: we might need upgrade code if it is, which means we'll have to think about upgrade infrastructure, which we will need to do some day anyway17:22
aquariushomeasvs, I wonder about allowing python-keyring to optionally take extra parameters which are passed on to the underlying implementation, so you can add keynames in gnome-keyring...although that might be The Wrong Thing17:23
homeasvsaquarius, that's what I was thinking too17:24
thisfredaquarius: I don't know much about the preferred way to do this in ubuntu/desktop/python apps. There must be something we can use. Setuptools?17:24
aquariuswhat concerns me is not breaking other consumers (obvious example is couchdb-glib)17:25
adiroibanaquarius: my problem is that org.desktopcouch.CouchDB.getPort is timeout by message bus17:25
aquariusso I'd much, much, much rather not change how the keys are stored if we can possibly avoid it, rather than upgrade the key storage17:25
homeasvshttps://code.launchpad.net/~thomasvs/desktopcouch/0.5-keyring <- this is the branch17:26
homeasvsfirst commit was 'just move keyring code to one module, creating a function for each type of key access'17:26
homeasvsie, a refactoring of existing code17:26
homeasvssecond commit was 'now use keyring instead'17:26
homeasvsand third commit was 'I did something wrong in the first commit', so sorry about that17:26
homeasvsaquarius, that's probably only possible with a) changes to python-keyring or b) some still-gnome-keyring-specific code (but doable; load keyring; figure out if it's trying to us gnome-keyring; if so, use specific code)17:27
aquariusI've got no problem with changes to python-keyring if they'll be accepted upstream, which I'd think they would be if they were generic enough?17:28
aquariusI'm thinking in terms of adding an "extras" dict to calls where you can pass specific information if you *know* which platform you're on, which will be ignored on other platforms, sort of thing17:29
homeasvsto be honest I don't really understand the attributes part of gnome keyring17:31
homeasvswhat's the point of it ?17:31
homeasvsthe desktopcouch secrets still end up being combinations of usernames and passwords17:32
homeasvsone of them puts 4 different pieces of info in one secret17:32
homeasvsthe semantics aren't very obvious imo17:32
homeasvsand they're all 'generic secret' when it looks like for some of them NETWORK_PASSWORD would make more sense17:33
aquariusI can see that argument, certainly, and I'm not totally averse to the idea of changing how we store the secrets, I'm just worried that it makes it quite a bit harder to actually get this code out, because we need to upgrade all the consumers at once (bindwood, couchdb-glib, desktopcouch.records), and if you upgrade some but not others you break17:34
homeasvshm17:34
homeasvswell, it looks to me first of all that gnome-keyring uses NETWORK_PASSWORD, not GENERIC_SECRET17:35
homeasvsthe upgrade doesn't sound like that big of a deal, since the packages can require a new desktopcouch, no ?17:35
homeasvsI guess we should just talk to the author of python-keyring17:35
homeasvsI think in any case it makes sense to take at least the first and third commit on that branch, since it moves all keyring code to one specific module17:36
aquariusthe packages can require a new DC, but you'd need a new couchdb-glib as well, for example17:36
aquariusyeah, I like the refactoring a lot17:37
aquariusbecause we definitely need to do that!17:37
homeasvsaquarius, why would a new couchdb-glib be a problem ? doesn't it depend on desktopcouch ?17:37
aquariusyeah, but desktopcouch doesn't depend on it, and afaik couchdb-glib isn't locked to your DC version. So upgrading DC won't upgrade couchdb-glib17:38
* aquarius checks that he's not talking out if his arse17:38
aquariusyeah, evolution-couchdb just depends on desktopcouch, not on a specific version17:43
aquariuswish rodrigo was around :)17:43
homeasvsok, well17:45
homeasvswho starts the talks with the keyring guy to see what he thinks ?17:45
aquariusI can do that (and CC the desktopcouch mailing list, and you obviously), unless you know the chap? Kang Zhang.17:49
homeasvsno, don't know him.  yeah, please do.17:56
adiroibantrying to debug desktopcouch i got this erorrs after starting /usr/lib/desktopcouch/desktopcouch-service http://paste.ubuntu.com/351894/18:03
adiroibanany hints for solving the problem. A dbus requires to getPort will not start desktopcouch on my computer18:04
aquariusadiroiban, there's no oauth token in the desktopcouch ini file. (/home/adi/.config/desktop-couch/desktop-couchdb.ini)18:06
aquariuswhat's in that file?18:06
adiroibanthere is no such file18:06
aquariusthat'd be the problem, then :)18:08
adiroibanwho should create that file?18:09
adiroibanreading http://www.freedesktop.org/wiki/Specifications/desktopcouch/Documentation/How_Desktopcouch_Works was not of much help for this problem18:16
aquariusadiroiban, that file's created by start_local_couchdb, iirc18:17
aquariusI don't quite understand how it's not being created for you, though18:18
adiroibanI don't know how to call start_local_couchdb18:19
aquariusyou're not supposed to have to :)18:20
aquariusadiroiban, what do you get if you do: python -c "import desktopcouch"18:21
adiroibannothing ... no errors18:22
aquariussorry, back to basics a bit here; which system are you running this on?18:23
adiroibankarmic18:23
aquariusadiroiban, ok. Try this: python -c "import desktopcouch; print desktopcouch.find_port()"18:25
adiroibanup and running18:26
adiroibanit prints the right port18:26
adiroibanI can access the couchdb via Fulton18:26
aquariusbut there's no ini file??18:27
aquarius/home/adi/.config/desktop-couch/desktop-couchdb.ini doesn't exist??18:28
adiroibannope18:28
adiroibanno ini file18:28
aquariusok, baffled.18:29
aquariusI don't understand how DC is starting up if it doesn't have an ini file.18:29
aquariuscan you kill and restart desktopcouch as per the troubleshooting document, and then try the above find_port line again?18:30
adiroibani tried18:31
adiroibanthe problem is that I don't have beam.smp18:31
aquariuswhat?18:31
aquariuswhat does "killall beam.smp" say?18:31
adiroibani have /usr/lib/erlang/erts-5.7.2/bin/beam18:32
adiroibanthere is no beam.smp process18:32
aquariusoooooh.18:33
adiroibanthis was the problem18:33
aquariusperhaps, then, I'm on a dual-core processor and it runs a different erlang18:33
aquariusinteresting!18:33
aquariusso instead of killall beam.smp, try killall beam18:33
aquariusand then restart desktopcouch18:33
adiroibanwell, i used kill18:34
aquariusactually, just killall beam; python -c "import desktopcouch; print desktopcouch.find_port()"18:34
adiroibanand the process number18:34
adiroibanthe desktopcouch is up and running now18:34
aquariusis there an ini file now?18:34
adiroibanyes18:34
adiroibani killed beam18:35
adiroibanand then request the port over dbus18:35
aquariusahh, good. that's better, then :)18:35
adiroibanand I was prompted for a lot of keyrings18:35
aquariusyes. desktopcouch stores its keys in the keyring so they can be retrieved later18:36
titeuf_87using desktopcouch & python when I delete a record, that record still shows up on the different views I made18:51
titeuf_87is there a way to really delete something?18:51
titeuf_87or it's better I put a check in all my views to see if it's deleted or not? (and if so, why?)18:52
aquariustiteuf_87, at the moment, "deleted" records are actually tagged with application_annotations["Ubuntu One"].private_application_annotations.deleted = true18:59
aquariustiteuf_87, this is because CouchDB doesn't, currently, have history (where you could roll back to an earlier state), but it *will* have18:59
aquariusat which point this "deleted" hack will go away19:00
aquariusthe best thing to do is to check in the views. I know this is a little annoying :(19:00
titeuf_87oh ok, that history thing sounds neat, will be nice once that works. Thanks! I'll go add that to my views now19:01
aquariustiteuf_87, some of the desktopcouch.records stuff automatically handles this for you, but not all of it quite yet. Sorry for the inconvenience, and we want history to work just as much as you do :)19:02
nettrotone.ubuntu.com just started ISEing on attempts to save a note I'm working on.19:16
adiroibanis there a way to „see” my couchdb from https://couchdb.one.ubuntu.com/ ?20:00
urbanapeadiroiban: As in a Futon view? Not currently20:12
adiroibanurbanape: Futon, or other nice couchdb gui20:43
adiroibanmaybe somehow oauth http request can be proxied and let futon use such a connection20:44
urbanapeCardinalXiminez_: does desktopcouch.records do batchSave?20:46
CardinalXiminez_urbanape, batchSave?  No, there's no bulk method.20:49
urbanapeah. The js lib has one, and I was wondering.20:51
urbanapeer, yeah, called bulkSave20:51
CardinalXiminez_urbanape, does it do anything more than for rec in rec_list: save(rec)  ?20:51
urbanapeit wraps them into a POST, I believe, so that they all show up (or so I'm told) as one item in the _changes feed.20:52
CardinalXiminez_urbanape, I'll research it to see if we're missing functionality.  put_records(yes_plural)  would be useful if it's more magical.20:54
urbanapeposts to _bulk_docs, whatever that does internally.20:54
CardinalXiminez_Roger.  I'll run it by tf and aq too.20:55
urbanapethanks, I was just curious. Poking around. Trying to populate a test db.20:55
urbanapeeasier in Python than in Javascript, funny enough.20:56
urbanapehmm, doesn't appear that bulk documents get magically wrapped up into one sequence in the _changes feed.21:47
urbanapes/magically//21:47
urbanapethisfred: ping21:53
thisfredurbanape: pong21:53
urbanape^^ Just tested the js lib version of the bulkSave method.21:54
urbanapeit still gives each document its own entry in the _changes feed.21:54
urbanapeI don't think this undoes what we were discussing yesterday21:54
thisfredah, and increments the sequence number21:54
thisfred?21:54
urbanapeyeah, each rev gets its own sequence number21:55
urbanapeis what I meant.21:55
thisfredno, it only means you can't deduce the single move gesture21:55
urbanapeso, a bulkSave of two docs adds two sequence numbers to _changes21:55
thisfredeasily21:55
urbanapeyeah21:55
thisfredso we need to take care with what all else firefox stores for the bookmarks, if anything21:56
thisfredand make sure that's in the bookmark record's app annotations21:56
urbanapeyup21:56
thisfredthen we should be fine, at least if FF allows us to modify it again21:56
urbanapeI've got almost all the guts rewritten21:56
urbanapeit's so much cleaner now.21:56
thisfredawesome21:57
thisfredcleaning guts is what we do :)21:57
=== tcole changed the topic of #ubuntuone to: https://one.ubuntu.com | https://launchpad.net/ubuntuone | Please honk if you want a music store
tcoleEOF22:03
statikoh, so much to do22:15
tcoleindeed22:17

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