Looking for Language Liaisons

As some of you may know, this summer through Google Summer of Code I’m working on internationalization of musicbrainz-server. As outlined in my proposal, I’m currently looking to find what I call “language liaisons”: folks willing to be the go-to person about a given language for me and other developers.

Auf deutsch!
Auf Deutsch!

What’s expected of liaisons:

  1. Willing to be pestered occasionally, by me or other developers, about language-specific concerns: when adding new features, and thus adding new strings, we’d like to be able to ensure nothing’s added that will need to be changed before it can be translated into a given language.
  2. Willing to file bugs for strings already in the database that are untranslatable, should you find them.
  3. Be on the musicbrainz-i18n mailing list; this will be the main venue for organization and communication about i18n issues.
  4. Ideally, to be an active translator for your language – but this isn’t a requirement, because I’d like to get the widest global coverage I can; even if a language doesn’t currently have a translation, we don’t want to unintentionally sabotage future translators with untranslatable strings!
musicbrainz-japanese
日本語

I’ll also be determining a (related) list of “target languages” for the summer, with the intention of releasing translation on musicbrainz.org with these languages at the end of the summer. I’ll consider for inclusion on this list languages that are both in active translation on Transifex and have language liaisons.

If you’re interested in being a language liaison, please contact me: ianmcorvidae (at) musicbrainz (dot) org, editor ianmcorvidae, or ianmcorvidae on IRC, and join the mailing list.

If you’re interested in i18n generally,  please join the musicbrainz-i18n list. For more information on my project and musicbrainz-server i18n, see the server internationalization wiki pagemy post on my personal blog, and my official proposal, or come ask about it on IRC or the mailing list!

(less useful languages)
(less useful languages)

Server update, 2012-04-30

We’ve released another set of bug fixes and improvements for the server. Thanks to Joachim LeBlanc, Johannes Weißl and the rest of the MusicBrainz team for helping on this release!

Bug

  • [MBS-2553] – Change wording for no External Links in the sidebar
  • [MBS-4041] – Nonexistent elections cause Internal Server Error
  • [MBS-4544] – Predefined advanced searches on /search no longer work
  • [MBS-4547] – URL cleanup broken on URL edit page
  • [MBS-4563] – Plugin::Diff is broken
  • [MBS-4564] – robots.txt served as octet-stream on test.mb
  • [MBS-4566] – Advanced Search Syntax Link missing from Search
  • [MBS-4573] – Show a message when a label has no releases
  • [MBS-4597] – Merging can fail if entities have aliases with the same locale
  • [MBS-4609] – Comment element on release group in /ws/2 should be removed

Improvement

  • [MBS-1167] – "Read more" for annotation previews should load the full annotation in place, not take you to a different page
  • [MBS-1881] – Move relationship types/attributes/instruments lists
  • [MBS-2479] – Mark approvals differently from normal Yes votes
  • [MBS-2814] – Reports don’t highlight entities with pending edits
  • [MBS-3684] – Improve sorting of the "Releases with superfluous data tracks" report
  • [MBS-4038] – Let users edit their permissions on test servers
  • [MBS-4063] – Exclude stuff marked Single AND UK from the SeparateDiscs report
  • [MBS-4125] – Sort report for creative commons download relationships
  • [MBS-4476] – Provide indication of non-front cover art
  • [MBS-4493] – ISRCs with multiple recordings: Do something about the DEF05 ISRCs
  • [MBS-4530] – Remove the recordings with CC download relationships report
  • [MBS-4560] – "No votes" failed edit should not fail in silence
  • [MBS-4572] – Open up /artist/ in robots.txt

New Feature

  • [MBS-4551] – Display which git branch is active
  • [MBS-4567] – Use markdown for README and INSTALL
  • [MBS-4576] – Allow for google analytics support
  • [MBS-4590] – Use /doc/About instead of /doc/About_MusicBrainz
  • We’ve also improved cover art support slightly.

Sub-task

  • [MBS-4160] – SoundCloud relationship under the External links section

Announcing libmusicbrainz4 release 4.0.1

v4.0.1 of libmusicbrainz4 has now been released. This is primarily a maintenance release to fix a couple of bugs that were reported. Additionally, the code has now moved to GitHub, and can now be found at
https://github.com/metabrainz/libmusicbrainz.

The main changes are:

  • Fixed bug LMB-30 – Unable to access all relation lists on objects with multiple relation lists
  • Fixed bug LMB-31 – mb_relationlist_get_targettype always returns “target-type”

The interface has changed as regards to retrieving relation lists, due to LMB-30. Previously, the library only returned the last relation list that was returned in the XML response. The old ‘RelationList’ method on the Artist, Label, Recording, Release, ReleaseGroup and Work classes has been marked ‘deprecated’, and a new ‘RelationListList’ method will return a list of all relation lists for the entity.

