Skip to content

chore: standardise repository for TFMC - #1

Merged
ryanbarlow97 merged 1 commit into
mainfrom
chore/standardize
Sep 23, 2026
Merged

ryanbarlow97 merged 1 commit into
mainfrom
chore/standardize

Conversation

@ryanbarlow97

@ryanbarlow97 ryanbarlow97 commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Brings the new Infestations repository in line with the other TFMC plugins.

  • Build: Java 21 / paper-api:1.21.10-R0.1-SNAPSHOT with main-SNAPSHOT and the shared POM layout. The Windows systemPath jars, the sibling-checkout InteractibleFurniture jar and the antrun copy step are removed.
  • Dependencies: TLibs 2.0.1, SimpleFactions 3.0.2 and InteractibleFurniture 0.2.1, the latest releases, installed by the shared installer. MythicMobs 5.8.0-SNAPSHOT comes from ServerAssets 183a187, checked by checksum. Gson and the BungeeCord chat API come from Paper.
  • Code: imports now use the lowercase tlibs, simplefactions and interactiblefurniture packages. The class comment no longer points to the deleted docs/ folder.
  • Docs: removes docs/ (implementation batches, review sign-offs, test checklist). The current behaviour guide is now in TF-Minecraft/Docs.
  • Repository: adds the shared workflows, artifact check, .gitignore, .editorconfig, licence and README.
  • Descriptor: version: '${project.version}' and api-version: '1.21.10'.

Validation

  • mvn clean verify passes locally on Java 21.0.12 / Maven 3.9.11 with the pinned inputs; no unit-test suite.
  • .github/scripts/plugin-artifact.py accepts the runtime JAR; the embedded plugin.yml has the Maven version and api-version: '1.21.10', and the classes are Java 21 bytecode (major 65).
  • The default build prints no compiler warnings. With -Dmaven.compiler.showDeprecation=true, the only warnings left are legacy string UI calls (setDisplayName, ChatColor and similar), which other TFMC plugins also still use.
  • GitHub Build workflow passes with the private inputs downloaded by DEPS_TOKEN.
  • No live server run. Runtime checks are listed in the Docs guide.

Most of the diff is CRLF-to-LF normalisation. Review with whitespace hidden (?w=1).

Found during review, not changed here

  • The whole command requires infestations.admin, so a player with only infestations.admin.reload can't reload.
  • A lure can stay active forever if every committed player logs out past the grace period.
  • Lure mobs that despawn still count as alive, and queued spawns are lost on restart. Either can leave a lure impossible to finish.
  • The logging default is true in code but false in the bundled config.

🤖 Generated with Claude Code

Build on the shared Java 21 / Paper 1.21.10 baseline with the committed
POM layout, pinned TFMC provider releases and checksum-verified private
inputs from ServerAssets. Add the shared build and release workflows,
artifact check, ignore rules, editor settings, licence and README.

Move imports to the current lowercase provider packages, let Maven supply
the plugin version, and normalise line endings to LF. Technical guides now
live in TF-Minecraft/Docs.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@ryanbarlow97
ryanbarlow97 merged commit ad80f13 into main Sep 23, 2026
1 check passed
@ryanbarlow97
ryanbarlow97 deleted the chore/standardize branch September 23, 2026 11:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant