Server update, 2013-02-11 and an important notice regarding edits

We’ve just finished pushing out another two weeks changes to the MusicBrainz web site. While this release is predominantly a bug fix release with a few small improvements, we’ve made a fairly substantial change to the way edits are applied.

As of this release, all subsequent edits entered will have an expiration period of 7 days – a reduction from the previous 14 days. We’ve made this change in order to reduce the time that editors have to wait for changes to be applied, which should lead to an improved user experience; and we’ve also made the change to hopefully try and make the edit queue a little bit more managable. This change is exploratory, so if you find it counterproductive, we’d love to hear your thoughts. IRC, the forums and the mailing lists are all good channels to voice your feedback.

Also, we have finally made the switch to GitHub. While the existing repository URLs will continue to work, they will no longer be updated. If you want to stay up to date with the latest code, make sure to update your checkout information.

Many thanks to Frederik “Freso” S. Olesen, Michael Wiencek, Nicolás Tamargo and the rest of the MusicBrainz team for their work on this release. Here’s what’s new:

Bug

  • [MBS-3457] – Direct search results incorrectly reports a recording as "standalone"
  • [MBS-3962] – Edit search doesn’t really exclude artists with "is not"
  • [MBS-4522] – Empty annotations are not merged correctly
  • [MBS-5144] – The MusicBrainz logo in the top-left corner has a different background color than the rest of the header
  • [MBS-5395] – "Actions" column on alias page is too narrow for translations
  • [MBS-5432] – Internal server error when editing cover art
  • [MBS-5434] – Inconsistent terminology: primary/secondary types and type/extra types
  • [MBS-5506] – Edit search for "My vote is not" does not work as expected
  • [MBS-5525] – Blank edit relationship type edits
  • [MBS-5566] – No more autoedit mark ?
  • [MBS-5567] – Internal server error entering remove cover art edit
  • [MBS-5617] – "new image goes here" is not translatable
  • [MBS-5650] – ISE when attempting to approve already-closed release group edit
  • [MBS-5655] – It’s possible to "Remove [a] release label" although there’s none
  • [MBS-5696] – ModBot can fail to close ‘edit artist’ edits that violate uniqueness on (name, comment).
  • [MBS-5698] – Some move disc ID edits display nothing for the old release
  • [MBS-5700] – Subscribers aren’t removed when a user deletes their account
  • [MBS-5705] – Rows in the appearances section of the artist relationships tab are sometimes one column too short
  • [MBS-5719] – The track number of the last track on some 2-disc releases is missing
  • [MBS-5724] – Sort/copy name missing for work aliases
  • [MBS-5728] – Possible to enter ‘edit release group’ edits that fail to apply due to spaces in artist credits
  • [MBS-5732] – Empty labels don’t warn for deletion pending
  • [MBS-5740] – Useless "select all" checkbox on Release Duplicates tab
  • [MBS-5742] – Editing a work without JS on will enter a silent remove ISWC edit
  • [MBS-5748] – Not possible to "Approve" an edit where yours is the only "No" vote
  • [MBS-5750] – Subscriptions report filtering ignores labels
  • [MBS-5754] – Editing recordings from tracklist does not work if "Release Duplicate" is chosen
  • [MBS-5762] – "Work Type" and "Work Language" incorrectly left blank for "Merge Works" edits when viewing predefined edit searches
  • [MBS-5763] – Edit release edits not properly translated
  • [MBS-5764] – Work language column in the stats links to releases
  • [MBS-5770] – There is no constraint on release_label that either (or both) the label or catalog number are not null.
  • [MBS-5771] – Add utamap.com (うたまっぷ) in the lyrics URL white list
  • [MBS-5774] – "Vote on all edits" is not translatable
  • [MBS-5776] – Cover art types are not being translated on the cover art tab
  • [MBS-5777] – Users’ work ratings page has no title
  • [MBS-5786] – i18n: secondary RG type labels on overview are untranslatable
  • [MBS-5788] – No edit is created when trying to submit/attach a DiscID
  • [MBS-5791] – ISRCs can’t be removed
  • [MBS-5797] – Internal server error if the Wikipedia link is not really a Wikipedia link

