Draft
Fix compilation errors caused by Kyori Adventure API ClickEvent.Payload removal#1
ClickEvent.Payload removal#1Conversation
…compatibilities - Copy minedown-adventure source (based on 1.7.6-SNAPSHOT) into src/main/java/de/themoep/minedown/adventure/ - Util.java: remove 'implements TextFormat' from TextControl enum so it no longer conflicts with sealed TextFormat interface in newer Adventure - Util.java: change getFormatFromString/getFormatFromLegacy return types and getLegacyFormatChar parameter from TextFormat to Object - Util.java: fix rgbColorsToLegacy to not use removed BuildableComponent - MineDownParser.java: change all Map.Entry<TextFormat,Boolean> to Map.Entry<Object,Boolean> to accommodate non-TextFormat TextControl - Replacer.java: remove BuildableComponent (removed from Adventure 4.14) and replace with TextComponent instanceof check - Remove external de.themoep:minedown-adventure:1.7.5 dependency and repo.minebench.de repository from build.gradle.kts Fixes IncompatibleClassChangeError (sealed TextFormat) and NoSuchMethodError (ComponentBuilder.build returning BuildableComponent) seen on Purpur 26.2 / Paper with Adventure 4.14+.
Copilot
AI
changed the title
fix: vendor patched minedown-adventure to fix Adventure API incompatibilities on Purpur 26.2
fix: vendor patched minedown-adventure to resolve Adventure 4.14+ incompatibilities
Jun 24, 2026
Copilot created this pull request from a session on behalf of
Faboit1
June 24, 2026 10:09
View session
Copilot
AI
changed the title
fix: vendor patched minedown-adventure to resolve Adventure 4.14+ incompatibilities
Add GitHub Actions autocompile workflow
Jun 24, 2026
Copilot
AI
changed the title
Add GitHub Actions autocompile workflow
Add GitHub Actions build workflow + fix missing minebench repository
Jun 24, 2026
Copilot
AI
changed the title
Add GitHub Actions build workflow + fix missing minebench repository
Fix build: remove Adventure 4.25.0 ObjectComponent API from vendored MineDown source
Jun 24, 2026
Copilot
AI
changed the title
Fix build: remove Adventure 4.25.0 ObjectComponent API from vendored MineDown source
Fix compilation errors caused by Kyori Adventure API Jun 24, 2026
ClickEvent.Payload removal
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.
The project was failing to compile due to missing
payloadType()andpayload()methods onClickEvent, as the newerClickEvent.PayloadAPI is not present in the currently targeted version of the Kyori Adventure API.Changes
MineDownParser.java: Replaced payload type inference and casting logic with a direct pass-through of the string value usingClickEvent.value().MineDownStringifier.java: Updated definitions building to pull the payload directly viaclickEvent.value()rather than switching onClickEvent.Payloadsubclasses.Replacer.java: Replaced custom/text payload handling with direct string replacement onclickEvent.value().Example
Previously, click event payloads were handled using types:
Now, they are retrieved directly as strings: