diff --git a/.github/workflows/ci-tests-and-coverage.yml b/.github/workflows/ci-tests-and-coverage.yml
index b9fd456b..6ba0dac2 100644
--- a/.github/workflows/ci-tests-and-coverage.yml
+++ b/.github/workflows/ci-tests-and-coverage.yml
@@ -47,7 +47,18 @@ jobs:
server-password: PACKAGES_TOKEN
- name: Run Maven Verify
- run: mvn -U -B -ntp verify
+ shell: bash
+ run: |
+ set -o pipefail
+ mkdir -p target/ci
+ mvn -U -B -ntp verify 2>&1 | tee target/ci/maven-verify.log
+
+ - name: Upload CI diagnostics
+ if: always()
+ uses: actions/upload-artifact@v7
+ with:
+ name: ci-diagnostics
+ path: target/ci
- name: Upload JaCoCo Report
if: always()
diff --git a/pom.xml b/pom.xml
index 3cacbcff..336fbcac 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,9 +15,9 @@
UTF-8
- 4.26.1
+ 5.2.0
2.14.0
- 26.1.2.build.74-stable
+ 26.2.build.65-beta
1.11.5
3.0.5
2.11.4
@@ -47,6 +47,7 @@
5.23.0
3.15.0
+ 3.6.2
@@ -81,6 +82,44 @@
25
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+ ${maven.enforcer.plugin.version}
+
+
+ enforce-adventure-5
+
+ enforce
+
+
+
+
+ true
+
+ net.kyori:adventure-api:[0,5.0.0)
+ net.kyori:adventure-key:[0,5.0.0)
+ net.kyori:adventure-nbt:[0,5.0.0)
+ net.kyori:adventure-resource-pack:[0,5.0.0)
+ net.kyori:adventure-serializer-configurate4:[0,5.0.0)
+ net.kyori:adventure-text-logger-slf4j:[0,5.0.0)
+ net.kyori:adventure-text-minimessage:[0,5.0.0)
+ net.kyori:adventure-text-serializer-ansi:[0,5.0.0)
+ net.kyori:adventure-text-serializer-commons:[0,5.0.0)
+ net.kyori:adventure-text-serializer-gson:[0,5.0.0)
+ net.kyori:adventure-text-serializer-gson-legacy-impl:[0,5.0.0)
+ net.kyori:adventure-text-serializer-json:[0,5.0.0)
+ net.kyori:adventure-text-serializer-json-legacy-impl:[0,5.0.0)
+ net.kyori:adventure-text-serializer-legacy:[0,5.0.0)
+ net.kyori:adventure-text-serializer-plain:[0,5.0.0)
+
+ Adventure 4.x core modules are not supported. Keep the Adventure core dependency graph on 5.x.
+
+
+
+
+
+
org.apache.maven.plugins
maven-checkstyle-plugin
@@ -169,6 +208,13 @@
+
+ net.kyori
+ adventure-bom
+ ${adventure.version}
+ pom
+ import
+
com.intellectualsites.bom
bom-newest
@@ -251,31 +297,26 @@
net.kyori
adventure-api
- ${adventure.version}
provided
net.kyori
adventure-text-minimessage
- ${adventure.version}
provided
net.kyori
adventure-text-serializer-gson
- ${adventure.version}
provided
net.kyori
adventure-text-serializer-legacy
- ${adventure.version}
provided
net.kyori
adventure-text-serializer-plain
- ${adventure.version}
provided
@@ -401,6 +442,13 @@
EssentialsX
${essentialsx.version}
provided
+
+
+
+ net.kyori
+ adventure-platform-bukkit
+
+
org.junit.jupiter
diff --git a/src/main/java/nl/hauntedmc/serverfeatures/api/util/text/format/inspect/FormatInspector.java b/src/main/java/nl/hauntedmc/serverfeatures/api/util/text/format/inspect/FormatInspector.java
index c5f668af..afbc50ae 100644
--- a/src/main/java/nl/hauntedmc/serverfeatures/api/util/text/format/inspect/FormatInspector.java
+++ b/src/main/java/nl/hauntedmc/serverfeatures/api/util/text/format/inspect/FormatInspector.java
@@ -125,7 +125,7 @@ private static boolean hasFormattingRecursive(Component c, Set
if (aspects.contains(ComponentAspect.TRANSLATABLE) && (c instanceof TranslatableComponent)) return true;
if (aspects.contains(ComponentAspect.SCORE) && (c instanceof ScoreComponent)) return true;
if (aspects.contains(ComponentAspect.SELECTOR) && (c instanceof SelectorComponent)) return true;
- if (aspects.contains(ComponentAspect.NBT) && (c instanceof NBTComponent, ?>)) return true;
+ if (aspects.contains(ComponentAspect.NBT) && (c instanceof NBTComponent>)) return true;
// Children
for (Component child : c.children()) {