IRC log of musicbrainz-devel on 2012-08-14
Timestamps are in UTC.
- 00:06:59 [marcooliveira]
- marcooliveira has joined #musicbrainz-devel
- 00:08:20 [ianmcorvidae]
- warp: do you sometimes get "There don't seem to be any diffs!" with your script thing?
- 00:08:26 [ianmcorvidae]
- I seem to get it about 50% of the time right now :/
- 00:28:37 [ianmcorvidae]
- ocharles, warp, ruaok: what would you three think of enabling any language on beta that's 50% translated or better?
- 00:29:06 [ruaok]
- hmmm. I think I'd like to see that in action before making that decision.
- 00:29:12 [ruaok]
- 50% seems a rather low threshold to me
- 00:29:22 [ianmcorvidae]
- ruaok: remember, this is just for beta
- 00:29:40 [ianmcorvidae]
- and it's worth noting that things are in a priority order that makes that more reasonable than it sounds
- 00:29:54 [ianmcorvidae]
- for example, most things abouve 50% have all of the 'server' domain translated, and usually a lot of languages/countries/scripts
- 00:30:45 [ruaok]
- oh beta. ok. fine. :)
- 00:30:54 [ianmcorvidae]
- AR stuff and statistics stuff are the most frequent casualties in those cases, also :)
- 00:31:08 [nikki]
- hopefully something real will inspire people to translate more
- 00:31:18 [ianmcorvidae]
- that's the hope, yeah
- 00:31:21 [nikki]
- although we really need a beta switcher so people can actually *stay* on beta
- 00:31:34 [ianmcorvidae]
- what forces people off beta at present?
- 00:31:38 [nikki]
- clicking links
- 00:31:47 [ianmcorvidae]
- I mean, *which* links :)
- 00:31:48 [alastairp]
- lol
- 00:31:48 [nikki]
- edit note email, oops, no longer on beta
- 00:31:57 [nikki]
- link on irc, oops, no longer on beta...
- 00:32:00 [ianmcorvidae]
- ah
- 00:32:01 [nikki]
- subscriptions email...
- 00:32:09 [nikki]
- links from the wiki...
- 00:32:11 [ianmcorvidae]
- so you mean a user preference sort of thing
- 00:32:17 [nikki]
- a cookie basically
- 00:32:26 [ianmcorvidae]
- oh, so like the language switcher
- 00:32:27 [ianmcorvidae]
- heh
- 00:32:34 [nikki]
- that's why I created that user script, I just couldn't stay on beta long enough for it to work otherwise
- 00:32:37 [nikki]
- yes!
- 00:32:53 [ianmcorvidae]
- that wouldn't do it for emails necessarily
- 00:33:32 [nikki]
- I imagine there being a cookie saying "use beta" and if you go to musicbrainz.org and you have that cookie, it loads beta instead
- 00:33:35 [nikki]
- or whatever
- 00:34:05 [MBChatLogger]
- http://musicbrainz.org
- 00:34:05 [nikki]
- whereas right now it loads the entire mb.org page, then my user script goes "oh no you don't" and loads the entire beta.mb.org page instead, which is, well... slower :P
- 00:34:36 [ianmcorvidae]
- yeah
- 00:34:43 [ianmcorvidae]
- I've noticed that too, given I also use your script :P
- 00:35:07 [nikki]
- every time you notice it, you're noticing that you would have otherwise have gone to the wrong site :P
- 00:35:07 [ianmcorvidae]
- * ianmcorvidae re-enables that, actually
- 00:35:24 [ianmcorvidae]
- well, I've only noticed it when I just type musicbrainz.org, generally, but :P
- 00:35:45 [nikki]
- oh, I rarely do that
- 00:35:57 [ianmcorvidae]
- and searches from my browser, until I fixed that
- 00:49:56 [demosdemon]
- hmm… "Found edits"
- 00:50:29 [demosdemon]
- there should be a number there, 0 to be specific
- 00:50:46 [ianmcorvidae]
- heh
- 00:50:52 [ianmcorvidae]
- presumably, yes
- 00:51:16 [ianmcorvidae]
- whoo, inline search changeover fixes several other tickets
- 00:51:34 [reosarevok]
- :D
- 00:51:36 [demosdemon]
- I guess the /edit/subscribed_editors page doesn't like it when you're not actually subscribed to any editors
- 00:51:52 [ianmcorvidae]
- demosdemon: how so?
- 00:51:52 [reosarevok]
- Change that!
- 00:52:06 [reosarevok]
- (as in, subscribe to me, I meant - but fixing it would be good, too)
- 00:52:11 [demosdemon]
- lol
- 00:52:39 [demosdemon]
- ianmcorvidae: no 0 in "Found 0 edits"
- 00:52:43 [ianmcorvidae]
- oh, okay
- 00:52:48 [ianmcorvidae]
- that may be more general
- 00:52:53 [ianmcorvidae]
- * ianmcorvidae looks
- 00:52:59 [reosarevok]
- "Found edits - won't show you"
- 00:53:04 [reosarevok]
- :p
- 00:53:58 [ianmcorvidae]
- yeah, that just uses edit/list.tt
- 00:54:26 [demosdemon]
- there's no 0 stashed probably, so it prints null
- 00:54:30 [ianmcorvidae]
- yeah
- 00:54:37 [ianmcorvidae]
- strange that I see "found 0 edits" correctly
- 00:54:49 [ianmcorvidae]
- I guess it's just not stashing it when it doesn't even have a query to perform
- 00:56:09 [reosarevok]
- So, fix with some variation of "else print found 0 edits"?
- 00:56:21 [ianmcorvidae]
- or 'return an empty list instead of null' presumably
- 00:56:30 [demosdemon]
- that'd probably fix it
- 00:57:06 [ianmcorvidae]
- hm, it's already returning an empty list
- 00:57:07 [ianmcorvidae]
- strange
- 00:59:21 [ianmcorvidae]
- bah, I'll just see if adding // 0 fixes it
- 00:59:28 [ianmcorvidae]
- oh
- 00:59:32 [ianmcorvidae]
- tt doesn't know // :P
- 01:00:07 [ianmcorvidae]
- eh, || does it looks like
- 01:00:51 [ianmcorvidae]
- demosdemon: did you file a ticket for this?
- 01:00:59 [ianmcorvidae]
- if yes, link it; if no, make one then link it :P
- 01:01:01 [demosdemon]
- I'm about to
- 01:01:11 [ianmcorvidae]
- * ianmcorvidae has a fix, but afking for a sec
- 01:06:06 [demosdemon]
- ianmcorvidae: http://tickets.musicbrainz.org/browse/MBS-5141
- 01:06:13 [ianmcorvidae]
- cool, patch incoming
- 01:07:57 [demosdemon]
- I love that jira sent me the email that you assigned the ticket before jira sent the creation email, or the edit email
- 01:09:16 [demosdemon]
- granted, that's probably a gmail thing and not a jira thing since all three emails have the same time stamp
- 01:10:19 [ianmcorvidae]
- nah, jira sends things in a weird order
- 01:10:27 [ianmcorvidae]
- I've noticed it do that before too
- 01:18:06 [bitmap]
- * bitmap wonders why we have an isrcs inc flag for /ws/2, but don't require one for iswcs
- 01:18:33 [ianmcorvidae]
- er, didn't we decide to add an iswcs inc flag for works?
- 01:18:36 [ianmcorvidae]
- maybe not
- 01:18:52 [ianmcorvidae]
- I guess the reason is that we didn't start with multiple ISWCs, so it made sense to just include them, and now people rely on that
- 01:19:04 [reosarevok]
- * reosarevok would like to see those "people"
- 01:19:17 [ianmcorvidae]
- theoretically :P
- 01:20:07 [bitmap]
- well, when thinking about fixing http://tickets.musicbrainz.org/browse/MBS-4792 (which is easy to fix) it seems wasteful to always include the iswcs
- 01:20:38 [bitmap]
- but I guess now that people depend on not having an iswcs flag…
- 01:21:20 [bitmap]
- or we could only make it required for /ws/2/release and introduce another inconsistency :P
- 01:22:14 [ianmcorvidae]
- we could add a 'no-iswcs' flag
- 01:22:39 [ianmcorvidae]
- which is inconsistent but at least allows people to get rid of the iswcs when those are wasteful
- 01:23:30 [dimonov]
- dimonov has joined #musicbrainz-devel
- 01:25:15 [bitmap]
- hmm. it might be better to just always include them, since they don't take up a huge amount of space relative to the rest of the request.
- 01:26:40 [bitmap]
- * bitmap will just submit a code review and see what people say :P
- 01:26:53 [ianmcorvidae]
- haha
- 01:26:55 [ianmcorvidae]
- sounds good
- 01:29:09 [nikki]
- jira definitely sends things in the wrong order. it annoys me :P
- 02:16:16 [kepstin]
- kepstin has joined #musicbrainz-devel
- 02:22:21 [rembo10]
- rembo10 has joined #musicbrainz-devel
- 02:24:24 [demosdemon]
- I find it queer that TuneIn.com is telling that woman that they get their information from MusicBrainz, yet no where on their site is MusicBrainz mentioned. Yeah, that's the nature of the beast with this kind of data and the db is public domain, but that's just not cool, imo
- 02:24:41 [demosdemon]
- also, they're probably using db dumps, so it'll take a while for that edit to reach them
- 02:25:06 [ianmcorvidae]
- yeah, totally possible
- 02:25:12 [ianmcorvidae]
- might reach out to them on that count
- 02:26:37 [reosarevok]
- Admittedly, if they're going to suck that much at using our info, maybe it's better they don't say :p
- 02:26:45 [demosdemon]
- heh, true
- 02:27:08 [demosdemon]
- at least the BBC makes it look pretty
- 02:27:18 [demosdemon]
- and they give attribution
- 02:28:23 [demosdemon]
- but, tunein's faq says to email them if there's any issue with the data...
- 02:29:07 [demosdemon]
- that benefits the data none
- 02:29:21 [reosarevok]
- Maybe they didn't want to look into it and they just told her it came from MB so she went disturb someone else :p
- 02:29:32 [demosdemon]
- heh, that's a big possibility
- 02:29:56 [reosarevok]
- In any case, I guess mailing them couldn't hurt
- 02:32:50 [bitmap]
- wow, now I know why we have bugs like http://tickets.musicbrainz.org/browse/MBS-4844
- 02:32:57 [bitmap]
- the ws2 tags code makes no sense o_O
- 02:45:47 [Essobi]
- Essobi has joined #musicbrainz-devel
- 02:48:31 [bitmap]
- our tests never caught any of this because they only test tags on individual lookups, which the code just happens to work for
- 02:50:43 [ianmcorvidae]
- heh
- 02:50:46 [ianmcorvidae]
- write more tests!
- 02:50:48 [Essobi]
- It's hard to predict all of the failure scenarios in unit testing, imo..
- 02:51:09 [ianmcorvidae]
- ours have some pretty bad warts though, heh
- 02:52:59 [Essobi]
- I've had a helluva time trying to get server installed..
- 02:54:29 [Essobi]
- Perl dependancy hell it would seem..
- 03:00:42 [alastairp]
- Essobi: are you using carton?
- 03:04:51 [DremoraLV]
- DremoraLV has joined #musicbrainz-devel
- 03:12:32 [Essobi]
- alastairp: I've tried with and without...
- 03:12:43 [Essobi]
- alastairp: either way I get a dependancy failure..
- 03:13:11 [ianmcorvidae]
- Essobi: pastebin an error log, if you could, otherwise we can't really help
- 03:14:08 [Essobi]
- http://pastebin.com/nbe941UP
- 03:16:29 [ianmcorvidae]
- hm, pastebin isn't loading for me
- 03:16:30 [ianmcorvidae]
- bah
- 03:16:36 [nikki]
- did you run carton install --deployment beforehand?
- 03:17:11 [ianmcorvidae]
- huh, it works in firefox
- 03:17:12 [ianmcorvidae]
- weird
- 03:17:32 [ianmcorvidae]
- yeah, you need to actually install dependencies :)
- 03:17:40 [ianmcorvidae]
- unless you have a different error log for when you tried to do that
- 03:17:48 [ianmcorvidae]
- which was what I was looking for, if dependency installation failed
- 03:18:19 [Essobi]
- nikki: yup
- 03:20:37 [marcooliveira]
- marcooliveira has joined #musicbrainz-devel
- 03:31:41 [rembo10]
- rembo10 has joined #musicbrainz-devel
- 03:43:36 [kepstin-laptop]
- kepstin-laptop has joined #musicbrainz-devel
- 03:45:12 [marco-oliveira]
- marco-oliveira has joined #musicbrainz-devel
- 03:47:32 [Essobi]
- ianmcorvidae: I ran carton install... should I nuke /local and run it again?
- 03:47:36 [Essobi]
- ./local*
- 03:48:08 [Essobi]
- Or just run install again and log it?
- 03:48:09 [ianmcorvidae]
- just running it again should produce the same errors, unless it magically fixes them, no need to nuke /local first
- 03:48:31 [Essobi]
- I've ran it several times just for the record...
- 03:49:34 [marcooliveira]
- marcooliveira has joined #musicbrainz-devel
- 03:49:57 [ianmcorvidae]
- yeah, so it's not likely to fix it then, but I still need to see what's wrong to give you a recommendation about fixing it :)
- 03:50:13 [Essobi]
- I'm not a complete newb, I've done this before sometime ago, and I've been building other peoples code since the 90s. :D
- 03:51:30 [Essobi]
- Hmm.. It installed 1 lib.. it did that last time I ran it which would have been the 3rd time.
- 03:51:42 [Essobi]
- I'm running it again to see if it does it again. :D
- 03:54:50 [marco-oliveira]
- marco-oliveira has joined #musicbrainz-devel
- 03:56:19 [Essobi]
- lol.. it keeps installing Successfully installed libintl-perl-1.20
- 03:56:36 [Essobi]
- everything else it says I have..
- 03:57:19 [Essobi]
- yea.. same error.. should I nuke ./local now?
- 03:59:17 [Essobi]
- Meh..
- 04:00:08 [Essobi]
- ianmcorvidae: Any ideas?
- 04:03:26 [demosdemon]
- pastebin your log when you carton install --deployment
- 04:04:58 [Essobi]
- I just nuked ./local and logging it now
- 04:09:02 [Essobi]
- oh ya.. it's throwing error
- 04:09:04 [Essobi]
- s
- 04:11:32 [Essobi]
- *twiddles thumbs*
- 04:11:45 [Essobi]
- demosdemon: does it matter where I send it?
- 04:12:14 [demosdemon]
- anywhere but in irc
- 04:12:24 [ianmcorvidae]
- just put it on pastebin or something
- 04:12:31 [ianmcorvidae]
- or any other pastebin equivalents :P
- 04:12:32 [Essobi]
- roger that
- 04:12:46 [Essobi]
- didn't know if mb had it's own pb somewhere..
- 04:25:52 [Essobi]
- *sigh* This is taking forever.
- 05:04:01 [Essobi]
- ianmcorvidae: demosdemon: http://paste.ubuntu.com/1146249/
- 05:05:25 [Essobi]
- Jeez that took forever. Heh.
- 05:05:35 [ianmcorvidae]
- hm, odd
- 05:05:51 [ianmcorvidae]
- you might try doing plain 'carton install <module name>' for the ones that it failed or bailed out on
- 05:05:56 [ianmcorvidae]
- e.g. 'carton install Test::Warn'
- 05:06:18 [ianmcorvidae]
- there's a bunch of those; what linux distro are you using?
- 05:06:40 [Essobi]
- ubuntu 12.04
- 05:06:47 [ianmcorvidae]
- incidentally, the inc::Module::Install stuff you can probably ignore
- 05:06:50 [ianmcorvidae]
- hm, okay
- 05:07:25 [ianmcorvidae]
- anyway, I guess what I'd try is individual installs for the things that failed
- 05:08:01 [ianmcorvidae]
- I haven't seen those particular things fail before, which is odd, but it may not be meaningful
- 05:08:35 [ianmcorvidae]
- once you've done that, if you get errors like the one you pasted earlier, those are generally for missing modules, which you can also try to install by the same individual methodology
- 05:10:01 [Essobi]
- The one I pasted in pb didn't have a specific module listed.
- 05:10:06 [Essobi]
- that's what threw me
- 05:10:12 [ianmcorvidae]
- it listed Function/Parameters.pm
- 05:10:15 [ianmcorvidae]
- which is Function::Parameters
- 05:10:48 [ianmcorvidae]
- "Error while loading app.psgi: Can't locate Function/Parameters.pm in @INC" :)
- 05:11:02 [Essobi]
- Really? hell, I thought that was something internal it was screaming about.
- 05:11:08 [ianmcorvidae]
- heh, nope
- 05:11:23 [Essobi]
- Function doesn't scream perl module name to me.
- 05:11:27 [ianmcorvidae]
- https://metacpan.org/module/Function::Parameters :)
- 05:11:32 [Essobi]
- so
- 05:11:43 [Essobi]
- carton intall --deployment SPLAT?
- 05:11:49 [ianmcorvidae]
- no --deployment for that
- 05:11:55 [ianmcorvidae]
- just 'carton install <module>'
- 05:12:35 [Essobi]
- word
- 05:12:50 [Essobi]
- There's 7 that threw a !
- 05:13:19 [ianmcorvidae]
- do that individually with each of them, see if you get errors installing them that way
- 05:14:09 [ianmcorvidae]
- some of the lines are listed as Whatever-Foo, you should change that to Whatever::Foo
- 05:14:28 [ianmcorvidae]
- and strip version numbers -- the point of this is that sometimes older versions disappear from CPAN and then can't be installed
- 05:14:29 [Essobi]
- can I do more then 1? yea... I know how to install a module. :D
- 05:14:31 [ianmcorvidae]
- which is annoying, but :/
- 05:14:57 [ianmcorvidae]
- I'm not sure; you can try it
- 05:15:21 [Essobi]
- heh
- 05:17:16 [Essobi]
- word, that totally works
- 05:18:07 [Essobi]
- so when I exec I use carton right?
- 05:19:10 [ianmcorvidae]
- yeah, use carton exec if you install with carton
- 05:22:22 [Essobi]
- more installing function now.. and xml parser lite deps
- 05:23:34 [Essobi]
- hmm.. can't find the static content..
- 05:23:37 [Essobi]
- CSS error
- 05:25:03 [ianmcorvidae]
- make sure DEVELOPMENT_SERVER is set to 1 in DBDefs
- 05:25:09 [ianmcorvidae]
- otherwise you have to compile JS and CSS
- 05:25:12 [Essobi]
- yessir
- 05:25:22 [nikki]
- why on earth don't we set that by default :/
- 05:25:26 [ianmcorvidae]
- I don't know
- 05:25:29 [Essobi]
- TADA!
- 05:25:36 [ianmcorvidae]
- it is on the rika default config, because it's stupid otherwise :P
- 05:25:44 [Essobi]
- port 5K served
- 05:25:47 [ianmcorvidae]
- I should work on replacing DBDefs
- 05:25:52 [Essobi]
- thanks!
- 05:25:58 [ianmcorvidae]
- no problem, glad you got it working :)
- 05:26:21 [Essobi]
- me too... shew.. I don't remember it being that hard 2-3 years ago
- 05:27:14 [ianmcorvidae]
- there was a complete rewrite of the server that went live May 2011 :)
- 05:27:22 [ianmcorvidae]
- I don't know if you were using the old one 2-3 years ago
- 05:27:30 [ianmcorvidae]
- though from what I've heard the old server was way worse, so :P
- 05:28:32 [nikki]
- the pre-ngs one was a pita to get the actual server running, if you only wanted a db it wasn't too bad
- 05:29:05 [ianmcorvidae]
- ah
- 05:29:22 [nikki]
- where "wasn't too bad" is quite subjective :P
- 05:29:36 [nikki]
- I mean, we get plenty of people having trouble with carton
- 05:29:49 [nikki]
- and we got plenty of people having trouble with the makefile
- 05:30:14 [nikki]
- it seems things are just different...
- 05:30:28 [nikki]
- oh, at least these days we don't have to figure out the dependencies ourselves
- 05:33:09 [Essobi]
- blah, crap, it's throwing exceptions.
- 05:33:29 [Essobi]
- serving 500s
- 05:35:32 [ianmcorvidae]
- where?
- 05:37:44 [Essobi]
- http://paste.ubuntu.com/1146271/
- 05:37:50 [Essobi]
- on the URL...
- 05:38:06 [Essobi]
- throw's 500s for all artists
- 05:38:38 [ianmcorvidae]
- hm
- 05:38:44 [ianmcorvidae]
- I guess your database isn't set up correctly?
- 05:39:01 [Essobi]
- O_o
- 05:39:05 [ianmcorvidae]
- er, wait
- 05:39:08 [ianmcorvidae]
- are you set to RT_SLAVE?
- 05:39:12 [ianmcorvidae]
- in DBDefs
- 05:39:16 [Essobi]
- Mmm... idk
- 05:39:19 [Essobi]
- lemme look
- 05:39:26 [ianmcorvidae]
- if so, make sure you have a database defined for READONLY
- 05:39:46 [ianmcorvidae]
- (can just be a copy of READWRITE)
- 05:40:18 [ianmcorvidae]
- (RT_SLAVE is in REPLICATION_TYPE, the other thing you might be is RT_STANDALONE)
- 05:42:25 [Essobi]
- And bob's your uncle.
- 05:42:34 [Essobi]
- Thanks!
- 05:42:46 [ianmcorvidae]
- should really look into improving that error message, heh, I know there's a ticket for it
- 05:42:49 [ianmcorvidae]
- but anyway :)
- 05:52:29 [Essobi]
- Only took me two days to install it. :D
- 05:52:54 [ianmcorvidae]
- heh
- 05:57:17 [warp]
- ianmcorvidae: not sure 50% is the correct threshold, but definitely in favour of enabling languages on beta.
- 05:57:46 [ianmcorvidae]
- warp: it's largely arbitrary; 50% seems to be the nicest round number around where things seem largely "usable"
- 05:57:47 [warp]
- ianmcorvidae: is the language stuff documented nowadays in README.md or HACKING ?
- 05:57:55 [ianmcorvidae]
- warp: probably not enough
- 05:58:09 [warp]
- ianmcorvidae: that would be a requirement for shipping for me.
- 05:58:18 [ianmcorvidae]
- I guess 40 or 35% might be fine, that'd include portuguese, estonian, german, and italian
- 05:58:19 [warp]
- (which, then also is a requirement for beta :)
- 05:58:27 [ianmcorvidae]
- all the code is already shipped :P
- 05:58:36 [ianmcorvidae]
- but I can certainly make some better documentation
- 05:59:57 [ianmcorvidae]
- oh, there is some documentation, I guess
- 06:00:00 [ianmcorvidae]
- in INSTALL.md
- 06:00:20 [ianmcorvidae]
- four steps for adding languages; should actually cover everything relevant though
- 06:00:50 [ianmcorvidae]
- (make sure you have gettext, download relevant .po files to the right folder with the right name, make install (to put them in the right place for the server), add to MB_LANGUAGES)
- 06:01:23 [ianmcorvidae]
- I think you're the one who made me add them, even, with the split-domains stuff
- 06:02:06 [warp]
- let me check if I can follow them now and get languages on my dev setup :)
- 06:02:13 [warp]
- this is in master?
- 06:02:22 [ianmcorvidae]
- yes, everything's in master
- 06:02:23 [ianmcorvidae]
- see https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md#translations
- 06:02:28 [ianmcorvidae]
- which apparently formats poorly, heh
- 06:03:27 [warp]
- step 2 seems quite manual. can we automate that more?
- 06:03:36 [ianmcorvidae]
- you can use the transifex client
- 06:03:46 [ianmcorvidae]
- there's actually a .tx/config already set up in the po/ folder
- 06:04:20 [ianmcorvidae]
- so I should add that to the documentation
- 06:04:22 [ianmcorvidae]
- * ianmcorvidae notes to self :)
- 06:04:33 [warp]
- how do I do that?
- 06:05:15 [warp]
- (is "use the transifex client" something which could be added to the makefile, so _I_ don't have to do anything? :)
- 06:05:27 [ianmcorvidae]
- you need to configure username/password type things
- 06:05:31 [ianmcorvidae]
- but it probably could, yes
- 06:05:43 [ianmcorvidae]
- for example, we run it in a cronjob on rika to do backups of translations
- 06:06:04 [warp]
- how do I run it now?
- 06:06:19 [nikki]
- you could also get them from https://github.com/96187/musicbrainz-server/tree/translations/po I guess
- 06:06:54 [ianmcorvidae]
- the process, though, is: get the transifex client, configure username/password in ~/.transifexrc, and then run tx pull -l <languages> from po/
- 06:07:08 [ianmcorvidae]
- second step may or may not be required, I'm unclear on that point
- 06:07:19 [nikki]
- or tx pull -a to get everything
- 06:07:20 [ianmcorvidae]
- pulling from the translations backup branch is also an option
- 06:08:21 [ianmcorvidae]
- docs on tx: http://help.transifex.com/features/client/index.html
- 06:09:17 [warp]
- ianmcorvidae: would it be useful include any languages we run on production part of the master branch?
- 06:09:25 [ianmcorvidae]
- yeah, that's the thought
- 06:09:42 [ianmcorvidae]
- at present we may not have anything that we're ready to make that official
- 06:09:52 [ianmcorvidae]
- except perhaps Dutch, which is at something like 97% complete
- 06:10:21 [Essobi]
- Hey... So is there an example startup file?
- 06:11:00 [ianmcorvidae]
- Essobi: if you mean e.g. something to put in /etc/init.d, I don't know of any but I know people hove done it
- 06:11:23 [Essobi]
- roger that
- 06:13:07 [warp]
- ianmcorvidae: step 3 is "make install" inside the po/ folder, right? (it isn't clear in the instructions)
- 06:13:15 [ianmcorvidae]
- warp: yes
- 06:14:34 [warp]
- ianmcorvidae: ok, I followed all the steps, but I don't see a language chooser yet.
- 06:14:58 [ianmcorvidae]
- warp: MB_LANGUAGES?
- 06:15:09 [warp]
- sub MB_LANGUAGES { qw( nl-nl ) }
- 06:15:29 [nikki]
- unless you renamed it, we don't have nl-nl
- 06:15:41 [warp]
- oh, so it should be qw( nl ) then?
- 06:15:43 [nikki]
- yes
- 06:15:55 [ianmcorvidae]
- yes, though that shouldn't affect the language chooser appearing
- 06:16:07 [warp]
- oh, now english is gone
- 06:16:16 [ianmcorvidae]
- yes, you have to turn on 'en' if you want it :)
- 06:16:31 [warp]
- so qw( en nl )
- 06:16:45 [ianmcorvidae]
- yup, if you want en available
- 06:17:14 [warp]
- yes, I don't want to actually use dutch :)
- 06:18:40 [warp]
- ianmcorvidae: the tx pull stuff works fine, I would just replace step 2 to use transifex-client and not describe the manual way to do this.
- 06:18:53 [ianmcorvidae]
- yeah, probably reasonable
- 06:19:37 [warp]
- I've enabled spanish now, but it doesn't let me pick it.
- 06:19:49 [ianmcorvidae]
- you need to have a locale on your system for anything you want to use
- 06:19:58 [ianmcorvidae]
- I'll guess you don't have an es locale
- 06:20:10 [ianmcorvidae]
- though there are also some kinks in libintl-perl that could be causing that
- 06:20:46 [warp]
- ianmcorvidae: ah, probably a good idea to add that to the instructions then. (needs system language installed)
- 06:20:52 [ianmcorvidae]
- true
- 06:21:52 [ianmcorvidae]
- warp: did you set up username/password with tx, or did you do it without?
- 06:22:12 [warp]
- ianmcorvidae: no, I had to set that up. and transifex-client is extremely user-unfriendly in that regard.
- 06:22:41 [warp]
- Exception: No user credentials found for host https://www.transifex.net. Edit ~/.transifexrc and add the appropriate info in there.
- 06:22:51 [ianmcorvidae]
- heh
- 06:23:03 [warp]
- it says edit ~/.transifexrc, but no such file exists, so the format is completely unclear.
- 06:23:09 [warp]
- there is no mention of it in "man tx"
- 06:23:12 [ianmcorvidae]
- heh
- 06:23:14 [ianmcorvidae]
- yeah
- 06:23:22 [warp]
- "man transifexrc" doesn't exist
- 06:23:23 [ianmcorvidae]
- I'm linking to the documentation page in the instructions
- 06:23:33 [nikki]
- I don't remember having to manually create the config file o_O
- 06:23:37 [warp]
- at that point I gave up and duckduckgo'd "transifexrc"
- 06:23:58 [ianmcorvidae]
- there may be some --username --password options or something that put it there for you
- 06:24:21 [ianmcorvidae]
- ah, tx init does that for you
- 06:24:28 [ianmcorvidae]
- but since we provide a .tx/config, you don't end up running that
- 06:25:50 [warp]
- hrm, still no spanish
- 06:25:59 [warp]
- I did this on ubuntu: sudo apt-get install language-pack-es language-pack-gnome-es
- 06:26:24 [ianmcorvidae]
- hm, okay, that may be the libintl-perl bug
- 06:26:35 [ianmcorvidae]
- which AFAIK is fixed but not in a released version
- 06:26:43 [warp]
- LANG="es_ES.UTF-8" date gets me a spanish date.
- 06:26:50 [ianmcorvidae]
- yeah
- 06:27:01 [ianmcorvidae]
- so the issue here is that Locale::Util doesn't know that 'es' should use 'ES' as a country
- 06:27:05 [ianmcorvidae]
- so it's failing to set a locale
- 06:27:11 [warp]
- ah
- 06:27:24 [ianmcorvidae]
- see https://rt.cpan.org/Public/Bug/Display.html?id=78341
- 06:27:45 [ianmcorvidae]
- evidently fixed in git sha1 1996aa39
- 06:29:38 [ianmcorvidae]
- evidently that repository is at git://git.guido-flohr.net/perl/libintl-perl.git
- 06:29:48 [ianmcorvidae]
- on i18n I just manually edited the file
- 06:31:05 [warp]
- I just did that in local/, and indeed now spanish is selectable.
- 06:31:15 [ianmcorvidae]
- yeah
- 06:31:18 [ianmcorvidae]
- stupid bug, but oh well :/
- 06:31:57 [warp]
- (nothing is translated, but I guess spanish isn't ... complete yet :)
- 06:32:03 [ianmcorvidae]
- er
- 06:32:09 [ianmcorvidae]
- if you downloaded it there should be a lot translated
- 06:32:18 [warp]
- oh, then it's not working.
- 06:32:21 [ianmcorvidae]
- spanish is at 67% or so
- 06:32:41 [warp]
- I did "tx pull -l es" in po/
- 06:32:46 [ianmcorvidae]
- did you do 'make install'?
- 06:32:48 [warp]
- make install
- 06:32:49 [warp]
- yes
- 06:32:53 [ianmcorvidae]
- hm
- 06:32:57 [warp]
- Installing mb_server.es.mo to ../lib/LocaleData/es/LC_MESSAGES/mb_server.mo
- 06:33:01 [warp]
- Installing mb_server.nl.mo to ../lib/LocaleData/nl/LC_MESSAGES/mb_server.mo
- 06:33:39 [ianmcorvidae]
- huh, yeah, it's not working correctly, is it
- 06:33:51 [ianmcorvidae]
- though maybe that's just on i18n
- 06:34:07 [ianmcorvidae]
- looks like Locale::Util got trounced there
- 06:34:18 [warp]
- in LANG2COUNTRY I have:
- 06:34:24 [warp]
- en => 'US', # English => United States
- 06:34:24 [warp]
- es => 'ES', # hack spanish
- 06:34:24 [warp]
- fa => 'IR', # Iran, Islamic Republic of
- 06:36:11 [ianmcorvidae]
- hm, that should be correct
- 06:36:21 [ianmcorvidae]
- one sec while I get rika's i18n working again for spanish
- 06:36:38 [ianmcorvidae]
- okay, that works for me
- 06:36:45 [ianmcorvidae]
- did you manually restart your server? it won't pick up changes in local/
- 06:36:55 [ianmcorvidae]
- (if you're running with -r)
- 06:37:11 [warp]
- yes.
- 06:37:25 [warp]
- oh, now it works.
- 06:37:30 [ianmcorvidae]
- hah
- 06:37:32 [ianmcorvidae]
- well, cool
- 06:37:41 [ianmcorvidae]
- * ianmcorvidae sees what all is fixed in libintl-perl git
- 06:37:54 [warp]
- either I didn't restart mbserver or I didn't reload the page in the browser correctly.
- 06:39:05 [warp]
- /home/warp/code/mb development server El servidor principal se encuentra en http://musicbrainz.org.
- 06:40:19 [warp]
- ianmcorvidae: I asked this before, but I've forgotten again. do we have a double length bogus language for testing the design/layout?
- 06:40:36 [ianmcorvidae]
- warp: you have to create it yourself, but we've been using en_AQ for taht
- 06:40:39 [ianmcorvidae]
- that*
- 06:40:47 [ianmcorvidae]
- on i18n.mbsandbox.org at least you can set that
- 06:41:06 [ianmcorvidae]
- you can't automate the download with tx, unfortunately, and it requires postprocessing even when you get a pseudotranslation from transifex
- 06:41:51 [warp]
- ianmcorvidae: it would be nice to have those steps in HACKING eventually. so developers can get that running when writing new templates.
- 06:42:07 [ianmcorvidae]
- yeah
- 06:42:19 [ianmcorvidae]
- luckily most languages break our styling, so you don't really need en_AQ ;)
- 06:42:23 [nikki]
- haha
- 06:42:24 [warp]
- lol
- 06:42:32 [ianmcorvidae]
- as you may have seen on the main page
- 06:42:46 [warp]
- yeah. apparantly our html is amazingly bad.
- 06:43:48 [warp]
- but, enough i18n for now. I'm going to get some breakfast then hit code review and jira.
- 06:49:39 [ianmcorvidae]
- warp: one more thing, how does https://github.com/ianmcorvidae/musicbrainz-server/blob/update-translation-install/INSTALL.md#translations look to you?
- 06:51:32 [warp]
- perhaps add instructions for ubuntu to step 1:
- 06:51:34 [warp]
- sudo apt-get install gettext transifex-client
- 06:52:13 [ianmcorvidae]
- ah, yes, that's consistent with the rest of the document.
- 06:52:13 [ianmcorvidae]
- cool
- 06:53:02 [warp]
- step 5 as well, but I can send you a pull requests for that when I'm back from the supermarket.
- 06:53:47 [ianmcorvidae]
- language-pack-<language code> is all, I suppose?
- 06:54:23 [warp]
- yes, but it's different on debian
- 06:54:32 [ianmcorvidae]
- I'm just saying "On Ubuntu:" for these
- 06:54:59 [nikki]
- ubuntu is the one we support, everyone else needs to figure it out themselves :P
- 06:55:23 [ianmcorvidae]
- yeah; I suspect other things in that doc are broken for non-Ubuntu too :)
- 06:55:51 [ianmcorvidae]
- * ianmcorvidae adds instructions for working around the 'no default country for es' thing
- 07:00:02 [warp]
- nikki: yes, I know. but usually the instructions for ubuntu work on debian as well.
- 07:01:33 [warp]
- (and in this case I think the debian solution is much nicer/better/etc.. :)
- 07:03:32 [nikki]
- nikki has joined #musicbrainz-devel
- 07:06:38 [stefans]
- stefans has joined #musicbrainz-devel
- 07:24:51 [ianmcorvidae]
- * ianmcorvidae plays with http://search.cpan.org/~pjcj/Devel-Cover-0.93/lib/Devel/Cover.pm
- 07:25:07 [ianmcorvidae]
- lots of undecipherable messages about Moose :P
- 07:31:20 [ijabz]
- ijabz has joined #musicbrainz-devel
- 07:37:56 [ianmcorvidae]
- heh, Devel::Cover makes our tests take way longer to run :(
- 07:48:06 [warp]
- that's not that surprising.
- 07:48:15 [ianmcorvidae]
- it isn't, it's just annoying :)
- 07:48:25 [ianmcorvidae]
- I'm mostly just curious what it'll find
- 07:48:39 [reosarevok]
- reosarevok has joined #musicbrainz-devel
- 07:49:31 [ianmcorvidae]
- * ianmcorvidae finds other random things to add/fix in INSTALL.md
- 07:54:33 [djce]
- djce has joined #musicbrainz-devel
- 07:58:24 [ijabz]
- ijabz has joined #musicbrainz-devel
- 08:09:35 [ianmcorvidae]
- heh, our serializer and /ws/1 seem to be pretty well covered, but there's a lot of stuff we don't test
- 08:29:19 [warp]
- the webservice should be reasonably complete, yes. but that is easy to test.
- 08:29:47 [warp]
- ianmcorvidae: I expect the release editor and our javascript in general to be the worst.
- 08:36:54 [warp]
- (obviously Devel::Cover isn't going to give you data on javascript :)
- 08:46:13 [stefans]
- stefans has joined #musicbrainz-devel
- 09:22:58 [ianmcorvidae]
- yeah :)
- 09:23:08 [ianmcorvidae]
- I may work through the results adding tests at some point
- 09:23:13 [ianmcorvidae]
- well, this week might be good for that, since it's freeze
- 09:25:54 [warp]
- * warp is looking at bitmap's tests
- 09:31:49 [rembo10]
- rembo10 has joined #musicbrainz-devel
- 09:38:29 [ianmcorvidae]
- heh, $c->detach('not_fonud') unless $artist; in Controller::WS::2::Work
- 09:44:24 [ocharles]
- nice :)
- 09:44:40 [ocharles]
- what? type safety you say? screw that, string typing is much 2012
- 09:44:59 [ianmcorvidae]
- we don't test that branch though, so :P
- 09:45:19 [ianmcorvidae]
- luckily, I imagine that 'not_fonud' gets redirected to 'not_found' when it fails to find 'not_fonud' :P
- 09:45:21 [ocharles]
- unit tests are so 1999 too
- 09:45:29 [ocharles]
- haha
- 09:46:22 [ianmcorvidae]
- also, Devel::Cover is very slick
- 09:46:32 [ocharles]
- it's ok, but painfully slow
- 09:46:39 [ianmcorvidae]
- well, I mean, once it's done the display is very slick
- 09:46:43 [ocharles]
- and when you're used to hpc, it's shit
- 09:46:44 [ianmcorvidae]
- it takes forever, that's definitely true
- 09:46:44 [ocharles]
- :P
- 09:47:03 [ocharles]
- well, shit is a bit strong, it's definitely good
- 09:47:13 [ocharles]
- but it gets pretty unusable because it profiles moose and stuff too
- 09:47:16 [ocharles]
- covers*
- 09:47:29 [ocharles]
- oh wait no, i'm thinking of Devel::NYTProf
- 09:47:35 [ianmcorvidae]
- yeah
- 09:47:47 [ocharles]
- I've used Devel::Cover before, but I forget how the output looks
- 09:47:49 [ianmcorvidae]
- until we're up to something resembling reasonable coverage with Devel::Cover I doubt its weaknesses matter, anyway
- 09:49:26 [ianmcorvidae]
- and yeah, haskell profiling stuff is very nice
- 09:49:37 [ianmcorvidae]
- though laziness leads to some really crazy things to figure out sometimes, in what I've done
- 09:49:51 [ocharles]
- but yea, I find http://www.haskell.org/haskellwiki/Haskell_program_coverage#Example_of_HTML_output_from_hpc-markup is a gold standard so far :)
- 09:50:10 [ocharles]
- not perfect either though
- 09:50:21 [ocharles]
- I guess C# and Java probably have better coverage tools
- 09:50:37 [ianmcorvidae]
- just by way of having been in common use longer, I imagine so
- 09:51:07 [ianmcorvidae]
- heh, we don't test create_script_context at all
- 09:51:11 [ianmcorvidae]
- comical given how much we use that
- 09:51:25 [ocharles]
- you don't have to test things explicitly
- 09:51:31 [ocharles]
- tests will certainly fail if that method fails
- 09:51:32 [ianmcorvidae]
- I guess that's true
- 09:51:49 [ocharles]
- it doesn't come up in coverage though?
- 09:51:53 [ianmcorvidae]
- nope
- 09:51:56 [ocharles]
- that seems strange
- 09:52:10 [ianmcorvidae]
- no time, no subroutine coverage, no statement coverage
- 09:52:11 [ocharles]
- replace it with die and see whos assumptions are wrong :)
- 09:52:16 [ianmcorvidae]
- haha
- 09:52:24 [ianmcorvidae]
- it might be because we use t::Context instead or something?
- 09:52:42 [ianmcorvidae]
- worth noting I also only used t/tests.t for this, decided not to include everything else for this run
- 09:52:47 [warp]
- ocharles: oh, that is pretty neat. I've only seen line-based code coverage tools.
- 09:52:50 [ianmcorvidae]
- which may or may not be relevant
- 09:52:58 [ianmcorvidae]
- heh, lines
- 09:53:02 [ocharles]
- hm, oh, that uses create_test_context
- 09:53:05 [ocharles]
- but not script_context
- 09:53:10 [ianmcorvidae]
- lines are such a terrible way to deal with haskell code
- 09:53:15 [ocharles]
- * ocharles nods
- 09:53:30 [ocharles]
- so yea, I guess we don't test create_script_context
- 09:53:34 [ocharles]
- yay, the computer told me i was wrong!
- 09:53:46 [ianmcorvidae]
- yay
- 09:53:53 [warp]
- well, anything which has a basic foo ? bar : baz operator already has multiple code paths on a single line.
- 09:54:00 [ianmcorvidae]
- yeah
- 09:54:02 [warp]
- so I'd say it is often not great in other languages either.
- 09:54:07 [ianmcorvidae]
- Devel::Cover's branch coverage deals with that though, which is nice
- 09:54:20 [ianmcorvidae]
- doesn't highlight it all pretty like ocharles' link, but
- 09:54:25 [warp]
- haha
- 09:54:42 [ianmcorvidae]
- heh, we rarely test that things actually fail when passed invalid MBIDs
- 09:54:47 [ianmcorvidae]
- seeing that a bunch of places
- 09:54:57 [ocharles]
- our testing is fairly crap
- 09:55:06 [ocharles]
- i forget the mantra of good tests
- 09:55:14 [ianmcorvidae]
- yeah, hence my figuring running this and doing a sweep was a good idea
- 09:55:17 [ocharles]
- but it involves: outside domain, extremes of domain, comfortable inside domain
- 09:55:27 [ocharles]
- we only tend to do the latter
- 09:55:35 [djce]
- djce has joined #musicbrainz-devel
- 09:55:46 [ianmcorvidae]
- yeah
- 09:55:51 [ianmcorvidae]
- even when we've written code to deal with the others!
- 09:56:03 [ocharles]
- if we've written code, we really should have been writing tests too
- 09:56:06 [ocharles]
- but... yaa...
- 09:56:12 [ianmcorvidae]
- heh, 'should'
- 09:56:17 [ianmcorvidae]
- not that I disagree, of course, but :P
- 09:56:20 [warp]
- ocharles: in many places we tend to do no tests at all. which is a more important issue :)
- 09:56:20 [ocharles]
- we're getting better
- 09:56:32 [ianmcorvidae]
- we are
- 09:56:48 [ianmcorvidae]
- I regularly add tests for things only vaguely related to tickets I'm fixing
- 09:56:52 [ianmcorvidae]
- which seems like a good thing to be doing
- 09:56:59 [ocharles]
- yes, definitely
- 09:57:05 [ocharles]
- more people need to shout at me if they think things are testable too
- 09:57:17 [ocharles]
- though I also try to do as I say, as well as as I do
- 09:57:23 [warp]
- * warp nods.
- 09:57:31 [ianmcorvidae]
- I've been trying, though I don't have enough personal coverage of our codebase to catch a lot of things
- 09:57:52 [ianmcorvidae]
- another good reason for me to do this sweep, getting more familiar with the codebase is always a good thing I figure :)
- 09:59:27 [ianmcorvidae]
- hm, I should put this result somewhere visible
- 10:03:00 [mfmeulenbelt]
- mfmeulenbelt has joined #musicbrainz-devel
- 10:03:07 [ocharles]
- ianmcorvidae: you really need to get your editor to strip trailing spaces
- 10:03:12 [ocharles]
- or change your git config to do that on commit
- 10:03:24 [ianmcorvidae]
- probably
- 10:13:00 [ianmcorvidae]
- * ianmcorvidae adds 'autocmd BufWriePre *.pm :%s/s+$//e' to vimrc, hopefully that'll fix things
- 10:13:19 [ianmcorvidae]
- er, BufWritePre, but anyway
- 10:23:58 [warp]
- ianmcorvidae: vim, emacs or something else?
- 10:24:19 [ianmcorvidae]
- warp: "to vimrc" :)
- 10:24:28 [warp]
- doh!
- 10:25:42 [warp]
- I just make the trailing whitespace red:
- 10:25:44 [warp]
- autocmd ColorScheme * highlight ExtraWhitespace ctermbg=red guibg=red
- 10:25:44 [warp]
- highlight ExtraWhitespace ctermbg=red guibg=red
- 10:25:44 [warp]
- match ExtraWhitespace /\(\s\+$\|\t\)/
- 10:26:17 [warp]
- (probably from http://vim.wikia.com/wiki/Highlight_unwanted_spaces )
- 10:26:55 [ianmcorvidae]
- not a bad idea, but automatically removing them might be better
- 10:27:35 [warp]
- that may get you annoying git diffs if you're editing a file which has a lot of trailing whitespace.
- 10:27:51 [ianmcorvidae]
- yeah, suppose so
- 10:29:05 [warp]
- in itself there is no harm in comitting whitespaces fixes. but it tends to mess up merges, so it's better to only do that if you know no-one else is working on that chunk of code.
- 10:29:13 [ianmcorvidae]
- yeah
- 10:29:35 [reosarevok]
- I love merges
- 10:29:38 [reosarevok]
- http://musicbrainz.org/artist/247d062d-ff05-4af7-ba37-1b999dc927c4
- 10:29:47 [reosarevok]
- (group, male)
- 10:30:01 [warp]
- :D
- 10:30:06 [ianmcorvidae]
- heh
- 10:30:38 [warp]
- it's a miracle various artist hasn't turned into an all-female boyband by now.
- 10:31:00 [ianmcorvidae]
- it is from Argentina last I heard
- 10:31:15 [ianmcorvidae]
- which if it still is one of you folks with DB access should fix :P
- 10:31:45 [reosarevok]
- It is
- 10:31:52 [reosarevok]
- It's been for months
- 10:32:37 [warp]
- oh, I should have that in my local dump now.
- 10:32:49 [warp]
- (my dev machine postgresql)
- 10:33:11 [ocharles]
- ianmcorvidae: i'm not very interested in fixing it without also knowing that it'll stay that way
- 10:33:32 [ocharles]
- i know we have peer review for that, but i'm a wannabe mathematican damnit. I need RIGOUR.
- 10:33:40 [ianmcorvidae]
- heh
- 10:34:13 [ianmcorvidae]
- whereas pragmatically who knows how long it'll take for anyone to look at that, and it'll take maybe a minute to fix it in the DB :P
- 10:34:23 [ianmcorvidae]
- (but only with SQL, since it's not editable from the interface)
- 10:36:04 [ocharles]
- it's not hard SQL to write, it's just a trigger
- 10:36:19 [ocharles]
- well, there are 2 approaches
- 10:36:33 [ocharles]
- one is to have a before trigger that clears it, the other is to raise an exception if you violate constraints
- 10:36:35 [ocharles]
- I prefer the latter
- 10:36:49 [ocharles]
- that means that the code needs to be able to handle that and clear fields in merges. that one is more complicated
- 10:37:23 [ianmcorvidae]
- mm, tasty special-casing
- 10:37:26 [ianmcorvidae]
- not that that's avoidable, but yeah
- 10:38:12 [ocharles]
- * ocharles nods
- 10:38:38 [ianmcorvidae]
- btw, still copying files, but: http://www.mbsandbox.org/~ianmcorvidae/cover_db/coverage.html
- 10:39:03 [warp]
- I set country to NULL for artist id 1 in the production database. Haven't kicked memcached so website will still show AR.
- 10:39:11 [reosarevok]
- Thanks warp :)
- 10:39:46 [reosarevok]
- It's been AR for months, it can wait a bit more I guess
- 10:39:48 [reosarevok]
- :)
- 10:56:18 [warp]
- mutant butterflies! http://www.bbc.co.uk/news/science-environment-19245818
- 11:02:15 [plaintext]
- plaintext has joined #musicbrainz-devel
- 11:13:34 [Jormangeud^]
- Jormangeud^ has joined #musicbrainz-devel
- 11:31:54 [ocharles]
- ijabz, warp: https://docs.google.com/document/d/1G-mewuPAWNcyPBF1tNg_yDn47BRoiJj2NsnJ4AqTJ7Q/edit
- 11:32:51 [ocharles]
- please to be adding more questions
- 11:32:54 [rembo10]
- rembo10 has joined #musicbrainz-devel
- 11:35:26 [ocharles]
- if you're going to add to it, please highlight any changes you make or something
- 11:36:01 [ijabz]
- ocharles, okay will do, but immediate question the findartist() example seems to be describing the web service layer rather than the data abstraction layer, confused
- 11:36:16 [ocharles]
- what bit are you confused about?
- 11:37:28 [ijabz]
- whether your example is describing the web service layer or the databstraction layer
- 11:37:35 [ocharles]
- the data abstraction layer
- 11:37:48 [ocharles]
- there's nothing about the web service here, other than 'the web service will use this'
- 11:37:52 [ijabz]
- so is the plan to now return as json ?
- 11:38:01 [ijabz]
- rather than postgres objects ?
- 11:38:23 [ocharles]
- that's just me representing what it will return
- 11:38:40 [ijabz]
- I think you should clarify that in the doc
- 11:38:41 [ocharles]
- but no, it won't return postgres objects
- 11:38:53 [ocharles]
- but i was never really suggesting that
- 11:39:07 [ocharles]
- i suggested that we moved queries to stored procedures, and then wrote a thin library to call the stored procedures
- 11:39:19 [ijabz]
- and return what ?
- 11:39:27 [ocharles]
- a perl object, if it was a perl library
- 11:39:41 [ocharles]
- or a java object, if it was a java library
- 11:39:50 [ocharles]
- the point was that I could start actually doing something, without deciding on a language
- 11:40:04 [ijabz]
- Okay, but not returning a json representation
- 11:40:30 [ocharles]
- you'll always be dealing with objects at some point
- 11:40:40 [ocharles]
- you not going to literally pass JSON around any more than you are going to pass SQL rows around
- 11:41:22 [ijabz]
- Yeah sure , lets not discuss that now, Im just saying the document makes it look like you are advocating passing json around
- 11:42:10 [ocharles]
- the service might return JSON if it's a web server
- 11:42:33 [ocharles]
- I need something to illustrate the response in text, json just seemed handy because everyone can read it
- 11:42:46 [ijabz]
- What Id love to see is an example showing the calls required to retriever release together with medium, track and artist details , as this is one of the major use cases
- 11:44:19 [ijabz]
- showing it as json is fine, Im just saying (again) its not clear that this is just a representation rather than how you are actually returning it.
- 11:44:32 [djce]
- djce has joined #musicbrainz-devel
- 12:01:07 [ijabz]
- ocharles: /ive rephrased my question, now orange
- 12:02:30 [ocharles]
- then I'm not sure I understand when the performance problem is. You can't load an artist with all aliases in one query anyway
- 12:03:11 [ocharles]
- I mean I guess you /can/ with a join, but you wouldn't do that
- 12:03:34 [ocharles]
- unless you inverted it and said an artist alias has an artist
- 12:03:42 [ocharles]
- then that query would make a bit more sense
- 12:11:42 [ijabz]
- ocharles:yes you're right , I mean one to one queries
- 12:12:04 [ijabz]
- There another question higher up in red
- 12:20:03 [warp]
- ocharles: items-after-x is annoying when you have many items with the same x :)
- 12:20:29 [djce]
- djce has joined #musicbrainz-devel
- 12:27:41 [plaintext]
- if anyone is interested, some real data about top artists yesterday: http://plaintext.mbsandbox.org/logstatistic/top_entities
- 12:28:17 [plaintext]
- I'll filter Various artists out the next time
- 12:28:54 [warp]
- top in what sense. most requested through the webservice?
- 12:29:20 [ijabz]
- heh so out of touch never heard of Mz Bratt
- 12:29:30 [djce]
- djce has joined #musicbrainz-devel
- 12:29:38 [plaintext]
- artists that have their mbids the most in nginx log
- 12:29:48 [plaintext]
- but 99% of that are requests through the ws
- 12:29:54 [warp]
- ijabz: you're not the only one. of the top artists I have never heard of "Terri Hooley", "Mz. Bratt", and "Adele".
- 12:30:50 [ijabz]
- I don't know Terri hooley either, but Adele is probably no1 star in UK for last year
- 12:30:50 [warp]
- ijabz: out of the top release groups I only know the two linkin park ones at the bottom.
- 12:31:12 [plaintext]
- I'm really confused on why Terri Hooley is #2
- 12:31:34 [plaintext]
- most of the release groups are from coldplay and adele
- 12:31:47 [nikki]
- it'd be nice if the release group's artist was shown
- 12:31:57 [plaintext]
- good idea
- 12:33:06 [warp]
- plaintext: it'd be nice if you add a short sentence answering the "top of what?" question. (i.e. explaining that it is requests to musicbrainz.org)
- 12:33:43 [plaintext]
- warp: do you mean a description for the category?
- 12:34:26 [warp]
- plaintext: maybe? I don't know.
- 12:34:43 [plaintext]
- yeah, that would make sense
- 12:34:54 [warp]
- plaintext: just to explain to a visitor what they're looking at.
- 12:35:07 [plaintext]
- yeah, it could be misleading if it wasn't there
- 12:37:16 [plaintext]
- Terri Hooley had a movie about his life come out recently, but that was months ago I believe. Still confused
- 12:49:22 [ocharles]
- warp: the 'x' would be a primary key
- 12:52:36 [warp]
- ocharles: ok, then you don't have the problem of pages being unpredictable in size.
- 12:53:01 [warp]
- ocharles: you probably also need an items-before-x to be able to page back.
- 12:53:58 [ocharles]
- warp: perhaps. as i said, need more research there, I've never done it before
- 12:54:09 [ocharles]
- it also means you can't jump arbitrary distances, which may or may not be a problem
- 12:54:27 [warp]
- ocharles: I'm used to working with it in couchdb (which doesn't really have unique keys, so you get the unpredictable page size problem).
- 12:54:34 [ocharles]
- ah
- 12:56:15 [ocharles]
- ijabz: questions answered
- 12:56:26 [warp]
- ocharles: so I actually maintain a seperate index of which page starts where because I don't want to expose the keys I use for paging in the url :)
- 13:05:46 [warp]
- ocharles: I added the purple question at the bottom.
- 13:06:14 [ocharles]
- warp: yep, watched you type it while I'm eating a Mr. Freeze
- 13:06:16 [ocharles]
- (:
- 13:06:44 [reosarevok]
- Mr. Freeze?
- 13:06:52 [reosarevok]
- Isn't that Arnie's guy in Batman?
- 13:06:52 [warp]
- I wasn't 100% sure google docs would show it as me, considering everyone else is still Anonymous User 9000
- 13:07:03 [ocharles]
- warp: well, I assumed it was you then
- 13:07:04 [nikki]
- a slushy?
- 13:07:20 [ocharles]
- reosarevok: https://www.google.co.uk/search?q=mr+freeze&sugexp=chrome,mod%3D4&um=1&ie=UTF-8&hl=en&tbm=isch&source=og&sa=N&tab=wi&authuser=0&ei=X00qUIjfHYel0AXKxYD4BA&biw=1920&bih=1124&sei=Yk0qUOLYFaHU0QXKnICAAg apparently
- 13:07:29 [ocharles]
- nikki: those things that are liquid and you freeze them
- 13:07:39 [ocharles]
- http://www.conveniencestore.co.uk/pictures/620xAny/3/3/6/10336_Mr-Freeze-resized.jpg
- 13:07:49 [nikki]
- ooh those
- 13:07:54 [nikki]
- I don't even know what I call those any more
- 13:08:07 [ocharles]
- they became massively popular in the office when we found out they are only 15 calories :P
- 13:08:39 [nikki]
- I used to eat tons of them as a kid 'cause they were only 5p from the shop
- 13:09:06 [ocharles]
- i had those frozen-milk-on-a-stick things, I forget what they are called
- 13:09:20 [ocharles]
- basically ice cream on a stick
- 13:09:24 [nikki]
- I don't know if I ever had those. they never appealed to me
- 13:09:26 [ocharles]
- but calling it ice cream is a stretch :P
- 13:09:27 [nikki]
- also I'm jealous, I ate all my ice lollies
- 13:09:32 [warp]
- ocharles: haha
- 13:09:50 [warp]
- ocharles: I guess they are mostly water with only a bit of sugar/flavouring.
- 13:10:00 [ocharles]
- chemical*
- 13:10:01 [ocharles]
- but yea
- 13:10:10 [warp]
- chemicals are good
- 13:10:16 [warp]
- all of them
- 13:10:18 [nikki]
- E numbers! panic! :P
- 13:10:24 [ocharles]
- this one has "tropical" flavouring
- 13:10:26 [ocharles]
- :)
- 13:10:34 [warp]
- awesome
- 13:10:43 [warp]
- I always wanted the cola ones.
- 13:10:56 [kepstin-work]
- yay freezies
- 13:11:09 [bitmap]
- the plastic on those freezepops would always cut the sides of my mouth. maybe it was just the brand that was shoddy
- 13:11:45 [warp]
- or you were doing it wrong
- 13:11:48 [reosarevok]
- am I the only one who never liked eating ice with some flavouring?
- 13:11:54 [nikki]
- yes. weirdo
- 13:11:58 [warp]
- haha
- 13:12:13 [kepstin-work]
- it was always awesome when someone had one of the giant freezies, so much cooler than the little ones :)
- 13:12:33 [nikki]
- bitmap: I don't think I would cut my mouth, but it was often quite sharp
- 13:15:12 [kepstin-work]
- awesome, the mini-fridge at work has a freezer section. I should pick some up.
- 13:15:36 [reosarevok]
- You have a mini-fridge at work? With free stuff?
- 13:15:51 [reosarevok]
- Duh, why can't I get that working from home! :p
- 13:15:51 [kepstin-work]
- occasionally, yeah.
- 13:15:59 [kepstin-work]
- it's a pretty small company, just 10 of us right now.
- 13:16:21 [reosarevok]
- MB is not *that* smaller! I demand free stuff in my fridge! :p
- 13:16:24 [kepstin-work]
- reosarevok: you could try expensing it ;)
- 13:16:32 [ianmcorvidae]
- lol "expensing it"
- 13:16:37 [ianmcorvidae]
- you act like MB has expense accounts :P
- 13:16:49 [reosarevok]
- ianmcorvidae: I suggest we ask for donations for candy
- 13:16:58 [ianmcorvidae]
- however, you could possibly buy yourself a mini-fridge and put things in it and deduct the costs from your taxes :P
- 13:19:47 [ocharles]
- does food count as a deductable expense?
- 13:19:53 [ocharles]
- i guess if the company is providing lunch every day it could
- 13:20:06 [ianmcorvidae]
- probably not, really, I was just kidding around :)
- 13:20:12 [warp]
- ocharles: in general, not.
- 13:20:16 [warp]
- s/t//
- 13:23:26 [warp]
- ocharles: at least, here in .nl the tax office considers food for employees to be a specific compensation, somewhat similar to wages/salary.
- 13:23:40 [ocharles]
- ijabz: "If its not part of this proposal then it should be altered to represent what the propsal is" -- I don't know where I said it was.
- 13:23:46 [ocharles]
- warp: ah
- 13:24:52 [warp]
- ocharles: a self-employed business-owner is (in general) now allowed to consider lunches and such as a business expense.
- 13:24:54 [ijabz]
- ocharles:in the example query and the statement The important thing to note is that the ‘result’ field contains the exact same data you’d be given back from findArtist
- 13:24:58 [warp]
- s/now/NOT/
- 13:25:09 [ijabz]
- or are you saying not everything in the doc is part of the proposal ?
- 13:25:31 [ocharles]
- ijabz: there's no reason that data can't come from the Lucene server
- 13:25:39 [ocharles]
- I didn't say where it came from, only that it should correspond to what findArtist returns
- 13:27:17 [ijabz]
- Well how the webservice construct the data currently returned , if the searchArtists method only returns one of it
- 13:27:26 [ijabz]
- s/one/part
- 13:28:48 [ocharles]
- sorry, still not following...
- 13:30:33 [warp]
- ocharles: so NES is part of or atleast exposed through the data access layer. NES is not built on top of the data access layer.
- 13:30:38 [warp]
- correct?
- 13:30:46 [ocharles]
- warp: correct, because NES is so fundamental to our storage
- 13:30:58 [warp]
- that was my main question there :)
- 13:31:04 [ocharles]
- ok, hopefully i've answered it then
- 13:31:09 [warp]
- ocharles: yes.
- 13:31:35 [ijabz]
- ws/2//release/search returns search results consisting of releases with a ceraina about of detail i.e http://musicbrainz.org/ws/2/release/?query=fred
- 13:31:58 [ocharles]
- right
- 13:32:07 [ijabz]
- the information in a release element is different to the details you would return with the findByRelease() method
- 13:32:15 [ocharles]
- so yes, when returning the search result to the client, that information would be discarded
- 13:33:24 [ocharles]
- we could expand the type returned by the search result if we wanted to be the product of Artist, ArtistAlias etc
- 13:33:42 [warp_]
- warp_ has joined #musicbrainz-devel
- 13:34:07 [ocharles]
- i think i explained my point incorrectly. it was more that whatever data it returns must also be in the same format as data type from other (database accessing methods)
- 13:34:18 [ocharles]
- it could be a tuple of artist, artist aliases, artist tags, for example
- 13:37:33 [warp]
- ocharles: why would a server be different from a library approach (for this NES question) ?
- 13:37:46 [ocharles]
- warp: well, you can't pass a higher order function in for one
- 13:38:09 [ocharles]
- you'd probably do it be requesting a revision token or something, making adjustments there, and then 'publishing' the revision
- 13:38:16 [ijabz]
- hm, sounds pretty horrible to me, Id much prefer to pass object that represent the existing MMD, and then just fill in as rehired. i.e findbyArtist() returned would return a simple artist, with empty alias list, whereas the search would return the artist with the alias list filled in
- 13:41:37 [ocharles]
- You /could/ have an Artist object with a list of aliases, but the problem is you now have to check 'is artist.aliases defined?'
- 13:41:47 [warp_]
- ocharles: hm, it isn't clear to me why that would be neccesary, but I guess I'd have to know more about NES to understand that aspect.
- 13:41:49 [ocharles]
- thus you have to work around it possibly being null all over the place
- 13:42:05 [ocharles]
- warp: mostly because a revision can be the result of multiple operations
- 13:42:13 [ocharles]
- thus multiple requests
- 13:43:07 [warp_]
- ocharles: ah, because editing is also granular. so I cannot just make all the changes on my side of the data access layer and then submit that revision in one go?
- 13:44:48 [ocharles]
- warp: hm, that's also an option
- 13:45:15 [ocharles]
- you could return all data of an artist, and then put all data of an artist back to create the revision
- 13:45:40 [warp_]
- ocharles: that is how I'd imagine an editable webservice to work.
- 13:45:48 [warp_]
- s/to/would/
- 13:45:58 [ocharles]
- web service != data access layer though, just to point that out
- 13:46:03 [warp_]
- yes, I know.
- 13:46:14 [ijabz]
- You just need to know what the function does i.e. if I call findByArtist() it doesn't return aliases if do searchByArtiists() it does
- 13:46:52 [ocharles]
- ijabz: that's great for humans, but that doesn't translate to code
- 13:47:18 [ocharles]
- you either have aliases by either null, or a list, or you always have it as a list, but sometimes an empty list might mean 'this hasn't been loaded' and thus the burden is on the programmer
- 13:47:35 [ocharles]
- or you separate objects and construct just what you need, guaranteeing its presence
- 13:47:58 [ijabz]
- Well it does, that is what we currently have , looking at a release returned by search is different to a release retrieved by a lookup, I don't find it a burden
- 13:49:40 [ijabz]
- having to reconstrue the tuples into a single object is a lot more work
- 13:50:05 [warp_]
- woah, you've all been busy on code review again.
- 13:50:16 [ocharles]
- warp: we're very busy atm :)
- 13:50:29 [warp_]
- ocharles: I was on there just this morning!
- 13:55:57 [ocharles]
- warp: http://tickets.musicbrainz.org/browse/MBS-5146 can you submit a bug report to your country for having an overly verbose language?
- 13:57:05 [warp]
- ocharles: let's just all switch to hanza
- 13:57:31 [warp]
- hanzi
- 13:58:06 [ocharles]
- * ocharles would be ok with that
- 13:59:12 [ocharles]
- ok, that's enough tech discussion, time to write some codez\
- 14:09:15 [djce]
- djce has joined #musicbrainz-devel
- 14:59:02 [nikki]
- nikki has joined #musicbrainz-devel
- 15:11:18 [hawke_1]
- hawke_1 has joined #musicbrainz-devel
- 15:19:24 [nikki]
- ocharles: not that I disagree, but the only sites which account for more than 1% of urls are discogs, amazon, wikipedia, myspace and facebook, so by that measure most of our existing cleanups wouldn't meet that criteria either :P
- 15:19:41 [nikki]
- (of course, that's largely because 80% of our urls are those five sites)
- 15:31:23 [ocharles]
- hm, fair enough
- 15:31:29 [ocharles]
- do you think I should keep them closed?
- 15:31:51 [nikki]
- * nikki said "not that I disagree" :P
- 15:32:21 [ianmcorvidae]
- * ianmcorvidae purges MB::S::Validation >D
- 15:32:38 [ianmcorvidae]
- (bunch of unused functions in there, and most of the rest were untested)
- 15:32:48 [ocharles]
- nikki: it could always mean "not that I agree, either" :P
- 15:32:52 [nikki]
- I don't think there are enough people using those for it to be worth it, I was just being picky since basically nothing new is going to reach 1%
- 15:32:52 [ocharles]
- ianmcorvidae: awesome
- 15:33:15 [ocharles]
- nikki: yea, I was surprised about that though. I didn't think we had such a distribution of domains
- 15:33:37 [nikki]
- we have bots adding amazon, wikipedia and discogs links, that doesn't help :P
- 15:33:42 [ianmcorvidae]
- heh
- 15:33:56 [nikki]
- but it's always been like
- 15:34:00 [nikki]
- that
- 15:34:04 [ianmcorvidae]
- and half the universe has facebook, and half the musical universe at least *used* to have myspace
- 15:34:17 [ocharles]
- ianmcorvidae: did you just get up, or are you running in the Other/nikki timezone?
- 15:34:28 [ianmcorvidae]
- tried to sleep, failed
- 15:34:30 [ianmcorvidae]
- got back up
- 15:34:31 [ocharles]
- ah
- 15:34:42 [ocharles]
- well the Data Access Layer doc has lots of content
- 15:34:45 [ocharles]
- if you didn't see that
- 15:34:55 [ocharles]
- you might be interested in reading/adding comments
- 15:34:57 [nikki]
- but since it's also nearly my bedtime, I guess he's also running in the Other/nikki timezone :P
- 15:35:43 [hawke_1]
- ocharles: Got a link?
- 15:35:55 [ocharles]
- https://docs.google.com/document/d/1G-mewuPAWNcyPBF1tNg_yDn47BRoiJj2NsnJ4AqTJ7Q/edit#
- 15:36:30 [hawke_1]
- Thanks.
- 15:36:57 [ianmcorvidae]
- I looked at it, didn't have anything right then
- 15:37:04 [ocharles]
- ok
- 15:37:13 [ianmcorvidae]
- will probably pull it up once I'm feeling more inspired to critique :)
- 15:37:34 [ocharles]
- yea, that's cool
- 15:38:22 [nikki]
- ocharles: is the scheduling thing up to date?
- 15:38:54 [ocharles]
- nikki: it should be, my cpu load graph is still spiking every hour on that machine
- 15:38:58 [ocharles]
- does it look out of date?
- 15:39:40 [nikki]
- mbs-3967 has been renamed but it's still showing the old name
- 15:40:52 [ocharles]
- hm, how long ago was it renamed?
- 15:41:02 [nikki]
- last updated on the 6th apparently
- 15:41:36 [nikki]
- also I thought you covered some of these tickets in the last meeting
- 15:41:44 [nikki]
- * nikki is copying and pasting her votes/comments from last time
- 15:41:49 [ocharles]
- i don't think i updated after that meeting :/
- 15:42:07 [ocharles]
- i would have made notes somewhere, I just need to find them
- 15:43:00 [ocharles]
- scheduling game is up to http://tickets.musicbrainz.org/browse/MBS-5147 which was created today, so I think the fact that that ticket hasn't updated is a bug in the syncing script
- 15:43:00 [ocharles]
-
- 15:43:08 [ocharles]
- oh, it doesn't change titles
- 15:43:10 [ocharles]
- only bodies
- 15:44:07 [ocharles]
- does July 24th sound like the last meeting we had
- 15:44:08 [ocharles]
- ?
- 15:44:26 [nikki]
- probably.
- 15:44:32 [ocharles]
- i have a list of 15 tickets to move that don't seem to have been
- 15:44:33 [ocharles]
- * ocharles fixes
- 15:44:34 [nikki]
- my pastebin thing expires in 8 days, so 22 days ago
- 15:53:57 [ocharles]
- nikki: ok moved everything over, should sync in about 10 minutes. if not, poke me and i'll manually kick it
- 15:55:36 [ocharles]
- btw, we now have less than 1000 tickets (excluding those in beta testing, review, or requiring a decision)
- 15:55:44 [ianmcorvidae]
- heh, nice
- 15:55:44 [ocharles]
- that's moving in the right direction at least!
- 15:55:53 [ocharles]
- * ocharles celebrates with a Mr Freeze
- 15:55:56 [ianmcorvidae]
- another month or two and we'll almost look on top of things
- 15:56:12 [nikki]
- and how long until we actually *are* on top of things? :P
- 15:56:48 [ianmcorvidae]
- whoo http://codereview.musicbrainz.org/r/2162/
- 15:57:06 [ianmcorvidae]
- now to do that for the rest of the files in our codebase :P
- 15:57:30 [ocharles]
- nikki: i dunno, our ticket velocity is looking really good atm
- 15:57:39 [ocharles]
- so by that metric, less time than we might imagine
- 15:57:57 [ocharles]
- ianmcorvidae: could you create 'task' ticket to track this work?
- 15:58:00 [ianmcorvidae]
- worth noting that I've been fixing lots of easy bugs, though :P
- 15:58:02 [ianmcorvidae]
- ocharles: sure
- 15:58:22 [ianmcorvidae]
- I'll create a toplevel ticket for code coverage review and then subtasks for each file I do
- 15:58:26 [ianmcorvidae]
- sound reasonable?
- 15:58:33 [ocharles]
- sure, i just need something for the changelogs
- 15:58:38 [ianmcorvidae]
- k
- 16:11:01 [nikki]
- ocharles: still hasn't updated...
- 16:12:02 [ocharles]
- nikki: as in the title hasn't updated?
- 16:12:05 [ocharles]
- cause that hasn't been fixed
- 16:12:08 [nikki]
- no
- 16:12:15 [nikki]
- things you've scheduled are still showing up
- 16:12:17 [ocharles]
- hm, ok, manually foot being inserted.... NOW
- 16:12:49 [ocharles]
- ijabz: did you add the question 'Can you compare and contrast with server by giving a server example?' ?
- 16:13:11 [ocharles]
- whoever did, I think it's answered in the pseudo code above it
- 16:13:17 [ijabz]
- yes
- 16:13:22 [ocharles]
- nikki; oh wait, the results page is cached
- 16:13:28 [ocharles]
- stick /some-nonsense on the end and you'll get a fresh page
- 16:13:38 [ocharles]
- the manual sync is also finished, so it should all be good now
- 16:15:03 [ijabz]
- ochre sin that pseudo code you explicitly say how yo do it depends on whther using library or server, and then give example if using library
- 16:16:11 [ocharles]
- ok, but still.. the question?
- 16:17:28 [ijabz]
- i don't get u
- 16:17:33 [ocharles]
- i don't know what your question is
- 16:17:41 [ocharles]
- the server will make those calls
- 16:18:09 [ijabz]
- give ah example of editing data with NES if data layer implement as server based system
- 16:18:18 [ocharles]
- ahhh
- 16:18:33 [ocharles]
- sorry, I read server as 'the web server', not 'server data access layer'
- 16:18:35 [ocharles]
- my bad
- 16:27:36 [ocharles]
- ok, replaced my answer
- 16:29:30 [djce]
- djce has joined #musicbrainz-devel
- 16:50:17 [ruaok]
- ruaok has joined #musicbrainz-devel
- 16:58:50 [navap_]
- navap_ has joined #musicbrainz-devel
- 17:10:16 [kepstin-work]
- man, people have been submitting fixes for defects I submitted left and right. this is awesome ;)
- 17:10:51 [kepstin-work]
- ocharles: that ise on the blog thing I actually found when attempting to do some musicbrainz stuff on a bus with no internet access :)
- 17:10:57 [ocharles]
- :)
- 17:11:03 [kepstin-work]
- (using a server vm)
- 17:11:48 [nikki]
- does that only fix the blog, or all stuff that does external queries?
- 17:11:53 [ocharles]
- only the blog
- 17:11:56 [nikki]
- * nikki remembers the donation check also ISEing
- 17:12:24 [nikki]
- oh, while I remember, ocharles, the skipping the release duplicates tab when seeding, does that remove the tab entirely or only skip over it?
- 17:12:33 [ocharles]
- only skips over it
- 17:12:47 [nikki]
- oh good. 'cause I use that a lot :P
- 17:12:51 [ocharles]
- :)
- 17:13:48 [nikki]
- yay for whoever thought 2... 3... 4... 10... versions of the same single was a brilliant strategy to get really obsessive fans to spend even more
- 17:14:18 [demosdemon]
- I like the singles where it's 10 mixes on one disc
- 17:14:27 [demosdemon]
- charge $15 for
- 17:14:42 [demosdemon]
- cost more than the original album
- 17:14:51 [nikki]
- in this case it's more like 2 songs and 2 karaoke versions for that price :P
- 17:14:56 [kepstin-work]
- the japanese singles are typically 2-3 tracks, with 1-3 karaoke vrsions, for $15 :/
- 17:15:04 [nikki]
- heh yeah
- 17:15:06 [kepstin-work]
- then the albums are $25+...
- 17:15:49 [nikki]
- http://beta.musicbrainz.org/release-group/438d00f6-6c60-43bf-8dfa-478d216d67a3 is the most extreme example of multiple versions I've found so far
- 17:16:29 [kepstin-work]
- that's one standard edition and ... 11 special editions?
- 17:16:33 [nikki]
- yes
- 17:16:40 [nikki]
- because everyone needs 11 special editions in their life :P
- 17:16:51 [kepstin-work]
- which presumably differ only in cover art?
- 17:17:07 [nikki]
- it seems so
- 17:34:49 [luks_]
- luks_ has joined #musicbrainz-devel
- 17:37:56 [ocharles]
- ruaok: google doc updated
- 17:37:58 [ocharles]
- on my way home now
- 17:38:08 [ruaok]
- right-o.
- 17:38:19 [ruaok]
- once I chew my way through our taxes, I'll have a look
- 17:59:32 [reosarevok]
- At what time was our meeting?
- 18:00:02 [ianmcorvidae]
- presumably regular meeting time in an hour
- 18:19:56 [ijabz_]
- ijabz_ has joined #musicbrainz-devel
- 18:21:00 [thejav]
- thejav has joined #musicbrainz-devel
- 18:25:04 [thejav]
- I'm looking at the Release listing for Perfume Genius, which I think is a reasonably popular album. It only lists data for GB. Is this just a case of incomplete data, or would this suggest that the album release data is the same for all other countries?
- 18:26:00 [kepstin-work]
- thejav: most likely it's just incomplete data. If you know the correct release date in a different country, you should usually add an additional release for that country.
- 18:26:08 [hawke_1]
- Could be either way, but probably incomplete data
- 18:26:29 [reosarevok]
- :(
- 18:26:41 [thejav]
- fair enough, that makes sense
- 18:26:45 [reosarevok]
- And that's ugly and horrible (adding a new release just for a date) which is why most people don't do it :p
- 18:26:54 [reosarevok]
- But yeah, it's the least bad option at the moment
- 18:27:00 [thejav]
- ahh I see
- 18:27:13 [thejav]
- anyone here doing something for the upcoming hack weekend?
- 18:27:30 [reosarevok]
- I hope so! If the usual devs don't do anything I wonder who will :p
- 18:27:39 [reosarevok]
- (what they're doing I don't know though :) )
- 18:27:52 [kepstin-work]
- I plan to be working on a glib-based C library that I'm gonna use in my vapourware player.
- 18:28:01 [ianmcorvidae]
- haha
- 18:28:14 [ianmcorvidae]
- warp was talking about working on JSON-LD (RDF bullshit) for the webservice
- 18:28:25 [thejav]
- i'm hoping that ocharles and his "latest releases" idea will get API support, if it happens.
- 18:28:40 [ianmcorvidae]
- that one's ruaok's idea I think, actually :)
- 18:29:10 [ianmcorvidae]
- I was thinking I might do embeddable widgets, which was going to be a GSoC a couple summers ago but it ended up not happening -- figure I should do something different than usual, so :P
- 18:29:36 [reosarevok]
- ianmcorvidae, I have a better idea!
- 18:29:46 [reosarevok]
- What about country-based browse pages for our data
- 18:29:47 [reosarevok]
- 8)
- 18:29:52 [ianmcorvidae]
- haha
- 18:30:01 [reosarevok]
- (had to try)
- 18:30:21 [ianmcorvidae]
- "better ways of browsing data" is a ticket though, that's what I normally do, work on tickets :P
- 18:30:49 [reosarevok]
- * reosarevok is a jira admin, could rename it to "lalalalala not here" for a week :p
- 18:31:33 [reosarevok]
- (maybe anyone coud, actually - unsure :p)
- 18:31:35 [ianmcorvidae]
- not quite the same :P
- 18:31:46 [thejav]
- oh, one more dev-related question. I'm shipping an app (hopefully shortly) that relies on MusicBrainz data. I'm hoping to do some marketing for this app. My fear is that if suddenly the app does too well, that I'll be throttled. I'm playing exactly by the rules specified, but do you guys know how likely this is?
- 18:32:11 [ianmcorvidae]
- if you've written your thing not to abuse the webservice it shouldn't be an issue
- 18:32:38 [ianmcorvidae]
- the only app, to my knowledge, that's been throttled is headphones, and that's because they make huge numbers of queries from every installation of it, daily
- 18:32:54 [ianmcorvidae]
- essentially full library updates daily; it's pretty crazy
- 18:33:04 [thejav]
- yeah mine plays nicely. but there's a global limit of 300 requests per second, correct?
- 18:33:10 [ianmcorvidae]
- yeah
- 18:33:16 [ruaok]
- ruaok has joined #musicbrainz-devel
- 18:33:36 [ianmcorvidae]
- stats.musicbrainz.org is a good place to look around
- 18:33:38 [ianmcorvidae]
- http://stats.musicbrainz.org/mrtg/drraw/drraw.cgi?Mode=view;Template=1262469543.28951;Base=%2Fvar%2Fwww%2Fmrtg%2F%2Flenny_ratelimit-default-wsglobal-count.rrd for example
- 18:33:56 [ruaok]
- geh. august, y u always such a pain?
- 18:34:06 [ianmcorvidae]
- or better http://stats.musicbrainz.org/mrtg/drraw/drraw.cgi?Mode=view;Dashboard=1262470284.29707 which shows all the ratelimits (some do things, many of them aren't actually ratelimits so much as traffic tracking)
- 18:35:22 [thejav]
- and does anyone here know what commercial licenses cost, in case I want to host the DB myself?
- 18:36:01 [reosarevok]
- ruaok certainly would
- 18:36:02 [ianmcorvidae]
- thejav: ruaok is the one to ask, in fact :) but it generally depends
- 18:36:20 [ruaok]
- * ruaok 503
- 18:36:34 [ianmcorvidae]
- * ianmcorvidae looks up when ruaok formerly said something about this in #mb :P
- 18:37:32 [hawke_1]
- thejav: If you only need the core data, it’s public domain.
- 18:37:37 [hawke_1]
- So sayeth http://musicbrainz.org/doc/MusicBrainz_Database
- 18:37:43 [ianmcorvidae]
- hawke_1: not if you use the live data feed, that's the catch
- 18:38:00 [ianmcorvidae]
- hawke_1: because that includes the CC data
- 18:39:07 [thejav]
- ahh, the live data feed is the weekly database updates?
- 18:39:13 [ianmcorvidae]
- thejav: anyway, quoth ruaok the other month: the list price is $1500/month, but there are discounts for startups and other special situations
- 18:39:17 [ianmcorvidae]
- hourly, not weekly :)
- 18:39:25 [thejav]
- whoa, ok :)
- 18:39:51 [ianmcorvidae]
- the data dumps, which you could use with no license, are twice a week, even :)
- 18:39:52 [ruaok]
- thejav: we can work something out. send me mail with a suggestion for what would work for you.
- 18:40:02 [ruaok]
- rob at musicbrainz snot norg
- 18:40:12 [ianmcorvidae]
- (but are a pain to deal with, generally, so)
- 18:40:14 [thejav]
- haha thanks
- 18:40:21 [ruaok]
- * ruaok goes back to the income tax return
- 18:43:11 [ruaok]
- LOL.
- 18:43:16 [ruaok]
- from the tax return:
- 18:43:24 [ruaok]
- Number of voting board members: 5
- 18:43:33 [ruaok]
- Number of indenpendent board members: 4
- 18:43:42 [ruaok]
- Number of employees: 1
- 18:43:53 [ruaok]
- Number of volunteers: 23637
- 18:43:57 [reosarevok]
- lol
- 18:44:01 [kepstin-work]
- lol
- 18:44:01 [ruaok]
- heh. :) musicbrainz rocks. :)
- 18:44:07 [reosarevok]
- is indenpendent in your tax return or it was now? :p
- 18:44:09 [ocharles]
- haha
- 18:44:11 [kepstin-work]
- * kepstin-work thought you had more employees than that, tho :)
- 18:44:31 [ruaok]
- kepstin-work: employees != contractors.
- 18:44:33 [ocharles]
- no, contracters
- 18:44:33 [ianmcorvidae]
- contractors, I think, not full-up employees
- 18:44:35 [kepstin-work]
- ah
- 18:44:38 [kepstin-work]
- ok.
- 18:44:38 [ocharles]
- there ya go
- 18:44:47 [reosarevok]
- ruaok: what's a "voting" board member as opposed to "independent"?
- 18:44:55 [reosarevok]
- (or are both the same thing, + 1 being you?
- 18:45:06 [ruaok]
- I am voting, but I am metabrainz. the others are not employed by metabrainz.
- 18:45:13 [kepstin-work]
- reosarevok: It looks like voting = independent + employees
- 18:45:25 [ruaok]
- kepstin-work: no, employees dont factor in there.
- 18:45:34 [reosarevok]
- Yeah, I was just surprised they duplicated the entries for them
- 18:45:44 [kepstin-work]
- ah, so it's just coincidence that the only employee is also a voting member?
- 18:47:14 [ruaok]
- yep.
- 18:47:26 [ruaok]
- pretty common, though for tiny non profits.
- 18:47:28 [warp]
- ruaok: haha
- 18:47:38 [demosdemon]
- well, it makes sense that the only employee be a voting board member
- 18:47:51 [reosarevok]
- Yeah
- 18:47:57 [reosarevok]
- Someone has to represent the workforce!
- 18:48:23 [reosarevok]
- Go ruaok, paragon of the MB proletariat :p
- 18:48:34 [ruaok]
- heh
- 18:48:40 [warp]
- lol, reo
- 18:49:12 [kepstin-work]
- how was that volunteers number calculated? number of user accounts that made edits in a certain time span?
- 18:50:08 [demosdemon]
- i've never know someone to be both bourgeoisie and proletariat :P
- 18:50:31 [ruaok]
- kepstin-work: number of editors who edited in 2011.
- 18:50:43 [ruaok]
- the actual number is probably slightly higher
- 18:51:19 [demosdemon]
- doesn't include coders who don't edit?
- 18:51:37 [demosdemon]
- and well, anyone who didn't edit?
- 18:51:48 [ruaok]
- yep. ergo the count actually being higher.
- 18:51:55 [warp]
- do we have those?
- 18:52:00 [kepstin-work]
- on the other hand, it also includes bots :)
- 18:52:03 [warp]
- well, ruaok probably doesn't edit.
- 18:52:09 [warp]
- :P
- 18:52:18 [ruaok]
- I do too!
- 18:52:28 [ruaok]
- (only for testing though :) )
- 18:52:30 [warp]
- ruaok: you make one edit / year to make sure you're counted?
- 18:52:38 [ruaok]
- actually not true, I edited a few things.
- 18:52:49 [ruaok]
- at least that. one release per year.
- 18:52:52 [warp]
- :D
- 18:54:28 [reosarevok]
- Hmm
- 18:54:56 [reosarevok]
- Wonder if it would be OK to make code so that the site displays artist pictures if and only if the link goes to wikimedia commons
- 18:55:44 [demosdemon]
- I wonder if editing and coding can be considered community service
- 18:56:00 [reosarevok]
- demosdemon, you planning to be arrested?
- 18:56:01 [ianmcorvidae]
- there's usually at least one stupid copyright complaint that someone puts in as an edit, I think I usually see ruaok vote on those :P
- 18:56:25 [plaintext]
- plaintext has joined #musicbrainz-devel
- 18:56:28 [demosdemon]
- reosarevok, nah, I have required community service hours for a student org I'm in
- 18:56:33 [reosarevok]
- Oooh
- 18:56:36 [ruaok]
- demosdemon: yes. but we have enough volunteers to make the IRS happy.
- 18:57:05 [ruaok]
- demosdemon: ah. yes, I'd be willing to count that. talk to me next week.
- 18:57:09 [reosarevok]
- ruaok: wonder where we are in a list of non-profits by number of volunteers :p
- 18:57:14 [ruaok]
- * ruaok notes that this week is fired.
- 18:57:26 [ruaok]
- reosarevok: burning man beats us.
- 18:57:32 [reosarevok]
- Well, yeah
- 18:57:38 [ianmcorvidae]
- also wikimedia, presumably
- 18:57:39 [reosarevok]
- And I bet the Obama campaign
- 18:57:47 [ruaok]
- earnings per volunteers, we're in the top 100, I bet.
- 18:57:52 [reosarevok]
- But I meant in percentage more than exact position
- 19:00:26 [ruaok]
- ok, bug triage time.
- 19:00:37 [ruaok]
- ocharles: you here?
- 19:01:21 [demosdemon]
- ruaok: good to know, but I'm more interested if my org would accept it… somehow I doubt it
- 19:01:23 [reosarevok]
- kuno, we know you're warp
- 19:01:27 [reosarevok]
- Don't try to hide
- 19:01:27 [reosarevok]
- :p
- 19:01:45 [ruaok]
- demosdemon: ask them. and ask what they need for proof.
- 19:01:50 [ruaok]
- we're a legit 501c3
- 19:01:53 [warp]
- I was trying to regain access to some freenode channel I registered 3 and a half years ago.
- 19:01:59 [warp]
- * warp doesn't know exactly how that stuff works.
- 19:02:35 [reosarevok]
- Guess ocharles is not around
- 19:02:37 [ianmcorvidae]
- I even made us a letterhead so I could fulfill a similar requirement last semester!
- 19:02:45 [reosarevok]
- We have nikki's list of opinions fwiw
- 19:02:59 [ocharles]
- i'm right here...
- 19:03:05 [reosarevok]
- Oh
- 19:03:07 [ruaok]
- ocharles: how long do we have you for?
- 19:03:08 [reosarevok]
- Guess he's around!
- 19:03:11 [ocharles]
- all night
- 19:03:14 [ruaok]
- oh baby!
- 19:03:15 [ocharles]
- i hurt my ankle, so no jogging
- 19:03:19 [reosarevok]
- Aww
- 19:03:23 [ruaok]
- ouch. sorry to hear that.
- 19:03:25 [ocharles]
- i joked at last.fm I hit a semicolon too hard
- 19:03:26 [ruaok]
- ice and elevate!!
- 19:03:30 [ocharles]
- i have no idea what i've done to it :P
- 19:03:31 [ruaok]
- lol.
- 19:03:40 [reosarevok]
- Scare it
- 19:03:41 [warp]
- ocharles: aii
- 19:03:45 [ruaok]
- ice and elevate is key.
- 19:03:46 [reosarevok]
- If I told my body it was going to run
- 19:03:49 [warp]
- ocharles: hahaha
- 19:03:56 [reosarevok]
- It would certainly stop working to avoid it
- 19:03:56 [ocharles]
- i think it's just bruised from new trainers that are too big for me :)
- 19:04:15 [ruaok]
- $2997 in bank fees last year. that freaking sucks. :(
- 19:04:19 [warp]
- * warp did a very very brief jog just before this meeting.
- 19:04:29 [warp]
- ruaok: woah
- 19:04:40 [ruaok]
- $35 per wire transfer. :(
- 19:04:46 [reosarevok]
- ruaok: and no bank interests?
- 19:04:47 [ruaok]
- and $10 incoming
- 19:04:53 [reosarevok]
- (to compensate a bit or something)
- 19:04:54 [ruaok]
- those got slashed.
- 19:05:18 [reosarevok]
- Anyway
- 19:05:21 [ianmcorvidae]
- lol interest from banks
- 19:05:23 [reosarevok]
- Guess I should open the results page
- 19:05:27 [ianmcorvidae]
- presumably!
- 19:05:28 [ruaok]
- $682 last year. $291 this year.
- 19:05:40 [reosarevok]
- ianmcorvidae: hey, I do get like 1€ or so per year :p
- 19:05:57 [reosarevok]
- (ok, maybe more now that I actually have some money :p)
- 19:06:22 [reosarevok]
- slowly loading
- 19:06:30 [reosarevok]
- [MBS-1184] inline preview for annotations092
- 19:06:38 [warp]
- * warp only pays interest.
- 19:06:48 [reosarevok]
- yeah, all, pay some interest to the meeting!
- 19:06:52 [reosarevok]
- *rimshot*
- 19:06:52 [ianmcorvidae]
- :P
- 19:06:55 [demosdemon]
- I made $.02 in interest last quarter
- 19:07:04 [ianmcorvidae]
- 12 is fine for me, unsched would also be fine by me
- 19:07:16 [ocharles]
- unsched is fine with me
- 19:07:26 [warp]
- * warp votes wontfix.
- 19:07:35 [warp]
- that thing is crammed in there, we should take it out entirely :)
- 19:07:43 [reosarevok]
- I'd be OK with that
- 19:07:46 [reosarevok]
- But if not, fix it
- 19:07:51 [reosarevok]
- wontfix + keep there, no :p
- 19:08:02 [warp]
- * warp nods.
- 19:08:03 [reosarevok]
- "I have no opinion because I don't use that field except to clear an annotation while making other edits to a release. It's not big enough for anything useful."
- 19:08:05 [reosarevok]
- (nikki)
- 19:08:08 [reosarevok]
- I tend to agree
- 19:08:21 [warp]
- reosarevok: ok, can we mark it DR then to get a bit more discussion
- 19:08:24 [reosarevok]
- Ok
- 19:08:35 [reosarevok]
- [MBS-1029] Show instrument descriptions when adding relationships272
- 19:08:38 [reosarevok]
- 12 seems fine
- 19:08:46 [reosarevok]
- If only because we'd need the time to fill the empty ones :p
- 19:09:02 [warp]
- I'm ok with 12.
- 19:09:04 [ianmcorvidae]
- sure, 12, there's also a lot of translator burden for that
- 19:09:18 [reosarevok]
- "Vacuum cleaner" "really, don't ask"
- 19:09:18 [ianmcorvidae]
- since instrument descriptions are in a different domain precisely because we use them almost nowhere :P
- 19:09:32 [ocharles]
- ok with 12
- 19:10:06 [reosarevok]
- Fine!
- 19:10:07 [reosarevok]
- [MBS-2136] Make links from the subscriptions email only show edits for the same period344
- 19:10:40 [kepstin-work]
- hmm. that's an interesting idea. I'd like that.
- 19:10:52 [ocharles]
- i'm not sure i understand it
- 19:10:53 [kepstin-work]
- * kepstin-work is rather behind on his subscriptions, in other words.
- 19:10:54 [reosarevok]
- I am not sure I agree it makes stuff easier (I mean, if there are more edits I probably either will ignore them if I know of them, or I'll want to see them anyway)
- 19:10:54 [ianmcorvidae]
- votes seem torn, I'd edge toward 12 or unsched
- 19:10:55 [warp]
- votes are all over the place, and I have no opinion.
- 19:11:04 [warp]
- * warp sides with ianmcorvidae
- 19:11:08 [reosarevok]
- But it would seem more straightforward
- 19:11:16 [ianmcorvidae]
- ocharles: links in the email should be to *only* edits during the time period the subscription email follows
- 19:11:20 [reosarevok]
- "here's your edits report for today" "here, edits for today"
- 19:11:22 [kepstin-work]
- ocharles: I click a link from a 4-week-old email, and I see edits from last week instead of from 4 weeks ago
- 19:11:33 [ocharles]
- oh, the links to view all edits
- 19:11:37 [ocharles]
- not the entities being edited
- 19:11:38 [reosarevok]
- Oooh, so that's the idea
- 19:11:42 [demosdemon]
- timestamped links
- 19:11:51 [ianmcorvidae]
- probably edit search links, in fact, but
- 19:12:08 [reosarevok]
- * reosarevok never gets so much behind that he had that, so he thought it was not to see *older* edits
- 19:12:15 [reosarevok]
- Yeah, put like that, I guess it makes more sense
- 19:12:56 [ocharles]
- * ocharles has no opinion
- 19:13:00 [ocharles]
- actually, I do
- 19:13:01 [demosdemon]
- +1 12mo
- 19:13:01 [ocharles]
- not 3 months :)
- 19:13:03 [reosarevok]
- nikki said 2
- 19:13:05 [reosarevok]
- *12
- 19:13:09 [reosarevok]
- Ok, leeets do 12
- 19:13:31 [reosarevok]
- [MBS-3879] Wiki transclusion should check for correct page name and revision number018
- 19:13:40 [reosarevok]
- heh
- 19:13:49 [reosarevok]
- Most people probably were like transwhat
- 19:13:59 [ianmcorvidae]
- affects only transclusion editors, I'd say unsched is fine :P
- 19:14:03 [reosarevok]
- But I agree, it's not really a big problem
- 19:14:07 [ocharles]
- unsched
- 19:14:09 [ianmcorvidae]
- in general, bugs that affect <10 people...
- 19:14:09 [reosarevok]
- I have never done it and I'm clumsy :p
- 19:14:28 [reosarevok]
- And nikki says unsched
- 19:14:37 [reosarevok]
- That leaves only a couple of us left
- 19:14:38 [reosarevok]
- So yeah
- 19:14:55 [reosarevok]
- [MBS-3678] Blank annotations are shown in summary if they contained text prior353
- 19:14:59 [reosarevok]
- fiiine, wait for warp
- 19:15:00 [warp]
- warp has joined #musicbrainz-devel
- 19:15:02 [reosarevok]
- [MBS-3678] Blank annotations are shown in summary if they contained text prior353
- 19:15:16 [reosarevok]
- That's UGLY and annoying
- 19:15:19 [reosarevok]
- So not unsched
- 19:15:30 [reosarevok]
- But I'd be ok with 12
- 19:15:48 [ianmcorvidae]
- the ticket is basically asking to move a link, yeah?
- 19:15:51 [ocharles]
- yea
- 19:16:00 [reosarevok]
- Yeah
- 19:16:01 [ocharles]
- and hide the empty annotation
- 19:16:02 [reosarevok]
- PRetty much
- 19:16:03 [warp]
- 3 or 12
- 19:16:15 [reosarevok]
- ianmcorvidae, 30 min
- 19:16:15 [reosarevok]
- :p
- 19:16:18 [ianmcorvidae]
- 12, I'd say, with a strong chance of me deciding to do it :P
- 19:16:23 [warp]
- should be entirely straightforward
- 19:16:25 [ocharles]
- lets go wit h12
- 19:16:31 [reosarevok]
- ok
- 19:16:37 [reosarevok]
- [MBS-3967] Missing ISRC104
- 19:16:43 [reosarevok]
- * reosarevok looks wtf it's about
- 19:16:55 [reosarevok]
- "Release page : Display ISRC on tracks (recordings)
- 19:16:55 [ianmcorvidae]
- title change, heh
- 19:17:04 [reosarevok]
- ffs, non breaking space?
- 19:17:06 [reosarevok]
- jesus...
- 19:17:10 [reosarevok]
- Anyway
- 19:17:28 [reosarevok]
- Agreed with too much clutter + userscript
- 19:17:29 [ianmcorvidae]
- unsched, lean to wontfix
- 19:17:38 [reosarevok]
- nikki said wontfix
- 19:17:49 [reosarevok]
- So seems to say murdos
- 19:17:50 [warp]
- haha
- 19:18:04 [ocharles]
- so wontfix then
- 19:18:10 [warp]
- WONTFIX
- 19:18:13 [ocharles]
- if its important, it will be reopened
- 19:18:17 [reosarevok]
- (and it's not)
- 19:18:23 [ocharles]
- * ocharles nods
- 19:18:24 [hawke_1]
- I do find that userscript really really helpful FWIW
- 19:18:39 [reosarevok]
- hawke_1: sure
- 19:18:43 [reosarevok]
- that's why it exists
- 19:18:47 [warp]
- haha
- 19:18:55 [warp]
- if not wontfix, move it to DR
- 19:19:04 [reosarevok]
- But we don't need to show that to the huge majority of people who don't know what an ISRC even is and don't care
- 19:19:07 [hawke_1]
- It would be nice to have something to say what stuff is likely to be deemed acceptable for general use
- 19:19:17 [hawke_1]
- and what must be relegated to a userscript
- 19:19:49 [hawke_1]
- Aside from that, carry on. :-)
- 19:19:51 [ocharles]
- that's another topic
- 19:19:53 [reosarevok]
- This one should be so easy, we can do it while you discuss
- 19:19:53 [demosdemon]
- wontfix tickets a likely candidates
- 19:19:53 [reosarevok]
- [MBS-1976] Attached cover art (ASIN or CDbaby) doesn't hyperlink018
- 19:19:55 [reosarevok]
- wontfix
- 19:20:10 [ianmcorvidae]
- wontfix
- 19:20:48 [demosdemon]
- wontfix
- 19:20:51 [warp]
- ok with wontfix
- 19:21:01 [ianmcorvidae]
- and ocharles and navap said that in the ticket too :P
- 19:21:03 [reosarevok]
- yay wontfix!
- 19:21:06 [reosarevok]
- neext
- 19:21:13 [reosarevok]
- [MBS-2811] Display some indication on tracklists whether attached recordings have one or more PUIDs343
- 19:21:17 [reosarevok]
- hahahahahah PUIDs
- 19:21:25 [reosarevok]
- 3 people voted 3mo?
- 19:21:30 [reosarevok]
- u mad?
- 19:21:31 [reosarevok]
- :p
- 19:21:34 [ruaok]
- * ruaok will soon join the conversation
- 19:21:42 [warp]
- hahaha
- 19:21:43 [reosarevok]
- ruaok, PUID
- 19:21:49 [reosarevok]
- (say wontfix :p)
- 19:21:51 [warp]
- DROP TABLE puid;
- 19:21:53 [ruaok]
- wonfix
- 19:21:55 [ruaok]
- +t
- 19:22:04 [ianmcorvidae]
- I think s/PUID/acoustid/ this is useful but already part of the acoustid stuff
- 19:22:09 [ianmcorvidae]
- I'd say wontfix it since it's PUIDs
- 19:22:14 [ocharles]
- yea, that makes sense
- 19:22:42 [reosarevok]
- [MBS-3998] Editor may vote / may add edit note checks should also be done at the Data level.453
- 19:22:58 [reosarevok]
- didn't we do this already?
- 19:23:04 [warp]
- reosarevok: it does sound familiar
- 19:23:07 [ocharles]
- not right down to the lowest level
- 19:23:15 [ocharles]
- i don't think
- 19:23:19 [ocharles]
- but it's not important, unsched
- 19:23:22 [reosarevok]
- Oh, yeah
- 19:23:26 [reosarevok]
- warp's comment "For both voting and edit notes a user can still construct the form and post the data to the server. Only the display of voting radio buttons and edit note textarea's is currently disabled if the user is not allowed to vote or add edit notes"
- 19:23:27 [ianmcorvidae]
- unsched indeed
- 19:23:29 [ocharles]
- i mean, you'll know if people actually start abusing it
- 19:23:42 [warp]
- ok, with unsched
- 19:23:44 [ocharles]
- and we do have various checks in the front ends
- 19:23:53 [ianmcorvidae]
- though part of NES may involve basically fixing this, by way of editable WS stuff
- 19:24:00 [reosarevok]
- nikki said 12, but she seems outvoted
- 19:24:30 [demosdemon]
- there needs to be an option between 12 and unsched
- 19:24:37 [demosdemon]
- that's where I'd put this
- 19:24:45 [reosarevok]
- demosdemon: that exists
- 19:24:49 [reosarevok]
- It's called "oh, I'll do it"
- 19:24:51 [reosarevok]
- ;)
- 19:25:08 [ocharles]
- (:
- 19:25:14 [demosdemon]
- next week
- 19:25:39 [reosarevok]
- [MBS-3515] Only show work ARs in "Relate to..." work search results144
- 19:25:49 [reosarevok]
- We set this to DR
- 19:26:02 [reosarevok]
- But wontfix, wait until we have editable WS, make someone create a classical editor UI :p
- 19:26:12 [ianmcorvidae]
- skip, deal with it like we usually deal with DR then :P
- 19:26:24 [warp]
- we shouldn't be triaging DR tickets I'd say.
- 19:26:27 [reosarevok]
- Ooh, the old "let it rot"
- 19:26:27 [reosarevok]
- ok
- 19:26:35 [reosarevok]
- [MBS-3848] Guess Case: Support for additional common ETI phrases254
- 19:26:35 [warp]
- we already do those in the regular dev meeting.
- 19:26:38 [ianmcorvidae]
- now, now, we're looking at DR during meetings :P
- 19:27:04 [ocharles]
- what am I doing wit hMBS-3515?
- 19:27:04 [ianmcorvidae]
- 12 seems reasonable, I don't really know how hard Guess Case is to extend/fix
- 19:27:09 [reosarevok]
- ocharles, ignore
- 19:27:11 [reosarevok]
- (for now)
- 19:27:16 [ocharles]
- don't do anything at all?
- 19:27:28 [ocharles]
- shall I exclude decision required from the scheduling filter then?
- 19:27:28 [ianmcorvidae]
- ocharles: it's already DR, the decision is to deal with it as part of our usual DR process
- 19:27:33 [warp]
- MBS-3848 is barely actionable
- 19:27:37 [reosarevok]
- Well, you said there is opposition and nobody came and said "but this!"
- 19:27:48 [reosarevok]
- So, wait until someone objects to the opposition
- 19:27:55 [reosarevok]
- For this one: I'd say 12 *if and only if* we also make it work better
- 19:27:56 [warp]
- also doesn't seem important, I'd say unsched. but based on votes I'm ok with 12.
- 19:28:03 [demosdemon]
- oh yeah, that reminds me I have 2 DRs
- 19:28:12 [ianmcorvidae]
- reosarevok: define "work better"?
- 19:28:24 [reosarevok]
- Next time guess case turns "Piano" at the end of a track to "(piano)" I'll kill someone :p
- 19:28:49 [warp]
- reosarevok: I have a more productive alternative
- 19:29:04 [reosarevok]
- (and "club" etc also have no checks apart from "they're at the end" iirc - I know I've seen them turn into wrong "ETI" when they were titles)
- 19:29:21 [reosarevok]
- (pretty sure there's a ticket for all that, anyway)
- 19:29:27 [warp]
- reosarevok: collect such cases somewhere, the open a ticket for it when you have a nice collection. I'll add them to the guesscase unittests and then fix GC.
- 19:29:33 [warp]
- s/the/then/
- 19:30:09 [reosarevok]
- warp: that one seems clear anyway: "lowercase chillout and ambient before remix or mix"
- 19:30:22 [reosarevok]
- (all the rest is ambiguous or unclear and thus should be ignored)
- 19:30:40 [ocharles]
- * ocharles has no opinion, somewhere tell me where this goes :)
- 19:30:45 [warp]
- reosarevok: it says: such as "chillout" and "ambient". implying there should be more.
- 19:30:51 [reosarevok]
- Sure, but it doesn't say it
- 19:31:01 [reosarevok]
- So do those, close as fixed, ask for a bigger list if they want more
- 19:31:14 [warp]
- reosarevok: exactly, so the ticket is vague and incomplete. thus I described it as "barely actionable" :)
- 19:31:22 [reosarevok]
- * reosarevok shrugs
- 19:31:36 [reosarevok]
- I see a pretty easy way of doing it, but if you insist, then just ask for the list directly :p
- 19:32:17 [warp]
- reosarevok: I don't like diving into guesscase. If I'm going to be diving in there, I want to have a good solid collection of broken shit, so I don't have to touch that code again for another year.
- 19:32:46 [ruaok]
- lol. makes sense.
- 19:32:48 [warp]
- (instead of adding one more thing to it every X weeks)
- 19:32:59 [reosarevok]
- then comment and ask for that list
- 19:33:06 [warp]
- reosarevok: ok
- 19:33:08 [reosarevok]
- * reosarevok doesn't add enough ambient mixes to care anyway :p
- 19:33:09 [reosarevok]
- [MBS-3476] Add more string substitutions for "join phrase"424
- 19:33:14 [warp]
- reosarevok: can you add your piano example? :)
- 19:33:20 [reosarevok]
- The "feat." one I asked for, I did myself
- 19:33:27 [ruaok]
- that sounds almmost like a bug to me, so 3 mo.
- 19:33:41 [ocharles]
- i don't know what i'm doing with that last ticket still
- 19:33:44 [ocharles]
- leaving it? unsched?
- 19:33:51 [reosarevok]
- warp? DR?
- 19:34:01 [reosarevok]
- ruaok: A bug called "user that can't press space" :p
- 19:34:08 [reosarevok]
- (but yeah, seems people want it fixed, so 3 is ok)
- 19:34:09 [ruaok]
- turn it back to the creator and tell them to make it actionable.
- 19:34:21 [reosarevok]
- Yo, God, fix this ticket
- 19:34:54 [warp]
- reosarevok: MBS-3476 is an actual bug. the code should already work as the folks in the comment on that ticket want it to work.
- 19:35:00 [reosarevok]
- Oh
- 19:35:01 [warp]
- reosarevok: so 3 or 12.
- 19:35:07 [ianmcorvidae]
- if it's a bug, 3
- 19:35:15 [reosarevok]
- Ok
- 19:35:20 [ianmcorvidae]
- and someone who knows why it's a bug, please go clarify why on the ticket :P
- 19:35:25 [reosarevok]
- Check if it happens the first time, or only if you re-edit it
- 19:35:34 [reosarevok]
- If the former, bug, if the latter, wontfix
- 19:35:41 [warp]
- * warp nods.
- 19:35:58 [reosarevok]
- (since it needs to *allow* entering them like this, just try to point to the most common version first)
- 19:36:17 [reosarevok]
- So, 3 I guess
- 19:36:34 [reosarevok]
- [MBS-3294] clientaccesspolicy.xml and/or crossdomain.xml for Silverlight/Flash Crossdomain Calls113
- 19:36:44 [warp]
- WONTFIX
- 19:36:45 [reosarevok]
- * reosarevok looks at the ceiling and ignores this ticket he doesn't understand
- 19:36:52 [ruaok]
- I hate the idea that people will use crappy software to use MB.
- 19:36:54 [ocharles]
- wontfix
- 19:36:58 [ruaok]
- wontfix.
- 19:37:02 [reosarevok]
- nikki says "12 because making it possible for people to access our data in more ways is good"
- 19:37:07 [ocharles]
- if it was a standard, then fine
- 19:37:23 [ruaok]
- I think we have CORS on our radar and that is the right way to do this.
- 19:37:34 [ruaok]
- its not ready yet, but its on the radar.
- 19:37:34 [warp]
- there is a standard, CORS, if we don't have that yet, we should implement that. but not these plugin specific hacks.
- 19:37:35 [ocharles]
- we already have CORS
- 19:37:44 [ocharles]
- iirc
- 19:37:48 [ianmcorvidae]
- we already have CORS for webservice stuff, at least
- 19:37:53 [ocharles]
- yea, i thought i wrote that :)
- 19:38:11 [ianmcorvidae]
- I agree on wontfix, silverlight and flash are the PUIDs of the web world :P
- 19:38:16 [warp]
- haha
- 19:38:25 [ruaok]
- lol
- 19:38:33 [kepstin-work]
- yeah, cors already works, as you can see on http://people.scs.carleton.ca/~cwalton3/temp/mbmockups/ajax/ if you don't use opera :)
- 19:38:52 [reosarevok]
- ok, seems you all agree
- 19:38:54 [reosarevok]
- [MBS-3459] Display release context when merging recordings740
- 19:39:11 [reosarevok]
- "I think this is currently incomplete: It really needs some thought put into how it's going to work for recordings with lots of releases" says nikki
- 19:39:28 [warp]
- 3 based on votes.
- 19:39:40 [reosarevok]
- I don't think I agree with nikki there: it says how it will work, just like the search tables
- 19:39:51 [reosarevok]
- (and while it's not pretty, it should be better than nothing)
- 19:39:53 [kepstin-work]
- I always have to open all the recordings in tabs to figure out which one I want to merge into right now
- 19:39:59 [ianmcorvidae]
- * ianmcorvidae abstains, I'm not sure on this at all
- 19:40:01 [kepstin-work]
- so this will save bandwidth ;)
- 19:40:05 [ianmcorvidae]
- haha
- 19:40:08 [warp]
- reosarevok: yeah, I'd say implement as described. tweak later.
- 19:40:11 [ocharles]
- if you want it to work like the search, then 12 mo
- 19:40:14 [ocharles]
- if not, then DR
- 19:40:29 [ocharles]
- we really need to pick from 12 mo -> 3 mo soon though
- 19:40:38 [reosarevok]
- Well, this is 7 4 0
- 19:40:43 [ocharles]
- we're rapidly approaching a massive wall of tasks
- 19:40:44 [reosarevok]
- So you could start with that :p
- 19:40:47 [ruaok]
- go with the 3 then. :)
- 19:40:50 [reosarevok]
- Ooh, that's what you meant
- 19:40:53 [reosarevok]
- That there's a lot in there
- 19:40:53 [ocharles]
- i think the 12mo bucket is almost full
- 19:41:07 [reosarevok]
- Well, if 12 mo has stuff that has a less than 3 mo due date, that needs to move
- 19:41:11 [ruaok]
- so next triage meeting we tackle the 12 mo bucket...
- 19:41:30 [ocharles]
- or just let people move say 5 pet issues from 12 to 3
- 19:41:32 [reosarevok]
- (not sure if we've been doing this long enough)
- 19:41:34 [warp]
- isn't it automatic, as reo described?
- 19:41:45 [ocharles]
- warp: it'd be nice to spell it out a bit more
- 19:42:00 [ocharles]
- i hit choice paralysis when i have to pick from 70 equally important things
- 19:42:19 [ocharles]
- we could even make it "just move the first 20 by due date"
- 19:42:23 [warp]
- ocharles: 12 mo should be FIFO. the stuff which was moved into there first should be moved to 3mo first.
- 19:42:28 [ruaok]
- +1
- 19:42:35 [ocharles]
- ok, so shall we just move 20 of em?
- 19:42:39 [ruaok]
- or FINO. thats also good. :)
- 19:42:55 [ruaok]
- sounds good to me.
- 19:42:56 [reosarevok]
- ocharles: sounds reasonable
- 19:42:59 [warp]
- ocharles: I don't know if "by due date" would make it a FIFO.
- 19:43:05 [ianmcorvidae]
- I think I may need some VINO after this discussion
- 19:43:06 [ianmcorvidae]
- ;)
- 19:43:13 [kepstin-work]
- ruaok: then what's the point of 'unsched'? just make everything 12mo.
- 19:43:17 [reosarevok]
- warp: how come they would not?
- 19:43:21 [kepstin-work]
- ;)
- 19:43:33 [warp]
- reosarevok: I don't know how the due day is set.
- 19:43:35 [ruaok]
- * ruaok points out that FINO is first-in, never out.
- 19:43:36 [reosarevok]
- i mean, due date is day entered + 1 year
- 19:43:57 [reosarevok]
- ruaok: if that means "never out because they're all fixed even before we hit 3 mo to due date", then yes :p
- 19:44:31 [kepstin-work]
- ruaok: I thought DR was FINO ;)
- 19:44:35 [warp]
- reosarevok: "day entered" is "day entered into the 12 month bucket" ? if so, then yes, by due date is a FIFO.
- 19:44:44 [ruaok]
- kepstin-work: we've started fixing that recently. :)
- 19:44:45 [ruaok]
- \
- 19:44:46 [reosarevok]
- warp: AFAIK, yes
- 19:44:59 [reosarevok]
- Aaanyway
- 19:45:01 [reosarevok]
- [MBS-4085] Users with open edits can delete their account533
- 19:45:06 [ruaok]
- 12
- 19:45:27 [ocharles]
- that seems fine?
- 19:45:32 [ocharles]
- oh, they can't be contacted
- 19:45:34 [reosarevok]
- Yeah
- 19:45:37 [reosarevok]
- Let them delete it
- 19:45:42 [ocharles]
- we could cancel all their edits then?
- 19:45:42 [warp]
- all those edits should just cancel
- 19:45:43 [reosarevok]
- but cancel all their edits if they do
- 19:45:45 [ocharles]
- * ocharles nod
- 19:45:46 [reosarevok]
- heh
- 19:45:52 [reosarevok]
- Seems we agree on it :p
- 19:45:53 [ocharles]
- simple, happy with 3 as the votes say
- 19:45:57 [warp]
- cancel all the edits!
- 19:46:11 [ruaok]
- k
- 19:46:17 [warp]
- I'm ok with 3 if it is cancel all the edits :)
- 19:46:22 [kepstin-work]
- warp: write tests to make sure it doesn't cancel all the edits, but rather only that user's edits :)
- 19:46:29 [ocharles]
- can we be done now?
- 19:46:40 [reosarevok]
- NO
- 19:46:42 [reosarevok]
- Fiiine
- 19:46:43 [warp]
- sure.
- 19:47:18 [ruaok]
- I think we should make these meetings regular occurances.
- 19:47:30 [ruaok]
- lets touch base at the end of each dev meeting and make sure we can make it.
- 19:47:32 [warp]
- 3 times a day until we clear the queue!
- 19:47:34 [ocharles]
- i can't keep sacrificing evenings
- 19:47:36 [ocharles]
- just to point this out
- 19:47:49 [warp]
- oh, not _that_ regular? :P
- 19:47:50 [ocharles]
- i already have a maximum of 4 week at best, i'd like to keep it to at least 3
- 19:48:12 [ruaok]
- hmmm.
- 19:48:19 [ruaok]
- after the dev meeting?
- 19:48:20 [ruaok]
- before?
- 19:48:32 [ocharles]
- on dev meeting days i can do it
- 19:48:37 [reosarevok]
- Ok
- 19:48:37 [ocharles]
- seeing as that evening has already gone :)
- 19:48:38 [ruaok]
- I'm ok with that.
- 19:48:38 [reosarevok]
- So
- 19:48:40 [reosarevok]
- Monday
- 19:48:40 [ocharles]
- not before though
- 19:48:47 [ruaok]
- SMT + 1.
- 19:48:48 [reosarevok]
- Full day triaging
- 19:48:49 [reosarevok]
- :p
- 19:48:50 [ruaok]
- 20UTC.
- 19:48:53 [ocharles]
- and i'd like to say not longer than 30 minutes
- 19:49:00 [ruaok]
- ocharles: sounds good.
- 19:49:11 [ianmcorvidae]
- as long as it's 30 minutes weekly, seems fine
- 19:49:28 [warp]
- 30 minutes I can manage
- 19:49:38 [ocharles]
- it'd be better to keep other evening meetings stuff that's important
- 19:49:48 [ocharles]
- like, really important :)
- 19:50:31 [djce]
- djce has joined #musicbrainz-devel
- 19:50:34 [warp]
- 20:00 UTC is bed time for me on some days, so I'd rather not stretch beyond that too much :)
- 20:20:05 [ruaok]
- plaintext: I got mail from splunk.
- 20:20:18 [plaintext]
- ruaok: hello
- 20:20:22 [plaintext]
- what did they write?
- 20:20:50 [ruaok]
- but I think we can work something out.
- 20:20:55 [plaintext]
- sounds good!
- 20:21:08 [ruaok]
- and today was the first day that a whole days of logs got automatically imported.
- 20:21:21 [ruaok]
- I did't have to mess with it, it finally just worked.
- 20:21:49 [plaintext]
- great
- 20:22:50 [plaintext]
- I modified the code so tables are populated with js
- 20:24:28 [ruaok]
- nice.
- 20:24:43 [ruaok]
- have you re-run the queries now that we have more and fresher data?
- 20:25:39 [plaintext]
- well, right now I'm still changing a few things, and I only run the test queries with "head 10000 |"
- 20:26:01 [plaintext]
- but earlier today I tried doing them on a whole days data to see if it works
- 20:28:11 [plaintext]
- but for the end of gsoc I'm thinking about hard-coding a days log into the queries file, so we get some real data
- 21:13:46 [demosdemon]
- hum, ianmcorvidae: any idea why http://demosdemon.mbsandbox.org/ is 502ing
- 21:14:01 [ianmcorvidae]
- is it on?
- 21:14:08 [demosdemon]
- yeah, lol
- 21:14:12 [ianmcorvidae]
- hm
- 21:15:00 [ianmcorvidae]
- oh
- 21:15:05 [ianmcorvidae]
- you have Cache::Memcached::Fast on
- 21:15:11 [demosdemon]
- oh, durdur
- 21:15:14 [ianmcorvidae]
- for the place where you can't
- 21:15:16 [ianmcorvidae]
- yeah
- 21:15:32 [ianmcorvidae]
- /var/log/nginx/mbsandbox-demosdemon.error.log is your friend :)
- 21:15:47 [demosdemon]
- I updated my dbdefs and forgot to remove that
- 21:16:06 [ianmcorvidae]
- yeah
- 21:16:27 [ianmcorvidae]
- I guess I should look into http://tickets.musicbrainz.org/browse/MBS-4578
- 21:16:39 [ianmcorvidae]
- it'll be an obnoxious merge whenever that gets done though :/
- 21:17:05 [demosdemon]
- but, it'll make future merges less obnoxious
- 21:17:19 [ianmcorvidae]
- it's true
- 21:17:28 [ianmcorvidae]
- I wonder if it can be done piecemeal
- 21:17:37 [ianmcorvidae]
- I guess there's no reason why not
- 21:18:10 [demosdemon]
- nah, I say go all out, fix it the first time and warn mb-devel repeatedly for 3 months, then it'll all be done
- 21:19:10 [ocharles]
- ianmcorvidae: which plack handler are you using for the sandbox?
- 21:19:12 [ocharles]
- fastcgi?
- 21:19:13 [ianmcorvidae]
- for people using it it won't be any worse than any other DBDefs update, except that it'll be the last one
- 21:19:18 [ianmcorvidae]
- ocharles: yeah, fastcgi, unix
- 21:19:39 [ocharles]
- and doing zerodown time upgrades by restarting on the same socket?
- 21:19:56 [ocharles]
- or a more explicit stop/start?
- 21:19:59 [ianmcorvidae]
- zero downtime upgrades, on the sandbox?
- 21:20:10 [ianmcorvidae]
- most people just use the provided run.sh in a screen session and ctrl-c it
- 21:20:13 [ocharles]
- ah
- 21:20:18 [ocharles]
- i thought it was automatic
- 21:20:21 [demosdemon]
- I just update in place
- 21:20:23 [ianmcorvidae]
- or run it with -r, of course, but
- 21:20:30 [demosdemon]
- if it errs, then I have to ^C
- 21:20:41 [ocharles]
- oh, -r is stop and start
- 21:20:49 [ianmcorvidae]
- yeah, there's downtime from -r
- 21:20:52 [ocharles]
- i'm trying to figure out why beta occasionally randomly breaks
- 21:21:00 [ocharles]
- it mostly just works, but sometimes... doesn't
- 21:21:15 [ianmcorvidae]
- what sort of breakage?
- 21:21:45 [ocharles]
- non-responsive, old processes don't ever die (become defunct), had another weird one where there was physical memory but it was swapping anyway
- 21:22:56 [ianmcorvidae]
- hm
- 21:23:14 [ianmcorvidae]
- yeah, I've got no idea
- 21:28:46 [demosdemon]
- only beta? afaik none of the rika instances have that issue?
- 21:28:55 [demosdemon]
- s/?//
- 21:29:44 [ruaok]
- woot.
- 21:30:12 [ruaok]
- ianmcorvidae: you free on oct 22?
- 21:30:34 [ruaok]
- the archive would like to have a music related meeting and would like have some MBer present.
- 21:30:40 [ruaok]
- we'd fly you out.
- 21:30:57 [ruaok]
- and two of our mentors will also be here. depends on who comes to the summit.
- 21:31:23 [reosarevok]
- Oh, just noticed that there's not been any CAA downtime lately!
- 21:31:27 [reosarevok]
- (now that you mention the IA)
- 21:31:34 [ruaok]
- :-d
- 21:31:41 [demosdemon]
- hah, out of sight out of mind
- 21:31:47 [ruaok]
- they were working hard on it.
- 21:33:48 [ianmcorvidae]
- ruaok: that can probably happen
- 21:34:08 [ruaok]
- awesome. you're close enough that we can fly you out cheaply.
- 21:34:20 [ianmcorvidae]
- yeah, certainly -- they're in SF, yeah?
- 21:36:01 [ianmcorvidae]
- yeah, so quoth the wiki anyway
- 21:38:22 [ruaok]
- yep.
- 21:38:32 [ruaok]
- in an old christian scientist church.
- 21:38:35 [ruaok]
- best digs evar.
- 21:38:50 [ianmcorvidae]
- I've seen pictures of the place, pretty impressive :)
- 21:42:10 [ruaok]
- crap.
- 21:42:13 [ruaok]
- plaintext: ping
- 21:42:20 [plaintext]
- ruaok: pong
- 21:42:40 [ruaok]
- so, apparently the 10G limit is a hard limit that we can;t get around so soon.
- 21:42:55 [ruaok]
- which means we should look at ways at reducing the data we feed to splunk.
- 21:43:09 [plaintext]
- does that mean 2 days of logs at a time?
- 21:43:22 [ruaok]
- no, that wont work.
- 21:43:35 [ruaok]
- I'm thinking of removing data from the logs that is useless.
- 21:43:48 [ianmcorvidae]
- are we currently importing multiple logs?
- 21:43:55 [ianmcorvidae]
- it's possible they could be combined and compressed, if so
- 21:44:06 [ruaok]
- 1344408690.569 x.x.x.x "GET /ws/2/artist/1b8bdee5-783a-4eca-88e5-3e9460739546?inc=url-rels+artist-rels+label-rels HTTP/1.1" 200 1552 z=- up=10.1.1.20:80 ms=0.577 ums=0.577 ol=- h=musicbrainz.org
- 21:44:13 [ruaok]
- we ditch the IP already.
- 21:44:26 [ruaok]
- HTTP/1.1 doesn't give us anything of value.
- 21:44:31 [ruaok]
- request size perhaps.
- 21:44:38 [ruaok]
- up can go.
- 21:44:40 [ruaok]
- h can go.
- 21:44:56 [ruaok]
- ums vs ms, not sure.
- 21:45:01 [ruaok]
- one or both can go.
- 21:45:07 [ocharles]
- are they always identical?
- 21:45:11 [ianmcorvidae]
- the difference is almost certainly very small
- 21:45:13 [ruaok]
- not sure.
- 21:45:17 [ianmcorvidae]
- ocharles: ums is upstream, ms is total
- 21:45:22 [ianmcorvidae]
- nginx is super-fast, so they're usually the same
- 21:45:30 [ianmcorvidae]
- if for some reason the frontend nginx is slow then ms will be a bit longer
- 21:45:41 [ianmcorvidae]
- ums is probably the more relevant metric, in any case
- 21:45:43 [ruaok]
- I vote to keep ums
- 21:45:53 [ruaok]
- ol=- ? what is that?
- 21:46:05 [ianmcorvidae]
- lemme look at the config
- 21:47:43 [plaintext]
- ruaok: what exactly does the 10GB limit mean?
- 21:47:44 [ianmcorvidae]
- that's $sent_http_location, i.e. the value of the Location HTTP header
- 21:47:50 [plaintext]
- 10GB indexed each day?
- 21:47:55 [ruaok]
- plaintext: yep.
- 21:48:00 [ianmcorvidae]
- so it'll list redirects, when there is one
- 21:48:04 [plaintext]
- and isn't that enough?
- 21:48:16 [ruaok]
- log in and look at the summary.
- 21:48:21 [ruaok]
- we indexed 9.5GB last night.
- 21:48:28 [ruaok]
- too close for comfort.
- 21:48:38 [ijabz]
- ijabz has joined #musicbrainz-devel
- 21:48:41 [plaintext]
- wow, I didn't know
- 21:48:43 [ianmcorvidae]
- z is gzip ratio, which may or may not be useful
- 21:48:48 [plaintext]
- sanitizing boosts up the size I guess
- 21:49:15 [plaintext]
- do we need a 40 character long hash for IP?
- 21:49:24 [ruaok]
- so we should aim to get rid of fields we do not need.
- 21:49:36 [ruaok]
- plaintext: lets make the hash as small as possible.
- 21:49:40 [ruaok]
- base64, I guess.
- 21:50:26 [plaintext]
- can't we cut a few characters from the hashes value?
- 21:50:29 [ruaok]
- so, can you please work on the script to: remote the HTTP x/x, ms= h= ol= and up= fields?
- 21:50:33 [plaintext]
- and still have a very low possibility of collision?
- 21:50:39 [plaintext]
- sure
- 21:51:00 [ruaok]
- plaintext: before we do that , lets take a close look at what encodings we're sing.
- 21:51:02 [ruaok]
- +u
- 21:51:09 [ruaok]
- lets find the most compact on and use that
- 21:51:18 [plaintext]
- encoding?
- 21:51:30 [ianmcorvidae]
- hex vs. base64 vs possibly something even more fancy
- 21:51:36 [plaintext]
- I see
- 21:51:39 [ruaok]
- * ruaok nods at ianmcorvidae
- 21:51:40 [demosdemon]
- you can store an ip as max 6 base64 characters
- 21:52:04 [demosdemon]
- (ipv4)
- 21:52:08 [ianmcorvidae]
- demosdemon: IPs are hashed with a salt (for privacy), so it's that which they're condensing, not the IP itself
- 21:52:22 [demosdemon]
- whats the hashing algo?
- 21:52:28 [plaintext]
- sha1
- 21:52:42 [ianmcorvidae]
- demosdemon: https://github.com/metabrainz/musicbrainz-server-log-analysis
- 21:52:53 [demosdemon]
- ah,
- 21:53:55 [demosdemon]
- a salted md5 should be find for ip addresses
- 21:54:18 [alastairp]
- uh
- 21:54:27 [demosdemon]
- the stuff your hashing isn't super top secret
- 21:54:30 [alastairp]
- why don't you use cryptopan for IP anonymisation?
- 21:54:35 [alastairp]
- it preserves prefixes
- 21:54:41 [alastairp]
- i'm just trying to work out its size
- 21:55:08 [plaintext]
- I've never heard of it alastairp
- 21:55:21 [ianmcorvidae]
- base64ing hashlib.sha1(whatever).digest() directly is 28 characters versus 40
- 21:55:42 [ocharles]
- erm, base 64 the ip is pointless if the whole point of hashing it was to encrypt it
- 21:55:58 [ianmcorvidae]
- ocharles: it's base64ing the hash, not the IP
- 21:56:01 [demosdemon]
- yes, ocharles… I realized this now
- 21:56:05 [ocharles]
- unless you meant base 64 on the binary md5 result
- 21:56:06 [demosdemon]
- -d
- 21:56:30 [alastairp]
- anyway, the real answer is "use cryptopan"
- 21:56:38 [alastairp]
- which all the network researchers use
- 21:56:42 [ocharles]
- right
- 21:57:02 [ocharles]
- murmur produces a very small hash, iirc, which you could just ascii encode in base 10
- 21:57:40 [ocharles]
- cryptopan sounds cool
- 21:57:59 [ruaok]
- ok, Xavier has confirmed the dates for the MB summit.
- 21:58:00 [ianmcorvidae]
- cryptopan does seem neat, don't see any convenient python implementation plaintext can just drop in
- 21:58:03 [ruaok]
- 17 November!
- 21:58:44 [ianmcorvidae]
- 17-18, or just the 17th?
- 21:58:54 [ruaok]
- the whole weekend.
- 21:59:03 [plaintext]
- well the python script can call whatever else cryptopan runs on, if it's not too big of an overhead
- 21:59:30 [ianmcorvidae]
- * ianmcorvidae sees if the AUR has it
- 22:00:09 [ianmcorvidae]
- hm
- 22:00:14 [ianmcorvidae]
- there's a perl module though: http://search.cpan.org/dist/IP-Anonymous/lib/IP/Anonymous.pm
- 22:00:24 [ocharles]
- forking for every line in the log file will not be blazingly fast
- 22:00:48 [ruaok]
- the blog processing is already cpu constrained.
- 22:00:55 [ruaok]
- blog? log.
- 22:01:04 [ruaok]
- * ruaok is writing a blog entry
- 22:01:16 [ianmcorvidae]
- the original one is c++ looks like
- 22:03:27 [ianmcorvidae]
- and memoizing the hash calculation (cryptopan or otherwise) would probably help the sanitizer a lot
- 22:05:25 [alastairp]
- hmm, yeah. most of the software I know works on pcap traces (dumps of all network traffic)
- 22:05:31 [alastairp]
- not log files
- 22:05:32 [alastairp]
- let me ask
- 22:07:19 [alastairp]
- no, sorry
- 22:07:23 [ruaok]
- http://blog.musicbrainz.org/?p=1539
- 22:07:29 [ruaok]
- reosarevok: can you twat that please?
- 22:07:34 [alastairp]
- also, cryptopan output size is the same as input size
- 22:07:37 [ruaok]
- errr tweet
- 22:07:52 [alastairp]
- have you considered binary logs for uploading? (can splunk handle that?)
- 22:08:14 [alastairp]
- e.g., 32bit IP address, or maximally 120 bits if you write it in ascii
- 22:09:55 [ruaok]
- dunno if it can handle that.
- 22:10:04 [ruaok]
- lets go for ASCII first, then see what else we need to do .
- 22:10:39 [reosarevok]
- ruaok, done
- 22:10:48 [ruaok]
- thx!
- 22:12:05 [plaintext]
- so what should we do for IP addresses?
- 22:13:44 [ruaok]
- leave them as is for now.
- 22:13:51 [ruaok]
- get rid of the extra fields.
- 22:13:57 [ruaok]
- then we'll see where we stand.
- 22:14:15 [ruaok]
- we can hammer out a python binding to that one call in cryptopan if we really need it
- 22:14:32 [ianmcorvidae]
- I'm memoizing and base64'ing now, gonna throw a pull request your way :)
- 22:15:05 [ianmcorvidae]
- https://github.com/ianmcorvidae/musicbrainz-server-log-analysis/commit/20c3159e8de845dd7b41bba542b218dbe2cca1f6
- 22:15:09 [plaintext]
- oh thanks ianmcorvidae
- 22:15:12 [ianmcorvidae]
- (should of course be tested :P)
- 22:15:26 [plaintext]
- Removing the unnecessary fields should give us ~1GB less data
- 22:18:37 [ruaok]
- oh nice. :)
- 22:19:28 [ruaok]
- that should help.
- 22:20:06 [ianmcorvidae]
- 28-character hashes and memoization should help with size and cpu-boundedness, respectively :)
- 22:20:36 [plaintext]
- I tried to pull changes but git tells me i'm already up to date
- 22:21:11 [alastairp]
- pull from where?
- 22:21:12 [ianmcorvidae]
- you'll need to add my fork as a remote
- 22:21:13 [alastairp]
- his remote?
- 22:21:13 [ruaok]
- heh: http://www.cracked.com/blog/5-songs-internet-thinks-are-by-wrong-artist/?utm_source=facebook&utm_medium=fanpage&utm_campaign=new+article&wa_ibsrc=fanpage
- 22:21:15 [alastairp]
- your remote?
- 22:24:37 [ocharles]
- urgh, cracked
- 22:24:40 [ocharles]
- i can't stand them
- 22:25:15 [reosarevok]
- "So yeah, in 1997 Cobain was more about decomposing than composing
- 22:25:15 [reosarevok]
- "
- 22:25:19 [plaintext]
- thanks I understand now
- 22:26:05 [plaintext]
- ianmcorvidae: should I push this to the metabrainz repo?
- 22:26:27 [ianmcorvidae]
- you should test it, I don't have any logs to run it on
- 22:26:33 [ianmcorvidae]
- so didn't do anything but write the code
- 22:26:41 [plaintext]
- will do
- 22:27:29 [plaintext]
- I'll run log_sanitizer_test.py and hope it works
- 22:27:32 [ianmcorvidae]
- once you've determined it's correct, consult with ruaok presumably, since the hash format will change
- 22:28:00 [ianmcorvidae]
- oh, heh, there's a test file
- 22:28:03 [ianmcorvidae]
- totally didn't notice that
- 22:28:09 [ruaok]
- I can deploy a new version today.
- 22:28:49 [ianmcorvidae]
- I guess I misnamed the base64 function
- 22:29:05 [ianmcorvidae]
- it's urlsafe_b64encode, not b64encode_urlsafe
- 22:29:06 [ianmcorvidae]
- heh
- 22:29:24 [plaintext]
- oh yeah the test failed
- 22:30:01 [ianmcorvidae]
- pushing out a version with them switched, not that it's not easy to fix
- 22:30:48 [plaintext]
- oops, I already switched them manually :P
- 22:30:59 [ianmcorvidae]
- no worries, just use yours :P
- 22:32:00 [plaintext]
- test ran fine, I printed the output and it looks good too
- 22:32:28 [plaintext]
- could we even strip the trailing '='?
- 22:32:48 [ianmcorvidae]
- if it's appearing on everything then yeah, probably
- 22:32:50 [plaintext]
- it would save around 20MB! hehe
- 22:32:53 [ianmcorvidae]
- hehe
- 22:33:13 [plaintext]
- but since we hash usernames like this too
- 22:33:38 [plaintext]
- though I don't really think an extra '=' could mess something up in splunk
- 22:34:29 [ianmcorvidae]
- it shouldn't matter, but you can just .rstrip('=') in do_hash
- 22:38:16 [plaintext]
- what does the number stand for after the http response code in nginx logs?
- 22:38:36 [ruaok]
- size the page served, iirc
- 22:38:44 [hawke_1]
- ruaok: That cracked article sucked. :-/
- 22:39:02 [plaintext]
- thanks
- 22:39:21 [hawke_1]
- mostly because the only answer for “why?” was “people are idiots, I guess”
- 22:40:46 [ruaok]
- hawke_1: I didn't really read it.
- 22:55:20 [plaintext]
- ruaok: done
- 22:55:31 [ruaok]
- k
- 22:57:01 [ruaok]
- whoops.
- 22:57:07 [ruaok]
- looks like a newline is missing somehwere.
- 22:57:42 [ruaok]
- fixed. ;)
- 22:58:27 [ruaok]
- and ips are no longer sanitized. :(
- 23:00:31 [plaintext]
- oh I forgot to add the sanitized version to the output
- 23:00:40 [plaintext]
- 1 sec
- 23:01:32 [plaintext]
- what newline was missing?
- 23:01:51 [ruaok]
- stdout.write needs a newline
- 23:01:55 [ruaok]
- print adds them, write does not
- 23:01:58 [plaintext]
- oh I keep forgetting that
- 23:03:11 [plaintext]
- I pushed the fixed code
- 23:04:19 [ruaok]
- looks better.
- 23:04:24 [ruaok]
- the up= line is still there.
- 23:04:29 [ruaok]
- which isn't terribly interesting for us.
- 23:05:00 [ruaok]
- and yes, those ips are awefully long.
- 23:05:26 [plaintext]
- the up part shouldn't be there
- 23:05:55 [ruaok]
- 1344408690.603 bd0470eb26f607274b4c51e120cbbbf192b9a11b "GET /static/images/entity/recording_lg.png HTTP/1.1" 304 252 z=- up=10.1.1.20:80 ms=0.001 ums=0.001 ol=- h=musicbrainz.org
- 23:06:14 [ruaok]
- I must have the wrong version.
- 23:07:00 [plaintext]
- this looks like the old output
- 23:07:05 [ruaok]
- looks great!
- 23:07:18 [ruaok]
- yea, I was stuck on a hash checkout.
- 23:07:30 [ruaok]
- so, that is in place and will run in about 8 hours or so.
- 23:07:39 [plaintext]
- cool
- 23:07:42 [ruaok]
- thanks for doing that so quickly. :)
- 23:07:48 [plaintext]
- :)
- 23:08:29 [plaintext]
- I should submit my stuff on codereview tomorrow
- 23:08:57 [plaintext]
- I wanted to move the js away from the .tt file today again, and it failed again
- 23:10:59 [plaintext]
- Created a new script at root/static/scripts, then I added the scripts location to the manifest
- 23:11:33 [plaintext]
- When I reloaded the page I had js errors with flot, somehow it said $ doesn't have a plot method
- 23:13:00 [ruaok]
- that sounds like the needed js isnt getting loaded.
- 23:13:11 [ruaok]
- $ not plot method sounds like jquery isn;t being loaded.
- 23:13:32 [plaintext]
- weird. jquery should be loaded for all pages by default, right?
- 23:13:44 [ruaok]
- it should.
- 23:13:55 [ruaok]
- are you using chrome or firefox?
- 23:14:05 [plaintext]
- chrome
- 23:14:09 [ruaok]
- perfect.
- 23:14:24 [ruaok]
- open the developer tools.
- 23:14:35 [ruaok]
- from the view menu -- at least on os x.
- 23:14:44 [ruaok]
- see if there are any errors after the page loads.
- 23:14:57 [plaintext]
- I usually open up the javascript console and look there
- 23:15:09 [plaintext]
- right now I changed stuff back and I have no errors
- 23:15:16 [plaintext]
- I should move the script away again, I guess
- 23:16:45 [demosdemon]
- ianmcorvidae: caa stuff still not on rika?
- 23:17:26 [plaintext]
- huh weird! I added a script just containing "alert(1)", added the path to the manifest, and I already get the error
- 23:17:49 [plaintext]
- https://gist.github.com/6ba3194109075e1ae03e
- 23:19:53 [ianmcorvidae]
- demosdemon: no, but after the next release they should be, since the ticket to dump them is finally there
- 23:20:01 [demosdemon]
- ah, k
- 23:20:02 [ianmcorvidae]
- demosdemon: however, the schema and such should be there, just empty
- 23:20:14 [demosdemon]
- http://ianmcorvidae.mbsandbox.org/user/reosarevok/votes
- 23:20:36 [demosdemon]
- I'm trying to find an autoeditor with approves, but everyone has caa edits
- 23:20:37 [demosdemon]
- heh
- 23:20:53 [ruaok]
- ianmcorvidae: any idea of the trouble plaintext is having?
- 23:21:36 [plaintext]
- This is probably a stupid idea, but could a CR/LF at the end of the line mess things up?
- 23:21:58 [ruaok]
- it would've in the 80s. :)
- 23:22:06 [ruaok]
- but it shouldnt today. :)
- 23:22:13 [plaintext]
- hehe okay :)
- 23:22:34 [ianmcorvidae]
- hm, no idea
- 23:22:58 [demosdemon]
- oh, lookie there… a patch I submitted back in april was never fully merged
- 23:23:17 [reosarevok]
- demosdemon: http://ianmcorvidae.mbsandbox.org/user/Senax/votes?page=3
- 23:29:43 [ijabz]
- ijabz has joined #musicbrainz-devel