Welcoming Paula LeDieu to our board of directors!

Late in 2019, we finally filled our one vacant spot on our board of directors — we had been holding out until we found the right person and we finally have! And then towards the end of the year we all got distracted by holidays and world events and never got around to formally announcing that we have a new addition to our board.

With great pleasure I would like to announce that Paula LeDieu, an amazingly connected person who seems to know everyone, has joined the MetaBrainz Foundation Board of Directors! I first met Paula when I was bootstrapping MusicBrainz and pondering how to setup a foundation for the project — we would continuously bump into each other at various conferences in the world. Paula’s professional history includes a lot organizations that early on shaped the internet, including the BBC, iCommons and Mozilla. Paula’s professional experience and connections will be a great asset to our organization.

Paula lives in Sydney, Australia, stretching our board of directors across 3 continents and far too many time-zones. Thank you for agreeing to join our board of directors and welcome to the team, Paula!

MusicBrainz Server update, 2020-02-04

This release includes a new feature: if you find a mystery MBID (such as “69755ab1-409e-3ad7-902f-3a839042799c”) and you don’t know what it might be for, you can use https://musicbrainz.org/mbid/69755ab1-409e-3ad7-902f-3a839042799c to find out without having to specifically select the entity type. Keep in mind some MBIDs for non-entities (such as packaging types) won’t work with this method!

If you’re a user of our JSON web service and use begin or end area information on artists, please be aware of MBS-10072! Starting with this release, we’re resolving a long-standing bug whereby the mentioned properties have been incorrectly outputted as begin_area and end_area, while search requests correctly outputted them as begin-area and end-area (using hyphens in line with the rest of the format). The interim fix released today is to output both sets of properties for at least 6 months, and then remove the underscored variants from the response. Please update any code you have that accesses begin_area or end_area on artists to use begin-area and end-area instead!

Today’s chunk of React conversion has been made by Cyna, so thanks to him for his dedication! Thanks also to SuperSandro2000 for updating our PostgreSQL collate extension with ICU configuration changes. And finally, thanks to chaban, jesus2099, mfmeulenbelt, roboron, and all others who reported issues or tested beta version or translated today’s release!

The git tag is v-2020-02-04.

Bug

  • [MBS-10072] – In the JSON WS, artist nodes use begin_area, end_area except search responses which use begin-area, end-area
  • [MBS-10366] – Medium edits removing pregap when disc ID is attached are not rejected
  • [MBS-10579] – Regression: The es-ES and el-GR translations are broken

New Feature

  • [MBS-6539] – Redirect musicbrainz.org/mbid/$mbid to the appropriate entity page

Improvement

  • [MBS-5460] – Add shift-click multi-(de)select to the release editor’s Recordings tab
  • [MBS-5572] – Add shift-click multi-(de)select to the edit artist ACs
  • [MBS-9477] – Disable Discid tab for releases that can’t have a discid
  • [MBS-10568] – Show number of discIDs on discID tab
  • [MBS-10569] – If no mediums on a release can have discIDs, say so on its discID tab

React Conversion Task

  • [MBS-10390] – Convert Add Place edit to React
  • [MBS-10392] – Convert Add Series edit to React
  • [MBS-10398] – Convert Edit Place edit to React

Other Task

  • [MBS-10322] – Convert fabfile (Fabric 1) to shell scripts (Bash 3)

Upgrading Postgres instead of schema change: 18 May, 2020

Hello!

We’ve long procrastinated upgrading our production Postgres installation and we’ve decided to forego a schema change upgrade and instead upgrade Postgres to version 12.x. (We will migrate to whatever the latest stable version in the 12.x series will be).

This means that on 18 May we will not make any changes to the MusicBrainz schema, but  we will have some amount of down-time and/or read-only time while we upgrade Postgres on our production servers. We haven’t sorted out all of the exact details of how we will carry out this database upgrade, but the date is now confirmed.

If you operate a replicated instance of the MusicBrainz database we STRONGLY urge you to upgrade your installation shortly after we upgrade the production servers. After this release our team may start using Postgres features not available in Postgres 9.5.x, which is our current production version.

As usual for our releases that impact our downstream users, we will post many more details closer to the date and once the migration is complete, we will post detailed instructions on how you can upgrade your own installation.

Please post any questions you may have!

Thanks!

Picard 2.3 Beta 1

Have you heard? Jean-Luc Picard is back, once again rescuing the galaxy. And MusicBrainz Picard is back with a new beta release, once again fixing your digital music collection.

We have just released Picard 2.3 beta 1 as a pre-release for the upcoming Picard 2.3. There have been quite a few additions and changes and we would like to gather feedback with this beta release before releasing the final Picard 2.3.

What’s new?

You can see a full list of changes in the changelog. Here is an overview of the most notable new features and fixes:

  • It is now possible to customize the columns in the main panel, so you can choose to see additional details about the files you are tagging, such as album artist, composer, catalogue number, genre and more. For now the number of columns is intentionally limited, but this opens the door for other enhancements, like ordering releases by completion status.
  • The new “Generate AcoustID fingerprints” action allows you to just generate the fingerprints without doing a search and match. This allows you to generate and submit fingerprints for already tagged files easily. To make this feature complete a new “Fingerprint status” column can be enabled indicating whether a fingerprint has been generated (showing a red fingerprint icon) and whether it has been submitted (the fingerprint icon turns from red to gray).
  • AcoustID lookup (aka Scan) has been improved and now respects your configured preferred release types.
  • The Scripting options have been reworked to be more consistent and easier to use.
  • Several smaller improvements to tag editing, like multiline editing for comments and lyrics, manual reordering of multivalue tag values, autocomplete for media, release country, release type and release status tags and format indicators for date tags (e.g. showing “YYYY-MM-DD” for the date tag).
  • Custom tags support for MP4.
  • Support for tagging raw AC3 files with APEv2 tags.
  • For AAC and AC3 tags you can choose whether to save APEv2 tags or not, or even completely remove existing APEv2 tags from the files. This addresses compatibility issues with those tags in some players. E.g. many players not supporting APEv2 tags in those formats will show a wrong duration.
  • On Windows and some Linux desktops (e.g. KDE Plasma and Ubuntu GNOME) the task bar or dock icon will now show the progress of loading or saving many files.
  • We addressed some cases where the Picard user interface became totally unresponsive for a while when clustering files or moving and matching files to releases. This was most notable when working with large releases with several hundred tracks.
  • We fixed some scripting functions that are supposed to be used as conditions but behaved differently. This affects $is_complete(), $startswith() and $endswith(). If you use one of these functions in your script please read this forum post on how to update your scripts.
  • macOS: It is now possible to directly open supported files in Picard from Finder. Also you can drag and drop files and folders onto the Picard dock icon to open them.
  • macOS: The Picard app is now fully supported on macOS 10.15 Catalina and can be opened without security warnings.
  • Windows: Picard is now available as a Windows 10 app from the Windows Store. See “Getting the beta” below for details.
  • Windows: Picard is also available as a portable app, which can be run from any folder or external drive without installation. All settings and plugins will be stored in the folder in which the Picard portable app is located.

Getting the beta

You can download the beta version from Picard’s GitHub relase page. Windows users might want to try the new portable version, as it can be run alongside the current installed Picard using different settings.

If you are using Windows 10 please help testing the newly available Picard in the Windows Store. The app is not yet publicly findable in the store, please use the direct link to Picard’s store page.

Helping out

The easiest way to help us getting a great Picard 2.3 release is using and testing this beta. Please report bugs on the Picard issue tracker and provide feedback in the community forums.

Please also help translate Picard. There have been many changes to the user interface, which means many translations are in need for an update. Translating is easy and can be done online: Head over to MusicBrainz’s translation page on Transifex and click on “Help Translate MusicBrainz”. Once you have registered an account on Transifex you can start translating. For Picard the primary resource to translate is “picard“, but there is also the “picard_appstream” resource which is used for providing descriptions for various Linux software-center applications.

If your are a software developer you are very welcomed to provide fixes and features. Picard is free software and the source code is available on GitHub. See Developing on the Picard website to get started.

Acknowledgements

I want to thank everybody who contributed to this release, be it with coding, translation, reporting issues on the bug tracker or general feedback on the community forums. Many of the changes in this release are the direct result of some forum discussion.

Special thanks to team members zas and samj1912 for incessantly reviewing all my code changes. Also a special shout out to the Dutch, Finnish, French and Italian translators which provided a 100% translation of this Picard beta into those languages. Unfortunately the translation process currently is very hidden and anonymous and I would like to see this changed. But I definitely appreciate all the work put into this.

