aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0147-Add-Git-information-to-version-command-on-startup.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0147-Add-Git-information-to-version-command-on-startup.patch')
-rw-r--r--patches/api/0147-Add-Git-information-to-version-command-on-startup.patch101
1 files changed, 0 insertions, 101 deletions
diff --git a/patches/api/0147-Add-Git-information-to-version-command-on-startup.patch b/patches/api/0147-Add-Git-information-to-version-command-on-startup.patch
deleted file mode 100644
index 6c3f8d857b..0000000000
--- a/patches/api/0147-Add-Git-information-to-version-command-on-startup.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Professor Bloodstone <[email protected]>
-Date: Sun, 20 Jun 2021 01:48:31 +0200
-Subject: [PATCH] Add Git information to version command/on startup
-
-
-diff --git a/src/main/java/io/papermc/paper/util/JarManifests.java b/src/main/java/io/papermc/paper/util/JarManifests.java
-new file mode 100644
-index 0000000000000000000000000000000000000000..909617079db61b675cc7b60b44ef96b306076343
---- /dev/null
-+++ b/src/main/java/io/papermc/paper/util/JarManifests.java
-@@ -0,0 +1,37 @@
-+package io.papermc.paper.util;
-+
-+import java.io.IOException;
-+import java.io.InputStream;
-+import java.net.URL;
-+import java.util.Collections;
-+import java.util.Map;
-+import java.util.WeakHashMap;
-+import java.util.jar.Manifest;
-+import org.jetbrains.annotations.ApiStatus;
-+import org.jetbrains.annotations.NotNull;
-+import org.jetbrains.annotations.Nullable;
-+
-+public final class JarManifests {
-+ private JarManifests() {
-+ }
-+
-+ private static final Map<ClassLoader, Manifest> MANIFESTS = Collections.synchronizedMap(new WeakHashMap<>());
-+
-+ public static @Nullable Manifest manifest(final @NotNull Class<?> clazz) {
-+ return MANIFESTS.computeIfAbsent(clazz.getClassLoader(), classLoader -> {
-+ final String classLocation = "/" + clazz.getName().replace(".", "/") + ".class";
-+ final URL resource = clazz.getResource(classLocation);
-+ if (resource == null) {
-+ return null;
-+ }
-+ final String classFilePath = resource.toString().replace("\\", "/");
-+ final String archivePath = classFilePath.substring(0, classFilePath.length() - classLocation.length());
-+ try (final InputStream stream = new URL(archivePath + "/META-INF/MANIFEST.MF").openStream()) {
-+ return new Manifest(stream);
-+ } catch (final IOException ex) {
-+ return null;
-+ }
-+ });
-+ }
-+}
-diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
-index 3e32a6bbf593b269f1af23c7e2fdafaccc0d2110..d60780a26e10f5f9c80446693552384281327b51 100644
---- a/src/main/java/org/bukkit/Bukkit.java
-+++ b/src/main/java/org/bukkit/Bukkit.java
-@@ -60,6 +60,7 @@ import org.bukkit.util.CachedServerIcon;
- import org.jetbrains.annotations.Contract;
- import org.jetbrains.annotations.NotNull;
- import org.jetbrains.annotations.Nullable;
-+import io.papermc.paper.util.JarManifests; // Paper
-
- /**
- * Represents the Bukkit core, for version and Server singleton handling
-@@ -109,7 +110,25 @@ public final class Bukkit {
- }
-
- Bukkit.server = server;
-- server.getLogger().info("This server is running " + getName() + " version " + getVersion() + " (Implementing API version " + getBukkitVersion() + ")");
-+ // Paper start - add git information
-+ server.getLogger().info(getVersionMessage());
-+ }
-+ /**
-+ * Gets message describing the version server is running.
-+ *
-+ * @return message describing the version server is running
-+ */
-+ @NotNull
-+ public static String getVersionMessage() {
-+ final var manifest = JarManifests.manifest(Bukkit.getServer().getClass());
-+ final String gitBranch = manifest == null ? null : manifest.getMainAttributes().getValue("Git-Branch");
-+ final String gitCommit = manifest == null ? null : manifest.getMainAttributes().getValue("Git-Commit");
-+ String branchMsg = " on " + gitBranch;
-+ if ("master".equals(gitBranch) || "main".equals(gitBranch)) {
-+ branchMsg = ""; // Don't show branch on main/master
-+ }
-+ return "This server is running " + getName() + " version " + getVersion() + " (Implementing API version " + getBukkitVersion() + ") (Git: " + gitCommit + branchMsg + ")";
-+ // Paper end
- }
-
- /**
-diff --git a/src/main/java/org/bukkit/command/defaults/VersionCommand.java b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
-index b437cf212a63aa96a9492db8d01d5d37061aee23..fd5d9881abfd930bb883120f018f76dc78b62b14 100644
---- a/src/main/java/org/bukkit/command/defaults/VersionCommand.java
-+++ b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
-@@ -256,7 +256,7 @@ public class VersionCommand extends BukkitCommand {
- private void setVersionMessage(final @NotNull Component msg) {
- lastCheck = System.currentTimeMillis();
- final Component message = Component.textOfChildren(
-- Component.text("This server is running " + Bukkit.getName() + " version " + Bukkit.getVersion() + " (Implementing API version " + Bukkit.getBukkitVersion() + ")", NamedTextColor.WHITE),
-+ Component.text(Bukkit.getVersionMessage(), NamedTextColor.WHITE),
- Component.newline(),
- msg
- );