bpd: support short form of list command for albums - #3215
Conversation
sampsyo
left a comment
There was a problem hiding this comment.
Looks great! ✨ Thanks for making both of these changes. I just left one comment inline about mentioning that this seems to be a nonstandard extension…
Some clients list the albums belonging to an artist by issuing the command `list album <ARTIST NAME>`. This change inserts the tag `artist` before the artist name so that this succeeds. Fixes #3007
|
Just to note though that the MPD developer has indicated that the MPD protocol docs are not complete and that the software should be used as a reference to answer any questions. I don't think this is non-standard behaviour, just an undocumented part of the protocol that clients were already relying on. The MPD query syntax was overhauled in 0.21, so I think this syntax is only still supported by MPD for backwards-compatibility. It might even be that the clients stop issuing these type of queries once we start claiming to be a more modern version of MPD. |
|
Got it; that makes sense! In that case, I suppose it's not shocking that the real-world usage would differ from the docs. Thanks for clarifying. |
Some clients list the albums belonging to an artist by issuing the command
list album <ARTIST NAME>. This change inserts the tagartistbefore the artist name so that this succeeds. Fixes #3007.I confirmed the behaviour with the current MPD. It gave a rather helpful error message
ACK [2@0] {list} should be "Album" for 3 argumentsthat shows that the shorter version is only for getting the albums of an artist.A small unrelated change is to address a minor issue where if clients listed all album artists the first result would be blank (due to not all items in beets' database having album artist tags). We just skip any blank responses for the specific case of listing all unique values of a tag.