Skip to content

Commit 90050ff

Browse files
authored
Update Adventure to 4.11.0 and implement ComponentLogger (#7937)
1 parent 3690440 commit 90050ff

11 files changed

+111
-33
lines changed

patches/api/0005-Adventure.patch

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ Co-authored-by: zml <zml@stellardrift.ca>
77
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
88

99
diff --git a/build.gradle.kts b/build.gradle.kts
10-
index f0423df165bf7d0f3fad21d26b64f31ba3e6aeee..6f31679c2944fae3b37847c683abb0d2e5791449 100644
10+
index f0423df165bf7d0f3fad21d26b64f31ba3e6aeee..7b8196db1fd1e283dc9ef71e3fe5137cc5920ba9 100644
1111
--- a/build.gradle.kts
1212
+++ b/build.gradle.kts
13-
@@ -8,17 +8,36 @@ java {
13+
@@ -8,17 +8,37 @@ java {
1414
withJavadocJar()
1515
}
1616

17-
+val adventureVersion = "4.10.1"
17+
+val adventureVersion = "4.11.0"
1818
+val apiAndDocs: Configuration by configurations.creating {
1919
+ attributes {
2020
+ attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
@@ -45,10 +45,11 @@ index f0423df165bf7d0f3fad21d26b64f31ba3e6aeee..6f31679c2944fae3b37847c683abb0d2
4545
+ apiAndDocs("net.kyori:adventure-text-serializer-gson")
4646
+ apiAndDocs("net.kyori:adventure-text-serializer-legacy")
4747
+ apiAndDocs("net.kyori:adventure-text-serializer-plain")
48+
+ apiAndDocs("net.kyori:adventure-text-logger-slf4j")
4849
// Paper end
4950

5051
compileOnly("org.apache.maven:maven-resolver-provider:3.8.5")
51-
@@ -77,9 +96,24 @@ tasks.withType<Javadoc> {
52+
@@ -77,9 +97,24 @@ tasks.withType<Javadoc> {
5253
"https://guava.dev/releases/31.0.1-jre/api/docs/",
5354
"https://javadoc.io/doc/org.yaml/snakeyaml/1.30/",
5455
"https://javadoc.io/doc/org.jetbrains/annotations/23.0.0/", // Paper - we don't want Java 5 annotations
@@ -3996,6 +3997,24 @@ index 228421154913116069c20323afb519bdde2134df..26791db3c267670d5782f1d2b67ff7d5
39963997
+ }
39973998
+ // Paper end
39983999
}
4000+
diff --git a/src/main/java/org/bukkit/plugin/Plugin.java b/src/main/java/org/bukkit/plugin/Plugin.java
4001+
index 03ca87a1cbace2459174bb7bb8847bda766e80c5..b37938745f916b5f0111b07b1a1c97527f026e9d 100644
4002+
--- a/src/main/java/org/bukkit/plugin/Plugin.java
4003+
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
4004+
@@ -179,6 +179,13 @@ public interface Plugin extends TabExecutor {
4005+
@NotNull
4006+
public Logger getLogger();
4007+
4008+
+ // Paper start - Adventure component logger
4009+
+ @NotNull
4010+
+ default net.kyori.adventure.text.logger.slf4j.ComponentLogger getComponentLogger() {
4011+
+ return net.kyori.adventure.text.logger.slf4j.ComponentLogger.logger(getLogger().getName());
4012+
+ }
4013+
+ // Paper end
4014+
+
4015+
/**
4016+
* Returns the name of the plugin.
4017+
* <p>
39994018
diff --git a/src/main/java/org/bukkit/scoreboard/Objective.java b/src/main/java/org/bukkit/scoreboard/Objective.java
40004019
index ff3fcb2697eb00736238d0efdcaefe43043334d3..75acd6f8f3d774bb79e8e513125e801c5569a244 100644
40014020
--- a/src/main/java/org/bukkit/scoreboard/Objective.java

patches/api/0026-Use-ASM-for-event-executors.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ Subject: [PATCH] Use ASM for event executors.
66
Uses method handles for private or static methods.
77

88
diff --git a/build.gradle.kts b/build.gradle.kts
9-
index 6f31679c2944fae3b37847c683abb0d2e5791449..733fed7b0a7259a831e976d443b907830703bda6 100644
9+
index 7b8196db1fd1e283dc9ef71e3fe5137cc5920ba9..f0f8047cb3a43b447dc50b730dab3d0bc471b25a 100644
1010
--- a/build.gradle.kts
1111
+++ b/build.gradle.kts
12-
@@ -38,6 +38,9 @@ dependencies {
13-
apiAndDocs("net.kyori:adventure-text-serializer-gson")
12+
@@ -39,6 +39,9 @@ dependencies {
1413
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
1514
apiAndDocs("net.kyori:adventure-text-serializer-plain")
15+
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
1616
+
1717
+ implementation("org.ow2.asm:asm:9.2")
1818
+ implementation("org.ow2.asm:asm-commons:9.2")

patches/api/0054-Fix-upstream-javadocs.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ index 91fc11dda99de506be83d40df8929bf7cd8e8d85..7dc631ebd009f5f5c3ac1699c3f3515c
6060
// Paper end
6161
}
6262
diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
63-
index 50ac6f0374da5697a38ef5ec7625da91d4a4276c..f607c57275958bf1cbf8e77b4d7efa936064c228 100644
63+
index 2cf43eac30187a43a01c81b3021b2cfec0d4ba8a..864941be2d07de08f63e740ad2becf1dc5790433 100644
6464
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
6565
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
6666
@@ -21,6 +21,11 @@ import org.jetbrains.annotations.Nullable;

patches/api/0069-Allow-plugins-to-use-SLF4J-for-logging.patch

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,25 +14,25 @@ it without having to shade it in the plugin and going through
1414
several layers of logging abstraction.
1515

1616
diff --git a/build.gradle.kts b/build.gradle.kts
17-
index 733fed7b0a7259a831e976d443b907830703bda6..921b301de020ce73126ca518556b3435e776783d 100644
17+
index f0f8047cb3a43b447dc50b730dab3d0bc471b25a..435db1ffe47476bcb7067802faad7aee7e4c3f54 100644
1818
--- a/build.gradle.kts
1919
+++ b/build.gradle.kts
20-
@@ -38,6 +38,8 @@ dependencies {
21-
apiAndDocs("net.kyori:adventure-text-serializer-gson")
20+
@@ -39,6 +39,8 @@ dependencies {
2221
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
2322
apiAndDocs("net.kyori:adventure-text-serializer-plain")
23+
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
2424
+ api("org.apache.logging.log4j:log4j-api:2.17.1")
2525
+ api("org.slf4j:slf4j-api:1.8.0-beta4")
2626

2727
implementation("org.ow2.asm:asm:9.2")
2828
implementation("org.ow2.asm:asm-commons:9.2")
2929
diff --git a/src/main/java/org/bukkit/plugin/Plugin.java b/src/main/java/org/bukkit/plugin/Plugin.java
30-
index 03ca87a1cbace2459174bb7bb8847bda766e80c5..34438b5362b0ba0949625d81e8371fe0d1f76fdf 100644
30+
index b37938745f916b5f0111b07b1a1c97527f026e9d..08aef59d8443038771704d9587e31f299e587307 100644
3131
--- a/src/main/java/org/bukkit/plugin/Plugin.java
3232
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
33-
@@ -179,6 +179,22 @@ public interface Plugin extends TabExecutor {
34-
@NotNull
35-
public Logger getLogger();
33+
@@ -186,6 +186,22 @@ public interface Plugin extends TabExecutor {
34+
}
35+
// Paper end
3636

3737
+ // Paper start - Add SLF4J/Log4J loggers
3838
+ @NotNull

patches/api/0176-Fix-Spigot-annotation-mistakes.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ a ton of noise to plugin developers.
99
These do not help plugin developers if they bring moise noise than value.
1010

1111
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
12-
index 9bd83fc81ae5a196a7254a4fd68f884805d5bddb..3a011b6fe654da9710aa81c4e13e9b135fbecfc3 100644
12+
index f4e1ea578bae0d1dc8badfcbf83ca4550a41867b..ba0c757346975af6fae9c0ebd72487395c74170d 100644
1313
--- a/src/main/java/org/bukkit/Bukkit.java
1414
+++ b/src/main/java/org/bukkit/Bukkit.java
1515
@@ -1177,10 +1177,8 @@ public final class Bukkit {
@@ -159,7 +159,7 @@ index 6277451c3c6c551078c237cd767b6d70c4f585ea..10f5cfb1885833a1d2c1027c03974da4
159159
CRACKED(0x0),
160160
GLYPHED(0x1),
161161
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
162-
index b8ed8d5d48cb4f1b2f598e2c48e4423ab2d899f4..102ce4e488d5b6fd4a19766e9fa02d29075b2c33 100644
162+
index 475fe51ff7a9f1c1ed5048ea59d6d8ba73f2903c..911b26247b3cd5e80c1f0a904ad3f88761091551 100644
163163
--- a/src/main/java/org/bukkit/Server.java
164164
+++ b/src/main/java/org/bukkit/Server.java
165165
@@ -982,10 +982,8 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi

patches/api/0190-Add-tick-times-API.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Add tick times API
55

66

77
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
8-
index 5880fe78b52cab2e9c2e4f2639570e0380dd9b73..3b60fa65686572fdd8fab22cd131ca5cfe5274c8 100644
8+
index 346ed194262c045bb12034b1dc949cf9bbbcb4ee..00dce49d4053ce0a10cc9d0a40f90e4ab615cdf1 100644
99
--- a/src/main/java/org/bukkit/Bukkit.java
1010
+++ b/src/main/java/org/bukkit/Bukkit.java
1111
@@ -1917,6 +1917,25 @@ public final class Bukkit {
@@ -35,7 +35,7 @@ index 5880fe78b52cab2e9c2e4f2639570e0380dd9b73..3b60fa65686572fdd8fab22cd131ca5c
3535

3636
/**
3737
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
38-
index ad1d73940908f4f20a4944e81b186739fded20ab..6fe653a2a0fd4f07d39ed584bc11688d4926d54e 100644
38+
index 97149dc0142bd910681b8f013803fb3ea9f72dbb..b549cb954e4fb4e37277303911d174bedd0ee27d 100644
3939
--- a/src/main/java/org/bukkit/Server.java
4040
+++ b/src/main/java/org/bukkit/Server.java
4141
@@ -1614,6 +1614,21 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi

patches/api/0229-Add-getOfflinePlayerIfCached-String.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Add getOfflinePlayerIfCached(String)
55

66

77
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
8-
index 4b2f3e674e634efa42f6840933dd9ee9595d036b..7e422716841d3736cce4f0968121231f9c6c33d3 100644
8+
index 722d06447522d0ad3b2b52bc73e4259761128e77..f53d436374e360150e17191625ab4277a2ff4d6e 100644
99
--- a/src/main/java/org/bukkit/Bukkit.java
1010
+++ b/src/main/java/org/bukkit/Bukkit.java
1111
@@ -1207,6 +1207,27 @@ public final class Bukkit {
@@ -37,7 +37,7 @@ index 4b2f3e674e634efa42f6840933dd9ee9595d036b..7e422716841d3736cce4f0968121231f
3737
* Gets the player by the given UUID, regardless if they are offline or
3838
* online.
3939
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
40-
index a7ba813396fab77bed292422f881b5a0952972fb..afed6bcf923166065ac9f63dd96191cd42eefcb9 100644
40+
index f2fbbb6ec88357779258a2798dfdb062789803df..aee2ef29628e05636c705e126eb2bd207f0db378 100644
4141
--- a/src/main/java/org/bukkit/Server.java
4242
+++ b/src/main/java/org/bukkit/Server.java
4343
@@ -1006,6 +1006,25 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi

patches/api/0343-Allow-delegation-to-vanilla-chunk-gen.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Allow delegation to vanilla chunk gen
55

66

77
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
8-
index 3e3e48f467eef561eeada98c6b99388e23595d7f..32d346fb12c976253a3731df6613983f01a9ebb5 100644
8+
index c8efb995bdff6e0888ef479aef4cca3e2d66e34c..c2a1df187ca352de24bdc7f76ed667d22ea7a49d 100644
99
--- a/src/main/java/org/bukkit/Bukkit.java
1010
+++ b/src/main/java/org/bukkit/Bukkit.java
1111
@@ -1861,6 +1861,24 @@ public final class Bukkit {
@@ -34,7 +34,7 @@ index 3e3e48f467eef561eeada98c6b99388e23595d7f..32d346fb12c976253a3731df6613983f
3434
* Creates a boss bar instance to display to players. The progress
3535
* defaults to 1.0
3636
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
37-
index 2409c0023f90689399c8ceba179b800156d16eea..64e4667efbf60204076ef32d64aa3a76c399df05 100644
37+
index 09d72432cd854b929b262112921370138344e39c..5a31967313fa96989091f3cd2d4c3184e00e593e 100644
3838
--- a/src/main/java/org/bukkit/Server.java
3939
+++ b/src/main/java/org/bukkit/Server.java
4040
@@ -1564,6 +1564,22 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi

patches/api/0364-API-for-creating-command-sender-which-forwards-feedb.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] API for creating command sender which forwards feedback
55

66

77
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
8-
index 32d346fb12c976253a3731df6613983f01a9ebb5..7fcb2d84e707576531ddb9a7dd85cf0481ae58ce 100644
8+
index c2a1df187ca352de24bdc7f76ed667d22ea7a49d..e5271098b97b330566df9a0e11e3b05d5c6b3c8a 100644
99
--- a/src/main/java/org/bukkit/Bukkit.java
1010
+++ b/src/main/java/org/bukkit/Bukkit.java
1111
@@ -1392,6 +1392,20 @@ public final class Bukkit {
@@ -30,7 +30,7 @@ index 32d346fb12c976253a3731df6613983f01a9ebb5..7fcb2d84e707576531ddb9a7dd85cf04
3030
* Gets the folder that contains all of the various {@link World}s.
3131
*
3232
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
33-
index 64e4667efbf60204076ef32d64aa3a76c399df05..5aa14f6c2f5be4d72689d764ad4d0ce5a3d704a8 100644
33+
index 5a31967313fa96989091f3cd2d4c3184e00e593e..99821da965069d54820bbbe349ab5dc09226f450 100644
3434
--- a/src/main/java/org/bukkit/Server.java
3535
+++ b/src/main/java/org/bukkit/Server.java
3636
@@ -1162,6 +1162,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi

patches/server/0008-Adventure.patch

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -772,6 +772,31 @@ index 0000000000000000000000000000000000000000..2a08e0461db4e699b7e6a1558a4419c8
772772
+ return net.minecraft.network.chat.Component.Serializer.fromJson(GsonComponentSerializer.gson().serializer().toJsonTree(component));
773773
+ }
774774
+}
775+
diff --git a/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
776+
new file mode 100644
777+
index 0000000000000000000000000000000000000000..c3631efda9c7fa531a8a9f18fbee7b5f8655382b
778+
--- /dev/null
779+
+++ b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
780+
@@ -0,0 +1,19 @@
781+
+package io.papermc.paper.adventure.providers;
782+
+
783+
+import io.papermc.paper.adventure.PaperAdventure;
784+
+import net.kyori.adventure.text.Component;
785+
+import net.kyori.adventure.text.logger.slf4j.ComponentLogger;
786+
+import net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider;
787+
+import org.jetbrains.annotations.NotNull;
788+
+import org.slf4j.LoggerFactory;
789+
+
790+
+public class ComponentLoggerProviderImpl implements ComponentLoggerProvider {
791+
+ @Override
792+
+ public @NotNull ComponentLogger logger(@NotNull LoggerHelper helper, @NotNull String name) {
793+
+ return helper.delegating(LoggerFactory.getLogger(name), this::serialize);
794+
+ }
795+
+
796+
+ private String serialize(final Component message) {
797+
+ return PaperAdventure.asPlain(message, null);
798+
+ }
799+
+}
775800
diff --git a/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java
776801
new file mode 100644
777802
index 0000000000000000000000000000000000000000..c620d5aa2b0208b769dbe9563f0e99edc9a91047
@@ -3729,6 +3754,13 @@ index 838d5b877c01be3ef353f434d98e27b46c0a3fb4..5c4c0ba05f10d2d83b22d3e86805cfa8
37293754
HashSet<Player> reference = new HashSet<Player>(players.size());
37303755
for (ServerPlayer player : players) {
37313756
reference.add(player.getBukkitEntity());
3757+
diff --git a/src/main/resources/META-INF/services/net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider b/src/main/resources/META-INF/services/net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider
3758+
new file mode 100644
3759+
index 0000000000000000000000000000000000000000..399bde6e57cd82b50d3ebe0f51a3958fa2d52d43
3760+
--- /dev/null
3761+
+++ b/src/main/resources/META-INF/services/net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider
3762+
@@ -0,0 +1 @@
3763+
+io.papermc.paper.adventure.providers.ComponentLoggerProviderImpl
37323764
diff --git a/src/main/resources/META-INF/services/net.kyori.adventure.text.minimessage.MiniMessage$Provider b/src/main/resources/META-INF/services/net.kyori.adventure.text.minimessage.MiniMessage$Provider
37333765
new file mode 100644
37343766
index 0000000000000000000000000000000000000000..6ce632b6c9dc5e4b3b978331df51c0ffd1526471

0 commit comments

Comments
 (0)