mopidy / mopidy-mpd

Mopidy extension for controlling playback from MPD clients
https://mopidy.com/ext/mpd/
Apache License 2.0
101 stars 21 forks source link

MPC lsplaylists returns "wrong number of arguments for 'tagtypes'" error #48

Closed gorbit99 closed 2 years ago

gorbit99 commented 2 years ago

Since recently I can't use mpc to query my spotify playlists, because I get the following error:

MPD error: wrong number of arguments for "tagtypes"

I think it's somewhat connected to #47 because that started happening at around the same time as well.

gorbit99 commented 2 years ago

Also, just checked, downgrading from 0.34-1 to 0.33-3 does in fact fix the issue, so there was probably a change in there relating to lsplaylists.

kingosticks commented 2 years ago

These new versions tagtypes with arguments are not supported in MPD 0.19, which is the mega old version of the MPD protocol we support. The MPD documentation lacks any info on what version they are supported from, not that it matters really. Our implementation here is very outdated and we need someone to help with that.

But for this particular issue we could apply some duct tape and just ignore the extra arguments to get things working again. PR welcome - we still don't have a maintainer but I'm happy to merge a fix.

girst commented 2 years ago

I've stubbed out tagtypes {subcommand} in #50. @kingosticks: are you interested in reviewing that?

kingosticks commented 2 years ago

With #50 merged, is this now resolved or do we also need to report support for a higher version of the MPD protocol?

girst commented 2 years ago

This specific issue is fixed, but I wouldn't yet advertise mpd-0.21 support. The warning printed by mpc will not prevent it from working.

For 0.21 support, we still need some commands (mostly regarding 'partitions') and switch the parameters for search* and find* to the newer 'filter' format. I'm working on stubbing out the missing commands, and will tag bug#47 when i'm getting anywhere.

kingosticks commented 2 years ago

That's good news because I agree we can't advertise support we don't have!

I did some work on some of this before and had to make some core changes which I must have lying around somewhere. I'll dig those out and remind myself of the problem. But what you are doing sounds good, thanks!