For backwards compatibility, the ‘RelationList’ method will operate in the same manner as release 4.0.0, only returning the last relation list.

As ever, please see the enclosed README for details on support and bug reporting. The release is available for download at http://musicbrainz.org/doc/libmusicbrainz.

Server update, 2012-04-10

Sorry for being a week behind on this release, but we’ve just finished pushing out another set of changes. Many thanks to Lukáš Lalinský, Paul Taylor and the rest of the MusicBrainz team for making this release happen! Here’s what we’ve just released:

Bug

  • [MBS-3619] – Statistics page doesn’t validate
  • [MBS-3794] – A "no votes" edits got wrong status "failed vote"
  • [MBS-3834] – Hovering over artist names in "edit medium" tracklist changes does not show the artist sort name
  • [MBS-4082] – Titles including quote marks are truncated when adding from a CD Stub
  • [MBS-4131] – Edits show credited-as name when it’s the same as the artist name
  • [MBS-4183] – Release editor: enters new artist if no radio button selected on ‘add missing entities’ tab
  • [MBS-4314] – Add interface elements to reorder tracks on a tracklist without having to edit the tracknumbers.
  • [MBS-4367] – Current search URLs are broken on the test server
  • [MBS-4418] – beta.mb is unresponsive
  • [MBS-4467] – ws/2/label doesn’t include label comment
  • [MBS-4484] – Limited user can vote on edits
  • [MBS-4500] – ISE: ‘Can’t call method "is_auto_editor"’ when attaching a TOC
  • [MBS-4504] – Set default unknown value for medium.format_name

Improvement

  • [MBS-684] – TOC lookup displays too little release info
  • [MBS-834] – Weird behaviour of the search checkboxes
  • [MBS-1728] – Make ModBot’s edit notes grey again
  • [MBS-1764] – Inconsistent display for merge edits
  • [MBS-2242] – Disable editing of Medium title when there’s only one medium
  • [MBS-2412] – User tags should be sorted
  • [MBS-2867] – RE: "Add n track(s)" should reset to 1
  • [MBS-3171] – Overview and Recording pages need to be able to exclude featured guest spots from display
  • [MBS-3208] – Trim leading/trailing whitespace in release editor prior to Add Missing Entities check
  • [MBS-3398] – Detect "M" in front of track numbers
  • [MBS-3482] – "YouTube Relatiionship Type" needs autofix and doc
  • [MBS-3628] – Prevent people from adding broken Facebook URLs
  • [MBS-4234] – Move Basic search logic from mbserver to searchserver
  • [MBS-4390] – Display disambiguation comments better in tooltips
  • [MBS-4490] – "CD N" in Add disc from existing tracklist is confusing
  • [MBS-4523] – Statistics: Use commas and right-align numbers
  • [MBS-4535] – Make visited links more prominent

New Feature

  • [MBS-3160] – Add view to artist pages that shows release groups/recordings/etc credited to that artist only (solo releases only – exclude collaborations, feat., etc)
  • [MBS-3266] – Allow filtering by artist credit

The Git tag for this release is v-2012-04-10-ngs-bug-fixes.

Please tell us what you think about our proposed "no waiting" access to our Web Service

We’re working to add a paid option to our Web Service for commercial users and for end users who would like to have faster access. We’re finally getting close to being able to offer this service and we would like to get some feedback from our users about this.

We are proposing to add “no waiting” access to our web service — this proposed service would:

  1. Allow continuous sequential access to our version 2 web service without delays between calls. You would not be required to have any delays between calls to the web service (our current service requires a 1 second delay between calls)
  2. Still have a global rate limit that may temporarily deny callers access to our web service (with 503 responses) if our service gets overloaded. We would work hard to ensure that our service would not reach this limit, since its a paid service, but we cannot guarantee that.
  3. Not allow concurrent (more than one call at a time) calls to our web service per user. We reserve the right to terminate your service if we find that you are making concurrent calls to our “no waiting” service.

Our existing web service will not be affected by this new service — the existing service will remain free and limited to one request per second as it is now. Initially the new service is intended for end-users who wish to have faster access to our web service. Once we’ve ironed out the kinks in this new service we will offer this service for commercial customers as well.

Finally, we’ve set up a very short survey (3 questions only!) to gather some feedback from you about this service. We’re mainly trying to establish a reasonable price for this service. Please take our survey and let us know what you think and how much you’d pay for our service.

All of your responses will be private and the survey does not ask for any information about you. Thanks, we appreciate your thoughts!

