mirror of
https://github.com/PaperMC/Paper.git
synced 2025-03-02 11:22:01 +01:00
Update Adventure to 4.11.0 and implement ComponentLogger (#7937)
This commit is contained in:
parent
8f89b31fe5
commit
ba31ce5451
@ -14,7 +14,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
withJavadocJar()
|
withJavadocJar()
|
||||||
}
|
}
|
||||||
|
|
||||||
+val adventureVersion = "4.10.1"
|
+val adventureVersion = "4.11.0"
|
||||||
+val apiAndDocs: Configuration by configurations.creating {
|
+val apiAndDocs: Configuration by configurations.creating {
|
||||||
+ attributes {
|
+ attributes {
|
||||||
+ attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
|
+ attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
|
||||||
@ -45,6 +45,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ apiAndDocs("net.kyori:adventure-text-serializer-gson")
|
+ apiAndDocs("net.kyori:adventure-text-serializer-gson")
|
||||||
+ apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
+ apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
||||||
+ apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
+ apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
||||||
|
+ apiAndDocs("net.kyori:adventure-text-logger-slf4j")
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
compileOnly("org.apache.maven:maven-resolver-provider:3.8.5")
|
compileOnly("org.apache.maven:maven-resolver-provider:3.8.5")
|
||||||
@ -3996,6 +3997,24 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ }
|
+ }
|
||||||
+ // Paper end
|
+ // Paper end
|
||||||
}
|
}
|
||||||
|
diff --git a/src/main/java/org/bukkit/plugin/Plugin.java b/src/main/java/org/bukkit/plugin/Plugin.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/org/bukkit/plugin/Plugin.java
|
||||||
|
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
|
||||||
|
@@ -0,0 +0,0 @@ public interface Plugin extends TabExecutor {
|
||||||
|
@NotNull
|
||||||
|
public Logger getLogger();
|
||||||
|
|
||||||
|
+ // Paper start - Adventure component logger
|
||||||
|
+ @NotNull
|
||||||
|
+ default net.kyori.adventure.text.logger.slf4j.ComponentLogger getComponentLogger() {
|
||||||
|
+ return net.kyori.adventure.text.logger.slf4j.ComponentLogger.logger(getLogger().getName());
|
||||||
|
+ }
|
||||||
|
+ // Paper end
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* Returns the name of the plugin.
|
||||||
|
* <p>
|
||||||
diff --git a/src/main/java/org/bukkit/scoreboard/Objective.java b/src/main/java/org/bukkit/scoreboard/Objective.java
|
diff --git a/src/main/java/org/bukkit/scoreboard/Objective.java b/src/main/java/org/bukkit/scoreboard/Objective.java
|
||||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
--- a/src/main/java/org/bukkit/scoreboard/Objective.java
|
--- a/src/main/java/org/bukkit/scoreboard/Objective.java
|
||||||
|
@ -18,9 +18,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -0,0 +0,0 @@ dependencies {
|
@@ -0,0 +0,0 @@ dependencies {
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-gson")
|
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
||||||
|
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
|
||||||
+ api("org.apache.logging.log4j:log4j-api:2.17.1")
|
+ api("org.apache.logging.log4j:log4j-api:2.17.1")
|
||||||
+ api("org.slf4j:slf4j-api:1.8.0-beta4")
|
+ api("org.slf4j:slf4j-api:1.8.0-beta4")
|
||||||
|
|
||||||
@ -31,8 +31,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
--- a/src/main/java/org/bukkit/plugin/Plugin.java
|
--- a/src/main/java/org/bukkit/plugin/Plugin.java
|
||||||
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
|
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
|
||||||
@@ -0,0 +0,0 @@ public interface Plugin extends TabExecutor {
|
@@ -0,0 +0,0 @@ public interface Plugin extends TabExecutor {
|
||||||
@NotNull
|
}
|
||||||
public Logger getLogger();
|
// Paper end
|
||||||
|
|
||||||
+ // Paper start - Add SLF4J/Log4J loggers
|
+ // Paper start - Add SLF4J/Log4J loggers
|
||||||
+ @NotNull
|
+ @NotNull
|
||||||
|
@ -10,9 +10,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -0,0 +0,0 @@ dependencies {
|
@@ -0,0 +0,0 @@ dependencies {
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-gson")
|
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
apiAndDocs("net.kyori:adventure-text-serializer-legacy")
|
||||||
apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
apiAndDocs("net.kyori:adventure-text-serializer-plain")
|
||||||
|
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
|
||||||
+
|
+
|
||||||
+ implementation("org.ow2.asm:asm:9.2")
|
+ implementation("org.ow2.asm:asm:9.2")
|
||||||
+ implementation("org.ow2.asm:asm-commons:9.2")
|
+ implementation("org.ow2.asm:asm-commons:9.2")
|
||||||
|
@ -12,29 +12,56 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
@@ -0,0 +0,0 @@
|
@@ -0,0 +0,0 @@
|
||||||
package com.destroystokyo.paper.console;
|
package com.destroystokyo.paper.console;
|
||||||
|
|
||||||
+import io.papermc.paper.console.HexFormattingConverter;
|
|
||||||
+import net.kyori.adventure.audience.MessageType;
|
+import net.kyori.adventure.audience.MessageType;
|
||||||
+import net.kyori.adventure.identity.Identity;
|
+import net.kyori.adventure.identity.Identity;
|
||||||
+import net.kyori.adventure.text.Component;
|
+import net.kyori.adventure.text.Component;
|
||||||
|
+import net.kyori.adventure.text.logger.slf4j.ComponentLogger;
|
||||||
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
-import org.apache.logging.log4j.Logger;
|
||||||
import org.bukkit.craftbukkit.command.CraftConsoleCommandSender;
|
import org.bukkit.craftbukkit.command.CraftConsoleCommandSender;
|
||||||
@@ -0,0 +0,0 @@ public class TerminalConsoleCommandSender extends CraftConsoleCommandSender {
|
|
||||||
|
public class TerminalConsoleCommandSender extends CraftConsoleCommandSender {
|
||||||
|
|
||||||
|
- private static final Logger LOGGER = LogManager.getRootLogger();
|
||||||
|
+ private static final ComponentLogger LOGGER = ComponentLogger.logger(LogManager.getRootLogger().getName());
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void sendRawMessage(String message) {
|
public void sendRawMessage(String message) {
|
||||||
- // TerminalConsoleAppender supports color codes directly in log messages
|
- // TerminalConsoleAppender supports color codes directly in log messages
|
||||||
- LOGGER.info(message);
|
|
||||||
+ final Component msg = LegacyComponentSerializer.legacySection().deserialize(message);
|
+ final Component msg = LegacyComponentSerializer.legacySection().deserialize(message);
|
||||||
+ this.sendMessage(Identity.nil(), msg, MessageType.SYSTEM);
|
+ this.sendMessage(Identity.nil(), msg, MessageType.SYSTEM);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ @Override
|
+ @Override
|
||||||
+ public void sendMessage(Identity identity, Component message, MessageType type) {
|
+ public void sendMessage(Identity identity, Component message, MessageType type) {
|
||||||
+ LOGGER.info(HexFormattingConverter.SERIALIZER.serialize(message));
|
LOGGER.info(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
diff --git a/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
|
||||||
|
+++ b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
|
||||||
|
@@ -0,0 +0,0 @@
|
||||||
|
package io.papermc.paper.adventure.providers;
|
||||||
|
|
||||||
|
-import io.papermc.paper.adventure.PaperAdventure;
|
||||||
|
+import io.papermc.paper.console.HexFormattingConverter;
|
||||||
|
+import java.util.Locale;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
|
import net.kyori.adventure.text.logger.slf4j.ComponentLogger;
|
||||||
|
import net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider;
|
||||||
|
+import net.kyori.adventure.translation.GlobalTranslator;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
@@ -0,0 +0,0 @@ public class ComponentLoggerProviderImpl implements ComponentLoggerProvider {
|
||||||
|
}
|
||||||
|
|
||||||
|
private String serialize(final Component message) {
|
||||||
|
- return PaperAdventure.asPlain(message, null);
|
||||||
|
+ return HexFormattingConverter.SERIALIZER.serialize(GlobalTranslator.render(message, Locale.getDefault()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/io/papermc/paper/console/HexFormattingConverter.java b/src/main/java/io/papermc/paper/console/HexFormattingConverter.java
|
diff --git a/src/main/java/io/papermc/paper/console/HexFormattingConverter.java b/src/main/java/io/papermc/paper/console/HexFormattingConverter.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
|
@ -772,6 +772,31 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ return net.minecraft.network.chat.Component.Serializer.fromJson(GsonComponentSerializer.gson().serializer().toJsonTree(component));
|
+ return net.minecraft.network.chat.Component.Serializer.fromJson(GsonComponentSerializer.gson().serializer().toJsonTree(component));
|
||||||
+ }
|
+ }
|
||||||
+}
|
+}
|
||||||
|
diff --git a/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/main/java/io/papermc/paper/adventure/providers/ComponentLoggerProviderImpl.java
|
||||||
|
@@ -0,0 +0,0 @@
|
||||||
|
+package io.papermc.paper.adventure.providers;
|
||||||
|
+
|
||||||
|
+import io.papermc.paper.adventure.PaperAdventure;
|
||||||
|
+import net.kyori.adventure.text.Component;
|
||||||
|
+import net.kyori.adventure.text.logger.slf4j.ComponentLogger;
|
||||||
|
+import net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider;
|
||||||
|
+import org.jetbrains.annotations.NotNull;
|
||||||
|
+import org.slf4j.LoggerFactory;
|
||||||
|
+
|
||||||
|
+public class ComponentLoggerProviderImpl implements ComponentLoggerProvider {
|
||||||
|
+ @Override
|
||||||
|
+ public @NotNull ComponentLogger logger(@NotNull LoggerHelper helper, @NotNull String name) {
|
||||||
|
+ return helper.delegating(LoggerFactory.getLogger(name), this::serialize);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ private String serialize(final Component message) {
|
||||||
|
+ return PaperAdventure.asPlain(message, null);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
diff --git a/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java
|
diff --git a/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java b/src/main/java/io/papermc/paper/adventure/providers/GsonComponentSerializerProviderImpl.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
||||||
@ -3729,6 +3754,13 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
HashSet<Player> reference = new HashSet<Player>(players.size());
|
HashSet<Player> reference = new HashSet<Player>(players.size());
|
||||||
for (ServerPlayer player : players) {
|
for (ServerPlayer player : players) {
|
||||||
reference.add(player.getBukkitEntity());
|
reference.add(player.getBukkitEntity());
|
||||||
|
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
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/main/resources/META-INF/services/net.kyori.adventure.text.logger.slf4j.ComponentLoggerProvider
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+io.papermc.paper.adventure.providers.ComponentLoggerProviderImpl
|
||||||
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
|
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
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
|
||||||
|
Loading…
Reference in New Issue
Block a user