Announcing the first MusicBrainz Hack Weekend

Hi everyone!

It’s with a lot of excitement that I can announce that the first MusicBrainz Worldwide/Remote Hack Weekend has been confirmed! We will spend from 2012-08-17 until 2012-08-19 getting as many people together as we can to hack on some fun new features for MusicBrainz, or use MusicBrainz data in interesting ways.

You can find all the details including proposed ideas at:

http://wiki.musicbrainz.org/Hack_Weekend

When

The first official MusicBrainz hack weekend will take place between 2012-08-17 and 2012-08-19.

Where

The main event will be taking place in the #musicbrainz-devel IRC channel on irc.freenode.org. We also encourage local people to get together and work on things in person if possible. If you’re interested in that, check the wiki page for information about people who are local to you.

Who

Everyone! The hack weekend is not just for programmers, we’ll be sure to need testers, people to help brainstorm, people to help with documentation and writing, people to help with HTML, and inevitably more on the day.

Ideas

We’ve already got a few ideas on the wiki page, but the more the merrier! Even if you don’t think you can make the hack weekend, put your ideas down and maybe someone will pick them up.

I’m really looking forward to this, and I hope you’ll join us!

Server Update, 2012-07-09

We’ve just finished pushing out another update to the MusicBrainz web servers. This release is mainly a bug fix release, though it does see some of Alastair’s Google Summer of Code work on collections, and more of Ian’s work on translations. Also, there is finally a top editors once again.

Many thanks to Ian McEwan, Alastair Porter, Nicolás Tamargo, and the rest of the MusicBrainz team for their work on this release, and the beta team for helping us make sure everything is working nicely! Here’s what’s changed:

Bug

  • [MBS-2765] – Artist/Label guess case breaks if a different mode is set in the cookie
  • [MBS-2903] – WS/2: Can’t browse artist by work (ws/2/artist?work=MBID)
  • [MBS-3156] – Slaves should use the READONLY database settings from DBDefs.pm
  • [MBS-3904] – It is possible to vote for own edits
  • [MBS-4241] – msgids for translation should not use anything but ASCII
  • [MBS-4595] – Not all relationships are shown translated
  • [MBS-4613] – Language/script dropdowns are not translated in the release editor
  • [MBS-4731] – ISE: Edit Search for My Vote != None && Status = Open
  • [MBS-4738] – script/create_test_db.sh does not create a test database.
  • [MBS-4796] – "Other release groups" have slipped to the very bottom of the page
  • [MBS-4857] – Statistics timeline does not respond to window resizes
  • [MBS-4871] – When making a new collection, UUID in url is all uppercase
  • [MBS-4873] – Can’t go from a collection back to collections list
  • [MBS-4875] – Statistics tabs are untranslatable
  • [MBS-4878] – Dropdown lists on add artist/label/etc not translated
  • [MBS-4905] – Missing "lyrics language" in "work information" section of works tabs
  • [MBS-4926] – musicbrainz.org/release-group/{mbid} template is including an extra th
  • [MBS-4934] – robots.txt is blocking *
  • [MBS-4935] – count.recording.Nreleases statistics are calculated incorrectly and inefficiently
  • [MBS-4938] – Statistics: No. of IPIs is wrong
  • [MBS-4954] – Internal server error when checking donation status.

Improvement

  • [MBS-2387] – Better release label merging
  • [MBS-3208] – Trim leading/trailing whitespace in release editor prior to Add Missing Entities check
  • [MBS-4741] – Bring back voting icons in the edit search/edit view
  • [MBS-4855] – Split translation domains to ease translation and aid reuse of musicbrainz-server translations
  • [MBS-4856] – l() and ln() in templates should be implemented as a TT plugin, not relying on c.gettext
  • [MBS-4933] – Remove extraneous references to READWRITE in Data::Statistics

New Feature

  • [MBS-1715] – No page to view top editors

Task

  • [MBS-4845] – Update the Twitter logo
  • [MBS-4888] – Add "Trove" to "Other Databases" whitelist

Sub-task

  • [MBS-4223] – .po files with country codes don’t seem to work
  • [MBS-4224] – Interface not switching languages properly
  • [MBS-4259] – Make timeline events translatable
  • [MBS-4338] – country, language, script strings should not share identical msgid
  • [MBS-4340] – edit details template is wrongly retrieved from translated edit name

The Git tag for this release is v-2012-07-09.

Server update, 2012-06-25

