mmcclater, will be back tonight to test this proxy-tunnel exe finding branch on win/linux00:14
=== eu is now known as Guest55512
=== Guest55512 is now known as adorilson
mandelmorning all!09:08
JamesTaitGood morning all! :-D09:16
gatox_ultragood morning!11:20
=== gatox_ultra is now known as gatox
mandelgatox, buenas!11:37
mandelgatox, how is everything going? managed to fix the compilation issues?11:37
gatoxmandel, manage to reinstall everything..... i'm installing some missing depedencies and to restart compilation11:40
mandelgatox, ok, let me know if you need any help, atm I'm removing the header hack11:41
gatoxmandel, ok...... in theory i finish with the error branch, and i was going to implement the detection oof that preview in libunity and move forward with that11:42
gatoxmandel, i justtttttttttt realize that the folder with libunity, unity and nux with everything compiled (plus 3 branches of that) is 5gb11:44
mandelgatox, it makes us feel smarter ;)11:44
alecuhello everyone!12:08
gatoxalecu, hi12:10
karniGood morning!12:17
* gatox compiling compiling compiling12:26
gatoxkarni, o/12:26
gatoxkarni, give me 5 o/\o12:27
* karni high fives gatox o/\o12:27
mandelgatox_, gatox you guys ran out of hd space and the compiler is complaining abou it12:50
gatoxmandel, TRUE!12:51
gatoxmandel, all the problems!!!!! \o/12:51
ralsina_good morning12:52
gatoxralsina_, hi12:52
mandelralsina_, morning!12:55
ralsina_morning gatox, mandel!12:55
mandelralsina_, good news for you, we do not longer have the title hack :)12:55
ralsina_and karni12:55
* ralsina_ does the happy dance12:56
karnimorning :)12:56
ralsina_mandel: clarify, you mean you have a branch that fixes it?12:56
ralsina_mandel: or is it really gone gone, ding dong the witch is dead gone?12:56
mandelralsina_, I have the following: a branch that exposes payment previews in libunity, a branch of unity-lens-music that uses it, a branch ol unity that uses it with no checks on the title but the typo of preview (base payment preview class)12:57
ralsina_mandel: awesome12:58
mandelralsina_, so it is gone and should allow unity work correctly with all payment previews as long as they extend from PaymentPreview12:58
ralsina_mandel: now let's make those stop being branches :-)12:58
mandelralsina_, I need to do some clean ups and will propose step by step12:58
ralsina_mandel: awesome*212:58
karniralsina_: FYI last night I found a peculiar bug, which seems to use different SQL projection for two consecutive, same db queries. I'll continue looking into that now.13:05
ralsina_karni: that does sound peculiar13:05
karniYou can imagine me throwing wtf's at 4 AM :/ (and no, I wasn't tired at that point, other than tired with this bug)13:06
mandelgatox, how do you feel trying to compile by branches and get them running in your machine?13:17
gatoxmandel, "by branches" or "my branches"?13:17
mandelgatox, you should be interested in the changes I made in unity and libunity to use gir so that we no longer need to check the title13:18
gatoxmandel, send them this way...... which is the worst thing that could happend? need to restart everything again for 50000 time...... ja! that doesn't scares me anymore!13:19
* alecu looks up "sql projection"13:19
mandelgatox, they area lp:~mandel/avani/libunity-add-music-payment and lp:~mandel/avani/generic-payment-preview13:21
ralsina_alecu: what goes after SELECT :-)13:21
mandelgatox, the generic one is based on the work you have done in the creation of a base class13:21
ralsina_alecu: that's what you get when you let the wrong people do language design (yet if you consider a database as a multi-dimensional space, where each column is a space, it makes lots of sense)13:22
ralsina_"is a dimension" I meant13:22
alecu"""it's a function which takes an input (e.g. a database row) and produces an output (e.g. one of the columns from the row, or perhaps some calculation based on multiple columns)."""13:23
mandelalecu, if you use the above mentioned branch of libunity you will be able to compile lp:~mandel/avani/unity-lens-music.ubuntuone-purchase-take2 which is based on the work you did in the scope but uses the new preview class (I need to do the same for the error page)13:23
alecumandel: awesome!13:23
ralsina_alecu: like I said "what you put after SELECT"13:24
ralsina_and before FROM13:24
ralsina_or WHERE13:24
alecuyes, my intuition told me the same regarding space and geometric projections, but the definitions seem to be contradictory13:25
alecuor at least slightly non equal.13:26
ralsina_it uses custom dimensions ;-)13:26
alecukarni: what did you meant by "sql projection" in your statement above?13:27
gatoxmandel, now i'm going to start compiling your branches......  i need to do a unity --replace after with your branches?13:27
karniralsina_: exactly what ralsina said. what goes after SELECT (sorry, didn't read last few lines)13:27
karnialecu: The problem is:13:27
karnialecu: initial projection is [_id, song_id, song_title, ...]13:27
mandelgatox, nah, just run the dash from the build dir13:27
karnialecu: and if you load the screen the second time, [playlists_songs._id, songs.song_id, song_title, ...]13:28
karnialecu: The problem is there are many layers of abstraction13:28
mandelgatox, although to see it working also compile and run lp:~mandel/avani/unity-lens-music.ubuntuone-purchase-take213:28
gatoxmandel, ah ok13:28
karnialecu: CursorLoader <- Loader <- ContentProvider <- SQLiteDatabaseHelper <- SQL13:28
mandelgatox, that has the scope that creates the preview, and as soon as we have you erro page we can do a full test :)13:28
ralsina_karni: you are probably getting a side effect of "optimization"13:28
karniralsina_: Well, I'll tell you one more detail!13:29
mandelgatox, if you take a look at the standalone payment app you will notice that it uses all the unity protocol methods to create the preview model, that is the extra work that had to be done :)13:29
mandelsuper easy13:29
karniralsina_: metadata speed up works fine, is tested along content provider operations, and works only in SyncService. *If* we want to delete an item from a playlist, we need the _id column from playlists_songs, and the rest of columns (LEFT JOIN) from the songs table.13:30
karniralsina_: To make that work, _id is mapped to playlists_songs._id, and delete works as expected, but that breaks the album view (and I do _not_ know why, because it should NOT be touching this part of content provider, this is not what this content resolves to).13:30
ralsina_karni: sigh13:31
karniralsina_: To make things funny, if I disable that column mapping, so _id maps to songs._id (in the playlists_songs view), album view has proper projection!13:31
karniNow, that's a "wtf"13:31
ralsina_karni: I am guessing you ran into a bug somewhere in the stack13:31
ralsina_karni: which of course, helps you not at all13:31
karniralsina_: Yes, I would assume so.13:31
karniWell, I'll do my best.13:31
* karni dives back in13:32
ralsina_karni: advice from running into similar things: change order of things in your query and see what happens13:32
ralsina_karni: of course it's a fragile "solution" if it works13:32
karniralsina_: :D13:32
karniI may try that :)!13:32
* karni was hoping to move that card forward yesterday13:33
ralsina_could be a limitation in sqlite's left join, it has not ben the most robust thing in the world13:33
alecukarni: can you try forcing the sql statement you want instead of letting the ORM build it?13:34
karnialecu: I thought of that. Sadly, CursorLoader (a thing that loads stuff into a Cursor asynchronously, cursor backing your list of items) expects a content Uri, projection, ect13:35
karniREAD: bases on content provider. So the answer is 'no'.13:35
ralsina_karni: example of  "left join in sqlite used to be broken" http://comments.gmane.org/gmane.comp.db.sqlite.general/7307513:35
karniralsina_: heh :/13:36
karniProgramming. Expect the unexpected.13:37
alecuralsina_: that's march 2012. I guess most androids are running a version of sqlite that's older than that for sure!13:37
alecuralsina_: so, yes: it should still be broken.13:37
ralsina_alecu: the bug was introduced in the immediately previous version13:37
mandelgatox, I'm moving to add the tests to the preview, which I think is one of my lasts tasks until you need help with the gir of the error page13:42
gatoxmandel, ack..... now i'm compiling your branches....... it seems to be going ok...... after that i need to go back to compile error-preview check if the standalone works ok...... and do the hack change for that branch13:43
mandellunch time13:57
=== mandel is now known as mandel_lunch
karnialecu: You asked about projection, here's how it looks like: https://pastebin.canonical.com/79253/13:59
karnialecu: note first 2-3 columns in [ brackets ]13:59
ralsina_karni: that's a whole load of fail :-(14:01
karnisounds about right :/14:01
ralsina_it's clearly broken generated sql, since there's no way both are righ14:01
ralsina_karni: how about doing a two-step query and filtering clientside? too slow?14:02
* karni thinks14:02
karniAs if that projection was cached.14:03
karniralsina_: I'll give myself a moment longer to understand the underlying problem. Otherwise, I'll disable delete from playlist just for time being, and get back to it later.14:04
ralsina_karni: sounds good14:04
ralsina_so, dobey!14:13
dobeypep8 has royally screwed over my plans of releasing yesterday14:13
dobeyyep, apparently there is a newer version in raring14:15
dobeyand it is spouting out a whole new slew of errors14:15
gatoxmandel_lunch, let me know when you are around..... need your wisdom :P14:25
dobeykarni: do you perhaps have an answer for http://askubuntu.com/questions/221782/android-streaming ?14:34
* karni looks14:35
karnijoshuahoover: Could you please confirm this user has music streaming enabled? http://askubuntu.com/questions/221782/android-streaming14:36
joshuahooverkarni: i'm going to have to have him contact support, i don't have enough info to look up his account14:38
karnijoshuahoover: k, thanks14:40
karnialecu: I always thought public static final would mean a constant you can't change. Well, weird things are happening.14:42
karnialecu: I print a static final array, pass that array into a method, print the array again, and.. guess what, it changed.14:43
ralsina_public static final const reallyreally14:43
karniIf it were C++, I would say "haha! that's a seg fault". Well, it's idiot proof Java. How the hell would you change a static final14:43
karniSyntax error on token "const"14:44
karniI like the reallyreally part.14:44
alecukarni: if it were C++ you could cast and change at will14:45
ralsina_alecu: that's pointer-cheating :-)14:45
karnialecu: Exactly, I would overwrite that memory block.14:45
alecukarni: but on java you are expecting a bit more stability...14:45
karnialecu: If you want, I'm happy to show you that (although I don't have a better idea than TeamViewer/VNC)14:45
karnioh wait, G+ hangout14:46
alecukarni: what are the types that are changing?14:46
alecukarni: let's14:46
karnipublic static final String[]14:46
karnialecu: let's.. ?:)14:46
dobeyfinal Destination[]14:52
karnialecu: Wanna see it? Otherwise, I'm nuking my debug stuff, and moving forward. I'm wasting time trying to understand how a static final can change. In my programming carieer I've never had such a pecurliar problem. I blame JVM.15:02
alecukarni: sorry, got distracted by the painters that are working on my balcony.15:03
karnialecu: np15:03
alecukarni: perhaps the sqlite driver is C, and that's changing the string underlying memory?15:03
karnialecu: Smart. I'll try passing a copy of that projection!15:04
karnialecu: Allow me to say - You just nailed some weird shit! Congrats :)15:05
alecukarni: that's my job. Nailing shit.15:05
karnialecu: I'll file a bug against.. Android, I think, in my spare time15:05
karnialecu: hahahah15:05
alecukarni: it gets messy with all the splashing :P15:06
karniralsina_: per alecu's suggestion (possibly native C treading my memory), I pass in a copy of the projection, and it solves the problem. That looks like a serious Android but (I think more Android than SQLite, but let's leave that for after hours)15:07
karniserious Android *bug15:07
ralsina_yes, it's a bug in the sqlite java wrapper15:07
ralsina_but isn'tjava supposed to box/unbox C strings so they don't break that?15:08
karniI never, ever had to pass a copy of a projection. Just because I'm using a mapToTable (maps column to concrete table in a JOIN) doesn't mean it should tread my static finals! ;|15:08
karniralsina_: I don't really know. I'm happy I can move forward, leaving that Android/SQLite wrapper bug for later.15:09
ralsina_karni: of course15:09
* gatox lunch! brb15:15
=== gatox is now known as gatox_lunch
mmcchi folks…15:31
mmccralsina_: I saw your note, I'll go look at the kanban15:31
ralsina_mmcc: cool, thx!15:33
=== mandel_lunch is now known as mandel
=== gatox_lunch is now known as gatox
gatoxralsina_, i'm still can't access kanba15:59
ralsina_gatox: ask joshuahoover!16:00
joshuahoovergatox: i'll have dsowen get that taken care of for you16:01
gatoxjoshuahoover, thx16:01
dobeyalecu, ralsina_: https://code.launchpad.net/~dobey/dirspec/new-pep8-warnings/+merge/136701 if you please :)16:10
ralsina_dobey: got it!16:10
alecudobey: +116:16
ralsina_also, align-to-opening-parenthesis sucks16:18
mmccI have a couple of branches pending that could use reviews: https://code.launchpad.net/~mikemc/ubuntuone-client/find-proxy-tunnel-fix-1083832/+merge/136593 and https://code.launchpad.net/~mikemc/ubuntuone-control-panel/launch-separate-darwin-menu/+merge/13526816:25
mmccthe proxy-tunnel one touched windows exe launching code, so briancurtin - if you could take a look at how it works in windows when frozen, that'd be really good16:26
mmccand if anyone wants to look at the mac packaging scripts, there's also this: https://code.launchpad.net/~mikemc/ubuntuone-windows-installer/add-cocoa-menu/+merge/13528416:27
briancurtinmmcc: i'll take a look16:27
mmccbriancurtin: thanks16:27
karniA simple MP for review, larger one coming up shortly. https://code.launchpad.net/~karni/ubuntuone-android-music/added-missing-dao/+merge/13670616:28
dobeyok, need to run for lunch and errands. bbiab16:30
mmccDo we have a writeup anywhere about how we should use the kanban lanes? I have 8 mac tasks in the backlog, am I supposed to assign myself to all of them and move them all to todo, or only the next ones, or what? Not clear on the difference between backlog and todo…16:32
dobeymmcc: no idea really :)17:32
karnidobey: we talked on internal channel a bit about that17:33
mandeladios o/17:36
karnibye mandel17:40
karnirockstar: How do you save a streamed song, if album is 'Unknown album', artist is 'Unknown artist', and song is 'Unkown title'? You probably don't even think in terms of files, right?17:40
rockstarI don't think in terms of files, no.17:41
karnirockstar: So you're free to save them by their ids (or you even don't care about that). Nice.17:50
rockstarkarni, yeah, I save them by an id.17:51
rockstarAt least, that's what we do now. I may come up with something better when I get to re-writing that part.17:51
karnirockstar: ack17:52
karniprerequisite: https://code.launchpad.net/~karni/ubuntuone-android-music/added-missing-dao/+merge/13670617:52
karniplaylists: https://code.launchpad.net/~karni/ubuntuone-android-music/playlist-ux-and-sync/+merge/13673117:53
karniLunch break18:11
dobeywhee xorg just crashed in some very odd way, again18:17
=== mmcc_ is now known as mmcc
dobeyalecu, ralsina_: https://code.launchpad.net/~dobey/ubuntuone-dev-tools/new-pep8-warnings/+merge/136801 please21:51
dobeywell i guess i should just call it a day for now22:32
dobeylater all22:32
=== eu is now known as Guest51042
=== Guest51042 is now known as adorilson

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