beets 1.3.7
This release of beets fixes all the bugs, and you can be confident that you will never again find any bugs in beets, ever. It also adds support for plain old AIFF files and adds three more plugins, including a nifty one that lets you measure a song's tempo by tapping out the beat on your keyboard. The importer deals more elegantly with duplicates and you can broaden your cover art search to the entire web with Google Image Search.
The big new features are:
- Support for AIFF files. Tags are stored as ID3 frames in one of the file's IFF chunks. Thanks to Evan Purkhiser for contributing support to Mutagen.
- The new
importadded
reads files' modification times to set their "added" date. Thanks to Stig Inge Lea Bjørnsen. - The new
bpm
lets you manually measure the tempo of a playing song. Thanks to aroquen. - The new
spotify
generates playlists for your Spotify account. Thanks to Olin Gay. - A new required configuration option for the importer skips matches that are missing certain data. Thanks to oprietop.
- When the importer detects duplicates, it now shows you some details about the potentially-replaced music so you can make an informed decision. Thanks to Howard Jones.
fetchart
: You can now optionally search for cover art on Google Image Search. Thanks to Lemutar.- A new asciify-paths configuration option replaces all non-ASCII characters in paths.
And the multitude of little improvements and fixes:
- Compatibility with the latest version of Mutagen, 1.23.
web
: Lyrics now display readably with correct line breaks. Also, the detail view scrolls to reveal all of the lyrics. Thanks to Meet Udeshi.play
: Thecommand
config option can now contain arguments (rather than just an executable). Thanks to Alessandro Ghedini.- Fix an error when using the modify command to remove a flexible attribute. Thanks to Pierre Rust.
info
: The command now shows audio properties (e.g., bitrate) in addition to metadata. Thanks Alessandro Ghedini.- Avoid a crash on Windows when writing to files with special characters in their names.
play
: Playing albums now generates filenames by default (as opposed to directories) for better compatibility. Theuse_folders
option restores the old behavior. Thanks to Lucas Duailibe.- Fix an error when importing an empty directory with the
--flat
option. mpdstats
: The last song in a playlist is now correctly counted as played. Thanks to Johann Klähn.zero
: Prevent accidental nulling of dangerous fields (IDs and paths). Thanks to brunal.- The remove command now shows the paths of files that will be deleted. Thanks again to brunal.
- Don't display changes for fields that are not in the restricted field set. This fixes write showing changes for fields that are not written to the file.
- The write command avoids displaying the item name if there are no changes for it.
- When using both the
convert
and thescrub
, avoid scrubbing the source file of conversions. (Fix a regression introduced in the previous release.) replaygain
: Logging is now quieter during import. Thanks to Yevgeny Bezman.fetchart
: When loading art from the filesystem, we now prioritize covers with more keywords in them. This means thatcover-front.jpg
will now be taken beforecover-back.jpg
because it contains two keywords rather than one. Thanks to Fabrice Laporte.lastgenre
: Remove duplicates from canonicalized genre lists. Thanks again to Fabrice Laporte.- The importer now records its progress when skipping albums. This means that incremental imports will no longer try to import albums again after you've chosen to skip them, and erroneous invitations to resume "interrupted" imports should be reduced. Thanks to jcassette.
bucket
: You can now customize the definition of alphanumeric "ranges" using regular expressions. And the heuristic for detecting years has been improved. Thanks to sotho.- Already-imported singleton tracks are skipped when resuming an import.
chroma
: A newauto
configuration option disables fingerprinting on import. Thanks to ddettrittus.convert
: A new--format
option to can select the transcoding preset from the command-line.convert
: Transcoding presets can now omit their filename extensions (extensions default to the name of the preset).convert
: A new--pretend
option lets you preview the commands the plugin will execute without actually taking any action. Thanks to Dietrich Daroch.- Fix a crash when a float-valued tag field only contained a
+
or-
character. - Fixed a regression in the core that caused the
scrub
not to work inauto
mode. Thanks to Harry Khanna. - The write command now has a
--force
flag. Thanks again to Harry Khanna. mbsync
: Track alignment now works with albums that have multiple copies of the same recording. Thanks to Rui Gonçalves.