Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@755a775 [ci skip] rebuild patches
PaperMC/Paper@3b9db2b Updated Upstream (Bukkit/CraftBukkit) (#11501)
PaperMC/Paper@c13f9fd Fix potential annotation testing interruption (#11460)
PaperMC/Paper@260c3bb Always send Banner patterns to the client (#11506)
PaperMC/Paper@14a48cd Some small touchups to the GUI (#11505)
This commit is contained in:
granny
2024-10-20 17:23:24 -07:00
parent 4f2fe312cc
commit 4b57bed513
17 changed files with 63 additions and 55 deletions

View File

@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
version = 1.21.1-R0.1-SNAPSHOT
mcVersion = 1.21.1
paperCommit = aebbdc9e9a18b580d2647af52f77a506bcf7bbc2
paperCommit = 14a48cda408dc49db65b345b2e02cd71d9a7aae9
org.gradle.caching = true
org.gradle.parallel = true

View File

@@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/build.gradle.kts b/build.gradle.kts
index ab84a1405acc1f0d5f267892243b82b8dab03e21..4114aa99614ae588b1cf465ea7900308476a7568 100644
index e7c96be769fde8375b9a1b128cc7ce474144d16d..f9b44a03fe8d9a2fea2d968f4e944a6663c6f9c9 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -52,6 +52,7 @@ dependencies {
@@ -29,8 +29,8 @@ index ab84a1405acc1f0d5f267892243b82b8dab03e21..4114aa99614ae588b1cf465ea7900308
api("org.slf4j:slf4j-api:$slf4jVersion")
+ api("io.sentry:sentry:5.4.0") // Pufferfish
implementation("org.ow2.asm:asm:9.7")
implementation("org.ow2.asm:asm-commons:9.7")
implementation("org.ow2.asm:asm:9.7.1")
implementation("org.ow2.asm:asm-commons:9.7.1")
@@ -131,6 +132,13 @@ val generateApiVersioningFile by tasks.registering {
}
}

View File

@@ -52,10 +52,10 @@ index f1f97a85ec713c05c882d7588f4a3e4a017f4795..813f6cd253322538bdf96eb323dd23a7
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/inventory/view/AnvilView.java b/src/main/java/org/bukkit/inventory/view/AnvilView.java
index cc5ffd28a6d6244b99a94e52c6f5a0f73a64aed7..76e2b4fe49febb2897e1e9c5487a6b1e2e6bd76a 100644
index 3c1aa1e036bee08304c1cdca59f6a5bc0ba306c0..709fb2d1c7e3253034a651a9f68c003601b598a4 100644
--- a/src/main/java/org/bukkit/inventory/view/AnvilView.java
+++ b/src/main/java/org/bukkit/inventory/view/AnvilView.java
@@ -83,4 +83,34 @@ public interface AnvilView extends InventoryView {
@@ -89,4 +89,34 @@ public interface AnvilView extends InventoryView {
*/
void bypassEnchantmentLevelRestriction(boolean bypassEnchantmentLevelRestriction);
// Paper end - bypass anvil level restrictions

View File

@@ -5,12 +5,12 @@ Subject: [PATCH] ItemStack convenience methods
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index de469f32dd9a01e0e2fde016044a783dde0c5b98..c7fa497381c5c5d57fda8b9c1ef26f2e89523f66 100644
index 77a15a99e441bd81650806142581bd5b24f30e10..3ec2154956087a370799f0fa485f3b6cae894c69 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -5625,4 +5625,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
}
return Registry.BLOCK.get(material.key);
@@ -5636,4 +5636,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
public BlockType asBlockType() {
return blockType.get();
}
+
+ // Purpur start

View File

@@ -5,11 +5,11 @@ Subject: [PATCH] Rabid Wolf API
diff --git a/src/main/java/org/bukkit/entity/Wolf.java b/src/main/java/org/bukkit/entity/Wolf.java
index 4b84c04675775e2a606630b00de8afe51665cebc..ccbaf40a3131f477b4be2264401ad893725c1162 100644
index c73489f4b745bc84501ce94f0227b034d9768eae..a97129e71f16ec691759add664bdfd35ab90aaed 100644
--- a/src/main/java/org/bukkit/entity/Wolf.java
+++ b/src/main/java/org/bukkit/entity/Wolf.java
@@ -112,4 +112,20 @@ public interface Wolf extends Tameable, Sittable, io.papermc.paper.entity.Collar
return variant;
@@ -108,4 +108,20 @@ public interface Wolf extends Tameable, Sittable, io.papermc.paper.entity.Collar
return Registry.WOLF_VARIANT.getOrThrow(NamespacedKey.minecraft(key));
}
}
+

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Lobotomize stuck villagers
diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java
index 444744ea6f5921b0ae229995f8b15ea9d980c402..508bb3493e74a42ce8abf57bba05c08a715849dc 100644
index 1db3742024e9cd1b70af2d52b4b756a544c019df..9c722a762c88a88bb5ef18c3b9eab8b371360dac 100644
--- a/src/main/java/org/bukkit/entity/Villager.java
+++ b/src/main/java/org/bukkit/entity/Villager.java
@@ -375,4 +375,14 @@ public interface Villager extends AbstractVillager {
@@ -367,4 +367,14 @@ public interface Villager extends AbstractVillager {
*/
public void clearReputations();
// Paper end

View File

@@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/build.gradle.kts b/build.gradle.kts
index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a19e32bc84 100644
index de0474b8dce58cb419c00b7614d7dd66be832a02..6cfa3f9994de36e135658841aa3c091b90a14424 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -13,7 +13,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
@@ -45,8 +45,8 @@ index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a1
+
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
testImplementation("org.hamcrest:hamcrest:2.2")
@@ -71,6 +78,14 @@ paperweight {
testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0")
@@ -72,6 +79,14 @@ paperweight {
craftBukkitPackageVersion.set("v1_21_R1") // also needs to be updated in MappingEnvironment
}
@@ -61,7 +61,7 @@ index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a1
tasks.jar {
archiveClassifier.set("dev")
@@ -84,14 +99,14 @@ tasks.jar {
@@ -85,14 +100,14 @@ tasks.jar {
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
@@ -1413,7 +1413,7 @@ index f9abf63e12ea930275121b470e4e4906cff0fc12..2a8ffcdd262ea73844500846c6401cdd
if (this.isRainingAt(blockposition)) {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index befeaac4786760f6847a5945da2296a3e68dbb17..6c28390e33c07d4c65493019375b669ccfa5ae2d 100644
index 064d52d4479727c6a32bf357be8da32d1760e7fc..8f2214008d76d00267152b5db0cf0fbdd3fbbfb7 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1157,6 +1157,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -2478,10 +2478,10 @@ index 96d772eb02f79f8c478f5e6f065e387aa7665b18..c5ce412f321b8b4f31cc042893659e21
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index f78744b6d6075f584d9a88612661854f3f04aed1..83766d4a8e7c5bfd32689430c70b24741368ec00 100644
index d06aab9bd5cd901c8367f9680f5d27ddb17b3dc4..8fa2b2a67891d34ec95f7eed2a4118ddd8a5be15 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -483,7 +483,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@@ -489,7 +489,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@Override
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
diff --git a/build.gradle.kts b/build.gradle.kts
index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926ae335a0e0 100644
index 6c1b5b2ae207c0139d097c5ca857dd662a63f997..535b0c6a750cc77fb9340d6e080932f3eb3bde17 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -13,7 +13,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
@@ -27,8 +27,8 @@ index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926a
+
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
testImplementation("org.hamcrest:hamcrest:2.2")
@@ -99,14 +103,14 @@ tasks.jar {
testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0")
@@ -100,14 +104,14 @@ tasks.jar {
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
@@ -48,7 +48,7 @@ index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926a
"Build-Number" to (build ?: ""),
"Build-Time" to Instant.now().toString(),
"Git-Branch" to gitBranch, // Paper
@@ -163,7 +167,7 @@ fun TaskContainer.registerRunTask(
@@ -168,7 +172,7 @@ fun TaskContainer.registerRunTask(
name: String,
block: JavaExec.() -> Unit
): TaskProvider<JavaExec> = register<JavaExec>(name) {
@@ -267,10 +267,10 @@ index 2f4d6b56301195f8d39ed50dffe842464065bfe1..30ddb35140ae4a6faba98c191bb8eadb
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 2a4ebb4ea67a630f3ab4d728304221f8f5614de1..ea4c70568fb10afaab19ee447ea13a2e02a18c07 100644
index 8fa2b2a67891d34ec95f7eed2a4118ddd8a5be15..5505c13d0e602f39fe02dde350082c11a2f2a2e0 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -483,7 +483,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@@ -489,7 +489,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@Override
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {

View File

@@ -112,10 +112,10 @@ index 2479b47186202de40cdb4ae773c696a4adee9bad..97f83c9737726be0c3b6dc847b56970e
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef2913bed8d1 100644
index c7df339aeb62ee627edaf1bb4c8474b61e357ba6..bc3d41df5cc55281c513f8d4b35c71319119f499 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1070,6 +1070,7 @@ public final class CraftServer implements Server {
@@ -1072,6 +1072,7 @@ public final class CraftServer implements Server {
org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot
this.console.paperConfigurations.reloadConfigs(this.console);
@@ -123,7 +123,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29
for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
@@ -1085,6 +1086,7 @@ public final class CraftServer implements Server {
@@ -1087,6 +1088,7 @@ public final class CraftServer implements Server {
}
}
world.spigotConfig.init(); // Spigot
@@ -131,7 +131,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29
}
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
@@ -1102,6 +1104,7 @@ public final class CraftServer implements Server {
@@ -1104,6 +1106,7 @@ public final class CraftServer implements Server {
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
this.spark.registerCommandBeforePlugins(this); // Paper - spark
@@ -139,7 +139,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
@@ -2988,6 +2991,18 @@ public final class CraftServer implements Server {
@@ -2990,6 +2993,18 @@ public final class CraftServer implements Server {
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
}
@@ -159,7 +159,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29
public void restart() {
org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index c1e88c31910e96ef07cece05046c0b55e708b52d..22bdc8fe2796940eb971437e1c97d638bfbc42bb 100644
index b3ba6bccdbb08af27916f0c611c60b2595b90164..e5efd29e577e7f2ebf18be9a591edb2528a95442 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -176,6 +176,14 @@ public class Main {

View File

@@ -17,10 +17,10 @@ index d6431376184e5650b370cbab204e28bc31f4dac6..9ebe1f1797b5be562bc4f6d92b9a4d60
public final boolean spawnNpcs = this.get("spawn-npcs", true);
public final boolean pvp = this.get("pvp", true);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 145a8100b670c6d9fff0af621455ef2913bed8d1..99efe1d052b81141e4c0b26bdac65c943d209dd4 100644
index bc3d41df5cc55281c513f8d4b35c71319119f499..e86551d1518318003f5e8a6e8ed3e1f3c199fe34 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3230,4 +3230,11 @@ public final class CraftServer implements Server {
@@ -3232,4 +3232,11 @@ public final class CraftServer implements Server {
return this.potionBrewer;
}
// Paper end

View File

@@ -25,10 +25,10 @@ index 72b67696bc7d268b2fece68325963d25afb1ac26..8ba26b557a97668b67c317e0d2b137e5
}
// Paper end - further improve server tick loop
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 99efe1d052b81141e4c0b26bdac65c943d209dd4..b25afa9638da053bbed8cb93386a23c47e77e28d 100644
index e86551d1518318003f5e8a6e8ed3e1f3c199fe34..39112ee78ff7f55d9be109f4ad3dffb788f7380f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3236,5 +3236,10 @@ public final class CraftServer implements Server {
@@ -3238,5 +3238,10 @@ public final class CraftServer implements Server {
public String getServerName() {
return this.getProperties().serverName;
}
@@ -40,7 +40,7 @@ index 99efe1d052b81141e4c0b26bdac65c943d209dd4..b25afa9638da053bbed8cb93386a23c4
// Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 9960d7791d37fb7b43e8ffc3351528510ac537ca..9e6bcdaa2b3dabb2a7c50034eed81f0064a2f98f 100644
index cea00dc7478ef73984747992b2a8efc28677e2cb..b4d43c293084b808d167dd02f2d6cf865ac17983 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -195,6 +195,11 @@ public class PurpurConfig {

View File

@@ -193,10 +193,10 @@ index 792cb6adf0c7a6335cc5985fce8bed2e0f1149af..5734c5caffda79383ae30df20c3defb5
+ // Purpur end - Anvil API
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java
index 59f0b1207931a2a10d559f43e2926b17e6991257..02cef3b940822327e72c887f6b342c080c6d0f45 100644
index f86c95a13dff012de5db3e41ac261e9e8d44d9f3..1db0b790d824e419bb5fb6ab1f3003e120f9763b 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java
@@ -75,4 +75,26 @@ public class CraftAnvilView extends CraftInventoryView<AnvilMenu> implements Anv
@@ -75,4 +75,26 @@ public class CraftAnvilView extends CraftInventoryView<AnvilMenu, AnvilInventory
this.setMaximumRepairCost(legacy.getMaximumRepairCost());
}
}

View File

@@ -5,10 +5,18 @@ Subject: [PATCH] Add 5 second tps average in /tps
diff --git a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java
index 039a86034928a5eb7aaa2d7ca76a7bddcca346bd..308f67d0616e2d6bb135258f1fda53ccdee01430 100644
index 12b327eea95e0de9e9c39b7d039badee8ec46508..849ecc5af70901f1e40cb6c419f33f1cf6f3b6be 100644
--- a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java
+++ b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java
@@ -68,7 +68,7 @@ public class RAMDetails extends JList<String> {
@@ -61,6 +61,7 @@ public class RAMDetails extends JList<String> {
// Follows CraftServer#getTPS
double[] tps = new double[] {
+ server.tps5s.getAverage(), // Purpur
server.tps1.getAverage(),
server.tps5.getAverage(),
server.tps15.getAverage()
@@ -73,7 +74,7 @@ public class RAMDetails extends JList<String> {
vector.add("Memory use: " + (data.getUsedMem() / 1024L / 1024L) + " mb (" + (data.getFree() * 100L / data.getMax()) + "% free)");
vector.add("Heap: " + (data.getTotal() / 1024L / 1024L) + " / " + (data.getMax() / 1024L / 1024L) + " mb");
vector.add("Avg tick: " + DECIMAL_FORMAT.format((double)this.server.getAverageTickTimeNanos() / (double) TimeUtil.NANOSECONDS_PER_MILLISECOND) + " ms");
@@ -74,10 +82,10 @@ index 096c89bd01cec2abd151bf6fffc4847d1bcd548f..cd0a8a6a1be75cab8bbb8ee3ac17bb73
this.values[this.vp++ & 0xFF] = (int)(l * 100L / Runtime.getRuntime().maxMemory());
this.repaint();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b25afa9638da053bbed8cb93386a23c47e77e28d..ce3b91b5eaa697f70a2e591c6edce6bdd7f9bdcf 100644
index 39112ee78ff7f55d9be109f4ad3dffb788f7380f..eb764777e7bb1c8f6300ae74726891d9df95107b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3032,6 +3032,7 @@ public final class CraftServer implements Server {
@@ -3034,6 +3034,7 @@ public final class CraftServer implements Server {
@Override
public double[] getTPS() {
return new double[] {

View File

@@ -51,10 +51,10 @@ index 699bdc1f01a95ecdfe899493c8d81ec31cc9fa4b..d12469a1bbd37026012bfd6bce30d7a2
private int maxStack = MAX_STACK;
public List<HumanEntity> transaction = new java.util.ArrayList<HumanEntity>();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ce3b91b5eaa697f70a2e591c6edce6bdd7f9bdcf..ad71ba70b24481120e303e174ab07c7a31a068c6 100644
index eb764777e7bb1c8f6300ae74726891d9df95107b..8fc42922d2f5ab3de6050fe9e5f1d7a0b4ed19de 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1611,6 +1611,19 @@ public final class CraftServer implements Server {
@@ -1613,6 +1613,19 @@ public final class CraftServer implements Server {
return true;
}

View File

@@ -25,10 +25,10 @@ index cb9ae94b4fff8406cdbc40a1d5d38f0272a4a212..409d5c775b3187f2d3b58879e3c945d1
if (entityliving2 instanceof net.minecraft.world.entity.player.Player) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 0a3da3d35cd6b41003692d968b77384e7460ca97..b21cd824587f7bed53255f7d0fc7bedefd45f9a4 100644
index a187a3ff72d544c6ee5dbba95de206ec3b81c2d0..491c320d3745587757ddc9131a7585275e35d0c2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -513,7 +513,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -514,7 +514,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
net.minecraft.server.level.ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle();
getHandle().lastHurtByPlayer = entityPlayer;
getHandle().lastHurtByMob = entityPlayer;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Skip junit tests for purpur commands
diff --git a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java
index ca71c688b37ce2c8b712a4f9216cf872c8edf78e..83f2c04d083eced64bc67661eed0ddfdddc497cc 100644
index 75ed5050f72c001d6eab117a2c0b352a413548bd..180c0a532bbac10a8280b63eb7aa783a1bfbb237 100644
--- a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java
+++ b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java
@@ -45,6 +45,7 @@ public class MinecraftCommandPermissionsTest extends AbstractTestingBase {
@@ -46,6 +46,7 @@ public class MinecraftCommandPermissionsTest {
Set<String> foundPerms = new HashSet<>();
for (CommandNode<CommandSourceStack> child : root.getChildren()) {
final String vanillaPerm = VanillaCommandWrapper.getPermission(child);
@@ -16,7 +16,7 @@ index ca71c688b37ce2c8b712a4f9216cf872c8edf78e..83f2c04d083eced64bc67661eed0ddfd
if (!perms.contains(vanillaPerm)) {
missing.add("Missing permission for " + child.getName() + " (" + vanillaPerm + ") command");
} else {
@@ -57,6 +58,25 @@ public class MinecraftCommandPermissionsTest extends AbstractTestingBase {
@@ -58,6 +59,25 @@ public class MinecraftCommandPermissionsTest {
}
private static final List<String> TO_SKIP = List.of(

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Debug Marker API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ad71ba70b24481120e303e174ab07c7a31a068c6..300c8a94771d56e6bb6da692092882c329a9f0e4 100644
index 8fc42922d2f5ab3de6050fe9e5f1d7a0b4ed19de..647c86b529d7da3fb96126a0a7b0fa37a52453f4 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1622,6 +1622,42 @@ public final class CraftServer implements Server {
@@ -1624,6 +1624,42 @@ public final class CraftServer implements Server {
public void removeFuel(org.bukkit.Material material) {
net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.removeFuel(net.minecraft.world.item.ItemStack.fromBukkitCopy(new ItemStack(material)));
}
@@ -52,7 +52,7 @@ index ad71ba70b24481120e303e174ab07c7a31a068c6..300c8a94771d56e6bb6da692092882c3
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 02dca1188af7b235610d4f432cae47bcd624d5b8..ad74d80f620d0e481a9613fcb29d3ab114154a4e 100644
index 9ad02908bbcbaec7b6ce2abd4091a8146ee1616b..0921894dbc0d81b943827ecda6e6befdbfd715f5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -2390,6 +2390,42 @@ public class CraftWorld extends CraftRegionAccessor implements World {