You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Main code:
- InvEconomy: drop redundant @deprecated from the Vault interface overrides
(suppress the unavoidable deprecation/removal warnings at class level),
extract duplicated debug literals into constants, and replace nested
ternaries in debug routing with a routeSuffix() helper.
- Store: merge nested if in island-key migration; replace if/containsKey in
getStat UNTYPED branch with Optional.ifPresent.
- Remove unused import in InvSwitcherPladdon.
Tests:
- Remove the 'public' modifier from JUnit 5 test classes and annotated
methods (S5786).
- Add assertDoesNotThrow assertions to four clear-stored tests that had none.
- Remove redundant local Island mocks that shadowed the @mock field.
- Remove unused 'server' locals, unused imports, and unnecessary
'throws Exception' declarations.
Left intentionally: S110 (command class depth is inherent to BentoBox's
CompositeCommand hierarchy), S3776 (cognitive complexity on core inventory
methods - refactoring risks regressions), and S5738 (calls to deprecated
Bukkit.getOfflinePlayer required to implement Vault's name-based methods).
All 124 tests pass.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.19.0 is a follow-up to the 1.18.0 per-world economy release. It fixes two issues that stopped the new economy from working cleanly in a common setup. InvSwitcher now functions as a true **standalone economy** — you no longer need a separate economy plugin such as EssentialsX for it to take effect — and admin economy commands now report the **correct balance for offline players** instead of a stale value.
4
+
5
+
## ✨ Highlights
6
+
7
+
### 🐛 Standalone economy now works on its own
8
+
InvSwitcher registers its own per-world Vault economy, but BentoBox hooks Vault during its early startup, *before* addons enable. When InvSwitcher was the only economy on the server, that early hook found nothing and was discarded, so BentoBox's `getVault()` stayed empty — and economy-dependent addons such as **Bank** disabled themselves with "Vault is required" even though a working per-world economy was present. InvSwitcher now registers a fresh Vault hook with BentoBox once its provider is live, so it works as the server's only economy.
9
+
10
+
> Companion framework PRs harden this further: [BentoBox #2995](https://github.com/BentoBoxWorld/BentoBox/pull/2995) retries the Vault hook after addons enable, and [Bank #67](https://github.com/BentoBoxWorld/Bank/pull/67) retries before disabling.
11
+
12
+
### 🐛 Correct balance reported for offline economy transactions
13
+
Admin `eco give`, `eco set`, and `eco take` on an offline player reported a stale balance — for example "New balance: 0.00" right after giving 2,000. The money was always stored correctly, but the confirmation message re-read the balance from the database before the asynchronous save had flushed, returning the pre-transaction value. The commands now report the authoritative balance returned by the transaction itself.
14
+
15
+
This release also hardens the underlying offline read-after-write path: offline saves are tracked while in flight so two rapid sequential transactions on the same offline player can no longer load independent stale copies and lose an update — without blocking the main thread or caching offline players indefinitely.
16
+
17
+
## ⚙️ Compatibility
18
+
19
+
✔️ BentoBox 3.17.0
20
+
✔️ Paper Minecraft 1.21.5 – 26.1.2
21
+
✔️ Java 21
22
+
23
+
## 📥 How to update
24
+
1. Take backups of your server, for safety.
25
+
2. Stop the server.
26
+
3. Drop the new InvSwitcher jar into the addons folder and remove the old one.
27
+
4. Restart the server.
28
+
5. You should be good to go!
29
+
30
+
## What's Changed
31
+
* 🐛 Register a fresh Vault hook so InvSwitcher works as a standalone economy by @tastybento in https://github.com/BentoBoxWorld/InvSwitcher/commit/d929649
32
+
* 🐛 Report offline economy balances correctly and harden offline saves by @tastybento in https://github.com/BentoBoxWorld/InvSwitcher/commit/a15c645
33
+
* Add MC 26.1.2 to Modrinth game-versions by @tastybento in https://github.com/BentoBoxWorld/InvSwitcher/pull/52
0 commit comments