Known issues

  • When deleting scripts the UI shortly shows the previous selection. This is just a visual glitch, the correct script will still be deleted. See PICARD-1708.

MusicBrainz Server update, 2020-01-20

This release mostly fixes small bugs. Please note that the display code for release lists (for area, artist, collection, instrument, label and series) has been reworked too.

Thanks to chaban for continuously reporting issues, hibiscuskazeneko for paying attention to external links, rotab who fixed a couple of bugs, and all others who reported issues or helped test or translate today’s release!

The git tag is v-2020-01-20.

Bug

  • [MBS-10492] – Regression: When minute component starts with 0 (zero) it’s omitted
  • [MBS-10501] – Collaborator avatars missing from collection page
  • [MBS-10522] – Subscribers not transferred after entity merge
  • [MBS-10531] – Invalid requests are sent to maps service when access token is not set
  • [MBS-10536] – Release group link “see all versions of this release” has span.name-variation
  • [MBS-10553] – User report reason is sent to admins translated
  • [MBS-10560] – Regression: release edits display abbreviated rather than full country names in their release events
  • [MBS-10565] – Can’t add a new type for series
  • [MBS-10567] – Only show allowed series entity types when creating series types
  • [MBS-10571] – Localized ModBot notes are not properly formatted when sent via email
  • [MBS-10572] – Pages that display release events trigger an error when a non-English UI language is selected: “Domain `countries` was not found.”

Improvement

  • [MBS-10552] – Add Deezer links to the sidebar

MusicBrainz Server update, 2020-01-06

Happy new year with a new “Artists” page for instruments on MusicBrainz, plus a way to collapse the display of very long release country lists, alongside with some bugfixes, the usual improved handling of external URLs and continued conversion to React.

Thanks to CatQuest, chaban, Lotheric, mfmeulenbelt, outsidecontext, Sotho Talker, and all others who reported issues or helped test or translate today’s release!

The git tag is v-2020-01-06.

Bug

  • [MBS-10335] – Installing Perl dependencies fails on outdated DBD::Pg version
  • [MBS-10497] – Internal server error when editing artist and credits
  • [MBS-10521] – Add Medium -> Existing medium search in the release editor is broken, spins forever
  • [MBS-10524] – /account/change-password gives an internal server error if not logged in
  • [MBS-10526] – Private collaborative collections for a user shown publicly

New Feature

  • [MBS-10316] – Add “Artists” tab for instruments
  • [MBS-10424] – Collapse release country list when there are too many release event countries for a single release

Improvement

  • [MBS-10292] – Normalize and validate links to Québec Info Musique
  • [MBS-10309] – Update URL cleanup for musik-sammler.de
  • [MBS-10455] – Block more smart links

React Conversion Task

  • [MBS-9919] – Convert the place public pages to React

Thank you for your continued support, Google!

We’ve recently received our annual $30,000 support from Google. The brings the total amount donated by Google’s Open Source Programs Office to us to over $470,000 — hopefully next year we’ll cross the half million dollar threshold!

I can’t quite express my gratitude for this level of support! Without Google’s help, especially early on, MetaBrainz may never have made it to sustainability. Google has helped us in a number of ways, including Google Code-In and Summer of Code — all of these forms of support have shaped our organization quite heavily over the past 15 or so years.

Thank you to Google and everyone at the Google Open Source Programs Office — we truly appreciate your support over the years!

MusicBrainz Server update, 2019-12-09

More small improvements and bugfixes with today’s release, as well as continued conversion to React and other code refactoring.

Thanks to angriestchair, brianfreud, CatQuest, chaban, danbloo, draconx, dr saunders, dseomn, fmera, psychoadept, and all others who reported issues or helped test or translate today’s release!

The git tag is v-2019-12-10-hotfix.

Bug

  • [MBS-4091] – Annotation trimming breaks initial li’s
  • [MBS-10188] – “Merge releases” edit is stuck
  • [MBS-10228] – Releases with no media not shown as merge source in release merge edits
  • [MBS-10279] – Release merge edits display stale, possibly incorrect recording merge info
  • [MBS-10422] – Recording inline search in release editor doesn’t display ISRCs
  • [MBS-10468] – URL cleanup breaks Bandcamp URLs containing “merch”
  • [MBS-10482] – Patreon post URLs are incorrectly normalized
  • [MBS-10502] – 45cat/45worlds URLs point to the wrong place on MB