Improvement

  • [MBS-1413] – Make profile bios support WikiFormat
  • [MBS-1774] – Webservice: expose UUID for AR type
  • [MBS-3535] – Stack traces should mention which server was handling the request
  • [MBS-4880] – Add Help/Info about How "Merge mediums and recordings" works
  • [MBS-4902] – Add Google+ links to the sidebar
  • [MBS-5505] – Add j-lyric.net to the lyrics whitelist
  • [MBS-5605] – Ratings on collection pages
  • [MBS-5707] – Add autoselect for IMDb URL relationships for labels
  • [MBS-5727] – Disc [medium] title missing from edit relationships page
  • [MBS-5767] – Add an index on (editor, id DESC)
  • [MBS-5775] – Update Facebook URL cleanup to use https
  • [MBS-5779] – Remove useless nbsp on common-macros.tt
  • [MBS-5798] – Normalise wikisource URLs to http
  • [MBS-5803] – Add autoselect for SecondHandSongs artist URL

Task

  • [MBS-5757] – Consider diminishing time edits stay open
  • [MBS-5766] – Open up /release/ and /work/ in robots.txt
  • [MBS-5810] – Add Open Library to the other databases whitelist

The Git tag for this release is v-2013-02-11.

Server Update, 2012-01-28

We’ve just finished releasing the last release for January, 2013. This release is a combination of bug fixes and improvements to existing features, and was worked on by Frederik “Freso” S. Olesen, Michael Wiencek, Nicolás Tamargo, Pavan Chander and the rest of the MusicBrainz team. Thanks for your hard work, everyone! Here’s what’s changed:

Bug

  • [MBS-5022] – Release Editor: Missing entities page doesn’t handle 0 or only 1 result
  • [MBS-5453] – Bad redirect(s) https→http
  • [MBS-5540] – Release editor eats tracklists
  • [MBS-5586] – ISE when trying to submit an “Edit artist” edit with no changes
  • [MBS-5609] – JSON webservice doesn’t send relationship attributes
  • [MBS-5614] – Links to edit notes to other edit notes always use http
  • [MBS-5691] – Artists’ recording lists show ISRCs but don’t link to them
  • [MBS-5699] – CD stubs use “disambiguation” instead of “comment”
  • [MBS-5711] – IPIs missing from IPI element in JSON webservice
  • [MBS-5712] – JSON webservice handles missing values inconsistently
  • [MBS-5713] – Alias types missing from the JSON webservice

Improvement

  • [MBS-4536] – Include the presence of cover art in the webservice
  • [MBS-5304] – “Other Databases” whitelist: “Trove” ammendment
  • [MBS-5447] – Bandwidth performance: revert MBS-4764 now that thumbnail quality has improved
  • [MBS-5606] – Implement STYLE-160 (The Session) in code
  • [MBS-5651] – Clicking link for packaging types loses all entered information
  • [MBS-5652] – Release Label sorting makes no sense on Release Group page
  • [MBS-5702] – Change the text on the “Read more…” link under wikipedia extracts
  • [MBS-5739] – Disconnect database handle on page timeout
  • [MBS-5741] – Time out edit searches in 45 seconds, rather than 30.
  • [MBS-5749] – 401 error: Add link to profile edit page

Task

  • [MBS-5758] – Remove schwag/store links from musicbrainz.org pages

The Git tag for this release is v-2013-01-28.

All Our Git Repositories Are Moving To GitHub

On February 11th 2013, we will be shutting down the MusicBrainz hosted Git repository, in favour of using GitHub for hosting. While we will continue to take backups, these will be internal and thus git.musicbrainz.org will cease to operate as it currently does.

There are a few reasons for this move, but the predominent reason is so MusicBrainz can host less. We currently host a lot of our own software and this is straining the already-limited resources we have. If someone else can do something just as well or better than we can – then let them! Using GitHub also means we get a slightly better repository browser, which can make communicating and discussing code easier. However, we are not moving to pull requests, though we may in the future.

We already mirror git.musicbrainz.org onto GitHub, so if you are only interested in read access, we recommend changing your local clone now, to save confusion in the future. To do this:

  1. cd to your musicbrainz-server clone.
  2. Run git remote set-url origin git://github.com/metabrainz/musicbrainz-server.git

