utarwyn / EnderContainers

A modern and customizable Bukkit plugin to divide enderchest into multiple inventories.
https://spigotmc.org/resources/4750/
BSD 3-Clause "New" or "Revised" License
25 stars 14 forks source link

Use migrations to update database schema more easily #174

Open utarwyn opened 2 years ago

utarwyn commented 2 years ago

Is your feature request related to a problem? Please describe. As the plugin will receive more and more features, the database schema is destined to change in future versions and especially v2.3.0. Currently the plugin only creates tables that do not yet exist in the database. BUT it will not be easy to migrate on new versions for servers owners who already have a lot of data.

Describe the solution you'd like The main idea is to create a solution based on https://flywaydb.org with migration files that will be executed at the plugin start when current plugin version is more recent than the one already registered. To do so, we have to save plugin version somewhere (in the config file I think because it already stores that information).

https://github.com/utarwyn/EnderContainers/blob/f4a12954ae18bb9998019fa66598d365c878c486/plugin/src/main/resources/config.yml#L1-L5