Backwards-Incompatible JSON Web Service Changes
In an effort to get our JSON Web Service out of “beta” status, we’ve made some backwards-incompatible changes to it in this release:
video flag on recordings is now outputted as true or false instead of 1 or 0.
relations arrays are not outputted for linked entities anymore, since linked entities never include relationships.
iso_3166_3_codes properties have been renamed to
iso-3166-3-codes, respectively. This only applies to lookup and browse requests; search requests already outputted these with hyphens.
iso-3166- properties mentioned in the previous point are not outputted if they’re empty.
Some other changes to the web service have been made, but are considered additions (not changes to existing output), so hopefully shouldn’t cause any problems. You can review them in the changelog below.
An issue where entities deleted from the database (but still present in the cache) remained visible has hopefully been fixed. There are several other miscellaneous bug fixes linked below. Thanks again to Ulrich Klauer for his contributions. The git tag is
- [MBS-5676] – JSON relationships output doesn’t include target-type
- [MBS-6166] – Deleted accounts can still have details edited
- [MBS-7241] – Non-transactional cache means the cache can sometimes fail to delete entities that are gone at the database level
- [MBS-7735] – ws/2: recording’s “video” flag inconsistent between xml and json
- [MBS-7921] – Internal server error when requesting /ws/2/isrc as JSON
- [MBS-8367] – ws2 JSON incorrectly returns non-included field as null value
- [MBS-8396] – JSON output has no ordering key attribute for release group series
- [MBS-8563] – Release & Release Group browse requests without type/status filters return results which contradicts the documentation
- [MBS-8688] – Random tagged entity type display inconsistency in personal tag page
- [MBS-8722] – Edit stuck trying to change the gender of a group
- [MBS-8726] – Replicated updates don’t invalidate cache entries on slave servers
- [MBS-8730] – Reordering of sub work parts causes unwanted reordering of main work parts
- [MBS-8746] – JSON web service doesn’t distinguish between relationships not existing vs. not being loaded
Our first release of 2016 consists mainly of data-display fixes by Ulrich Klauer and a couple small improvements by Google Code-In students Caroline Gschwend and Ohm Patel. Notably, internationalized domain names are now displayed in decoded form: https://musicbrainz.org/url/2de1616a-7ca0-4688-92cc-0a8373190ede
Thanks once again to the above contributors. :) The git tag for today’s release is
v-2016-01-11 and the changelog is below.
- [MBS-4575] – Old add release label edit does not display
- [MBS-5205] – Text diff incorrectly highlights first word that didn’t change
- [MBS-7844] – Name variation marker not used for artists in tracklists in “edit medium” edits
- [MBS-8012] – Release dates/countries are displayed strangely in edit release label edits
- [MBS-8161] – Medium titles have no diff highlighting when displaying edits
- [MBS-8210] – Multiple “Remove ISRC/ISWC” edits on one page interfere
- [MBS-8330] – Another name variation check after HTML entity conversion
- [MBS-8413] – Removed URLs in edits are badly encoded
- [MBS-8692] – Expired Catalyst sessions remain (partially) in Redis
- [MBS-8698] – Content negotiation for JSON-LD representation does not work with multiple MIME types in Accept header
- [MBS-6407] – Add username to our verification mails
- [MBS-8683] – Display internationalized domain names in decoded form
- [MBS-8709] – Mark up removed entities as usual in add medium/edit medium edits
- [MBS-8713] – Block SoundCloud search and tags URLs
A new feature in today’s release is a list of recent notes left on your edits (accessible from the menu in the upper-right corner of the page: “My Data” -> “Notes Left on My Edits”).
Users will be notified in a banner message whenever they receive a new edit note, and be linked to that page. Hopefully this will improve communication with people who aren’t seeing their emails.
We also have a number of bug fixes/improvements from Ulrich Klauer and several Google Code-In students: Caroline Gschwend, Ohm Patel, and Stanisław Szcześniak. Thanks for all your work!
The git tag is
v-2015-12-28 and the changelog is below.
- [MBS-7572] – Edit work alias is not showing the sort name loss
- [MBS-7873] – Edit search for editor causes editor name to be listed twice in recent items
- [MBS-7882] – Strange empty parens after alias name on edits
- [MBS-7907] – Warning about pending edits on a relationship is missing
- [MBS-8051] – Editor field in the edit search does not behave correctly
- [MBS-8167] – Display error for instruments in member rels on edits
- [MBS-8241] – Mediums with pending edits not highlighted in release display
- [MBS-8381] – Some symbols are double-encoded in inline search
- [MBS-8414] – Ended flag is not correctly handled in edits
- [MBS-8635] – Untranslatable strings
- [MBS-8690] – “Add artist” edit can’t be rejected if the artist has subscriptions
- [MBS-8691] – “Edits for subscribed editors” page timing out
- [MBS-8702] – Page title shows “"”
- [MBS-8705] – HTML code shown in edit summary
- [MBS-4565] – Search for Edits by editor notes.
- [MBS-7070] – Missing icon (small version) for area, place and work
- [MBS-8482] – “Add Disc” button in editor should be renamed to “Add Medium” or “Add Tracklist”
- [MBS-8504] – Edits mandated by editing interface should be auto-edits
- [MBS-8565] – Update the Discogs logo used in the sidebar
- [MBS-8658] – Include tag name on user/tag/tagname pages
- [MBS-8663] – Link to user’s profile in report emails
- [MBS-8665] – Automatically add a space after ; in join phrases
- [MBS-8676] – Add a page to see all notes left on your own edits
- [MBS-8574] – Update the Google+ logo used in the sidebar
- [MBS-8657] – Update the flag of Libya
- [MBS-8672] – Update the flag of Lesotho
- [MBS-8673] – Update the flag of Myanmar
- The edit listings for your subscribed entities (and subscribed editors) now shows all edits entered within the past 7 days, by default (so, auto-edits are now visible, plus edits that may have passed by vote before you saw them). There’s a new toggle-able option on the page to only display open edits, to restore the previous behavior while voting. We’ll hopefully introduce some way to mark closed edits as reviewed/dismissed soon, to make the listings easier to digest.
- Edit histories for large collections should hopefully load a bit faster now. Please comment on MBS-8368 if you have a collection that still consistently times out when viewing its edit history.
We’ve also made a slight change to our release process. Previously, our
master branch was our “stable” branch which pointed to the most recent release (i.e., the code we run on musicbrainz.org itself). If this is what you expect, you should now be using the
production branch instead. The
master branch has become our main development branch, which means it may be slightly less stable from now on (of course, we’ll do our best to avoid that).
Thanks to Ulrich Klauer (chirlu) for his contributions to today’s release.
The git tag is
v-2015-12-14 and the complete changelog is below.
- [MBS-7012] – Join phrase cleanup not running
- [MBS-8145] – Internal server error loading collection edits
- [MBS-8368] – Edit queries for large collections time out
- [MBS-8647] – “Edits for subscribed entites” doesn’t show auto-edits
- [MBS-8660] – Editors can’t delete their location
- [MBS-8661] – Adding and editing non-ended areas is broken
- [MBS-8664] – Show “last login/active date” somewhere on /user/ for account administrators
The major updates in today’s release are:
- Non-auto-editors can make auto-edits to their release additions within 1 hour of adding them.
- There’s a way to report editors for bad behavior, from their user profiles. The reports will be sent to our account admins. We’d prefer people use this method from now on for reporting unresponsive editors, or for any Code of Conduct violations. Account admins have also received an easy way to restrict a user’s editing/voting capabilities.
- Auto-editors can change a release’s data-quality level via auto-edit. Previously, this was always put to a vote. We still don’t display release quality as well as we could (currently it’s only visible in the release sidebar). Low-quality releases can be found via our edit search, though.
- Everyone can enter “Add recording” and “Remove alias” edit types as auto-edits.
- Edits to events can be searched via our edit search interface (thanks chirlu).
There were a lot of comments on last release’s blog post saying that it’s harder to review release additions now that they’re auto-edits, and worrying about database quality suffering due to this. The next server release should allow showing auto-edits entered within the most recent voting period (7 days) in your subscribed editor/entity edit listings (MBS-8647), and hopefully a way to hide auto-edits you’ve reviewed from these lists (MBS-8654) to get them out of your way. I hope these and future changes can strike a balance between allowing people to see and remove releases that are clearly wrong or non-existent, vs. encouraging merging/fixing existing releases rather than voting them down.
The git tag for today’s release is
v-2015-11-30 and the complete changelog is below.
- [MBS-8460] – Add to collection link on entity page doesn’t show the collection name
- [MBS-8636] – Adding duplicate entities to a series causes an internal server error
- [MBS-8639] – Instrument merge gives ERROR: duplicate key value violates unique constraint “link_attribute_pkey”
- [MBS-8641] – Release editor breaks with “error: 0” if a submitted edit throws a NoChanges exception
- [MBS-8648] – Historic relationship edits no longer display the source entity
- [MBS-1880] – Allow an editor to apply edits without voting within a short timeframe after his/her ‘add release’
- [MBS-8208] – Add a way to report a user to an admin
- [MBS-8271] – Add a way to prevent a user from editing/voting which doesn’t involve removing the email address
- [MBS-8645] – Allow searching for edits to events
- [MBS-8385] – Make change release quality edits auto-edits for auto-editors
- [MBS-8386] – Make add recording edits auto-edits for everyone
- [MBS-8388] – Make remove alias edits auto-edits for everyone
Today we’ve released several changes decided at the recent MusicBrainz Summit:
- German, French, and Dutch translations are now usable on the main server, via the language menu at the top right of any page. Previously these were only accessible on the beta server. Don’t forget to help contribute on Transifex if you find any issues in the translations. You can also help translate some of the less-complete languages over there.
- “Add relationship” edits have been made auto-edits for everyone. By a recent calculation, only 0.78% of these have been canceled or voted down, yet they make up a large percentage of our open edits and are easy to remove.
- “Add release” edits have been made auto-edits for everyone. Since releases added to MusicBrainz are available immediately through the website and web services, there’s no telling where the MBIDs are being used. Permanent and reliable IDs are a core tenet of MusicBrainz, so duplicate releases should always be merged to avoid MBID loss, not voted down or deleted. I’ll be looking at ways to better detect duplicates during the add-release process, though.
- “Add release label” and “Remove release label” edits have been made auto-edits for everyone. Like the previous two edit types, release label additions are among the most common types of open edits, and are rarely canceled or voted down. Release label removals are also easy to revert because all of the removed data is contained in the edit.
- UPDATE 2015-12-03: It was neglected to mention here that “Edit release label” edits were also made auto-edits, since they are equivalent to a removal plus an addition. For statistics, see the comments at MBS-8666.
In addition to the above changes, Roman Tsukanov has added some new reports, and we’ve fixed a few editing bugs.
The git tag today is
v-2015-11-16 and the complete changelog is below.
- [MBS-8607] – JSON-LD has bugs
- [MBS-8612] – 404 page has incorrect/outdated menus
- [MBS-8614] – Release merges can fail if a recording is both a merge source and merge target
- [MBS-8615] – Non-conflicting mediums appended after a release merge is entered block the merge
- [MBS-8620] – Can’t add an example to an Artist-Series relationship
- [MBS-8623] – Duplicate checker entity list lacks a space between name and disambiguation
- [MBS-2255] – Create a report to show stuff that’s linked to Various Artists, but may be an incorrect link
- [MBS-6759] – Release German translation on the main server
- [MBS-8616] – Add links back to transifex so people can help improve the translations
- [MBS-8489] – Report for all entity.disambiguation = entity.name
- [MBS-8387] – Make add release edits auto-edits for everyone
- [MBS-8389] – Make add relationship edits auto-edits for everyone
- [MBS-8596] – Make add release and add/remove release label edits autoedits
Today’s release fixes some editing bugs and adds a useful option to the edit search for finding edits by newbie editors (those who have a low accepted-edit count). The git tag is
v-2015-11-02 and the changelog is below.
(This release is a day late because I’d been traveling back from the MB summit all day yesterday.)
- [MBS-8580] – “Reorder mediums” edit is stuck after being left open and trying to move a medium into a position that already has one
- [MBS-8590] – Can’t clear relationship credits
- [MBS-2677] – Filter by edit count of the editor (newbie search)
- [MBS-8588] – Improve ContactUs page
- [MBS-8611] – Refactor query_to_list into a role