That’s it! You should now be able to git pull just as you did before.

GitHub has a few other possible protocols for cloning, so if HTTP or HTTPS is better for you, then check out the GitHub repository for all the possible links.

If you’re a developer currently developing against our repositories, then you should either fork the repository on GitHub, or contact us to talk about getting your keys added.

Sorry for the disruption!

Server update, 2013-01-14

After delaying this release by a week due to Christmas/New Year getting in the way, we have pushed out a new update of the MusicBrainz web site. This release consists mostly of bug fixes and a few outstanding tasks that we still needed to complete. Thanks to Frederik “Freso” S. Olesen, Michael Wiencek, Johannes Weißl and the MusicBrainz team for their work on this release! Here’s what’s changed:

Bug

  • [MBS-5288] – Use API when checking for WikiDoc changes
  • [MBS-5577] – Relationship Editor displays "vocal vocals"
  • [MBS-5663] – Leap year in "Edit Relationships"
  • [MBS-5716] – Reorder mediums edit is missing a space between medium title and old position
  • [MBS-5717] – Reorder mediums edit for mediums without titles shouldn’t include colons

Improvement

  • [MBS-5723] – Allow sorting collections by all columns, not just a select few.

Task

  • [MBS-3856] – Revert MBS-1052 "Amazon should lookup cover art by barcode too"
  • [MBS-5729] – Consolidate Metabrainz:Sponsors and About/Sponsors

Sub-task

  • [MBS-3974] – Filter by release country

The Git tag for this release is v-2013-01-14.

Server update, 2012-12-24

We don’t rest for seasonal holidays at MusicBrainz, and we’ve just finished pushing out another release! This one is quite a small one release – thanks to Frederik “Freso” S. Olesen, Nicolás Tamargo, Pavan Chander and the MusicBrainz team for their work on this release. Here’s what’s changed:

Bug

  • [MBS-5288] – Use API when checking for WikiDoc changes
  • [MBS-5497] – CAA uploads are setting x-archive-meta-mediatype to ‘images’, but it should be ‘image’
  • [MBS-5664] – musicbrainz_unaccent serverlog error message

Improvement

  • [MBS-2966] – Give artist credits a special mark
  • [MBS-3412] – Recording name in tooltip when hovering cursor over track title
  • [MBS-4605] – S3 settings in DBDefs.pm are badly named

Task

  • [MBS-5440] – Add lieder.net to the lyrics whitelist
  • [MBS-5684] – Add Yate Tagger to Products menu and home page
  • [MBS-5685] – Add SongKong to Products menu and home page
  • [MBS-5686] – Update to new Amazon Affiliate Tags

Server update, 2012-12-10

We’ve just finished pushing out an update to the musicbrainz.org servers. While work continues on the new edit system and an ingestion solution, this is a fairly small release of mostly bug fixes. Thanks to Pavan Chander and the MusicBrainz team for their work on this release!

Bug

  • [MBS-5035] – Removing release leaves orphaned recordings
  • [MBS-5126] – Orphaned recordings do not get removed (regression)
  • [MBS-5548] – Git commit data output isn’t HTML escaped
  • [MBS-5576] – Release group bar when adding disc IDs is one column too short
  • [MBS-5581] – Some stuff untranslated that wasn’t before
  • [MBS-5618] – Wikipedia abstract logic doesn’t properly encode certain characters
  • [MBS-5622] – MB registration captcha does not work over SSL

Improvement

  • [MBS-4228] – Improve artist alias description
  • [MBS-4568] – Add <bdi> tags to help with rendering of RTL text
  • [MBS-5260] – Cache /text.js somehow
  • [MBS-5317] – Webservice needs to support fmt=json switch to fmt=jsonnew for search queries
  • [MBS-5477] – Show country and gender in artist search results

New Feature

  • [MBS-4108] – Display Wikipedia abstract inline

The Git tag for this release is v-2012-12-10.

Server update, 2012-11-27

We’ve just finished pushing out a tiny little update to the MusicBrainz servers. This one improves on the ‘set release group cover art’ feature, but exposing an interface to make these changes. Later work will expose this cover art in more places. So, here’s the grand list of what has changed! Thanks to the MusicBrainz developers for their work on this release.