Improvement

  • [MBS-4776] – Require confirmation when using Various Artists as a track artist
  • [MBS-10243] – Show “[missing media]” when relevant on release duplicates tab
  • [MBS-10244] – Show “[missing media]” when relevant on merge w recordings release merge
  • [MBS-10248] – Show the type of link from instrument recording page
  • [MBS-10255] – Explain when to use “Copy all track titles to associated recordings” and “Copy all track artist credits to associated recordings” when editing a release
  • [MBS-10304] – Restore the ability to set special codes as editor language
  • [MBS-10479] – Show release group types on recording page
  • [MBS-10489] – Make EnterEditNote help text less redundant
  • [MBS-10491] – Add “add a new instrument” link to instrument search results page
  • [MBS-10493] – Enlarge and allow resizing relationship type multi-select box
  • [MBS-10500] – Support localizing edit notes left by ModBot

React Conversion Task

  • [MBS-10439] – Convert user collections list to React

Other Task

  • [MBS-10350] – Remove Google+ links from the sidebar
  • [MBS-10495] – Update Discourse SSO to use header based authentication

Thank you Microsoft!

Microsoft reached out to us back in early 2018 in order to use our data in Bing — we followed the normal sort of on-boarding procedure that we use for our supporters. During one of these on-boarding calls we were asked if there was more that Microsoft could do to help us and support our mission. Soon thereafter I provided them with a list of things that would be useful to us. Sadly, the request to buy a major record label and then to give it to us to manage was turned down for being too expensive. 🙁

However, Microsoft did like two items on our list and agreed to support us — they were:

1) Azure hosting credits — we’re always looking for more hosting capacity and these credits will allows us to provide virtual machines to our team and to close collaborators who are doing good work, but might be lacking the computing power to push their projects forward. This contribution is of direct benefit to our community — often times our projects contain quite a lot of data and thus have some heavy processing requirements. We’re currently using our hosting credits to do some large data set crunching and some testing for the Virtual Machine that we provide to users who wish to get up and running with MusicBrainz data quickly.

2) Sponsoring our summit — our annual team meeting and foundation summit happens at the end of each September, normally in Barcelona where we have our main office. Microsoft’s sponsorship allows us to invite more people to the event, since we have the means to cover their expenses. Our summits have traditionally been our annual forum for meeting the other team members and volunteers and to take a breather from the normal course of business. At the event we see a more human side of each other and we’re more easily able to discuss our challenges and the vision for the future.

We really appreciate our supporters who go above and beyond the normal levels of support for us — these contributions really sweeten the deal of hacking on open source software!

Thank you so much to Microsoft and everyone at Microsoft who helped move this contribution forward!

MusicBrainz Server update, 2019-11-25

Starting with this release, we read our genres list from the genre table rather than a hardcoded list inside a JSON file. This should have no user-visible impact, but let us know if you encounter any new issues related to genres. (This change should however help us improve genres further.)

We also have a small list of bug fixes and improvements, listed below. One neat new feature is the ability to sort edit searches by date closed or closing.

Thanks to chaban, culinko, drsaunde, jesus2099, mglubb, lotheric, psychoadept, sothotalker, and all others who reported issues or helped test or translate today’s release!

The git tag is v-2019-11-25.

Bug

  • [MBS-7097] – Release listed multiple times in “Non-digital releases with download relationships” report
  • [MBS-10466] – MusicBrainz Happy Birthday wishes doesn’t take into account timezones
  • [MBS-10467] – Pages ported to React do not show the new edit notes banner
  • [MBS-10473] – Static resources fail to build when NODE_ENV=production
  • [MBS-10485] – User profile’s “Statistics Edits (view)” links to bogus URL
  • [MBS-10488] – Regression: User profile subscribe links no longer work

New Feature

  • [MBS-9491] – Move genres to be read from the database

Improvement

  • [MBS-4299] – Warning when merging releases with diff. recording artists should show disambiguation
  • [MBS-10204] – Better overview of user edits on user page
  • [MBS-10471] – Add option to view edits by date closed

React Conversion Task

  • [MBS-9922] – Convert the series public pages to React