Remove nameplate functionality from rpk-characters-bukkit - #6
Merged
Conversation
Removing the nameplate functionality removed the module's only use of ProtocolLib, but plugin.yml still advertised it as an optional dependency. Harmless at runtime, inaccurate as a declaration. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Member
Author
|
Self-review rubric:
One thing I want a reviewer's eye on rather than asserting myself: this removes a user-facing feature. Any server currently running this fork with Recommendation: merge. Green anchor, scope matches the issue, and the divergence from upstream is one line and declared. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ports upstream PR RP-Kit#669 into this fork, resolving the last compile error blocking the build.
This is not my design decision — it is the upstream maintainer's. On RP-Kit#666,
renbinden(project owner) ruled:Upstream PR RP-Kit#669 (dmccoystephenson, 2024-07-10, still open) implements that. Cherry-picked here as commit
73fa53a9, preserving authorship.The alternative — disambiguating the
PlayerInfoDataconstructor call to keep the feature — was deliberately not taken: it contradicts the maintainer's direction, and choosing between the two 7-argument overloads has runtime implications on a code path that cannot be exercised without a live Minecraft server.What this removes
Protocol.ktin its entirety (122 lines) plus its call sites — 208 deletions across 8 files, exactly matching upstream RP-Kit#669:protocol/Protocol.kt— deletedRPKCharactersBukkit.kt,RPKCharacterServiceImpl.kt,CharacterSetNameCommand.kt,PlayerJoinListener.kt,CharacterHandler.kt— call sites removedbuild.gradle— ProtocolLib dependency droppedconfig.yml— the associated key removedOne deliberate divergence from upstream RP-Kit#669
plugin.yml: dropped the now-deadProtocolLibsoftdepend (+1 file, 1 deletion beyond the cherry-pick).Upstream RP-Kit#669 removes every use of ProtocolLib but leaves
softdepend: [..., ProtocolLib]in place, so the module would still advertise an optional dependency on a library it no longer touches. Harmless at runtime, but inaccurate as a declaration and exactly the kind of doc drift worth not importing. Called out here rather than folded in silently.Conflict resolution
The cherry-pick conflicted in
rpk-characters-bukkit/build.gradle: this fork had just bumped PlaceholderAPI to 2.11.7 (#3), while upstream RP-Kit#669 predates that and still carries 2.11.2. Resolved by keeping 2.11.7 (the version that actually resolves) and taking RP-Kit#669's removal of the ProtocolLib line. Both intents preserved.Anchor verdict
UNVERIFIED locally — no JDK 17 on the development device, so
./gradlewcannot produce a signal there. CI is the anchor; its run on this PR is the real verdict, and this PR exists specifically to turn it green.Test plan
rpk-characters-bukkitRP-Kit/RPKit#669 exactly — 8 files, 0 additions, 208 deletionsProtocol.ktdeleted; no remaining reference tobukkit.protocol,ProtocolLibrary, orprotocolManagerin the module (the sole hit is a pre-existing commented-out line atRPKCharactersBukkit.kt:213, left untouched as out of scope)plugin.ymlparses as valid YAML once the@version@Gradle token is substituted;softdependis now['PlaceholderAPI']nameplatehits inrpk-monsters-bukkitare an unrelated monster-nameplate feature in a different module, untouchedrepo.propertiesuntouchedrpk-characters-bukkit— the module that has been failingDo-not-auto-merge
Modifies
**/plugin.ymland**/build.gradle, both on the do-not-auto-merge list, and deletes well over 50 lines from a single file. Left for human review.Closes #5