-
Notifications
You must be signed in to change notification settings - Fork 42
Changes in LibertyBans 1.0.0
A248 edited this page Dec 11, 2021
·
10 revisions
This is a formal change-log of changes made in LibertyBans 1.0.0. It notes all manners of changes, including breaking changes; technically-detailed, little-mentioned changes which are invisible to the user; sweeping feature additions, and in-depth descriptions thereof; design and architectural decisions, and various minor matters.
If you are interested in a guide for upgrading to LibertyBans 0.8.x to 1.0.0, which focuses on breaking changes and their impact to you,
- Permissions have been refactored and made into a logically intuitive pattern.
- Permission messages have been re-organized using
PunishmentPermissionSection
, which is used consistently for each punishment type with regard to punishment additions and removals. - Compatibility is removed with a bugged duration permissions format from LibertyBans 0.7.6
- MariaDB 10.2 and MySQL 5.7 are no longer supported.
- The
playerOrAddress
option in the messages.yml is nowplayer-or-address
,permission.command
is nowpermission.uuid
in several places, andbanList
andmuteList
becomeban-list
andmute-list
- The schema history for 1.0.0 is made anew, so older versions like 0.8.2 will fail to use the new database. To ensure seamless transition of existing data, a Java-based Flyway migration will exist in LibertyBans 1.0.0, which will detect existing 0.8.2 tables and transfer their data to the new tables. The Java-based migration will be removed in LibertyBans 1.1.0; Java-based migrations do not use checksums in the same manner as normal Flyway migrations.
- All SQL queries are rewritten to use JOOQ. The build runs JOOQ's code generation. This change enables PostgreSQL compatibility, as queries previously used back-ticks.
- Integration tests now start instances of PostgreSQL in addition to MariaDB.
- Flyway is updated to 8.x
- The event scheduler feature for MySQL/MariaDB has been removed. Its marginal benefit does not justify the maintenance cost.
- Added accepted value 'MYSQL' for
rdms-vendor
and require MySQL to be distinguished from MariaDB. - A new victim type,
VictimType.COMPOSITE
/CompositeVictim
, has been added. - The toString(), hashCode(), and equals() implementations in PlayerVictim and AddressVictim have been changed for consistency's sake.
- Configuration
- Advanced Topics / For Developers
- Relations to other software
- Comparison to Other Plugins