Skip to content

2.1.0

Choose a tag to compare

@dmccoystephenson dmccoystephenson released this 07 Oct 01:27
df81d06

2.1.0

For a server running v2.0.0 this is a drop-in upgrade with no breaking changes. Usage reporting now also sends a random server ID, so the author can count servers rather than raw events. If reporting is on, the plugin adds a server-id: line to plugins/trace/config.yml on first start. This release also supports Minecraft 26.3.

Changes

Usage reporting

  • Each usage event now includes a random server ID, sent as the tag install. It is generated once with a random UUID and kept as the server-id: line in plugins/trace/config.yml, under a comment explaining what it is. All plugins on the server that report to trace share this one ID. It identifies no person, account or IP address. To get a new one, delete the line. The rest of the file is left exactly as it was (#96)
  • If reporting is turned off (this plugin's usage-reporting.enabled: false, enabled: false in plugins/trace/config.yml, TRACE_USAGE_REPORTING=off or DO_NOT_TRACK=1), no ID is generated, read, written or sent (#96)
  • The startup notice and the comments in config.yml now mention the random server ID (#98)
  • The usage-reporting details link now points to https://danielstephenson.dev/usage-reporting (#100)

Compatibility

  • Added support for Minecraft 26.3 (#99)

Version

v2.0.0 → 2.1.0 — MINOR. Mechanical floor from comparing the two jars: PATCH.
Judgment: Every usage-reporting event now carries a new install tag: a random server ID. When reporting is enabled, the plugin also writes new data to disk by appending a server-id: line to plugins/trace/config.yml. That is new behaviour and new data written, which the mechanical check saw only as added TraceClient API methods. Support for Minecraft 26.3 is also new. Nothing breaks for existing servers: no config keys, commands, permissions or data formats change incompatibly, and every existing opt-out still works and writes nothing. So minor is the right level, not major.

  • no interface or storage difference observed between the jars
Java API changes (informational — nothing depends on this plugin)
  • conquestrecipesystem.trace.TraceClient: added public java.lang.String installId();
  • conquestrecipesystem.trace.TraceClient: added public static java.lang.String installIdFromFile(java.io.File);
  • conquestrecipesystem.trace.TraceClient$Builder: added public conquestrecipesystem.trace.TraceClient$Builder installId(java.lang.String);
  • conquestrecipesystem.trace.TraceClient$Builder: added public conquestrecipesystem.trace.TraceClient$Builder installIdFile(java.io.File);

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).
  • boot gate run: booted twice on a fresh Spigot server running Minecraft 26.3 (11 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