NOTICE: This package has been removed from pkgsrc

./wip/py-beets, Music geeks media organizer

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ]


Branch: CURRENT, Version: 1.0b15, Package name: py27-beets-1.0b15, Maintainer: pkgsrc-users

Beets is the best command-line tool for viewing, querying, renaming,
and updating your music collection.

The purpose of beets is to get your music collection right once
and for all. It catalogs your collection, automatically improving
its metadata as it goes using the MusicBrainz database. (It also
downloads cover art for albums it imports.) Then it provides a
bouquet of tools for manipulating and accessing your music.

Because beets is designed as a library, it can do almost anything
you can imagine for your music collection. Via plugins, beets
becomes a panacea:

* Embed and extract album art from files' tags.
* Listen to your library with a music player that speaks the MPD
protocol and works with a staggering variety of interfaces.
* Fetch lyrics for all your songs from databases on the Web.
* Manage your MusicBrainz music collection.
* Analyze music files' metadata from the command line.
* Clean up crufty tags left behind by other, less-awesome tools.
* Browse your music library graphically through a Web browser
and play it in any browser that supports HTML5 Audio.


Required to run:
[textproc/py-yaml] [audio/py-mutagen] [devel/py-setuptools] [lang/python27] [audio/py-last] [textproc/py-Unidecode] [math/py-munkres]

Master sites:

SHA1: 1703f565e7bdbe11aa7474aaf45995d46033c370
RMD160: 2e8fec4cd4da405a85ae504526d5c1f682184e83
Filesize: 462.996 KB

Version history: (Expand)


CVS history: (Expand)


   2013-03-14 14:58:33 by Thomas Klausner | Files touched by this commit (4) | Package removed
Log message:
Remove py-beets, imported to pkgsrc/audio/py-beets.
   2013-03-14 14:55:18 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
Update to 1.0.0:

1.0.0 (January 29, 2013)
------------------------

After fifteen betas and two release candidates, beets has finally hit
one-point-oh. Congratulations to everybody involved. This version of beets will
remain stable and receive only bug fixes from here on out. New development is
ongoing in the betas of version 1.1.

* :doc:`/plugins/scrub`: Fix an incompatibility with Python 2.6.
* :doc:`/plugins/lyrics`: Fix an issue that failed to find lyrics when metadata
  contained "real" apostrophes.
* :doc:`/plugins/replaygain`: On Windows, emit a warning instead of
  crashing when analyzing non-ASCII filenames.
* Silence a spurious warning from version 0.04.12 of the Unidecode module.

1.0rc2 (December 31, 2012)
--------------------------

This second release candidate follows quickly after rc1 and fixes a few small
bugs found since that release. There were a couple of regressions and some bugs
in a newly added plugin.

* :doc:`/plugins/echonest_tempo`: If the Echo Nest API limit is exceeded or a
  communication error occurs, the plugin now waits and tries again instead of
  crashing. Thanks to Zach Denton.
* :doc:`/plugins/fetchart`: Fix a regression that caused crashes when art was
  not available from some sources.
* Fix a regression on Windows that caused all relative paths to be "not \ 
found".

1.0rc1 (December 17, 2012)
--------------------------

The first release candidate for beets 1.0 includes a deluge of new features
contributed by beets users. The vast majority of the credit for this release
goes to the growing and vibrant beets community. A million thanks to everybody
who contributed to this release.

There are new plugins for transcoding music, fuzzy searches, tempo collection,
and fiddling with metadata. The ReplayGain plugin has been rebuilt from
scratch. Album art images can now be resized automatically. Many other smaller
refinements make things "just work" as smoothly as possible.

With this release candidate, beets 1.0 is feature-complete. We'll be fixing
bugs on the road to 1.0 but no new features will be added. Concurrently, work
begins today on features for version 1.1.

* New plugin: :doc:`/plugins/convert` **transcodes** music and embeds album art
  while copying to a separate directory. Thanks to Jakob Schnitzer and Andrew G.
  Dunn.
