Commit graph

525 commits

Author SHA1 Message Date
Adrian Sampson
46340af6b7 #291: changelog and docs 2013-05-29 15:39:10 -07:00
Adrian Sampson
3b438b7778 inline: rename "pathfields" to "item_fields" 2013-05-28 23:20:19 -07:00
Adrian Sampson
0176e10ccf inline: allow album field definitions
Under the album_field heading.
2013-05-28 23:10:47 -07:00
Adrian Sampson
a0cb31956d distinguish Album and Item template fields
An earlier change (due to @pedros) added the ability for plugins to define
template fields that work with Albums as well as Items. This enables some
cool new use cases but required that every template field definition check the
type of its arguments. Instead, this iteration on the idea distinguishes
between fields meant for Items and those meant for Albums.

In addition to simplifying the implementation of these functions, this also
enables the creation of album fields with identical names to item fields.
(For example, a user contacted me recently about adding a $bitrate field for
albums, which would be the average bitrate of the items. They can do this now
using a plugin.)

I also changed the docs to stop using the decorator approach to registering
template fields. We're moving toward removing those.
2013-05-28 22:30:23 -07:00
Adrian Sampson
9f927438ca fix some dumb mistakes from most recent flurry 2013-05-28 22:04:20 -07:00
Adrian Sampson
6334f4d1a5 refinements to artpath modification patch
That's 371cc72f2d09 in hg. This makes the patch slightly more general by
reusing our type conversion infrastructure. It also uses "bytes" as a synonym
for "str" that I find a little bit clearer.
2013-05-28 21:41:03 -07:00
Adrian Sampson
b3646f2659 fix some docs syntax 2013-05-28 21:28:26 -07:00
Tai Lee
a5151bb32e Look at many more metadata fields when calculating distance.
Produce slightly more varied similarity score to prioritise extremely
similar releases.
2013-05-29 10:18:55 +10:00
Tai Lee
7700eaee79 Update examples in docs to reflect new UI enhancements. 2013-05-27 01:25:13 +10:00
Tai Lee
e66a865f17 Rename the discogs max rec setting to non_mb_source, so it can apply to all data source plugins. 2013-05-25 22:44:41 +10:00
Adrian Sampson
3807252685 slightly expand UI changelog description 2013-05-24 11:28:27 -07:00
Tai Lee
ae8f7560e9 reST fail. 2013-05-25 01:50:54 +10:00
Tai Lee
f19dcb0508 Update change log. 2013-05-25 01:45:36 +10:00
Tai Lee
f5557a74d7 Update intersecting max_rec and discogs docs. 2013-05-24 15:01:19 +10:00
Tai Lee
15be24998a Add ability to specify a maximum recommendation for Discogs matches. 2013-05-24 14:43:37 +10:00
Tai Lee
34faebfbdb Display "artist" and/or "ID" on RHS of track list in light gray when a penalty has been applied. 2013-05-24 14:42:00 +10:00
Adrian Sampson
26682f9168 docs/changelog for convert paths config (#285) 2013-05-22 15:00:53 -07:00
Lucas Duailibe
e952e37c74 docs for the convert pathformat configuration 2013-05-22 11:12:32 -03:00
Adrian Sampson
06887a8cef discogs: expand docs ever so slightly 2013-05-21 18:03:03 -07:00
Adrian Sampson
27071a6e38 discogs: tweak colorization & installation docs
I thought having "MusicBrainz" colored green was a little distracting since
it's the common case (and universal without the discogs plugin), so this just
makes it neutral-color in that case.
2013-05-21 17:59:17 -07:00
Adrian Sampson
f0d63b3596 changelog thanks for discogs plugin (#283 / #210) 2013-05-21 17:40:21 -07:00
Adrian Sampson
dd304c3339 merge 2013-05-21 17:36:45 -07:00
Adrian Sampson
bf78751090 human-readable errors in read() and write() 2013-05-21 15:58:22 -07:00
Tai Lee
75a4171d20 Merge branch 'master' of github.com:sampsyo/beets into imenem-discogs-search
Conflicts:
	docs/changelog.rst
	docs/plugins/index.rst
2013-05-21 23:27:53 +10:00
Tai Lee
3eb6f8e5eb Add discogs plugin, which extends the autotagger to include results from the discogs database.
This is a refactor of the plugin developed by `imenem`.

- Pass `artist`, `album` and `va_likely` to `candidates()` so that
  plugins don't have to work this out from `items` all over again.
- Pass `artist` and `title` to `item_candidates()`.
- Silence spurious `urllib3` info log lines.
- Use a proper "beets" user agent with `discogs_client`.
- Remove `abstract_search` plugin. It seems unnecessary. How many
  music databases are there? How many will beets support? How much
  common code might there be between them? We can add some abstraction
  if or when more databases are supported.
- Derive more AlbumInfo and TrackInfo properties from discogs Release
  objects, especially album ID so that beets doesn't just use the first
  release and think all subsequent releases are duplicates.
- Add basic documentation, doc strings and code comments.
- Sanitise search query. Remove non-word characters and medium info that
  might filter out good search results.
- Use artist `join` strings from discogs Release object when an album
  or track has multiple artists.
- Don't rely on discogs track position, which is unreliable. But tracks
  are in order, so we can recalculate medium and medium_index as long as
  we can extract a consistent medium across tracks from the position.
- Add "various" as a known signal to indicate various artists.
- Prevent `chroma` plugin from returning a a huge track distance for any
  track that is missing an ID (e.g. all discog tracks).
- `TrackInfo.index` should be the release index (calculated by beets),
  not the medium index (derived from discogs track position).
- Add `AlbumInfo.data_source`. It's "Unknown" by default which is shown
  in red when displaying a suggested or selected match. The built in
  auto tagger sets it to "MusicBrainz" which is shown in green. Anything
  else (e.g. "Discogs") is shown in yellow.
- Remove double spaces from album titles (bad data from Discogs).
2013-05-21 21:16:52 +10:00
Adrian Sampson
f3962e6275 link to the advanced guide from "getting started" 2013-05-19 17:43:10 -07:00
Adrian Sampson
45baa6efe1 first stab at "advanced guide" 2013-05-19 17:35:23 -07:00
Adrian Sampson
90b4092e4f changelog & docs typo fixes for #263 2013-05-19 10:44:35 -07:00
Adrian Sampson
748d8caa64 Merge pull request #263 from madjar/master
Added a -e option to random that makes the distribution even among artists
2013-05-19 10:41:39 -07:00
Adrian Sampson
475228a5e8 fix #281: album art filename respects replace 2013-05-19 10:34:46 -07:00
Adrian Sampson
0bb51e9f1b thanks and doc tweaks for duplicates (#278) 2013-05-17 12:20:27 -07:00
Adrian Sampson
2f442b5677 Merge pull request #278 from pedros/duplicates
Duplicates plugin
2013-05-17 12:15:06 -07:00
Adrian Sampson
1ffc56b85a doc correction and refactoring for #275
Plugin-provided template fields are not available for queries. (Perhaps they
should be, though!)
2013-05-17 12:07:53 -07:00
Adrian Sampson
a6a0256bf9 Merge pull request #276 from pedros/missing
Use newly defined '$missing' template field instead of hardcoded format (-c)
2013-05-17 11:57:12 -07:00
Adrian Sampson
916ceb4b15 changelog and tweaks for #275
I've removed the -p option. The command now always shows plugin-provided
template fields if any are available. We also avoid printing out blank lines
for plugins that don't provide fields.
2013-05-17 11:55:17 -07:00
Adrian Sampson
22044eacac Merge pull request #275 from pedros/show_plugin_fields
Append plugin template fields to 'beet fields' output with -p, --plugins
2013-05-17 11:46:17 -07:00
Adrian Sampson
b8f651fa1a changelog/API docs for #274 2013-05-17 11:44:35 -07:00
Pedro Silva
7031c15418 Initial import of 'duplicates' plugin 2013-05-17 12:47:34 +01:00
Pedro Silva
a48fde9f2c Use newly defined '$missing' template field instead of hardcoded format (-c) 2013-05-15 15:09:00 +01:00
Pedro Silva
4f5faeccac Append plugin template fields to 'beet fields' output with -p, --plugins 2013-05-15 13:41:54 +01:00
Pedro Silva
106ad99556 Perform template field substitution on albums
- adds another traversal through all plugins' template_fields for each
  'evaluate_template' call.
- requires the following idiom (or equivalent):

    @Plugin.template_field(field')
    def _tmpl_field(album):
        """Return stuff.
        """
        if isinstance(album, Album):
            return stuff
2013-05-15 13:05:55 +01:00
Adrian Sampson
a5cb34360d lyrics: fix encoding for Lyrics.com 2013-05-12 12:38:48 -07:00
Adrian Sampson
056cf932d8 docs/changelog for date added (#264) 2013-05-11 13:31:42 -07:00
Lucas Duailibe
5c31d3ac15 Formatting the import time in the view and paths
Added the %format{} template function to output the time to any format supported by time.strftime()
2013-05-11 10:53:43 -03:00
Adrian Sampson
f086fb6fd7 changelog, little style tweak for #272
Changed single-triple quotes to double-triple quotes, just for consistency
with the rest of the codebase.
2013-05-10 22:23:24 -07:00
Adrian Sampson
e1f7027abc Merge branch 'missing' of https://github.com/pedros/beets
Conflicts:
	docs/plugins/index.rst
2013-05-10 22:08:15 -07:00
Pedro Silva
99355e60d4 Synchronize documentation with new parameters and respective behavior 2013-05-10 16:43:36 +01:00
Pedro Silva
6ac86f9f4a Add documentation for missing tracks plugin
Also add link to the documentation plugin to the index
2013-05-10 14:14:58 +01:00
Adrian Sampson
cc13edf49f changelog/docs for range queries #261 2013-05-09 16:13:22 -07:00
Adrian Sampson
b57193fd6c changelog/thanks for #265 2013-05-08 22:58:01 -07:00