Simon Chopin
bb964a7c47
autotag: Fill the blanks when ordering incomplete album
...
In the function order_items, instead of automatically reject the
canonical candidate if it has more tracks, the function still tries to
find matches for the tracks amongst the items, and otherwise uses None
to fill the void in order to keep the information about the track
numbers
2011-11-22 13:47:36 +01:00
Simon Chopin
4dc4025b5f
autotag: Can now compute the distance for incomplete albums
...
If the user has some songs from a specific album, but not all of them,
the real solution is immediately discarded. This commit is the first of a
series that will implement support for these incomplete albums.
The point of this patch is to make sure missing commits are taken into
account when calculating the distance between an album and its canonical
data.
Note that in order not to break API compatibility, the album_distance
call for the plugins receives a purged version of both the items and the
album info, resulting in some potential accuracy if the plugin bases
itself on the index of a track in album_info.tracks.
2011-11-22 13:47:35 +01:00
Adrian Sampson
78dca315d4
slightly clean up mtime feature; changelog mention
2011-11-22 00:11:45 -08:00
Jos van der Til
f150d76b55
Handled the case where file_mtime was changed, but no metadata was changed
...
--HG--
extra : transplant_source : %D0%DB%B1r%1D%CAh%23%3D%0C%E0%90%21%CA%7B%97%CE%F0u%19
2011-11-21 20:41:43 +01:00
Jos van der Til
2c81ee736c
Implemented file modified time tracking to beets.
...
Only files which were modified after beets checked them will be checked again.
Implements feature request #227
--HG--
extra : transplant_source : K%F1d%C5%B1%1F%CA%AB%95ck%8C%AC%25m%F0%26%E4%9DB
2011-11-21 19:51:16 +01:00
Adrian Sampson
e8924cc7bf
check for label presence (actually fixes #254 this time)
2011-11-21 23:27:12 -08:00
Adrian Sampson
6cd157c15f
fix duplicate log messages caused by py-mb-ngs
2011-11-19 18:41:50 -08:00
Adrian Sampson
2f4b64a768
check for label in label info from MB ( fixes #254 )
2011-11-19 18:05:03 -08:00
Adrian Sampson
55d7869adc
remove subscripting of info objects in candidate menu ( fixes #253 )
2011-11-19 17:59:47 -08:00
Adrian Sampson
99bb4df94b
check for releases in acoustid result ( fixes #252 )
2011-11-19 17:55:19 -08:00
Jos van der Til
25b67d7c27
Fixes KeyError ['type'] error
2011-11-20 00:41:13 +01:00
Adrian Sampson
31af2c498e
request track artist credits from MusicBrainz (for VA releases)
2011-11-17 17:37:35 -08:00
Adrian Sampson
3f4c985f3d
add python-musicbrainz-ngs package to setup.py
2011-11-14 10:53:05 -08:00
Adrian Sampson
5965b37f51
skip (configurable) clutter filenames when importing
2011-11-13 17:14:40 -08:00
Adrian Sampson
02402545e0
get original release date for MB release group ( #65 )
2011-11-13 16:30:49 -08:00
Adrian Sampson
1219c9c0fb
remove some dead code from replaygain
2011-11-13 15:54:08 -08:00
Adrian Sampson
d63924b142
docs for replaygain plugin ( #248 )
2011-11-13 15:51:11 -08:00
Adrian Sampson
b614e97964
Merge pull request #12 from Lugoues/master
...
ReplayGain plugin
2011-11-13 15:23:24 -08:00
Peter B
6b3365303a
-moved replaygain plugin from Lugoues/beets-replaygain into beets core
...
-moved output to debug messages
2011-11-13 17:15:32 -05:00
Adrian Sampson
7e627c5e57
decode pathnames before formatting them ( #232 )
2011-11-13 10:10:19 -08:00
Adrian Sampson
bfb8b443ff
beginning of ReplayGain fields in MediaFile
2011-11-12 21:23:54 -08:00
Adrian Sampson
4f2fe61ddc
make some unicode types explicit (for #232 )
2011-11-12 16:45:56 -08:00
Adrian Sampson
f2bb220f5a
chroma plugin (for acoustid fingerprinting) ( #152 )
...
--HG--
rename : docs/plugins/lastid.rst => docs/plugins/chroma.rst
2011-11-12 15:33:00 -08:00
Adrian Sampson
1085d14e9e
special-case !!! (fixes regression)
2011-11-02 21:00:32 -07:00
Adrian Sampson
11d218b393
customize user agent for talking to MB
2011-11-02 19:44:27 -07:00
Adrian Sampson
adbfd06682
embed python-musicbrainz-ngs; beets is now on /ws/2
2011-10-23 18:20:01 -07:00
Adrian Sampson
604a7d5aa0
removed basically unused Last.fm/MBID logic
2011-10-23 16:01:55 -07:00
Adrian Sampson
95f38dbe52
"info dictionaries" replaced with AlbumInfo and TrackInfo
2011-10-23 14:12:13 -07:00
Adrian Sampson
de2ee7e447
still refactoring: unify two styles of metadata search
2011-10-23 12:20:59 -07:00
Adrian Sampson
5ab92fe853
fix outdated imports
2011-10-11 19:36:16 -07:00
Adrian Sampson
1e88b9ea8d
fix storing of genres after item import
2011-10-11 10:20:43 -07:00
Adrian Sampson
064a0432f1
further refactoring: abstract source from matching logic
...
--HG--
rename : beets/autotag/model.py => beets/autotag/hooks.py
2011-10-10 21:31:47 -07:00
Adrian Sampson
ee78391f4f
autotag refactoring in preparation for interface changes
2011-10-10 18:19:24 -07:00
kraymer
9fd10c0186
add genres canonicalization: when a last.fm tag is found but rejected (because not in user whitelist), try to found a
...
parent tag that is accepted
--HG--
extra : transplant_source : %C6%F2%F9%EDY%C4%1B%FD%BDV/%E5%041I%CB4%00%0A%07
2011-10-11 00:16:57 +02:00
Adrian Sampson
460f0bd149
use track title over recording title ( #268 )
2011-11-30 23:40:28 -08:00
Adrian Sampson
dae2805152
use artist credit phrases for multi-artist albums ( #269 )
2011-11-30 20:55:34 -08:00
Adrian Sampson
62a63d8673
merge
2011-11-30 20:39:45 -08:00
Adrian Sampson
780e4443ef
case-insensitive ID3 "desc" field matching
2011-11-29 12:22:52 -08:00
Adrian Sampson
9a1d43d156
prevent albums_in_dir from yielding empty albums ( #265 )
...
This regression was introduced with the album collapsing feature. We need to
check whether the items array is empty before yielding every time.
2011-11-29 11:36:33 -08:00
Adrian Sampson
948f7effd2
fix logging of unicode pathnames
...
(reported by HMS on IRC today)
2011-11-28 16:06:33 -08:00
Adrian Sampson
1ba4d74a75
use better default paths on Windows ( #241 )
2011-11-27 23:33:11 -08:00
Adrian Sampson
d805401b23
simplifications afforded by eager result iterators ( #261 )
2011-11-27 22:35:19 -08:00
Adrian Sampson
bcc348f018
make result iterators query the database eagerly ( #261 )
...
Previously, ResultIterators would query the database lazily. Specifically, they
would only fetch a row from the underlying cursor when an Item was pulled from
the iterator. This was a performance optimization. However, it was causing
endless headaches due to SQLite's locking policy: as long as the cursor is
"open", it holds a reader lock. This led to many hard-to-diagnose problems when
trying to acquire a writer lock. This solution may require a little more memory,
but it should put an end to this kind of bug for good.
2011-11-27 22:29:32 -08:00
Adrian Sampson
35d1f2420b
document multi-disc album collapsing ( #42 )
2011-11-26 15:59:30 -08:00
Adrian Sampson
450115358d
multi-disc album collapsing based on heuristics ( #42 )
2011-11-26 15:43:26 -08:00
Adrian Sampson
814370e647
substitute " characters ( #249 )
2011-11-26 14:37:15 -08:00
Adrian Sampson
8374a86fd6
include manpages in source distribution packages ( #258 )
2011-11-26 12:28:04 -08:00
Adrian Sampson
70c0a90793
manpage-ify the reference docs ( #258 )
2011-11-23 23:43:51 -08:00
Adrian Sampson
a57d57bbb1
exclude .DS_Store from source distribution
2011-11-23 19:03:06 -08:00
Adrian Sampson
6f5beff8e0
use non-minified JavaScript libraries ( #259 )
2011-11-23 18:26:08 -08:00