[SPIGOT-2922] Compatibility-breaking changes to the Bukkit API Created: 16/Dec/16 Updated: 16/Dec/16 Resolved: 16/Dec/16 |
|
Status: | Resolved |
Project: | Spigot |
Component/s: | None |
Affects Version/s: | None |
Fix Version/s: | None |
Type: | Bug | Priority: | Major |
Reporter: | Siguza | Assignee: | Unassigned |
Resolution: | Won't Fix | Votes: | 0 |
Labels: | API, Bukkit, Craftbukkit |
Description |
Since the release of Spigot-1.11, there have been at least two changes to the Bukkit API that completely broke existing code that used it, and which happened without any kind of version bump or deprecation notice. This has now three times lead to the situation that I updated a plugin of mine, only to find that by the time people downloaded it, Spigot had changed underneath it and my plugin was crashing again. As far as I'm aware, back in the Bukkit days compatibility-breaking CraftBukkit changes would always come with a package version bump (I understand that CraftBukkit is not meant to be stable, but still, that's exactly what the package version is for, isn't it?), and compatibility-breaking Bukkit API changes would only happen after the features in question had been marked as deprecated for quite some time. So I'm asking: Is there an official policy on how to handle compatibility-breaking changes in Bukkit and CraftBukkit code? And if so, do the changes I mentioned comply with it? If not, could you please fix that, e.g. by adding back legacy constructors with the old signature? Thanks. |
Comments |
Comment by md_5 [ 16/Dec/16 ] |
Some changes are pretty much impossible to account for changes in backwards compatibility and these are two examples of them. CraftBukkit has absolutely no guarantees to ABI, and the Bukkit changes were done with the justification above. |