Official schema change release announcement for May 2012 release

We’ve been working on hammering out the details of the upcoming schema change release and we’ve settled on 11 tickets that we’re going to implement. For a detailed description of how our database will change, please refer to the our documentation for these tickets.

This release will happen on or about 15 May, 2012.

OT: Toshiba USA service sucks. Don't buy their products!

Sorry for the off-topic post, but I feel that I need to speak up about the atrocious customer service I’ve gotten from Toshiba.

About a year ago we purchased three new portable hard drives that we use for backing up the MusicBrainz servers. These are used for off-site back-ups; every monday when I am in town, I pedal to Digital West and swap out the back-up disk. Should a bomb hit Digital West, we have an off-site backup that we can use to restore MusicBrainz. After about 3 months, the first drive failed and I promptly attempted to return the drive, but the site where you request an RMA number refused to recognize the drives as valid products that Toshiba supports. I periodically checked back to see if they would finally give me an RMA number. About 3 months ago, the system did give me an RMA number and I sent the drives in. 2 weeks later nothing had happened, no replacement drive appeared.

I called Toshiba and no one knew where my drive was. Finally I got an email saying that I had sent the drive to a place that was no longer accepting the drives and my drive was going to be returned to me. What? I filled out the forms and use their mailing label to send the package, how could this go wrong? I called them back asking to ”’not”’ return the drive, but to actually forward it to the RMA place. Of course, no one could actually tell me what was going on. Three days later of being escalated and talking to clueless idiots, I finally got someone who had a clue about what was going on. But that person was wholly unwilling to make an effort to make things right. My drive was sent back to me, but the address was written unclearly and it took an extra 2 weeks for UPS to actually get the drive back to me. (This person also said I should cut Toshiba USA some slack since they were a tiny organization. Ha! They have no idea what tiny really means!)

I finally have my broken drive back and I’m out many hours of time and $12 in shipping costs. And this week the second drive died and I have no patience for dealing with Toshiba again. I am going to recycle all of these drives and replace them with new drives and be done with this. I want nothing to do with Toshiba again. Thanks Toshiba, we’re out $300 — you suck.

This post serves as a public notice that Toshiba sucks and that you should not purchase anything from them, since they refuse to properly support their products.

Search server release: 2012-03-23

Earlier today we switched the latest release of our search server live. Paul says:

In this new release of the search server the basic search will now search more fields and return variations of what you searched such as spelling mistakes and the scoring has also been improved. Advanced search now lets you search for when a field doesn’t exist and you can do exact searches that take accent characters into account using the new accent fields.

We’ve also upgraded to the latest version of Lucene, added a way to see how scores are calculated for results and added integration tests. Hopefully this will all help with future stability.

UPDATE: This code lives in svn and can be found at r13480. I’ve also created this tag.

Thanks for your hard work on this release, Paul. And also thanks to Ollie for taking time to push the server portions of this live today. Here are our release notes:

Bug

  • [SEARCH-168] – Recording Search doesnt consider track duration only recoridng duration
  • [SEARCH-191] – Duplicate qdur values being added to document

Improvement

  • [SEARCH-152] – Update Code to use Lucene 3.5
  • [SEARCH-160] – Searching artist by name and initial(s) is impossible, the initials are useless
  • [SEARCH-163] – Search for exact string, with no accents
  • [SEARCH-166] – Artist search does not always offer the obvious (to a human!) results
  • [SEARCH-170] – Move Basic search logic from mbserver to searchserver
  • [SEARCH-171] – Basic Search should work more like Solr Dismax Parser
  • [SEARCH-173] – Index Catalogos without space
  • [SEARCH-174] – Provide a way to search for empty/non-empty fields
  • [SEARCH-177] – Support for initialize index remotely http://localhost:8080/?init=mmap
  • [SEARCH-188] – Add Integration Tests

New Feature

  • [SEARCH-172] – Make it possible to search for barcode:"[none]"
  • [SEARCH-194] – Add debugging option to be able to get lucene explain for results

Schema change update

As per my previous blog post, today is the deadline for submitting tickets for consideration in the May 15 2012 schema change release. Eleven tickets have been championed for this release — you can see each of these tickets in the schema change release fix version in jira.

I would like to call your attention to three tickets that I think ought to get more input from the community:

  1. Split release group attributes into two types
  2. Lyrics language for works
  3. Add ISO 639-3 language codes to the database

If any of these issues interest you, please take a look and leave a comment if you have any input. Finally, I will be keeping track of the progress of the schema change release on this wiki page.

I’m hoping to put together a complete schema change document that outlines the exact changes to our schema on April 2.

Many thanks to all of the volunteers who adopted tickets and are moving them forward!