This release provides several changes and improvements for the code itself and plugin's performance, as well many more details.
This version also make changes to the current menus' configurations, it is recommended to make backups before updating to prevent data-corruption or errors due to missing-fields.
Full release changelog and changes-registry: https://github.com/aivruu/teams/releases/latest
Features
- Implemented update-checker and notifier for player about new plugin releases.
- Remade configuration-system to improve reload-process and reduce methods in some classes, all configuration-containers were encapsulated into a single-class
ConfigurationManager
,
Changes
- Some classes were renamed to a more-appropriate name according to their package (Major).
- Removed some enum-constants from
ModificationContext
as they are no longer used (Major). - Now
handleClickLogic(...)
method will return a value-object with information about the clicked-item (only if item is valid, or is notAIR
), this also reuses theItemMeta
for the item (to avoid repeated-creation when calls to super-class and implementations) (Major). - Removed deprecated-methods for
PlayerAggregateRoot
class (Major). - Removed
TagModifierService
and adaptTagModificationProcessor
for changes, and input-processing, and move most-logic to processor's implementation (Major). - Reused
ItemStack
references when a menu-item will be used through multiple-slots. - Included more-abstractions, and define duplicated-logic into utility-classes for menu-items and reduce boilerplate-code on menus-implementations.
- Re-structured infrastructure-logic, common-logic between infrastructure-implementations was moved into abstractions depending on infrastructure-type.
- Tried to improve readability by using switch-block in
InfrastructureRepositoryController#selectAndInitialize
. - Now when retrieving a repository's information (if the interface-contract permits it), a "viewer" collection will be returned instead of original cache-collection to avoid possible non-desired data-management by thirds.
- Now tag's information only will be saved if they were modified.
- ...
Fixes
- Exception due to access to a placeholder-hook's implementation when soft-dependency is not available.
- Exception when saving player's information due to a incorrect null-check for
selected-tag
field (for JSON infrastructure) .
This release provides several changes onto the project-structuration and code-readability, as well new features.
Features
- Implemented MariaDB storage support. -
21518e2
36b5011
- Now when using
edit
ordelete
subcommands, they will provide tab-completion for in that moment cached tags. -57495b1
Changes
- Now the method
MongoClientHelper#buildClient
will check if the mongo-client is already initialized before build it. -ec82746
- Now when handling JSON serialization/deserialization the
null
values will be serialized directly, instead of using empty-strings. -30e89a5
- Now
PlaceholderHook
implementations return tags' visual-information directly from thePacketAdaptationContract
, and they'll return null only if the placeholder is not valid. -16157d5
521757a
- Any cached
TagAggregateRoot
will be saved post cache-deletion only if removal-cause wasEXPIRED
. -7f1de38
Fixes
- Duplicated data-row when aggregate-root saving for MongoDB implementations. -
d7ebd8c
Features
- Added support for
PlaceholderAPI
andMiniPlaceholders
plugins, as well, legacy-chars parsing for valid conversion to modern component. - Added own plugin's extensions for both placeholders-plugins, check its placeholders here.
- Reduced considerably plugin's jar-file size to aprox
150 KB
.
Changes
Major
- Removed library used for plugin's menus-handling in favor of a new and own system the plugin uses for it.
Minor
- Improved small-parts of the plugin's code.
Features
- Now the tags can be configured with an specific color.
- Implemented edit-mode through menu and chat-input for tag's properties modification.
Changes
Major
- Now the TagPropertyChangeEvent event will provide only the tag's id and the modification-context.
- Implemented async-reload function for the plugin's configuration-files.
- Improved code's quality, delegated non-implemented-by-all-subclasses methods to specified interfaces.
Minor
- Now the TagModifierService's methods for prefix and suffix modification will check for both values' nullability before content-checking.
- Renamed modify sub-command to edit.
- Removed unnecessary calls in PacketAdaptationModule#createTeam for team's properties-setup (which have to check again-and-again if the team exists), now it uses directly the
PlayerTeam
reference for the properties-configuring. - Fixed duplicated-documentation at package tag.application of the api sub-project.