ID lookups should warn or override when they conflict with `match.require` settings
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 31
Description
I have a handfull of albums that Beets fails to recognize, yet that seem to be available in teh MusicBrainz database. That alone isn't the point of this report. Instead, even when I manually specify the MusicBrianz release ID for these albums, Beets stills comes back with an error:
`No matching release found for N tracks.`
I've pasted soem of the ID's in question below, along with links to teh MusicBrainz page and a listing of the corresponding directory.
For reference, my beets config and version are:
```
$ beet --version
beets version 1.3.10
plugins: info, fetchart, copyartifacts, inline, replaygain, duplicates, lastgenre, embedart, importadded, scrub, mbsync, lyrics, chroma, missing
```
### Example 1: 823b4f5a-eae8-47fb-b896-f5ccdfaaf605
Link: https://musicbrainz.org/release/823b4f5a-eae8-47fb-b896-f5ccdfaaf605
Listing:
```
01-Stormtroopin'.flac
02-Free-For-All.flac
03-Cat Scratch Fever.flac
04-I Want to Tell You.flac
05-Take It or Leave It.flac
06-Need You Bad.flac
07-Wango Tango.flac
08-Snakeskin Cowboys.flac
09-Stranglehold.flac
10-Dog Eat Dog.flac
Super Hits.cue
Super Hits.log
Super Hits.m3u
```
Beets Output:
```
$ beet import
Ted Nugent/Super Hits (10 items)
Finding tags for album "Ted Nugent - Super Hits".
Candidates:
1. Ted Nugent - Collections (58.0%) (tracks, id, album) (CD, 2006, BMG)
2. Ted Nugent - Great Gonzos: The Best of Ted Nugent (41.2%) (tracks, id, album) (CD, 1981, US, Epic)
3. Ted Nugent - Great Gonzos: The Best of Ted Nugent (39.6%) (tracks, id, album, ...) (CD, 1992, XE, Epic)
4. Ted Nugent - Little Miss Dangerous (23.8%) (tracks, id, album) (CD, 1986, US, Atlantic)
# selection (default 1), Skip, Use as-is, as Tracks, Group albums,
Enter search, enter Id, aBort? I
Enter release ID: 823b4f5a-eae8-47fb-b896-f5ccdfaaf605
No matching release found for 10 tracks.
For help, see: http://beets.readthedocs.org/en/latest/faq.html#nomatch
[U]se as-is, as Tracks, Group albums, Skip, Enter search, enter Id, aBort? S
```
### Example 2: d04a5b22-7fc2-41b2-b2e4-b0f178826a78
Link: https://musicbrainz.org/release/d04a5b22-7fc2-41b2-b2e4-b0f178826a78
Listing:
```
01 - Angels From the Realms of Glory.flac
02 - Joy of Mans Desiring.flac
03 - God Rest Ye Merry, Gentlemen.flac
04 - Here We Come AWassailing.flac
05 - Hark! The Herald Angels Sing.flac
06 - We Wish You a Merry Christmas.flac
07 - Desk the Halls.flac
08 - The First Noel.flac
09 - I Wonder as I Wander.flac
10 - Greensleeves.flac
11 - Good King Wenceslas.flac
12 - I Saw Three Ships.flac
13 - We Three Kings.flac
```
Beets Output:
```
$ beet import
Celtic Christmas (13 items)
Correcting tags from:
Musical Reflections - Celtic Christmas
To:
Greg Joy and Mark Bracken - A Magical Celtic Christmas
URL:
http://musicbrainz.org/release/77586a20-d4e8-420f-9c38-a5d918c8b0c0
(Similarity: 29.4%) (tracks, id, artist, album, country, year) (CD, 1999, CA, Ancient Echoes Music)
* Angels From the Realms of Glory (3:25) -> O Come, O Come Emmanuel (5:45) (id, title, length)
* God Rest Ye Merry, Gentlemen (#3) (1:43) -> God Rest Ye Merry, Gentlemen (#2) (4:10) (id, length, index)
* The First Noel (#8) (3:57) -> The First Noel (#3) (3:38) (id, index, length)
* Here We Come A'Wassailing (2:48) -> Hey Ho, Nobody's Home (3:13) (id, title, length)
* Greensleeves (#10) -> Away In A Manger (#5) (id, title, index)
* I Wonder as I Wander (#9) -> I Wonder As I Wander (#6) (id, index)
* I Saw Three Ships (#12) (3:18) -> St. Basil's Hymn (#7) (3:43) (id, title, index, length)
* Desk the Halls (#7) (2:44) -> Deck The Halls (#8) (2:33) (id, index, title, length)
* We Three Kings (#13) (2:59) -> We Three Kings of Orient Are (#9) (4:24) (id, length, title, index)
* We Wish You a Merry Christmas (#6) (2:58) -> Guadété (#10) (2:46) (id, title, index, length)
* Good King Wenceslas -> Entre le bœuf et l'âne gris (id, title)
* Hark! The Herald Angels Sing (#5) (4:38) -> Silent Night (#12) (4:49) (id, title, index, length)
* Joy of Man's Desiring (#2) -> Coventry Carol (#13) (id, title, index)
Apply, More candidates, Skip, Use as-is, as Tracks, Group albums,
Enter search, enter Id, aBort? I
Enter release ID: d04a5b22-7fc2-41b2-b2e4-b0f178826a78
No matching release found for 13 tracks.
For help, see: http://beets.readthedocs.org/en/latest/faq.html#nomatch
[U]se as-is, as Tracks, Group albums, Skip, Enter search, enter Id, aBort? S
```
Thoughts?
Contributor guide
Research direction
Reproduce the examples with `beet import`, especially ID entry for the two MusicBrainz releases, and inspect how the configured `match.require` settings affect that path. Done means an explicit, tested behavior when a supplied release ID conflicts with those requirements, either warning the user or allowing an override.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100