This release marked a new cycle of development of the Topper plugin.
Notable Changes
- Use a common template for player-number leaderboard, with improvements like
- Change the default value to
null
instead of0
- Filter out
null
values in the Snapshot Agent
- Change the default value to
- Enable
online
by default - Separated Topper library for more purposes
- Normalize placeholder syntax
- Update to MiniPlaceholders 3.0.0
- de8ef62f - release
- ae96e639 - set only one filter for SnapshotAgent
- c815c18c - add a separated reset-permissions
- 085096d6 - add a way to reset the value if filtered out
- a7de570f - ensure the iterator is synchronous and add more settings for update task
- e2fa1adc - use ConcurrentHashMap for UpdateAgent
- 4c7066fe - prepare for more deformatters
- 09bc82fd - next development
- a9605f9 - only take the plugin to release
- 20350c6 - update the glob in release action to get the plugin
- 18818fa - release
- 8286c6c - common parse-with-exception method
- 46517cc - ignore value if it's the same as the placeholder
- 9c9c5d5 - shade sources
- 96381ea - undeprecate GenericEntryUpdateEvent
- 1adeebc - more precise error message when parsing placeholders
- de51635 - add more details and wiki links about issues when parsing the placeholder
- d4557fb - get all materials and entity types for statistic by default
- 06811bb - move common code in StatisticValueProvider
- d81b138 - support collection of entries in StatisticValueProvider
- 0e55d37 - reorganize the tasks in UpdateAgent to be used in different schedulers
- 65abb75 - mark this as a major version
- 39c0885 - support nationalized string when getting sql values
- 065d3ed - next development
- 866602b - release
- 91b02b8 - final onUpdate on AgentDataHolder
- 48e4f85 - Bump metcalfc/changelog-generator from 4.3.1 to 4.5.0 (#137)
- dae2511 - mark the event as deprecated
- c0b7a1b - optimize imports
- 77596ad - call event from EntryConsumeManager
- 91ba29f - protected method to schedule value on StorageAgent
- a3910c8 - properly get display key for SnapshotQuery
- 2c6773b - correct package for PluginContext
- 59be0b2 - next development
- bb6cdfb - release
- c4ab6c2 - update miniplaceholders usage
- 8c07622 - option to toggle data removal on entry remove
- c7f899b - put a check to ensure that the update task only runs if it's not already updating
- ebe65cc - Bump io.github.miniplaceholders:miniplaceholders-api from 2.2.3 to 2.3.0 (#135)
- 349d483 - more aliases for MiniPlaceholdersValueProvider
- 680f455 - resolve global placeholders
- d31fd97 - get all arguments in minimessage queue to parse as query
- 99f947a - should build in Java 21
- a7dbbe9 - mark as a major version
- aebb91e - add MiniPlaceholders hook... back
- ac2f16a - make QueryManager as Query
- 8db967e - decouple query forward
- fbe8bbf - single ref for Snapshot map
- 482d188 - centralize group name
- 63d6312 - remove entry from storage if it's the default value
- 625d634 - Bump core.version from 4.5.7 to 4.6.0 (#134)
- 558c24d - Bump org.apache.maven.plugins:maven-compiler-plugin (#133)
- 6b37f10 - consume entry on update
- 8cab982 - add EntryConsumeManager
- d7400a9 - display rank
- df71ed9 - option to load storage on entry create
- 96d46d6 - next development
- 502180e - release
- d48c7eb - add NumberStringDeformatter
- 6f9a1de - add method to convert ValueWrapper to Optional
- 156d59f - use switch to get value from ValueProvider
- 0e54d61 - cleanup some useless code in ValueProvider modules
- 1c8d6c3 - mark as a major update
- be515f7 - move ValueProvider to a separated module
- 6391546 - dynamically traverse modules to update project versions
- e88e841 - add ValueState to indicate a value being handled
- 77b43d6 - next development
- 27f4db5 - add top_size query
- e1a6a72 - realize nullability in the query
- a948dae - release
- d72aad8 - static logger in StorageAgent and UpdateAgent
- bff7a1f - remove old placeholder expansion
- e7a80d6 - support ticks in time unit
- 0f29270 - add QueryForwardManager
- 27ae7f4 - add groupingSize to decimal format
- db11919 - add advanced decimal and time format to ValueDisplay
- 496b9c9 - move formatted settings to its own section
- cf84140 - standalone DatabaseConfig
- 7138473 - remove MiniPlaceholders hook
- 8171841 - apply global and player placeholders to MiniPlaceholdersHook
- 62672c0 - add MiniPlaceholders hook
- e877708 - add a workaround for formatted string
- 0e8881c - move common code from PlaceholderValueProvider to NumberStringValueProvider
- 04c0958 - customize separator in SimpleQueryContext
- b530b15 - more adaptive QueryManager
- 57fc8fb - add holder argument to getKeyFromActor
- c2d58e5 - support single holder in QueryManager
- 511a29a - centralize SqlStorageSupplier constructor
- 13b2bb8 - abstract SnapshotAgent
- b06b7c3 - Bump org.jetbrains:annotations from 26.0.1 to 26.0.2 (#131)
- 167f7b4 - add ignore-permission to Spigot plugin
- 547135c - add filter to UpdateAgent
- 85111aa - make standalone DatabaseSetting for more database types
- 0a340fd - modifiable sql type in SimpleValueConverter
- 5a72bcb - just to make sure if there is any breaking change
- 9aa34c6 - next development
- b1b7a7e - release
- 25a50d4 - Update maven-release.yml
- 9339079 - move some connection code to utilize try-with-resource
- 47c180b - use lock when the database is single-threaded only
- 3440263 - add lock to modify sql storage
- 732ffa7 - Revert "try connection per transaction on SQLite"
- 1c439f7 - Revert "move duplicated code in sql storage"
- 79ee0de - move duplicated code in sql storage
- 29c6e91 - commit the table creation
- bab3ea3 - try connection per transaction on SQLite
- 00a3adf - next development
- f28f4ce - release
- f4782d1 - correct some illogical in ComplexValueConverter
- e7645a2 - add builder method in ComplexValueConverter
- 0a2c0af - mark ComplexValueConverter as final
- be19a62 - add ComplexValueConverter
- bca6b48 - no comment on flat file
- d2bb6a5 - add a cache map to StorageAgent
- 0140233 - add StringConverter
- 03ff01d - less confusing naming in ValueConverter
- 8ab17d7 - mark as major update
- 489a010 - more intuitive ValueConverter for DataStorageSupplier
- 8be5337 - Bump org.sonatype.central:central-publishing-maven-plugin (#130)
- 1a741d0 - support commit/rollback in DataStorage
- 58c145c - don't have to check urgent mode when starting saving task
- a347174 - next development
- b821a45 - release
- 1f9b9a8 - use stream to filter null value on save
- c5365b4 - saving on finally
- 0b35532 - remove CompletableFuture from DataStorage
- 540d9c9 - fix incorrect urgent mode in SqlStorageSupplier
- f34caa0 - use INSERT OR IGNORE in SqliteStorageSupplier
- ccd3b36 - change SqlStorageSupplier to support multi statements on save
- d477d0f - get old value when updating DataEntry
- d45a5c4 - move DataEntry methods to DataEntryAgent
- a43cd9c - remove support in StorageAgent
- 3bc52b3 - add remove method in DataStorage
- 267f3a5 - next development
- 3164e65 - release
- 585f742 - relocate other modules as lib to plugin
- 1ede92d - check null when loading from FlatStorageSupplier
- 8c4943c - move storage code to a separated module
- c183658 - Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.11.1 to 3.11.2 (#128)
- 4411b53 - provide converter when constructing data storage
- b302703 - prepare to make a generic DataStorageBuilder
- c68b34f - next development