Server update, 2015-01-12

Our first release of the new year is out today, containing the usual set of editing bug fixes and improvements. There’s also a small new feature in the release editor that allows propagating the release title and artist credit to the release group.

Anyone experiencing failures in InitDb.pl after upgrading DBD::Pg to version 3.5.0 will want to get this update, since it contains a workaround.

Thanks very much to chirlu, navap, nikki, and the MetaBrainz team for their work on today’s release.

The git tag is v-2015-01-12 and the full changelog is below.

Bug

  • [MBS-4904] – Edit search automatically focuses text fields on page load
  • [MBS-8025] – Spurious "performance" entries in work search results
  • [MBS-8032] – Internal server error applying problematic add ISRC edits
  • [MBS-8047] – Applied merge release groups link has broken links
  • [MBS-8099] – Edit search automatically focuses text fields when changing dropdowns
  • [MBS-8108] – Edit removing track with track mbid redirect can’t close
  • [MBS-8116] – Place edit form acts on outdated parse-coordinates responses
  • [MBS-8126] – InitDb.pl fails with newest DBD::Pg

Improvement

  • [MBS-2895] – Make it possible to propagate release changes to the release group
  • [MBS-6162] – Mention mbslave in INSTALL
  • [MBS-7498] – Recognise Deezer URLs
  • [MBS-7733] – Recognise and clean up 7digital.com URLs
  • [MBS-7924] – Match e-onkyo, hd-music and ototoy URLs with "purchase for download" relationship type
  • [MBS-8077] – Clean up mobile Soundcloud and ReverbNation URLs
  • [MBS-8078] – Match and clean up Google Play URLs
  • [MBS-8080] – Show CAA-down warning also when the Archive is down completely

New Feature

  • [MBS-7688] – Add autoselect for Vine URLs

Task

  • [MBS-5671] – MBServer internal code using old search json format should use new format

Editing: Making MusicBrainz better

Over the past few weeks I’ve received a number of emails from people who are concerned about some editors who are losing sight of some basic principles behind editing data in MusicBrainz. I wanted to chime in and remind people of some of the principles that should guide how we all get along when we edit data in MusicBrainz.

First and foremost is:

Be polite and give people the benefit of the doubt that they are doing the right thing.

I don’t have to explain being polite. Yes, we all have our bad days — that is a given. But if you’re having a bad day, stop editing MusicBrainz and step away from your computer. Go outside! When you do edit, please be kind to your fellow editors.

Giving people the benefit of the doubt that they are doing the right thing is also important. The vast majority of people who edit MusicBrainz have good intentions and you should assume that to be the case.

Second, edit to make the database better. Vote yes if an edit makes the data better.

This one is a lot more vague, since “better” is a subjective term. We should accept edits that are “good enough” and avoid asking people to make “perfect” edits.

Edits fit into four categories:

  1. Edits that makes things better (perfect or not)
  2. Edits makes things different (but neither are better)
  3. Edits that contain some correct things and some incorrect things
  4. Edits that are outright wrong (existing data is better)

The first type should clearly get a yes vote. For the second, if it doesn’t make things worse, abstain and leave a comment. The third is a judgement call and I would suggest applying this heuristic:

Unless it takes more time to fix the edit than to make a new one, vote yes.

Clearly, the fourth type deserves a no vote.

That brings me to the final topic for now: No votes. A no vote is a very strong expression that has potentially chilling effects that may prevent people from editing again. A no vote should be considered the last resort. Use a no vote if you can’t find another way to resolve an edit.

Finally, some tips for auto editors: If you see an edit that is not perfect, approve it and fix it.

Auto editors are supposed to set the tone for the project and auto editors should practically never vote no on something. You have more powers than fellow editors, so please use your powers for good!

Thanks and happy (and polite) editing!

Picard 1.3.2 released

Picard 1.3.2 is now available on the Picard download page. This again is only a small maintenance release which mainly updates the OS X build to fix crashes some users experienced with Picard 1.3.1. Here is the complete list of fixes:

Bug

  • [PICARD-681] Fixed tags from filename dialog not opening on new installations
  • [PICARD-682] Picard 1.3.1 crashes on OSX on start

For Ubuntu users we have also finally updated our stable PPA.

Server update, 2014-12-29

This release is quite small because it overlapped with the holidays, but contains a fix for an annoying guess-case issue in the release editor that several people reported. Thanks to chirlu for the rest of the bug fixes listed here!

The git tag is v-2014-12-29.

Bug

  • [MBS-4668] – Edit search loses selections when the page number is too high
  • [MBS-8064] – Can’t add documentation to migration-created relationship types
  • [MBS-8086] – Guess case for release title does not trigger an edit
  • [MBS-8091] – Can’t fix non-normalized artist credits

Picard 1.3.1 released

This is a maintenance release, mostly bug fixes. All users are encouraged to upgrade.

Binary packages are available at http://picard.musicbrainz.org/downloads/

Bug

  • [PICARD-273] – Picard should use the correct Accept header when talking to web services.
  • [PICARD-589] – Picard refuses to load files if any path component happens to be hidden
  • [PICARD-642] – ConfigUpgradeError: Error during config upgrade from version 0.0.0dev0 to 1.0.0final0
  • [PICARD-649] – Windows installer sets working directory to %PROGRAMFILES%\MusicBrainz Picard\locale
  • [PICARD-655] – Last.fm plus tooltip help elements are all messed up
  • [PICARD-661] – Regression: Tagger script for cover art filename does not work anymore
  • [PICARD-662] – Retrieving collections causes AttributeError: release_list
  • [PICARD-663] – Artist name makes it impossible to save

Improvement

  • [PICARD-658] – Support the new pregap and data tracks
  • [PICARD-659] – Set the originalyear tag when loading a release
  • [PICARD-665] – Web service calls to ports 80 and 443 do not need explicit port specification. 443 should be automatically made https.

Server update, 2014-12-15

We’ve released another server update today, though a fairly modest one, since bigger changes have been happening in the background with embedding JSON-LD into our pages and switching our JavaScript over to browserify. A few more edit types have been made auto-edits for everyone, as detailed in the changelog below. There’s additionally been some misc. UI changes, and a fix to output artist genders in the JSON webservice.

Thanks to chirlu, nikki, reosarevok, and the MetaBrainz team for their hard work on today’s release.

The git tag is v-2014-12-15.

Bug

  • [MBS-7916] – “Set track durations” preview is broken for single-track mediums
  • [MBS-8008] – “Add Event” (entity) and “Add Event” (release event) share the same translation string
  • [MBS-8044] – Map doesn’t zoom when pasting coordinates
  • [MBS-8066] – “Date” field wraps inconsistently in different browsers
  • [MBS-8082] – Gender missing on artist lookup (JSON)

Improvement

  • [MBS-7478] – Make more use of HTML5 form field types
  • [MBS-7970] – Replace guess case bubbles with icons next to the fields
  • [MBS-7973] – Make remove alias/ISRC/ISWC edits auto-edits for auto-editors
  • [MBS-7975] – Make move disc ID edits auto-edits
  • [MBS-8045] – Update link_event to include dates

Service downtime to fix some database issues

This Friday we’re going to need to take a 15-20 minute downtime to fix a few leftover issues from our recent schema change. We tried to do this without downtime, but the service got progressively slower, so we’re electing to take some downtime.

We’ll be down shortly after Noon PST, 3PM EST, 20:00 UK, 21:00 CET for about 15-20 minutes.

Sorry for the hassles this causes.

Style update, 2014-12-03

After skipping a fortnight because of concentrating on the schema change release, here’s the next edition of the style update, with all the changes from the last month. Most of the changes involve adding new medium formats and new place/area relationships, plus making changes and additions related to the new schema change features (events and data tracks).

The biggest change this month is the addition of a classical music titles guideline. This deprecates the old Opera Tracks guideline, and basically just provides a certain amount of standardisation while keeping mostly true to the on-cover titles.

Improvement

  • [STYLE-221] – Add Data CD format(s)
  • [STYLE-354] – Add a new medium format "dts Audio CD" for CD’s that are encodes as DTS streams
  • [STYLE-367] – Add an attribute for performing time to event artists

New Feature

  • [STYLE-344] – Style for classical track titles
  • [STYLE-356] – Add a "part of" event-event relationship
  • [STYLE-371] – "Subseries" relationship (needs MBS-8055 to actually work)

Task

  • [STYLE-349] – Update special purpose track title for data tracks
  • [STYLE-350] – "Engineered at" Place relationship
  • [STYLE-351] – Release group official website wording causes it to be misused
  • [STYLE-352] – Add relationship types for setlist.fm
  • [STYLE-357] – Add event type "clinic"
  • [STYLE-359] – Merge "Videotape" into "Other"
  • [STYLE-360] – Add Playbutton as a medium format
  • [STYLE-361] – Add music card as a medium format
  • [STYLE-363] – Add VinylDisc as a medium format
  • [STYLE-364] – Add DVDplus as a medium format
  • [STYLE-365] – Add 3.5" floppy disk as a medium format
  • [STYLE-366] – Add Edison Diamond Disc as a medium format
  • [STYLE-368] – "Edited at" Place relationship type
  • [STYLE-369] – Disable dates for event relationships
  • [STYLE-370] – Place(/Area)-Recording rel: produced at
  • [STYLE-379] – "remixed at" place-recording/release relationship type

Server update, 2014-12-01

A day late, but hopefully no dollars short, we’re back with another release. This release is mostly bug fixes, as you’d expect right after a schema change release. nikki has done some work with our CSS, however, and chirlu did some work updating and clarifying our INSTALL.md. Thanks to them, mineo, and the MetaBrainz team for their work this release!

The git tag for this release is v-2014-12-01.

The usual list of bugs fixed:

Bug

  • [MBS-4232] – Edit artist shows artists credits section when it doesn’t apply
  • [MBS-4622] – Improve handling of cover art when JS is off
  • [MBS-6971] – No controls for uploading cover artwork in IE8
  • [MBS-7497] – cpanm install fails with Can’t locate File/Copy/Recursive.pm in @INC
  • [MBS-7952] – Release editor does not handle removed mediums correctly when reordering mediums
  • [MBS-7988] – Adding a pregap track to an existing tracklist and it shows as a data track
  • [MBS-7992] – Data track option doesn’t behave properly with disc IDs
  • [MBS-7993] – Edit medium edits for pre-gap tracks claim to change data tracks
  • [MBS-7995] – DBDefs.pm.sample is still at schema version 20
  • [MBS-8011] – Last.fm event URLs don’t get matched
  • [MBS-8013] – Cannot add data track to release
  • [MBS-8018] – “TypeError: MB.typeInfoByID[i] is undefined” when creating an event series
  • [MBS-8022] – Sorting event collections doesn’t work
  • [MBS-8024] – FixTrackLength script is setting incorrect lengths on pregap tracks
  • [MBS-8029] – Collections overview uses “Releases” even for events
  • [MBS-8033] – Encoding issue in some “explanation balloons”
  • [MBS-8034] – Duplicate relationships with attributes cause internal server error in release relationship editor

Improvement

  • [MBS-6332] – Allow sorting releases in collections by release date
  • [MBS-6333] – Allow sorting releases in collections by release country
  • [MBS-7824] – Add Barcode column to Collections releases view
  • [MBS-7997] – Show area in event lists
  • [MBS-8001] – Use larger Gravatar images on higher pixel density displays
  • [MBS-8009] – URL Cleanup should clean FB event links better
  • [MBS-8036] – Add URL matching for setlist.fm

Task

  • [MBS-6682] – Add eu.ftp.musicbrainz.org to INSTALL.md

Schema change upgrade instructions, schema 21

This upgrade shouldn’t be substantially different than past upgrades, now that we’ve fixed a few bugs with the process. To upgrade:

  1. Make sure your REPLICATION_TYPE setting is RT_SLAVE and your DB_SCHEMA_SEQUENCE is set to 20 in lib/DBDefs.pm.
  2. Ensure you’ve replicated up to the most recent replication packet available with the old schema. (if you’re not sure, run ./admin/replication/LoadReplicationChanges and see what it tells you).
  3. Take down the web server running MusicBrainz, if you’re running a web server.
  4. Turn off cron jobs if you are automatically updating the database via cron jobs.
  5. Switch to the new code with git fetch origin followed by git checkout schema-change-20-to-21
  6. Run ./upgrade.sh (or carton exec -Ilib -- ./upgrade.sh if you’re using carton, with very old setups).
  7. Set DB_SCHEMA_SEQUENCE to 21 in lib/DBDefs.pm
  8. Turn cron jobs back on, if needed.
  9. Restart the MusicBrainz web server, if applicable. It’s also recommended you restart memcached.

That’s it! The only real difference from the past is the specific tag to be used: schema-change-20-to-21, which is a couple of fix-up commits past the regular release tag.