beetbox / beetbox/beets

Add month and day penalty types

Open
#3,802 1 comment 0 reactions 0 assignees View on GitHub
feature
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

### Use case

I prefer when an album's metadata includes a full release date rather than only a year, to allow for more granular sorting of releases. Also, anecdotally, I've found that when MusicBrainz has several releases for a particular album, those that include month/day fields tend to have more accurate tags in general. So I'd like beets to generally prefer these.

Currently, beets' `max_rec` config option supports setting a penalty for the absence of a `year` field, but not for `month` or `day`.

### Solution

`month` and `day` options would be available, and would work exactly as the `year` option already does.

### Alternatives

I could add `month`/`day` to the `required` config, but sometimes _all_ of the releases for an album only have a `year`, in which case I'd want to display those matches rather than ignore them.

P.S. Thanks for your continued work on this wonderful project. ❤

Contributor guide

Open the contributing guide

Research direction

Start by locating the existing max_rec handling for the year penalty and any tests covering that configuration. Add matching month and day options with the same behavior as year, then update or add tests showing that missing month/day fields receive their configured penalties.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.