We’ve just finished pushing out a small set of changes to the web servers. This is mainly a bug fix release. Thanks to hrglgrmpf, Ian McEwen, Nicolás Tamargo and the MusicBrainz team for their work on this release! Here’s what’s changed:

Bug

  • [MBS-3803] – "Edit barcodes" edit should show the previous value
  • [MBS-4341] – cron scripts don’t account for carton
  • [MBS-4513] – homepage.css included twice on main index
  • [MBS-4526] – Recordings listed on ISRC page are not sorted
  • [MBS-4580] – "Greek" as a locale of German
  • [MBS-4798] – Language statistics should be sortable
  • [MBS-4810] – CC license URLs are not fully normalized in URLCleanup.js
  • [MBS-4841] – update to new Jamendo URL scheme
  • [MBS-4893] – "No edit notes have been added." should not be on edit listing pages.

Improvement

  • [MBS-2547] – Make modbot delete unused core entities
  • [MBS-3120] – Warn when merging recordings with different ISRCs
  • [MBS-4744] – Recognise Spotify URLs
  • [MBS-4900] – Net::CoverArtArchive is not in Makefile.pl

New Feature

  • [MBS-3931] – Report: Discogs pages attached to multiple artists

Task

  • [MBS-4899] – Remove SoundUnwound links from sidebar

The Git tag for this release is v-2012-06-25.

Server update, 2012-06-12

We’ve just finished pushing out a new set of changes to the MusicBrainz Servers. This release is mostly a bug fix, and importantly fixes a critical bug that could cause recordings to be deleted. Many thanks to Nicolás Tamargo, Ian McEwen, Wieland Hoffmann, hrglgrmpf and the MusicBrainz team for their work on this release.

Bug

  • [MBS-3862] – Sending email to an editor reveals their hidden email address when you use the "send a copy to my own email address" option.
  • [MBS-4088] – ISE and data loss (recordings) while trying to split a tracklist into 2 tracklists
  • [MBS-4398] – MySpace https URLs don’t get cleaned up properly
  • [MBS-4750] – Editing an existing artist alias to mark it as ‘primary’ doesn’t take effect.
  • [MBS-4759] – Aliases have not been migrated correctly in the last schema migration
  • [MBS-4789] – Facebook pages with certain URLs are not displayed
  • [MBS-4791] – Can’t add tags
  • [MBS-4799] – Cover art stats don’t add up
  • [MBS-4809] – CC0 1.0 license isn’t recognized by URLCleanup.js
  • [MBS-4824] – URLCleanup.js only strips whitespace from the front of strings
  • [MBS-4829] – Add Label page lies about disambiguation
  • [MBS-4834] – Detect new allmusic IDs in URLCleanup.js

Improvement

  • [MBS-3898] – Release editor should be able to deal with totaltracks in tracknumbers
  • [MBS-4302] – Remove Facebook’s "?sk=whatever" arguments during cleanup
  • [MBS-4795] – Add the Other DBs whitelisted stuff to the sidebar
  • [MBS-4814] – Add autocorrection and automatic type selection for Google Plus artist page URLs

Task

  • [MBS-4794] – Add autoselect for Other Databases

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

Server update, 2012-05-28

We’ve just finished pushing an update to our web servers. This is our first release since the schema change, and we’ve tried to address the problem of artist landing pages. As a temporary solution, we’ve split the page up by type a bit more now, which we hope is a step in the right direction. We’re currently discussing this at User:Reosarevok/Overview Options on the wiki, and your feedback is important. If you feel strongly about this, please have a read at the ideas on that page and feel free to comment/add your own.

This release features work from Ian McEwen, nikki, Joachim LeBlanc, Nicolás Tamargo and the rest of the MusicBrainz team. Thanks everyone for your hard work!

