beetbox / beetbox/mediafile

mb_albumartistid (and other .single_field() fields) can't be set independently of their plural list

Open
#110 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
120
Forks
41
PR merge metrics
No merged PRs in 30d

Description

In mediafile, `mb_albumartistid = mb_albumartistids.single_field()` shares the plural field's underlying storage rather than being independent. Setting only the singular field, then writing all tags, silently reverts it to `mb_albumartistids[0]` — the untouched plural list re-applies to the same key (reproduced on FLAC/Vorbis).

Same pattern affects: mb_artistid, genre, composer, lyricist, arranger, albumtype, catalognum, language — all defined via `.single_field()`.

I believe that this should respect an override, perform a write-time consistency check, or at the very least a documentation note.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the FLAC/Vorbis case, then trace the mb_albumartistid/mb_albumartistids definitions and the other .single_field() fields listed in the issue. Done means a singular-only assignment is not silently replaced when all tags are written, with the chosen override, consistency check, or documentation behavior made explicit.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.