github beetbox/beets v1.4.1
beets 1.4.1

latest releases: v1.6.0, v1.5.0, v1.4.9...
7 years ago

Version 1.4 has alpha-level Python 3 support. Thanks to the heroic efforts of @jrobeson, beets should run both under Python 2.7, as before, and now under Python 3.4 and above. The support is still new: it undoubtedly contains bugs, so it may replace all your music with Limp Bizkit—but if you're brave and you have backups, please try installing on Python 3. Let us know how it goes.

If you package beets for distribution, here's what you'll want to know:

  • This version of beets now depends on the six library.
  • We also bumped our minimum required version of Mutagen to 1.33 (from 1.27).
  • Please don't package beets as a Python 3 application yet, even though most things work under Python 3.4 and later.

This version also makes a few changes to the command-line interface and configuration that you may need to know about:

  • duplicates: The duplicates command no longer accepts multiple field arguments in the form -k title albumartist album. Each argument must be prefixed with -k, as in -k title -k albumartist -k album.
  • The old top-level colors configuration option has been removed (the setting is now under ui).
  • The deprecated list_format_album and list_format_item configuration options have been removed (see format_album and format_item).

The are a few new features:

  • mpdupdate, mpdstats: When the host option is not set, these plugins will now look for the $MPD_HOST environment variable before falling back to localhost. Thanks to @tarruda. #2175
  • web: Added an expand option to show the items of an album. #2050
  • embyupdate: The plugin can now use an API key instead of a password to authenticate with Emby. #2045 #2117
  • acousticbrainz: The plugin now adds a bpm field.
  • beet --version now includes the Python version used to run beets.
  • /reference/pathformat can now include unescaped commas (,) when they are not part of a function call. #2166 #2213
  • The update command takes a new -F flag to specify the fields to update. Thanks to @dangmai. #2229 #2231

And there are a few bug fixes too:

  • convert: The plugin no longer asks for confirmation if the query did not return anything to convert. #2260 #2262
  • embedart: The plugin now uses jpg as an extension rather than jpeg, to ensure consistency with the plugins/fetchart. Thanks to @tweitzel. #2254 #2255
  • embedart: The plugin now works for all jpeg files, including those that are only recognizable by their magic bytes. #1545 #2255
  • web: The JSON output is no longer pretty-printed (for a space savings). #2050
  • permissions: Fix a regression in the previous release where the plugin would always fail to set permissions (and log a warning). #2089
  • beatport: Use track numbers from Beatport (instead of determining them from the order of tracks) and set the medium_index value.
  • With per_disc_numbering enabled, some metadata sources (notably, the beatport) would not set the track number at all. This is fixed. #2085
  • play: Fix $args getting passed verbatim to the play command if it was set in the configuration but -A or --args was omitted.
  • With ignore_hidden enabled, non-UTF-8 filenames would cause a crash. This is fixed. #2168
  • embyupdate: Fixes authentication header problem that caused a problem that it was not possible to get tokens from the Emby API.
  • lyrics: Some titles use a colon to separate the main title from a subtitle. To find more matches, the plugin now also searches for lyrics using the part part preceding the colon character. #2206
  • Fix a crash when a query uses a date field and some items are missing that field. #1938
  • discogs: Subtracks are now detected and combined into a single track, two-sided mediums are treated as single discs, and tracks have media, medium_total and medium set correctly. #2222 #2228.
  • missing: missing is now treated as an integer, allowing the use of (for example) ranges in queries.
  • smartplaylist: Playlist names will be sanitized to ensure valid filenames. #2258
  • The ID3 APIC tag now uses the Latin-1 encoding when possible instead of a Unicode encoding. This should increase compatibility with other software, especially with iTunes and when using ID3v2.3. Thanks to @lazka. #899 #2264 #2270

The last release, 1.3.19, also erroneously reported its version as "1.3.18" when you typed beet version. This has been corrected.

Don't miss a new beets release

NewReleases is sending notifications on new releases.