Bug

  • [MBS-1121] – Disabled submit buttons have no distinctive style
  • [MBS-3861] – IMDb links not fully normalized
  • [MBS-4278] – Copy changes to recordings edits the wrong recordings if recording associations were changed
  • [MBS-4336] – Release editor > removing a track resets manually changed track positions
  • [MBS-4520] – Deleting tracks does not update track numbers
  • [MBS-4569] – Full page titles aren’t shown in /doc
  • [MBS-4621] – Don’t use empty <img> tags on pages with no images
  • [MBS-4649] – YouTube channel autoselect is broken
  • [MBS-4656] – “Video” option for “can be streamed for free at” relationship is listed under the “License” subheading.
  • [MBS-4662] – ISE: Can’t edit a relationship attribute
  • [MBS-4664] – Use of uninitialized value in sprintf at lib/DBDefs.pm line 314.
  • [MBS-4681] – Edit maked as Applied, but it isn’t
  • [MBS-4687] – Link to create new relationship types doesn’t work
  • [MBS-4697] – Approve votes missing from edit search
  • [MBS-4720] – Audiobook is a primary release-group type
  • [MBS-4733] – Merging release groups fails if release groups have secondary types
  • [MBS-4752] – Musicbrainz webservice <iswc-list> changes break compatibility with existing applications.
  • [MBS-4757] – Edit artist alias (sort name) is auto-edit
  • [MBS-4760] – Release groups with secondary types cannot be deleted
  • [MBS-4765] – DB_SCHEMA_SEQUENCE hasn’t been updated to 15 in DBDefs.pm.default
  • [MBS-4767] – Cannot accept edit release group edits that change the primary type to a type that no longer exists
  • [MBS-4769] – Bad description row in statistic_event
  • [MBS-4770] – ISE: Error when requesting non-existent relationship types on /relationships
  • [MBS-4772] – ModBot cannot apply old edit work edits that add ISWCs

Improvement

  • [MBS-684] – TOC lookup displays too little release info
  • [MBS-1874] – Search for the documentation
  • [MBS-3748] – Adding new instruments is a pain
  • [MBS-4298] – Confusing text when merging releases+recordings
  • [MBS-4561] – Make disambiguation on tracklist credits smaller
  • [MBS-4568] – Add <bdi> tags to help with rendering of RTL text
  • [MBS-4657] – Add cover art to timeline
  • [MBS-4700] – Fix inline buttons
  • [MBS-4742] – Add a mention to the “Split Into Separate Artists” page that aliases prevent a split (or automatic removal)
  • [MBS-4762] – Cover art statistics should be displayed on the tabular pages.

Task

  • [MBS-4686] – Add wikisource.org to the lyrics whitelist

In other news, Oliver will be on holiday for one week (yipee!), and will be back in a week. Reachable via email if need be.

The commit sha for this release is 8fbbc36, a Git tag will follow when Rob is back tomorrow. and the git tag is v-2012-05-28

Post schema change fix for importing clean data

Yesterday we found a bug that prevents the import of a post schema change update data set. We’ve pushed out a fix for this and tagged it with:

v-2012-05-15-import-fix

If you’re planning on importing a new data set, make sure to check out this tag, rather than the tag mentioned in this entry.

Announcing libmusicbrainz releases 4.0.3 and 5.0.1

Regrettably, a couple of errors were found close to the release of v4.0.2 and v5.0.0. I have just released v4.0.3 and v5.0.1 with the following changes:

– Fix LMB-32 – Correctly ignore unrecognised nodes
– Don’t compile using -Werror when building from tarball

The releases are available:

libmusicbrainz-4.0.3.tar.gz
(MD5 checksum: 19b43a543d338751e9dc524f6236892b)

libmusicbrainz-5.0.1.tar.gz
(MD5 checksum: a0406b94c341c2b52ec0fe98f57cadf3)

Documentation for the new version is available under

http://metabrainz.github.com/libmusicbrainz/

Apologies to all for the need to make this release so soon after the last one.

Andy

Schema change server update, 2012-05-15

Nearly one year after we released NGS, we have another schema change update with lots of new features!

This release contains 9 new features and improvements that take advantage of the new schema. These are:

  • More social user profiles which can now have Gravatars, languages (and the users proficiency) age and country.
  • More expressive aliases for artists, labels and works. Aliases can now have types, sort names and multiple aliases may be used per a locale, along with the ability to mark one alias as ‘primary’ for that locale.
  • Release group types have been separated into primary and secondary types. A release group now has 1 primary type and may have multiple secondary types. This allows us to have ‘remix compilation albums’, for example
  • Works may have multiple ISWCs
  • Artists, labels and relationships may be marked as ‘ended’ to indicate that they have ended, but the exact date is not known
  • Vinyl style/free text track numbers are now supported.
  • Works may have a lyrics language associated with them
  • Artists and labels may have multiple IPIs
  • We have moved to use ISO 639-3 for our language table. While not all languages are exposed at the moment, this gives us a lot more flexibility going forward.

Many thanks to nikki for going way beyond our expectations for testing (and patience!); to Ian McEwen for his continued work on statistics; and to the MusicBrainz team for making this all happen.