* New plugin: :doc:`/plugins/fuzzy_search` lets you find albums and tracks
  using **fuzzy string matching** so you don't have to type (or even remember)
  their exact names. Thanks to Philippe Mongeau.
* New plugin: :doc:`/plugins/echonest_tempo` fetches **tempo** (BPM) information
  from `The Echo Nest`_. Thanks to David Brenner.
* New plugin: :doc:`/plugins/the` adds a template function that helps format
  text for nicely-sorted directory listings. Thanks to Blemjhoo Tezoulbr.
* New plugin: :doc:`/plugins/zero` **filters out undesirable fields** before
  they are written to your tags. Thanks again to Blemjhoo Tezoulbr.
* New plugin: :doc:`/plugins/ihate` automatically skips (or warns you about)
  importing albums that match certain criteria. Thanks once again to Blemjhoo
  Tezoulbr.
* :doc:`/plugins/replaygain`: This plugin has been completely overhauled to use
  the `mp3gain`_ or `aacgain`_ command-line tools instead of the failure-prone
  Gstreamer ReplayGain implementation. Thanks to Fabrice Laporte.
* :doc:`/plugins/fetchart` and :doc:`/plugins/embedart`: Both plugins can now
  **resize album art** to avoid excessively large images. Use the ``maxwidth``
  config option with either plugin. Thanks to Fabrice Laporte.
* :doc:`/plugins/scrub`: Scrubbing now removes *all* types of tags from a file
  rather than just one. For example, if your FLAC file has both ordinary FLAC
  tags and ID3 tags, the ID3 tags are now also removed.
* :ref:`stats-cmd` command: New ``--exact`` switch to make the file size
  calculation more accurate (thanks to Jakob Schnitzer).
* :ref:`list-cmd` command: Templates given with ``-f`` can now show items' and
  albums' paths (using ``$path``).
* The output of the :ref:`update-cmd`, :ref:`remove-cmd`, and :ref:`modify-cmd`
  commands now respects the :ref:`list_format_album` and
  :ref:`list_format_item` config options. Thanks to Mike Kazantsev.
* The :ref:`art-filename` option can now be a template rather than a simple
  string. Thanks to Jarrod Beardwood.
* Fix album queries for ``artpath`` and other non-item fields.
* Null values in the database can now be matched with the empty-string regular
  expression, ``^$``.
* Queries now correctly match non-string values in path format predicates.
* When autotagging a various-artists album, the album artist field is now
  used instead of the majority track artist.
* :doc:`/plugins/lastgenre`: Use the albums' existing genre tags if they pass
  the whitelist (thanks to Fabrice Laporte).
* :doc:`/plugins/lastgenre`: Add a ``lastgenre`` command for fetching genres
  post facto (thanks to Jakob Schnitzer).
* :doc:`/plugins/fetchart`: Local image filenames are now used in alphabetical
  order.
* :doc:`/plugins/fetchart`: Fix a bug where cover art filenames could lack
  a ``.jpg`` extension.
* :doc:`/plugins/lyrics`: Fix an exception with non-ASCII lyrics.
* :doc:`/plugins/web`: The API now reports file sizes (for use with the
  `Tomahawk resolver`_).
* :doc:`/plugins/web`: Files now download with a reasonable filename rather
  than just being called "file" (thanks to Zach Denton).
* :doc:`/plugins/importfeeds`: Fix error in symlink mode with non-ASCII
  filenames.
* :doc:`/plugins/mbcollection`: Fix an error when submitting a large number of
  releases (we now submit only 200 releases at a time instead of 350). Thanks
  to Jonathan Towne.
* :doc:`/plugins/embedart`: Made the method for embedding art into FLAC files
  `standard
  <https://wiki.xiph.org/VorbisComment#METADATA_BLOCK_PICTURE>`_-compliant.
  Thanks to Daniele Sluijters.
* Add the track mapping dictionary to the ``album_distance`` plugin function.
* When an exception is raised while reading a file, the path of the file in
  question is now logged (thanks to Mike Kazantsev).
* Truncate long filenames based on their *bytes* rather than their Unicode
  *characters*, fixing situations where encoded names could be too long.
* Filename truncation now incorporates the length of the extension.
* Fix an assertion failure when the MusicBrainz main database and search server
  disagree.
* Fix a bug that caused the :doc:`/plugins/lastgenre` and other plugins not to
  modify files' tags even when they successfully change the database.
* Fix a VFS bug leading to a crash in the :doc:`/plugins/bpd` when files had
  non-ASCII extensions.
* Fix for changing date fields (like "year") with the :ref:`modify-cmd`
  command.
* Fix a crash when input is read from a pipe without a specified encoding.
* Fix some problem with identifying files on Windows with Unicode directory
  names in their path.
* Fix a crash when Unicode queries were used with ``import -L`` re-imports.
* Fix an error when fingerprinting files with Unicode filenames on Windows.
* Warn instead of crashing when importing a specific file in singleton mode.
* Add human-readable error messages when writing files' tags fails or when a
  directory can't be created.
* Changed plugin loading so that modules can be imported without
  unintentionally loading the plugins they contain.

.. _The Echo Nest: http://the.echonest.com/
.. _Tomahawk resolver: http://beets.radbox.org/blog/tomahawk-resolver.html
.. _mp3gain: http://mp3gain.sourceforge.net/download.php
.. _aacgain: http://aacgain.altosdesign.com
   2013-03-14 14:46:10 by Thomas Klausner | Files touched by this commit (1)
Log message:
Update path to py-musicbrainz-ngs.
   2012-10-06 19:22:16 by Aleksej Saushev | Files touched by this commit (16)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
Mark packages that don't or might probably not have staged installation.
   2012-10-04 00:14:51 by Thomas Klausner | Files touched by this commit (40)
Log message:
Update for python25 removal.
   2012-09-13 15:49:32 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
Update to 1.0b15:

1.0b15 (July 26, 2012)
----------------------

The fifteenth (!) beta of beets is compendium of small fixes and features, most
of which represent long-standing requests. The improvements include matching
albums with extra tracks, per-disc track numbering in multi-disc albums, an
overhaul of the album art downloader, and robustness enhancements that should
keep beets running even when things go wrong. All these smaller changes should
help us focus on some larger changes coming before 1.0.

Please note that this release contains one backwards-incompatible change: album
art fetching, which was previously baked into the import workflow, is now
encapsulated in a plugin (the :doc:`/plugins/fetchart`). If you want to continue
fetching cover art for your music, enable this plugin after upgrading to beets
1.0b15.

* The autotagger can now find matches for albums when you have **extra tracks**
  on your filesystem that aren't present in the MusicBrainz catalog. Previously,
  if you tried to match album with 15 audio files but the MusicBrainz entry had
  only 14 tracks, beets would ignore this match. Now, beets will show you
  matches even when they are "too short" and indicate which tracks \ 
from your
  disk are unmatched.
* Tracks on multi-disc albums can now be **numbered per-disc** instead of
  per-album via the :ref:`per_disc_numbering` config option.
* The default output format for the ``beet list`` command is now configurable
  via the :ref:`list_format_item` and :ref:`list_format_album` config options.
  Thanks to Fabrice Laporte.
* Album **cover art fetching** is now encapsulated in the
  :doc:`/plugins/fetchart`. Be sure to enable this plugin if you're using this
  functionality. As a result of this new organization, the new plugin has gained
  a few new features:

  * "As-is" and non-autotagged imports can now have album art imported from
    the local filesystem (although Web repositories are still not searched in
    these cases).
  * A new command, ``beet fetchart``, allows you to download album art
    post-import. If you only want to fetch art manually, not automatically
    during import, set the new plugin's ``autofetch`` option to ``no``.
  * New album art sources have been added.

* Errors when communicating with MusicBrainz now log an error message instead of
  halting the importer.
