Picard 1.4.1 released

Official MusicBrainz cross-platform music tagger Picard 1.4.1 is now out, it contains few fixes and enhancements, plus few extra features that didn’t make it to 1.4.

As usual you can get Windows and MacOSx packages from Picard website downloads section.

Most notable changes are the fix of a regression concerning drag-n-drop on MacOSx and improved cover art box, with better visual feedback about changes in cover art images.Capture du 2017-04-01 14:40:58

Thanks to all contributors who helped on this release: Antonio Larrosa, Frederik “Freso” S. Olesen, Laurent Monin, Lukáš Lalinský, Sambhav Kothari, Sophist, tungol, Ville Skyttä, Wieland Hoffmann.

And to all of our translators!

To report any issue about this release, please use our bug tracker. As usual you can also get help on the forum or on IRC (freenode, #musicbrainz).

We’ll now focus on 2.0, which will be mostly a port of 1.4.x to Python 3 and Qt5.
It will open the way to UI improvements, and improved overall performance.

Bug

  • [PICARD-953] – Album shown matched even if extra unmatched files
  • [PICARD-972] – Removing album with saves pending does not remove pending saves
  • [PICARD-973] – Pending log messages not flushed to stderr on quit
  • [PICARD-988] – Drag & Drop not working
  • [PICARD-990] – Picard violating ID3 standard for TXXX frames
  • [PICARD-996] – Disabling the cover art box and enabling it again doesn’t bring it back
  • [PICARD-998] – Disabling the action toolbar sometimes doesn’t work
  • [PICARD-1005] – If a cluster is moved to the album side of the main window it gets moved to unmatched files
  • [PICARD-1006] – Drag and drop for cover arts doesnt work on OSX
  • [PICARD-1010] – Unsetting View/Cover Art doesn’t work permanently
  • [PICARD-1011] – Toolbar tab order incorrect after PICARD-908
  • [PICARD-1014] – Number of images in release info is calculated incorrectly
  • [PICARD-1015] – Artwork tab of the Track Info DIalog doesn’t show changes anymore
  • [PICARD-1018] – CoverArtBox doesn’t show new/removed images after unmatched files are added/removed to the album
  • [PICARD-1023] – Directory persistence for Add Directory needs tweaking
  • [PICARD-1029] – Fix ~artists_sort metadata variable
  • [PICARD-1042] – Missing import for PICARD_APP_NAME

New Feature

  • [PICARD-258] – Visual feedback for changes to artwork in before-after pane.
  • [PICARD-1000] – Implement artwork diff for albums

Task

  • [PICARD-943] – Remove monkey patching of file write methods in picard formats
  • [PICARD-1041] – Replace Ok button text by Make It So! in Options dialog

Improvement

  • [PICARD-223] – Remove should work when Unmatched Files is selected
  • [PICARD-666] – Drop MP3 tagging support
  • [PICARD-951] – Always use HTTPS for musicbrainz.org
  • [PICARD-952] – Use Cover Art Archive over HTTPS
  • [PICARD-961] – Mention AcoustID on Scan button too
  • [PICARD-980] – Drag&drop cover art doesn’t work for images from amazon/google images/https links
  • [PICARD-1012] – Buttons on the “User Interface” and “Scripting” pages are smaller than buttons in other places
  • [PICARD-1016] – Multiple images in related tracks confusing
  • [PICARD-1021] – Picard loads all pending files before quitting
  • [PICARD-1024] – Allow specifying a configuration file path
  • [PICARD-1030] – Allow to add/replace cover art images and keep existing cover art

Server update, 2017-03-27

The ability of normal users to auto-edit their own release additions within an hour of entering them has been expanded to all entity types, not just releases. There’s also a new feature in the relationship editor dialog to control which relationship credits you’re changing. Thanks to yvanzo for working on those tickets.

We’ve also resolved some more URL cleanup/detection tickets, and fixed a bug in the release editor causing stub releases to get created. Zastai fixed our web service to respect the Accept: header for search requests (thanks!).

The git tag is v-2017-03-27 and the complete changelog is below.

Bug

  • [MBS-8578] – If the checkbox to copy a Medium’s artist credits to the Recording is ticked, the release editor creates a stub and fails to submit relationships/URLs and Mediums
  • [MBS-9258] – Web service search requests don’t pass Accept: header to search servlet
  • [MBS-9288] – “Change all relationship credits” for source entity has no effect
  • [MBS-9289] – Area places map doesn’t display
  • [MBS-9290] – “video channel” link type shouldn’t be restricted

Task

  • [MBS-9287] – Update the YouTube logo used in the sidebar

Improvement

  • [MBS-8134] – Allow unreviewed edits on new entries for a period of time
  • [MBS-8465] – Change similar relationship credits for on the page.
  • [MBS-8522] – Add Twitch.tv to video channel relation and video stream auto-selectors
  • [MBS-9291] – Add Dailymotion to video channel relation and video stream auto-selectors

Server update, 2017-03-13

Thanks to legoktm, loujin, reosarevok, Zastai, and the volunteer formerly known as yvanz for their contributions, which are listed below. The git tag is v-2017-03-13. (Apologies that the release came a day late.)

Bug

  • [MBS-8748] – Excessively long medium names cause horizontal scrolling
  • [MBS-8905] – Editing release events in a 1 hour delay should be auto
  • [MBS-8927] – Lowering release data quality in a 1 hour delay should be auto
  • [MBS-9120] – Adding a setlist or a time to an event that doesn’t have one should be an auto-edit
  • [MBS-9129] – JSON WS serializes ratings for Release
  • [MBS-9215] – No way to select entity type when creating new attribute
  • [MBS-9261] – WS/2 does not allow a search for URLs
  • [MBS-9263] – Transclusion Table on MB.o is broken
  • [MBS-9264] – Gulpfile fails on leaflet when compiling from source
  • [MBS-9266] – Subheader of area pages has extra comma and misses proper i18n
  • [MBS-9267] – Release page should display disambiguation comments for Works

New Feature

  • [MBS-9135] – Allow account admins to change usernames

Improvement

  • [MBS-8354] – Replacing hyphen-minus with em-dash should be an auto-edit
  • [MBS-9230] – Hook up MusicBrainz to Sentry (replacing Catalyst::Plugin::ErrorCatcher::Email)
  • [MBS-9255] – Show recordings length on a Work overview page
  • [MBS-9260] – Changing between version of an ellipsis should be an autoedit
  • [MBS-9268] – Hide empty columns in relationships table

May 2017 Schema Change Release: May 15, 2017

We have picked our set of tickets and the date for our May 2017 schema change release: May, 15th 2017. This will be a fairly standard and minor schema change release — we’re only tackling 3 tickets that affect downstream users and no other infrastructure changes.

Take a look at our  list of tickets for this schema change release. There really are only two tickets that will affect most of our downstream users:

  • MBS-8393: “Extend dynamic attributes to all entities” Currently our works have the concept of additional attributes which allows the community to decide which sorts of new attributes to apply to a work. (e.g. catalog numbers, rhythmic structures, etc) This ticket will implement these attributes to all of our entities. Also, this ticket will not change any of the existing database tables, it will only add new tables.
  • MBS-5452: “Support multiple lyric language values for works” Currently only one language or the special case “multiple languages” may be used to identify the language used in lyrics. This ticket allows more than one language to be specified for lyrics of a work.

The following tickets are special cases — they will not really affect our downstream users who do not have edit data loaded into their system. We are only including this change at the schema change release time in order to bring some older replicated systems up to date. If you do not use the edit data, then please ignore these tickets.

  • MBS-9271: “Prevent usernames from being reused” This ticket does not change the schema, but for sake of minimizing downstream disruption, we’re going to carry out this ticket during the schema change.
  • MBS-9274: “Fix the edit_note_idx_post_time_edit index in older setups to handle NULL post_time” This ticket fixes an SQL index on an edit related table.
  • MBS-9273: “Fix the a_ins_edit_note function in older setups to not populate edit_note_recipient for own notes” This ticket also fixes an SQL index on an edit related table.

This is it — really minor this time around. If you have any questions, feel free to post them in the comments or on the tickets themselves.

 

We’ve hired another MusicBrainz developer!

I’m pleased to announce that Yvan Rivierre has joined the MusicBrainz development team! Yvan is not new to our community — he has been participating MusicBrainz development for some time and more recently has been attending our weekly community meeting. He’s submitted several pull requests to MusicBrainz already, and now he joins us as a full time developer.

Yvan’s nickname on all things MetaBrainz is now yvanzo, was formerly yvanz, in case you’re wondering what happened. Expect him to be around even more, helping bitmap to make improvements and changes to MusicBrainz. The MusicBrainz search infrastructure and hosting are no longer core tasks for the MusicBrainz team, leaving yvanzo and bitmap to focus solely on MusicBrainz. This brings us to a new level of dedication to our most important project and should allow us to tackle more issues faster focus new areas of improvement. (e.g. hopefully we can start making improvements in UX/UI this year!)

Welcome aboard Yvan!

MetaBrainz Foundation Board Meeting Minutes: September 15th, 2016

In an effort to try and be even more open and transparent, the MetaBrainz Foundation’s board of directors agreed last year to publicise the minutes from its board meetings. This is the first entry of that new series. The board meets up 3–4 times a year, so don’t expect these postings to be too frequent. 🙂

These particular minutes have been approved at its following board meeting, but we will try and get future meeting minutes up prior to the next one, which means that future posts will be subject to change if the board feels something is wrong or missing in the minutes. Also note that discussion related to personnel or confidential topics have been (and will be) redacted. Furthermore we will also add more text to the notes in order to give context and background, while not altering the meaning of theses notes.

With all that said, let’s get started!

MetaBrainz Foundation Board Meeting Minutes 2016­-09­-15

Attendees: Robert Kaye, Nick Ashton ­Hart, Sophie Goossens, Rassami Hok ­Ljungberg, Frederik “Freso” S. Olesen, Cory Doctorow
Absent: Paul Bennun, Matthew Hawn

Agenda

0. Call to order.
Rob called to order at 18:15 CEST.
Editor’s note: Unless otherwise noted, Rob will be the one speaking in the notes below.
1. Approval of last meeting minutes
Moved by Rob. Rassami objects to all board members sending chocolate, but with that removed, she seconded. Unanimous. Motion carried.
2. Board changes
Editor’s note: Christina, our former biz dev manager, used to be on our board of directors as both Secretary and Treasurer. Since she was no longer with us, we needed to replace her positions in the board.
Rob moves that Christina is replaced by Rassami as Treasurer. Sophie seconds. Vote is unanimous. Motion carried.
Rob moves to replace Christina with Frederik “Freso” Olesen, our community manager, as the new Secretary of the board. Having Freso as our secretary gives the community some insight into the board meetings. Rassami seconds. Rob suggests that Freso should take the board meeting notes and remove private/confidential points and release a version that is suitable for public consumption.
3. Old business:
  • General update: It’s been a challenging year: Planned for a lot, had a lot of set backs. Series of perfect storms, causing extremely and challenging year for me personally, but I am finally climbing out. I’m digging out and focusing on the core issues.
  • Office: Power, plumbing issues resolved. Ready for use with the hack day next week.
  • Hosting: We’ve been moving services away from Digital West and to Google. At the same time we continue to get more traffic and asking people to be polite in using our service isn’t really working anymore, thus the focus on NewHost. Another perfect storm. Now have 4 servers at Hetzner in Germany, working to move in. We’ll order more servers closer to migration time. Been working all summer to move services to containers. We gain flexibility and mobility, but there is loads of work.
  • Summit: We’re not going to have a summit this year, but opted for a smaller hack weekend where we iterate faster to get to NewHost.
  • Non paying companies: Data is wide open, and commercial customers can legally make use our data and API. Soon we will prevent them from using our API (by using API keys), but abuse is still possible. How can we deal with non-supporting companies? So far, we would put companies into the penalty box and then send a tweet to that effect. This has been our practice and I explained this to our biz dev manager, but due to other issues compounding she decided to pick this issue to start a war over. So, how should we deal with non paying companies? How far can we go in pestering companies to do the right thing?

    Nick states that the heaviest offenses will be eliminated by introducing API keys. Rob notes that he still wants to bring attention to people for leech our data outside of the WS and data dumps.

    Rob asks if we should try and keep track of people who download our data, but there might be some legal concerns related to (knowing if pirates download the data).

    Rob to-do: ask our pro bono lawyer legal question about keeping track of people.

    Rob asks: Do anyone have an objection to the “penalty box” idea?

    Cory suggests to perhaps get a pro bono lawyer to send a letter to bad actors telling them they’re bad actors.

    Cory also suggested that the board should be consulted before a company goes into the penalty box. Rob agrees and will write follow-up email to this point.

4. New business:
  • Big Query: Make MusicBrainz, AcousticBrainz and ListenBrainz available on BigQuery — Google would like better and more dynamic data sets to show off their service. We get free data hosting and people will be able to query their own LB (last.fm) data on their own if they want to. Game changer. We’ve moving LB/AB, Google is adding MB. Once this is done, Google will do some publicity for this.
  • Dec board meeting: London. I’ll pick a date soon.
5. Finances:
  • Moved to new EUR capable accounting system, which took time to do, but now saves time.
  • Income is increasing, this is the most amount of money we’ve had in the bank ever! > $200k!! \ø/
  • Moving forward with new Biz Dev: I’m not going to replace biz dev manager right this second. I’m managing the influx of new customers, and need to focus on moving servers to new hosting facility (NewHost). Once our hosting setup is stable, I’ll work to hire more people in order to make my life more sane.
5. Adjourn
18:57 CEST

Footnotes

  1. Q2 P&L: https://metabrainz.org/finances/files/MetaBrainz_Foundation_profit_loss_2016_Q2.pdf
  2. Aug P&L: https://metabrainz.org/finances/files/MetaBrainz_Foundation_profit_loss_20160831.pdf
  3. Aug Balance sheet: https://metabrainz.org/finances/files/MetaBrainz_Foundation_balance_sheet_20160831.pdf

MetaBrainz has been accepted to Summer of Code 2017!

I’m pleased to announce that MetaBrainz has been accepted into the Google Summer of Code program for 2017!

If you are an eligible university student who would like to participate in Summer of Code and get paid to hack on a MetaBrainz project over the summer, take a look at our ideas page for 2017. If this sounds interesting, take a look at our getting started page.

We kindly ask that you carefully read the ideas page and the getting started page before you contact us for help!

Thanks and good luck applying!