If you have a replicated instance of MusicBrainz, please follow these instructions to get your server running on the new schema:

  1. Take down the web server running MusicBrainz, if you’re running a web server.
  2. Turn off cron jobs if you are automatically updating the database via cron jobs.
  3. Make sure your REPLICATION_TYPE setting is RT_SLAVE
  4. Switch to the new code with git fetch origin followed by git checkout v-2012-05-15-schema-change
  5. Run carton install --deployment. If you have not switched your installation to using carton, please read INSTALL.md on how to do this.
  6. Run carton exec -- ./upgrade.sh from the top of the source directory.
  7. Set DB_SCHEMA_SEQUENCE to 15 in lib/DBDefs.pm
  8. Turn cron jobs back on, if needed.
  9. Restart the MusicBrainz web server, if needed.

If you are running a mbslave mirror, check out the latest code and read the upgrade instructions in the README file.

Bug

  • [MBS-3189] – Remove unused ref_count column and related functions
  • [MBS-4616] – Add work language statistics
  • [MBS-4629] – /cover-art page shows no collections
  • [MBS-4637] – Timeline graph won’t graph anything without an entry in statistics/view.js
  • [MBS-4640] – Clicking cover art opens box with “����” (4 U+FFFD)
  • [MBS-4642] – Thickbox CSS interferes with MB CSS
  • [MBS-4647] – Cover art page allows submitting edit with no cover art when JS is off
  • [MBS-4648] – Changing cover art type from “other” to unset causes Internal Server Error
  • [MBS-4678] – upgrade.sh is not ready for testing
  • [MBS-4679] – Internal server error adding secondary types to a release

Improvement

  • [MBS-1485] – Alias types
  • [MBS-1798] – Lyrics language for works
  • [MBS-1799] – Add ISO 639-3 language codes to the database
  • [MBS-1981] – Add blog feed to the home page
  • [MBS-2240] – Aliases: certain locale can be used only once in the list of aliases
  • [MBS-2532] – Allow more than one IPI per artist
  • [MBS-2851] – Timeline graph events should be in the database
  • [MBS-2885] – Allow more than one ISWC per work
  • [MBS-3646] – Split release group attributes into two types
  • [MBS-3788] – Alias improvements
  • [MBS-4625] – Improve wording of cover art tab when cover art comes from relationships
  • [MBS-4676] – Do not allow people entering deprecated relationships

New Feature

  • [MBS-842] – Allow vinyl style track numbers and sides
  • [MBS-1385] – Support unknown end dates
  • [MBS-3704] – Allow adding sort names to artist aliases
  • [MBS-4337] – Make user profile more social: add (optional) fields avatar, gender, birth year, country

Announcing libmusicbrainz4 releases 4.0.1 and 5.0.0

Andy Hawkins says:

Hi,

I am pleased to announce two new versions of libmusicbrainz:

libmusicbrainz-4.0.2 has been updated to take account of changes made to the server on 15th May 2012. Some interfaces are now marked as deprecated, as they have been extended during the work.

Full documentation is available here:

http://metabrainz.github.com/libmusicbrainz/4.0.2/

The release can be downloaded here:

https://github.com/downloads/metabrainz/libmusicbrainz/libmusicbrainz-4.0.2.tar.gz

(MD5 checksum 5ff62abeca00fdad1bb3a8f99065ae61)

libmusicbrainz-5.0.0 has been introduced to enable the library to be more easily included in Debian due to a conflicting package name. It is identical to libmusicbrainz-4.0.2, with the following exceptions:

1. All include files are now in the musicbrainz5 directory

2. You should now link against libmusicbrainz5 (-lmusicbrainz5)

3. All previously deprecated functions have been removed.

Please note that all future work is likely to only occur on the 5.x library, so this should be used wherever possible.

Full documentation is available here:

http://metabrainz.github.com/libmusicbrainz/5.0.0/

The release can be downloaded here:

https://github.com/downloads/metabrainz/libmusicbrainz/libmusicbrainz-5.0.0.tar.gz

(MD5 checksum 3396e0c66cfacfa1f32abc7cfdbcbe13)

As ever, please report any issues in JIRA at

http://tickets.musicbrainz.org

under the project ‘libmusicbrainz’.

If you have any questions, please post them in the musicbrainz-devel mailing list. I will also attempt to be available on the #musicbrainz-devel IRC channel on Freenode.