From 16f429723b1b3e7e00e3e81188545cbf5b68cbcd Mon Sep 17 00:00:00 2001 From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> Date: Mon, 16 Dec 2024 20:56:44 +0300 Subject: [PATCH] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@998a4e6 [ci skip] add a good chunk of patch identifying comments PurpurMC/Purpur@e440784 [ci skip] a couple more patch identifying comments PurpurMC/Purpur@c33391b Updated Upstream (Paper) PurpurMC/Purpur@8d7fab1 [ci skip] small patch comment cleanup --- gradle.properties | 2 +- ...imings.patch => 0004-Delete-Timings.patch} | 6 +- .../0004-Optimize-Paper-Event-Manager.patch | 114 ---- ....patch => 0005-DivineMC-API-Publish.patch} | 0 ...ies.patch => 0006-Bump-Dependencies.patch} | 0 patches/server/0001-Divine-Branding.patch | 128 +++-- .../server/0002-Divine-Configuration.patch | 63 +- ...-Optimize-default-values-for-configs.patch | 8 +- ...04-Add-missing-purpur-config-options.patch | 45 +- patches/server/0005-Fix-MC-93826.patch | 12 +- patches/server/0011-Fix-MC-93018.patch | 4 +- .../0021-Remove-Spigot-tick-limiter.patch | 10 +- .../0022-Make-entity-goals-public.patch | 38 +- ...tch.patch => 0023-Fix-sprint-glitch.patch} | 2 +- .../0023-Optimize-Paper-Event-Manager.patch | 41 -- ...ettings.patch => 0024-Boat-Settings.patch} | 2 +- ...pawn-shulker-bullets-on-owner-death.patch} | 0 ...rk.patch => 0026-Reduce-sensor-work.patch} | 2 +- ... => 0027-Snowball-and-Egg-knockback.patch} | 2 +- ...inecart-hopper-work-without-players.patch} | 0 ...-Optimize-CraftServer.getWorld-UUID.patch} | 20 +- ...tch => 0030-Block-Log4Shell-exploit.patch} | 4 +- ...o-disable-non-editable-sign-warning.patch} | 2 +- ...ppress-errors-from-dirty-attributes.patch} | 2 +- ...0033-Carpet-Fixes-getBiome-Optimize.patch} | 0 ...cs.patch => 0034-C2ME-reduce_allocs.patch} | 0 ...S-Addition-Optimized-dragon-respawn.patch} | 0 ...s-math.patch => 0036-C2ME-opts-math.patch} | 0 ...chment-Make-FixLight-use-action-bar.patch} | 0 ...duce-work-done-by-game-event-system.patch} | 2 +- ...hat-sign.patch => 0039-No-chat-sign.patch} | 8 +- ... 0040-Remove-vanilla-username-check.patch} | 0 ...karin-Save-Json-list-asynchronously.patch} | 0 ...-223153.patch => 0042-Fix-MC-223153.patch} | 2 +- ...-119417.patch => 0043-Fix-MC-119417.patch} | 2 +- ...-200418.patch => 0044-Fix-MC-200418.patch} | 4 +- ...-to-disable-moved-wrongly-threshold.patch} | 2 +- ...patch => 0046-Implement-Secure-Seed.patch} | 10 +- ...-183518.patch => 0047-Fix-MC-183518.patch} | 0 ...imings.patch => 0048-Delete-Timings.patch} | 8 +- ...MC-65198.patch => 0049-Fix-MC-65198.patch} | 0 ...Carpet-Fixes-RecipeManager-Optimize.patch} | 0 ...> 0051-C2ME-Optimize-world-gen-math.patch} | 0 ...tch => 0052-Petal-Async-Pathfinding.patch} | 22 +- ...t.patch => 0053-lithium-hashed_list.patch} | 4 +- ...-177381.patch => 0054-Fix-MC-177381.patch} | 0 .../0055-Skip-event-if-no-listeners.patch | 30 + .../server/0056-Multithreaded-Tracker.patch | 544 ++++++++++++++++++ patches/server/0057-lithium-fast_util.patch | 86 +++ 49 files changed, 860 insertions(+), 371 deletions(-) rename patches/api/{0005-Delete-Timings.patch => 0004-Delete-Timings.patch} (99%) delete mode 100644 patches/api/0004-Optimize-Paper-Event-Manager.patch rename patches/api/{0006-DivineMC-API-Publish.patch => 0005-DivineMC-API-Publish.patch} (100%) rename patches/api/{0007-Bump-Dependencies.patch => 0006-Bump-Dependencies.patch} (100%) rename patches/server/{0024-Fix-sprint-glitch.patch => 0023-Fix-sprint-glitch.patch} (89%) delete mode 100644 patches/server/0023-Optimize-Paper-Event-Manager.patch rename patches/server/{0025-Boat-Settings.patch => 0024-Boat-Settings.patch} (97%) rename patches/server/{0026-Despawn-shulker-bullets-on-owner-death.patch => 0025-Despawn-shulker-bullets-on-owner-death.patch} (100%) rename patches/server/{0027-Reduce-sensor-work.patch => 0026-Reduce-sensor-work.patch} (96%) rename patches/server/{0028-Snowball-and-Egg-knockback.patch => 0027-Snowball-and-Egg-knockback.patch} (97%) rename patches/server/{0029-Make-minecart-hopper-work-without-players.patch => 0028-Make-minecart-hopper-work-without-players.patch} (100%) rename patches/server/{0030-Optimize-CraftServer.getWorld-UUID.patch => 0029-Optimize-CraftServer.getWorld-UUID.patch} (69%) rename patches/server/{0031-Block-Log4Shell-exploit.patch => 0030-Block-Log4Shell-exploit.patch} (93%) rename patches/server/{0032-Option-to-disable-non-editable-sign-warning.patch => 0031-Option-to-disable-non-editable-sign-warning.patch} (95%) rename patches/server/{0033-Suppress-errors-from-dirty-attributes.patch => 0032-Suppress-errors-from-dirty-attributes.patch} (96%) rename patches/server/{0034-Carpet-Fixes-getBiome-Optimize.patch => 0033-Carpet-Fixes-getBiome-Optimize.patch} (100%) rename patches/server/{0035-C2ME-reduce_allocs.patch => 0034-C2ME-reduce_allocs.patch} (100%) rename patches/server/{0036-Carpet-AMS-Addition-Optimized-dragon-respawn.patch => 0035-Carpet-AMS-Addition-Optimized-dragon-respawn.patch} (100%) rename patches/server/{0037-C2ME-opts-math.patch => 0036-C2ME-opts-math.patch} (100%) rename patches/server/{0038-Parchment-Make-FixLight-use-action-bar.patch => 0037-Parchment-Make-FixLight-use-action-bar.patch} (100%) rename patches/server/{0039-Petal-Reduce-work-done-by-game-event-system.patch => 0038-Petal-Reduce-work-done-by-game-event-system.patch} (99%) rename patches/server/{0040-No-chat-sign.patch => 0039-No-chat-sign.patch} (96%) rename patches/server/{0041-Remove-vanilla-username-check.patch => 0040-Remove-vanilla-username-check.patch} (100%) rename patches/server/{0042-Akarin-Save-Json-list-asynchronously.patch => 0041-Akarin-Save-Json-list-asynchronously.patch} (100%) rename patches/server/{0043-Fix-MC-223153.patch => 0042-Fix-MC-223153.patch} (91%) rename patches/server/{0044-Fix-MC-119417.patch => 0043-Fix-MC-119417.patch} (92%) rename patches/server/{0045-Fix-MC-200418.patch => 0044-Fix-MC-200418.patch} (89%) rename patches/server/{0046-Option-to-disable-moved-wrongly-threshold.patch => 0045-Option-to-disable-moved-wrongly-threshold.patch} (98%) rename patches/server/{0047-Implement-Secure-Seed.patch => 0046-Implement-Secure-Seed.patch} (99%) rename patches/server/{0048-Fix-MC-183518.patch => 0047-Fix-MC-183518.patch} (100%) rename patches/server/{0049-Delete-Timings.patch => 0048-Delete-Timings.patch} (91%) rename patches/server/{0050-Fix-MC-65198.patch => 0049-Fix-MC-65198.patch} (100%) rename patches/server/{0051-Carpet-Fixes-RecipeManager-Optimize.patch => 0050-Carpet-Fixes-RecipeManager-Optimize.patch} (100%) rename patches/server/{0052-C2ME-Optimize-world-gen-math.patch => 0051-C2ME-Optimize-world-gen-math.patch} (100%) rename patches/server/{0053-Petal-Async-Pathfinding.patch => 0052-Petal-Async-Pathfinding.patch} (98%) rename patches/server/{0054-lithium-hashed_list.patch => 0053-lithium-hashed_list.patch} (98%) rename patches/server/{0055-Fix-MC-177381.patch => 0054-Fix-MC-177381.patch} (100%) create mode 100644 patches/server/0055-Skip-event-if-no-listeners.patch create mode 100644 patches/server/0056-Multithreaded-Tracker.patch create mode 100644 patches/server/0057-lithium-fast_util.patch diff --git a/gradle.properties b/gradle.properties index 0fcb5e8..648fae1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = space.bxteam.divinemc mcVersion = 1.21.4 version = 1.21.4-R0.1-SNAPSHOT -purpurRef = 73dae7f68373023dadd4bd44759180859f8ac115 +purpurRef = 8d7fab13aa3e9cd82f45ba1d48af0ff8a4d0094c org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0005-Delete-Timings.patch b/patches/api/0004-Delete-Timings.patch similarity index 99% rename from patches/api/0005-Delete-Timings.patch rename to patches/api/0004-Delete-Timings.patch index 0139f64..fda194c 100644 --- a/patches/api/0005-Delete-Timings.patch +++ b/patches/api/0004-Delete-Timings.patch @@ -2104,7 +2104,7 @@ index 632c4961515f5052551f841cfa840e60bba7a257..00000000000000000000000000000000 - } -} diff --git a/src/main/java/org/bukkit/command/Command.java b/src/main/java/org/bukkit/command/Command.java -index 0a26fffe9b1e5080b5639767a03af11006108b4a..3b73c0e59788f5f49ca2423032550f11855d52ae 100644 +index 74384a56eebbce41d431db2507c55eddbcf50a41..7d1ac11cfffbaf7d799f2a0032221fb23ee6daf5 100644 --- a/src/main/java/org/bukkit/command/Command.java +++ b/src/main/java/org/bukkit/command/Command.java @@ -33,16 +33,6 @@ public abstract class Command { @@ -2186,7 +2186,7 @@ index 7740ad53796d08584bb0110f99af5639993e4d71..f0da5a8ae7e989e120f9d5ef2a417a98 server.getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerCommandException(ex, target, sender, args))); // Paper //target.timings.stopTiming(); // Spigot // Paper diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -index 6b6edf9007997d9672e4c850464c1b71cb55f6b4..4d91fa6fd1717aa8a6cd2a9edab888f03d6c1b34 100644 +index 2e6d62c4f3687e299c34e876c503b400e13be05a..0f5b442ea8e18d21c310205c217d22d18be3c863 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java @@ -724,12 +724,7 @@ public final class SimplePluginManager implements PluginManager { @@ -2223,7 +2223,7 @@ index 6b6edf9007997d9672e4c850464c1b71cb55f6b4..4d91fa6fd1717aa8a6cd2a9edab888f0 // Paper start diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java -index 0c6ca7588fb3d6b6497ddf032fe75e5c6c9719e5..5a8548bcc8b969cf5251e91dbe523543b57d6a3a 100644 +index e2b631fc160f13ea6e27b69f835bbdf83d6d3dec..b1b15caa19137e92ab08df7affcd37d1c249570d 100644 --- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java +++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java @@ -43,7 +43,6 @@ import org.bukkit.plugin.TimedRegisteredListener; diff --git a/patches/api/0004-Optimize-Paper-Event-Manager.patch b/patches/api/0004-Optimize-Paper-Event-Manager.patch deleted file mode 100644 index 18bf33f..0000000 --- a/patches/api/0004-Optimize-Paper-Event-Manager.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> -Date: Sun, 25 Jun 2023 13:35:28 +0300 -Subject: [PATCH] Optimize Paper Event Manager - -Original project: lynxplay/ktp -Link: https://github.com/lynxplay/ktp -Modified by NONPLAYT - -diff --git a/src/main/java/org/bukkit/event/Event.java b/src/main/java/org/bukkit/event/Event.java -index 8ec56cd6b8e0f5c5dd8c7c88b4671e18dcf109d0..d464812eb5e398733b8ea5b09339afa0b555f698 100644 ---- a/src/main/java/org/bukkit/event/Event.java -+++ b/src/main/java/org/bukkit/event/Event.java -@@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull; - - /** - * Represents an event. -- * -+ *

