[Request] Backwards Compatibility Issues?
unlucku opened this issue ยท 3 comments
Hello!
I have been using this plugin for a week now, and I must say it is very helpful.
But, since v5/UUID update, servers not on 1.7.10 can't use the plugin. I have tried it on 1.6.4 and I get a database save error regarding uuids. But on 1.7.10 it works fine.
Right now I am using v4.0 for 1.7.10/1.6.4, it has some bugs but it gets the job done
What I recommend
Add a UUIDs off option to turn off UUIDs to allow for backwards compatibility.
This will be extremely helpful to older modded serverz who want to stay with the lastest update.
P.S.
I recommend posting this on spigot.org and adding that it has cauldron support (I tested on 1.6.4/1.7.10)
This won't be possible as making UUIDs optional will completely change the data structure. Moving forward, all users have one, as will all future server protocol versions.
1.6 clients and below do not send a UUID on joining the server, which is why v5 is not compatible.
I took the decision to support only 1.7+ versions when refactoring for v5, to reduce maintenance issues within the code base.
I understand running an older modded server is a pain (we only shut our tekkit lite server down at the beginning of the year which was running 1.4), but adding such a feature will require a massive rewrite which I simply don't have time to do, especially for such few benefits.
As a work around, run two different versions, v4 on the 1.6 server, and v5 on the 1.7+ servers. If you need them to sync and you're handy with Java, you could create a separate plugin which listens for v5 and inserts them into the v4 database, and vice versa. Alternatively, if you're handy with SQL you could probably achieve the same goal with triggers within your MySQL database.
As for spigot.org, I don't agree with selling plugins as the community was founded upon free open source contributions, and there is no benefit for the plugin to upload it there as it will require more time/maintenance in terms of support and uploading new versions etc.