* Similarly, filesystem manipulation errors now print helpful error messages
  instead of a messy traceback. They still interrupt beets, but they should now
  be easier for users to understand. Tracebacks are still available in verbose
  mode.
* New metadata fields for `artist credits`_: ``artist_credit`` and
  ``albumartist_credit`` can now contain release- and recording-specific
  variations of the artist's name. See :ref:`itemfields`.
* Revamped the way beets handles concurrent database access to avoid
  nondeterministic SQLite-related crashes when using the multithreaded importer.
  On systems where SQLite was compiled without ``usleep(3)`` support,
  multithreaded database access could cause an internal error (with the message
  "database is locked"). This release synchronizes access to the \ 
database to
  avoid internal SQLite contention, which should avoid this error.
* Plugins can now add parallel stages to the import pipeline. See
  :ref:`writing-plugins`.
* Beets now prints out an error when you use an unrecognized field name in a
  query: for example, when running ``beet ls -a artist:foo`` (because ``artist``
  is an item-level field).
* New plugin events:

  * ``import_task_choice`` is called after an import task has an action
    assigned.
  * ``import_task_files`` is called after a task's file manipulation has
    finished (copying or moving files, writing metadata tags).
  * ``library_opened`` is called when beets starts up and opens the library
    database.

* :doc:`/plugins/lastgenre`: Fixed a problem where path formats containing
  ``$genre`` would use the old genre instead of the newly discovered one.
* Fix a crash when moving files to a Samba share.
* :doc:`/plugins/mpdupdate`: Fix TypeError crash (thanks to Philippe Mongeau).
* When re-importing files with ``import_copy`` enabled, only files inside the
  library directory are moved. Files outside the library directory are still
  copied. This solves a problem (introduced in 1.0b14) where beets could crash
  after adding files to the library but before finishing copying them; during
  the next import, the (external) files would be moved instead of copied.
* Artist sort names are now populated correctly for multi-artist tracks and
  releases. (Previously, they only reflected the first artist.)
* When previewing changes during import, differences in track duration are now
  shown as "2:50 vs. 3:10" rather than separated with ``->`` like \ 
track numbers.
  This should clarify that beets isn't doing anything to modify lengths.
* Fix a problem with query-based path format matching where a field-qualified
  pattern, like ``albumtype_soundtrack``, would match everything.
* :doc:`/plugins/chroma`: Fix matching with ambiguous Acoustids. Some Acoustids
  are identified with multiple recordings; beets now considers any associated
  recording a valid match. This should reduce some cases of errant track
  reordering when using chroma.
* Fix the ID3 tag name for the catalog number field.
* :doc:`/plugins/chroma`: Fix occasional crash at end of fingerprint submission
  and give more context to "failed fingerprint generation" errors.
* Interactive prompts are sent to stdout instead of stderr.
* :doc:`/plugins/embedart`: Fix crash when audio files are unreadable.
* :doc:`/plugins/bpd`: Fix crash when sockets disconnect (thanks to Matteo
  Mecucci).
* Fix an assertion failure while importing with moving enabled when the file was
  already at its destination.
* Fix Unicode values in the ``replace`` config option (thanks to Jakob Borg).
* Use a nicer error message when input is requested but stdin is closed.
* Fix errors on Windows for certain Unicode characters that can't be represented
  in the MBCS encoding. This required a change to the way that paths are
  represented in the database on Windows; if you find that beets' paths are out
  of sync with your filesystem with this release, delete and recreate your
  database with ``beet import -AWC /path/to/music``.
* Fix ``import`` with relative path arguments on Windows.

.. _artist credits: http://wiki.musicbrainz.org/Artist_Credit
   2012-06-15 08:55:19 by Thomas Klausner | Files touched by this commit (2)
Log message:
Fix for python<2.7 (use PYVERSSUFIX)
   2012-06-01 07:27:44 by Thomas Klausner | Files touched by this commit (1)
Log message:
Do not allow python-2.5 since py-last doesn't.