mirror of
https://github.com/beetbox/beets.git
synced 2026-02-27 09:41:51 +01:00
Don't assume all releases know the original year. Use add_ratio() if they do, otherwise apply full penalty with add().
This commit is contained in:
parent
083575314d
commit
3254f2f3b0
1 changed files with 6 additions and 2 deletions
|
|
@ -415,14 +415,18 @@ def distance(items, album_info, mapping):
|
|||
|
||||
# Year.
|
||||
if likelies['year'] and album_info.year:
|
||||
# No penalty for matching release or original year.
|
||||
if likelies['year'] in (album_info.year, album_info.original_year):
|
||||
# No penalty for matching release or original year.
|
||||
dist.add('year', 0.0)
|
||||
else:
|
||||
elif album_info.original_year:
|
||||
# Prefer matchest closest to the release year.
|
||||
diff = abs(likelies['year'] - album_info.year)
|
||||
diff_max = abs(datetime.date.today().year -
|
||||
album_info.original_year)
|
||||
dist.add_ratio('year', diff, diff_max)
|
||||
else:
|
||||
# Full penalty when there is no original year.
|
||||
dist.add('year', 1.0)
|
||||
|
||||
# Prefer earlier releases.
|
||||
if album_info.year and album_info.original_year and \
|
||||
|
|
|
|||
Loading…
Reference in a new issue