- * All events require a static method named getHandlerList() which returns the same {@link HandlerList} as {@link #getHandlers()}. - * - * @see PluginManager#callEvent(Event) -@@ -14,7 +14,7 @@ import org.jetbrains.annotations.NotNull; - */ - public abstract class Event { - private String name; -- private final boolean async; -+ private final net.kyori.adventure.util.TriState async; // DivineMC - Optimize Paper Event Manager - - /** - * The default constructor is defined for cleaner code. This constructor -@@ -31,10 +31,20 @@ public abstract class Event { - * @param isAsync true indicates the event will fire asynchronously, false - * by default from default constructor - */ -+ // DivineMC start - Optimize Paper Event Manager - public Event(boolean isAsync) { -+ this(net.kyori.adventure.util.TriState.byBoolean(isAsync)); -+ } -+ -+ public Event(@NotNull final net.kyori.adventure.util.TriState isAsync) { - this.async = isAsync; - } - -+ public final @NotNull net.kyori.adventure.util.TriState asynchronous() { -+ return this.async; -+ } -+ // DivineMC end -+ - // Paper start - /** - * Calls the event and tests if cancelled. -@@ -70,7 +80,7 @@ public abstract class Event { - public abstract HandlerList getHandlers(); - - /** -- * Any custom event that should not by synchronized with other events must -+ * Any custom event that should not be synchronized with other events must - * use the specific constructor. These are the caveats of using an - * asynchronous event: - *