Bug

  • [MBS-4627] – Highlight all images with pending edits

Improvement

  • [MBS-5265] – Add release-group front cover art support

The Git tag for this release is v-2012-11-27.

Server update, 2012-11-14

We’ve just finishing pushing out another update to the MusicBrainz web servers. Sadly, this one is both a little bit later and quite a bit smaller than our normal releases – blame the summit for that! Many thanks to Frederik “Freso” S. Olesen, Michael Wiencek, Wieland Hoffmann and the MusicBrainz team for their work in this release. Before we get to the release notes, a quick announcement regarding DBDefs:

DBDefs.pm

This release features a new way of working with DBDefs, and we recommend everyone who runs a MusicBrainz server to reset their DBDefs to the new system. However, this should only be necessary if you run a web server – if you only use replication it should be possible to continue with the old DBDefs. To use the new DBDefs:

  1. Copy lib/DBDefs.pm.sample to lib/DBDefs.pm.
  2. Edit lib/DBDefs.pm to match your configuration.

This will give you a DBDefs.pm configuration that will continue to work with future changes to DBDefs, rather than causing exceptions as it previously did.

Release notes

Here’s what we got fixed:

Bug

  • [MBS-4180] – Strange behaviour for artist credits when renaming artist
  • [MBS-5200] – Errors are not translatable
  • [MBS-5247] – Fix all the invalid HTML reported by MBS-5246
  • [MBS-5292] – /release/MBID/cover-art doesn’t list cover art if you have not loaded the edits dumps on your slave server
  • [MBS-5389] – Relationship editor doesn’t correctly handle relating a recording on the release to another recording on the release
  • [MBS-5431] – Moving entities to or merging them artists into Deleted Artist should not be allowed
  • [MBS-5438] – Text overlaps help bubble in relationship editor
  • [MBS-5454] – Broken link to `remove recording edit-type’ documentation on remove recording page
  • [MBS-5456] – Middle click paste does not trigger URL match/cleanup
  • [MBS-5464] – Blog posts on the front page are cached for too long
  • [MBS-5471] – No correct search results even with a recording ID (during Add Release)
  • [MBS-5476] – Pressing enter in empty fields selects instruments / vocals
  • [MBS-5480] – screen space with many artists in the add relationship widget
  • [MBS-5485] – Artist comments not always converted to use XML character references
  • [MBS-5509] – Interface language isn’t persistent enough
  • [MBS-5521] – Date placeholders in the relationship editor are not translated
  • [MBS-5529] – New relationship editor overheats
  • [MBS-5538] – Pressing enter in work add adds/removes ISWC instead of submitting

Improvement

  • [MBS-3353] – Accept XX:XX:XX track times
  • [MBS-4578] – Improve configuration of server
  • [MBS-5206] – Guess Case: Remove the Classical mode
  • [MBS-5246] – Implement html5 validation using validator.nu.
  • [MBS-5433] – Include interface language in stack traces
  • [MBS-5445] – All the widgets forms should submit when hitting <Enter> in a field
  • [MBS-5477] – Show country and gender in artist search results
  • [MBS-5537] – Display only ‘Add note’ on the note & vote submit button when the edit is already closed

Task

  • [MBS-5504] – Add "DHHU" to the "Other Databases" whitelist

Sub-task

  • [MBS-5488] – Amazon coverart over SSL
  • [MBS-5489] – Basic switch-scheme-only coverart over SSL

The Git tag for this release is v-2012-11-14.

MusicBrainz Summit 12 – a Brief Summary

Last weekend approximately 20 dedicated MusicBrainz fans and customers all got together at Universitat Pompeu Fabra, Barcelona to discuss all things metadata. Now that the weekend has passed, and everyone is back at their respective homes, I can fill you in on how this fantastic summit went. We talked about a lot of topics at the summit, and I encourage you to read the extensive notes that Ian took (a huge thanks!) if you’re interested in all the details.

Friday was a lazy day while people arrived, but we did spend a bit of time at the summit venue. We got an introduction from Music Kickup – a new Finnish startup which offers a cloud based record label for artists. Spotify presented their ingestion process, which was helpful as at MusicBrainz we’re beginning to plan the new Ingestr project.

On Saturday we got under way with the summit proper. Brewster Kahle from the Internet Archive spoke on how the Archive works, and its plans going forward to try and archive even more about music. The general motivation is to provide listeners with more ways to explore and discover content, and the Archive are looking for ways that MusicBrainz can help with its linking its metadata to the Archive’s content.

Next, we moved on to discuss the Artist Image Archive – or more generally, adding more images to MusicBrainz. The conclusion was here that this is certainly a wanted feature, and we would like to try and use Wikimedia Commons to store public domain/CC-licensed artwork and fall back to the Archive for other content. We also lightly talked about adding label images, and the Archive are again happy to host this content if that’s needed.

While waiting for the full CompMusic team to be present, we outlined Ingestr, a forthcoming MusicBrainz tool to work with dumps of metadata. CompMusic then presented what they are working on, and how it ties in with MusicBrainz. They are currently storing some data outside the MusicBrainz schema, but would love to store as much as possible inside our database (and we’d love that too!). They are interested in adding more information to works, such as ragas and talas for Indian classical music.

The final topic on Saturday was to try and get some ideas going on how we want to store events, locations and venues inside MusicBrainz. No conclusions were reached here, but there was a lot of excitement and considerations and what we want to store, with the suggestion that some of this work might make a fantastic Summer of Code project next year.

We picked up on Sunday, and dived straight in with a discussion on bringing multiple release countries/release dates back to single releases, with a consensus that this should be done. Work here will probably resume in February, with the next schema change.

Dynamic work attributes were next on the agenda, and we sketched out a plan on how we can add new attributes to works that don’t depend on schema changes. This should allow us to add ragas and talas for the CompMusic folks, but also many other interesting properties. Again, work on this one is looking likely to begin again for the next schema change.

Much like Summit 11, the instrument tree came up again. People were in agreement that we want richer data about instruments, and making them entities that can be used in relationships (including between instruments) is probably the way to go.

nikki outlined her proposal on data quality, and we all spent a bit of time discussing what we’re trying to achieve with data quality, how to overcome the social problems with the word ‘quality’, and so on.

Warp bought up the problem of capturing series of releases in MusicBrainz, and we discussed how to solve this problem (for example, consider the ‘Dubstep Allstars’ series of releases). We agreed that the best way to move forward is to introduce the idea of ordered series, and deal with unordered series later.

The difficult topic of box sets came up, and while we didn’t make a clear decision on how to solve this problem, people had the chance to explain solutions as they see them, and everyone has a good understanding of both the challenges of box sets and the information that we’re trying to capture.

Like in Summit 11, we once more discussed the hard problem of genres, as these have become something that customers are increasingly requesting. We outlined all the various solutions that other projects use (such as SoundCloud, Music Kickup, and SoundUnwound). This topic didn’t reach any type of conclusion, but it was good to have some cross-pollination of ideas.

We wrapped up the day with some social topics, and ocharles started a discussion on how we can better promote ourselves and communicate our new features. There was a lot of energy in this discussion, but some of the key ideas were – more community interaction on blog posts, a clear ‘checklist’ of what to do when we release big features. kepstin also volunteered to look at rewriting the landing page with something more interesting than the static page we currently have.

The summit has proven once again to be a fantastic experience, not just for the quality of discussions, but also the level of interaction between participants. With the Saturday group meal, socialising at the apartment and continued discussions during breaks at the summit itself, it was great to see people chatting, laughing and generally having a great time.

Thanks to everyone who came for making the summit what it was. We hope to see you all again next year!

Server update 2012-10-29

The MusicBrainz team are all mostly back after participating in Google Summer of Code and having a small face-to-face meetup, so we’ve finally got round to getting the latest release out. Because of so much travel, this is a tiny release, but here’s what’s changed:

Bug

  • [MBS-4727] – Regression : Can’t add ISWC when adding work
  • [MBS-5463] – Release editor fails on releases without disambiguation comment
  • [MBS-5478] – Can’t unselect all recordings / works

Improvement

  • [MBS-5422] – Show close time in open auto-editor elections