FlatFileDatabaseManager refactor + adding tests part 1

This commit is contained in:
nossr50
2021-04-09 16:45:58 -07:00
parent 323f496420
commit 834ccc946a
16 changed files with 721 additions and 160 deletions

View File

@ -1,4 +1,7 @@
Version 2.1.189
Rewrote how FlatFileDatabase verifies data integrity
Added unit tests for FlatFileDatabaseManager (see notes)
Fixed a bug where FlatFileDatabaseManager didn't properly upgrade older database entries to the newest schema
The setting to disable the mcMMO user block tracker has been moved from our "hidden config" to persistent_data.yml
Added 'mcMMO_Region_System.Enabled' to persistent_data.yml (don't touch this setting unless you know what you are doing)
Fixed a bug that would remove components from death messages when players were killed by mobs (thanks lexikiq)
@ -12,9 +15,9 @@ Version 2.1.189
(API) PrimarySkillType will soon be just an enum with nothing special going on
(API) Deprecated the members of PrimarySkillType use mcMMO::getSkillTools instead, deprecated members will be removed in Tridents & Crossbows (due soon)
(API) Some members of PrimarySkillType were removed and not deprecated (such as the field constants)
Added unit tests for FlatFileDatabaseManager
NOTES:
The tests added for FlatFileDatabase will help make sure bugs don't result in any loss of data
Ultra Permissions is SAFE to use with mcMMO
After getting in contact with the UltraPermissions devs and exhaustive testing, I have concluded that using UltraPermissions is completely safe with mcMMO. The users who had an issue with performance currently have an unknown cause, potentially it is from a plugin using the UltraPermissions API I really can't say without more data. My apologies to the UltraPermissions team for reporting an issue between our two plugins directly, as that is not the case. I would have tested it myself sooner but UltraPermissions was closed source and premium so I wasn't particularly motivated to do so, however I have been given access to the binaries so now I can do all the testing I want if future issues ever arise which I have zero expectations that they will.