mopidy-mpd
mopidy-mpd copied to clipboard
Incompabilities with MPD protocol v0.19
It looks like we missed a few changes in version 0.19 of the MPD protocol in https://github.com/mopidy/mopidy/pull/1213. Below is the entire list of protocol changes taken from MPD's 0.19 (2014/10/10) changelog:
- [x] new commands "addtagid", "cleartagid", "listfiles", "listmounts", "listneighbors", "mount", "rangeid", "unmount"
- [ ] "lsinfo" and "readcomments" allowed for remote files
- [x] "listneighbors" lists file servers on the local network
- [x] "playlistadd" supports file:///
- [ ] "idle" with unrecognized event name fails
- [ ] "list" on album artist falls back to the artist tag
- [ ] "list" and "count" allow grouping
- [ ] new "search"/"find" filter "modified-since"
- [ ] "seek*" allows fractional position
- [ ] close connection after syntax error
The new grouping functionality for list is being used by MPDroid and was originally reported in https://github.com/mopidy/mopidy/issues/1314.
- [ ] sticker database
We also have an outstanding TODO for readcomments to add some tests before not implementing but I don't think the MPD protocol change to allow usage with remote files really applies to us here.
We could also consider making the version we report a config option. That way you could downgrade if you run into issues without code changes. Of course this might just be confusing for end users.
We could also consider making the version we report a config option
Wouldn't that need additional code? I mean, supporting multiple versions of a protocoll usually is complicated, too.
Anyway, I would love to see this issue fixed because it seems to make MPDroid (MPD client for Android) unusable with Mopidy, see https://github.com/mopidy/mopidy/issues/1314 and https://github.com/mopidy/mopidy/issues/1246.
It'd need a small amount of code now to implement such a config option but I think the point is that it'd save end users having to hack the protocol version as they may currently do.
Implementing the real fix is a bit tricky in some places and considerably more work. I had a branch implementing 'group by' but I ended up needing to change Mopidy's core API and then consequently needed to patch some of the backend extensions. Perhaps there's a simple way to avoid all that if someone has the motivation to get into it.
As well as GROUP BY support, we should try and get all of these into v3.0. My hacked branch for grouping support is at https://github.com/kingosticks/mopidy/tree/mpd/group_by
Shouldn't stickers also be a part of this?
For me, it's very essential for organizing my music.
Yes, ideally, but AFAIK it's not a widely used feature so we'll definitely need someone to take that on. I think it was implemented back in v0.15!