From 1.x to 2.0.0

Most of the changes are under the hood, they do not affect the API usage.

But, some changes cause a major incompatibility to previous versions.

Subcommands

This change pretty much affects only Kotlin users. The method getSubCommands() has been replaced by the class attribute subCommands. Instances of subcommands will be created only once now, not on every call. This behavior may be reverted by defining a getter which calls a custom method.

Before change:

override fun getSubCommands(): ArrayList<PocketCommand> {
    return arrayListOf(
        ReloadCommand(plugin),
        GuiCommand(plugin),
        NotesCommand(plugin)
    )
}

After change:

override val subCommands = arrayListOf(
    ReloadCommand(plugin),
    GuiCommand(plugin),
    NotesCommand(plugin)
)

Removal of unused/useless API code

UUIDUtils#lookup

The method UUIDUtils.lookup() has been removed, as such a feature is implemented in Bukkit itself. Also, using Bukkit.getOfflinePlayer(name: String) is deprecated, as names are not unique to a user account.

Last updated