Skip to content

2.5.0

Choose a tag to compare

@dmccoystephenson dmccoystephenson released this 03 Oct 01:12
16e2ae3

2.5.0

For a server running v2.4.0, this release makes mutes survive restarts. It also fixes several command and warp-sign problems and adds the plugin version to every usage-reporting event. Config keys, permissions and stored data from v2.4.0 all work unchanged. The only new file is the muted-player list, which the plugin creates and manages itself.

Changes

Muting

  • Muted players now stay muted across server restarts. The list is saved to muted-players.txt in the plugin's data folder when the server shuts down and is loaded again at startup. /de unmute removes a player from the saved list. If the file can't be read at startup, a warning is logged and the file is left untouched, so the mutes stored in it are not overwritten. (#172)

Commands

  • /de label no longer throws an error when your main hand is empty. It now says you must be holding an item, and it gives a clear message for items that can't be renamed. (#168)
  • /de gm with an unknown mode now shows the usage message instead of silently doing nothing. The usage messages for /de gm and /de flyspeed now include the /de prefix. (#168)
  • /de help now shows the double quotes that /de broadcast and /de label need, and says that mutes last until the player is unmuted. (#168, #172)

Warp signs

  • The message shown when placing a warp sign without permission now names the real permission, de.placeWarpSign. (#167)
  • Clicking a warp sign with invalid coordinates now tells the player the coordinates are not valid and logs a warning with the sign's location. Before, the error was written to the console and the player saw nothing. (#167)

Usage reporting

  • Every usage-reporting event now carries the plugin version. Before, only the startup event did. (#171)
  • plugins/trace/config.yml now accepts an optional tags: block, which is added to every event reported by plugins on the server. For example, ci: "true" on a test server keeps its events out of real-installation figures. The file is only created when it is missing, so an existing file won't show the commented example. Add the block by hand if you want it. Disabling usage reporting works exactly as before. (#170, #171)

Upgrade notes

  • Players who are muted when you stop the server to install this version will be unmuted after the upgrade, because v2.4.0 does not save mutes. Mute them again with /de mute once the new version is running. From then on, mutes are kept across restarts.

Version

v2.4.0 → 2.5.0 — MINOR. Mechanical floor from comparing the two jars: PATCH.
Judgment: The muted-player list is now saved to a new file, muted-players.txt, and loaded again at startup (#172). The plugin did not write this data before, and the mechanical check only saw the new class, so this raises the bump to minor. Usage reporting also gains a new feature: optional server-wide tags read from plugins/trace/config.yml (#170, #171). Nothing here warrants major. No existing data format, config key or permission changes meaning, and the /de gm and /de label changes only reject input that previously failed or did nothing. The mechanical check flagged the TraceClient.builder signature change as INFO only, and that class is a vendored internal client, not API that other plugins use.

  • no interface or storage difference observed between the jars
Java API changes (informational — nothing depends on this plugin)
  • public class added: dansplugins.dansessentials.services.MutedPlayersStorage
  • dansplugins.dansessentials.trace.TraceClient: removed/changed public static dansplugins.dansessentials.trace.TraceClient$Builder builder(java.lang.String, java.lang.String);
  • dansplugins.dansessentials.trace.TraceClient: added public static dansplugins.dansessentials.trace.TraceClient$Builder builder(java.lang.String, java.lang.String, java.lang.String);
  • dansplugins.dansessentials.trace.TraceClient: added public static final java.lang.String VERSION;
  • dansplugins.dansessentials.utils.Logger: added public void warn(java.lang.String);

Verification

Verified on a real Spigot server before publication; this release carries the exact jar that was verified.

  • boot gate run: booted twice on a fresh Spigot server running Minecraft 1.19.4 (11 assertions passed).
  • boot gate run: booted twice on a fresh Spigot server running Minecraft 1.21.11 (11 assertions passed).
  • boot gate run: booted twice on a fresh Spigot server running Minecraft 26.2 (11 assertions passed).
  • save-compatibility gate run: data written by v2.4.0 was loaded by this release across two restarts with nothing lost (16 assertions passed).

Install with Dan's Plugin Manager: /dpm get <plugin>. How stable releases are made: Release channels.


drafted by Claude on behalf of Daniel Stephenson