Bug Fixes
- Fixed date parsing error for timestamps with UTC timezone indicator (Z suffix)
- Fixed database migration to preserve member permissions during upgrade
- Fixed migration scripts to properly handle V1 to V2 upgrades without data loss
Features
- Complete Role Management System - Added a comprehensive role system with customizable claim roles, including create, edit, rename, and delete capabilities
- Role Priority System - Roles now have configurable priorities that determine member hierarchy and permissions
- Role Permission Management - Each role can have individual permissions assigned through a dedicated GUI
- Member Role Assignment - Members can be assigned to custom roles with Shift+Click promotion/demotion in the member list
- Role List Menu - New menu to view and manage all claim roles with their permissions
- Role Permissions Menu - Dedicated menu to configure individual role permissions
- Custom Role Configuration - Added roles.yml configuration file for defining default and custom roles with permissions
- Role Rename Functionality - Added ability to rename custom roles through an anvil input menu
- Runtime Dependency Loading - Added dynamic loading for jOOQ, R2DBC, and Reactive Streams dependencies
Bug Fixes
- Fixed database error when deleting roles that have members assigned
- Fixed issue where removing permissions from roles was not working correctly
- Fixed null safety issues when assigning roles to members
Improvements
- Split generic role update into dedicated commands for better single responsibility
- Added V2 database migrations for MySQL, PostgreSQL, and SQLite
- Standardized internal method calls in repositories
- Replaced direct Bukkit API calls with PlayerFacade for better architecture
Configuration Changes
- Added roles.yml for role configuration
- Updated messages.yml with new role-related messages
- Added new menu configurations: claim_role_list.yml, claim_role_perms.yml, claim_role_create.yml, claim_role_rename.yml
