Changelog
Release history for InviteMe. Versions follow a date-based scheme: YY.MM.DD.PATCH.
v26.05.18.1 — 2026-05-18
Section titled “v26.05.18.1 — 2026-05-18”- Optimized invite revocation for expired and inactive invites — more efficient cleanup on expiry checks
- Improved
importActionmethod to preserve original timestamps when importing action log entries - Handle duplicate column error gracefully when running database migrations on existing installs
Changed
Section titled “Changed”- Updated Paper API dependency to 1.21.11
- Updated PostgreSQL driver with improved error handling in connection pool
- Migration command now validates arguments before executing and provides clearer error messages
v26.05.18.0 — 2026-05-18
Section titled “v26.05.18.0 — 2026-05-18”- Player Stats Storage — new storage interface tracking XP boost sessions and boost time per player
- JSON, SQLite, and MySQL/PostgreSQL implementations
- Stats visible via
/invite menu→ Self button and/im profile
/im statscommand — server-wide statistics with top inviters ranking- Usage:
/im stats(top 5) or/im stats N(custom count)
- Usage:
- Invite tree command with header message formatting
importActionmethod for action log — supports seeding historical data
Changed
Section titled “Changed”- Build system updated with dynamic version computation from git tags
- Dependency versions pinned in
versions.jsonfor reproducible builds
v26.05.09.0 — 2026-05-09
Section titled “v26.05.09.0 — 2026-05-09”- PostgreSQL support — full parity with MySQL backend using SqlDialect enum
SqlDialect.POSTGRESQLhandlesSERIALvsAUTO_INCREMENTand upsert differences
- HikariCP connection pool — shared pool across MySQL and PostgreSQL backends for efficiency
/im migratecommand — migrate data between backends with zero downtime- Automatic backup: original file renamed to
.migrated - Supports:
sqlite,mysql,postgresql
- Automatic backup: original file renamed to
- Access control mode
plugin— InviteMe takes full control viaAsyncPlayerPreLoginEvent- Set
white-list=falseinserver.propertiesto use - OPs and
invite.adminalways bypass
- Set
- LuckPerms integration — reflection-based, safe if LP not installed
invite.number.Xpermission for per-player limitsgroup-limitsin config for per-group limitsgetPrimaryGroup()for group detection
- PlaceholderAPI expansion —
%inviteme_*%placeholders available
Changed
Section titled “Changed”- Default storage backend changed from
jsontosqlite - Permission
invite.bypass.limitremoved — merged intoinvite.admin InviteCommandandImCommandnow use full dispatcher pattern — each subcommand in its own class
- Whitelist sync properly handles players added outside InviteMe
- Tab completer for
/im logshows correct subcommands
Earlier Versions
Section titled “Earlier Versions”InviteMe was initially developed with JSON storage and a simpler command structure. The 2026 rewrites introduced the multi-backend storage system and LuckPerms integration.
Versioning Scheme
Section titled “Versioning Scheme”Versions follow YY.MM.DD.PATCH:
26— year 202605— month May18— day 18.1— patch number within that day
This makes it easy to see exactly when a version was released.