Skip to content

Commit 478d55e

Browse files
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@6d63005 Fix setEggCount method from TurtleLayEggEvent (#8385) PaperMC/Paper@abe53a7 Fix typos in isTickingWorlds API javadocs (#8382) PaperMC/Paper@01a1387 Rewrite chunk system (#8177)
1 parent 3e02573 commit 478d55e

57 files changed

Lines changed: 621 additions & 3067 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
group = org.purpurmc.purpur
22
version = 1.19.2-R0.1-SNAPSHOT
33

4-
paperCommit = b4c025b92c48fb2b55a7433f85627184aee5d90a
4+
paperCommit = 01a13871deefa50e186a10b63f71c5e0459e7d30
55

66
org.gradle.caching = true
77
org.gradle.parallel = true

patches/server/0001-Pufferfish-Server-Changes.patch

Lines changed: 209 additions & 2478 deletions
Large diffs are not rendered by default.

patches/server/0002-Fix-pufferfish-issues.patch

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix pufferfish issues
55

66

77
diff --git a/build.gradle.kts b/build.gradle.kts
8-
index 7074295d7399d03e259598bb4bfa0f21434d74be..26f8979c1a150159823be1693cf2aa5366401015 100644
8+
index 0485d126f799789b5d5abcaf96da96df25a12dfd..692789a473665c1fc7be56b8913cd208ae27d2e5 100644
99
--- a/build.gradle.kts
1010
+++ b/build.gradle.kts
1111
@@ -49,8 +49,8 @@ dependencies {
@@ -20,10 +20,10 @@ index 7074295d7399d03e259598bb4bfa0f21434d74be..26f8979c1a150159823be1693cf2aa53
2020
}
2121
// Pufferfish end
2222
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
23-
index 8ed9f14f1ca71111a8215b28821bd5e398c0d0a6..42c88ef31474690c95f7cfe7c3075e1f854c4005 100644
23+
index f8750675044708e71dbf6293be6ce36bd6c510ca..b69799d0ae0ce8b176b910da886e71c4d25c94aa 100644
2424
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
2525
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
26-
@@ -775,7 +775,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
26+
@@ -805,7 +805,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
2727
}
2828
// Paper start - optimise random block ticking
2929
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
@@ -33,7 +33,7 @@ index 8ed9f14f1ca71111a8215b28821bd5e398c0d0a6..42c88ef31474690c95f7cfe7c3075e1f
3333

3434
private int currentIceAndSnowTick = 0; protected void resetIceAndSnowTick() { this.currentIceAndSnowTick = this.randomTickRandom.nextInt(16); } // Pufferfish
3535
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
36-
index 388a153113d87ba99515828c6d535110b4413c7c..29a2ba6b84c01280f8c7f32e6a78e3dd6c53cb07 100644
36+
index 0277633fd328ef9993fea4ac29df83b5b00c0f42..35d6a8fe168caa5b68b471bd78cc95b99758d1b0 100644
3737
--- a/src/main/java/net/minecraft/world/level/Level.java
3838
+++ b/src/main/java/net/minecraft/world/level/Level.java
3939
@@ -271,7 +271,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -46,10 +46,10 @@ index 388a153113d87ba99515828c6d535110b4413c7c..29a2ba6b84c01280f8c7f32e6a78e3dd
4646
// Pufferfish start - ensure these get inlined
4747
private final int minBuildHeight, minSection, height, maxBuildHeight, maxSection;
4848
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
49-
index 0b08a91ae9dc73c011dbb5f517becac7d08fd1e9..6fbf26eb7da8df2f0a4158ff9f12022518ada8e3 100644
49+
index 34334c139176e0aa9f6d93a87821508d17567cfc..df2786516fe641edff7bbe9fe0665bf07502d830 100644
5050
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
5151
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
52-
@@ -136,7 +136,7 @@ public class LevelChunk extends ChunkAccess {
52+
@@ -130,7 +130,7 @@ public class LevelChunk extends ChunkAccess {
5353
this.fluidTicks = fluidTickScheduler;
5454
// CraftBukkit start
5555
this.bukkitChunk = new org.bukkit.craftbukkit.CraftChunk(this);

patches/server/0003-Rebrand.patch

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
55

66

77
diff --git a/build.gradle.kts b/build.gradle.kts
8-
index 26f8979c1a150159823be1693cf2aa5366401015..441a18132eb60e1af8b624ab7cf3de61669ced1f 100644
8+
index 692789a473665c1fc7be56b8913cd208ae27d2e5..4e4bc7e55a81dc44d7f6cfc6a8761141d0d3bb6c 100644
99
--- a/build.gradle.kts
1010
+++ b/build.gradle.kts
1111
@@ -9,7 +9,7 @@ plugins {
@@ -27,7 +27,7 @@ index 26f8979c1a150159823be1693cf2aa5366401015..441a18132eb60e1af8b624ab7cf3de61
2727
runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.5")
2828
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3")
2929
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3")
30-
@@ -84,7 +87,7 @@ tasks.jar {
30+
@@ -83,7 +86,7 @@ tasks.jar {
3131
attributes(
3232
"Main-Class" to "org.bukkit.craftbukkit.Main",
3333
"Implementation-Title" to "CraftBukkit",
@@ -36,7 +36,7 @@ index 26f8979c1a150159823be1693cf2aa5366401015..441a18132eb60e1af8b624ab7cf3de61
3636
"Implementation-Vendor" to date, // Paper
3737
"Specification-Title" to "Bukkit",
3838
"Specification-Version" to project.version,
39-
@@ -183,7 +186,7 @@ fun TaskContainer.registerRunTask(
39+
@@ -182,7 +185,7 @@ fun TaskContainer.registerRunTask(
4040
name: String,
4141
block: JavaExec.() -> Unit
4242
): TaskProvider<JavaExec> = register<JavaExec>(name) {
@@ -168,7 +168,7 @@ index abe37c7c3c6f5ab73afd738ec78f06d7e4d2ed96..b5b6657e52e4f7a630229bd3ba433438
168168
stringbuilder.append(CrashReport.getErrorComment());
169169
stringbuilder.append("\n\n");
170170
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
171-
index 67e150e35d328eb13c8f86e61dab2f11c76b21df..cb907fe3988705e5dd961a9b9b2cbc9321e59d69 100644
171+
index af9da39dffda01325af2ab3dd8b5e1efb18e013a..957587f5c3f9c26794c80146b4deb282af3469e8 100644
172172
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
173173
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
174174
@@ -298,7 +298,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -180,7 +180,7 @@ index 67e150e35d328eb13c8f86e61dab2f11c76b21df..cb907fe3988705e5dd961a9b9b2cbc93
180180
public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning", () -> true); // Pufferfish - optimize mob spawning
181181

182182
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
183-
@@ -913,7 +913,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
183+
@@ -923,7 +923,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
184184
shutdownThread = Thread.currentThread();
185185
org.spigotmc.WatchdogThread.doStop(); // Paper
186186
if (!isSameThread()) {
@@ -189,7 +189,7 @@ index 67e150e35d328eb13c8f86e61dab2f11c76b21df..cb907fe3988705e5dd961a9b9b2cbc93
189189
while (this.getRunningThread().isAlive()) {
190190
this.getRunningThread().stop();
191191
try {
192-
@@ -1676,7 +1676,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
192+
@@ -1656,7 +1656,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
193193

194194
@DontObfuscate
195195
public String getServerModName() {
@@ -199,7 +199,7 @@ index 67e150e35d328eb13c8f86e61dab2f11c76b21df..cb907fe3988705e5dd961a9b9b2cbc93
199199

200200
public SystemReport fillSystemReport(SystemReport details) {
201201
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
202-
index 519883c5549744e047a8a96afee142746fcb49cd..7c09182f465b66979e1981222d20fa4f574680d5 100644
202+
index d4efadbc87ee0b6cb8564c57fc9dcbb48367a767..01928849f9dd42a3ea8826b56d419e8c09450f47 100644
203203
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
204204
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
205205
@@ -285,11 +285,12 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -218,7 +218,7 @@ index 519883c5549744e047a8a96afee142746fcb49cd..7c09182f465b66979e1981222d20fa4f
218218
// Spigot end
219219
DedicatedServer.LOGGER.warn("To change this, set \"online-mode\" to \"true\" in the server.properties file.");
220220
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
221-
index c2356ed1a00fd8087cca285be5e7f6a5442e73fb..13399302916bbf39cd08cfcefaf3358ad58ee8c4 100644
221+
index 8db3bcc63aeb23e5b50864ebea675acc75d184ff..3aa9a667d988fe2b6118ce4b3a4551e7e17b7884 100644
222222
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
223223
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
224224
@@ -113,7 +113,7 @@ public class RegionFileStorage implements AutoCloseable {
@@ -231,7 +231,7 @@ index c2356ed1a00fd8087cca285be5e7f6a5442e73fb..13399302916bbf39cd08cfcefaf3358a
231231

232232
private static final int DEFAULT_SIZE_THRESHOLD = 1024 * 8;
233233
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
234-
index ff520a7fa8235a46d861df60569077be258d7cb1..f9b2b6f8bededc5d87fcaac59ff14bac7d76073b 100644
234+
index b8efe50c860a7537f345f46f3b3d68906ad54006..8fc70e7f75786ad10a97676a04bc0bc91f9526fe 100644
235235
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
236236
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
237237
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
@@ -323,10 +323,10 @@ index 80553face9c70c2a3d897681e7761df85b22d464..fb87620c742ff7912f5e8ccd2a7930dd
323323

324324
if (stream != null) {
325325
diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java
326-
index d568fc92d03c313a782796cc720a1ebb1a5ad8be..4a88fbee3566ba54b615745a2e4801691f494557 100644
326+
index e9fa7faaa4451e36b3908cbcbbe0baf213abde96..a810bfd3b8d6bd4d8f2ef8797e4281ae4fe8a67f 100644
327327
--- a/src/main/java/org/spigotmc/WatchdogThread.java
328328
+++ b/src/main/java/org/spigotmc/WatchdogThread.java
329-
@@ -96,7 +96,7 @@ public class WatchdogThread extends Thread
329+
@@ -96,7 +96,7 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
330330

331331
private WatchdogThread(long timeoutTime, boolean restart)
332332
{
@@ -335,7 +335,7 @@ index d568fc92d03c313a782796cc720a1ebb1a5ad8be..4a88fbee3566ba54b615745a2e480169
335335
this.timeoutTime = timeoutTime;
336336
this.restart = restart;
337337
earlyWarningEvery = Math.min(io.papermc.paper.configuration.GlobalConfiguration.get().watchdog.earlyWarningEvery, timeoutTime); // Paper
338-
@@ -155,14 +155,14 @@ public class WatchdogThread extends Thread
338+
@@ -155,14 +155,14 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
339339
if (isLongTimeout) {
340340
// Paper end
341341
log.log( Level.SEVERE, "------------------------------" );
@@ -353,7 +353,7 @@ index d568fc92d03c313a782796cc720a1ebb1a5ad8be..4a88fbee3566ba54b615745a2e480169
353353
//
354354
if ( net.minecraft.world.level.Level.lastPhysicsProblem != null )
355355
{
356-
@@ -185,12 +185,12 @@ public class WatchdogThread extends Thread
356+
@@ -185,12 +185,12 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
357357
// Paper end
358358
} else
359359
{
@@ -365,10 +365,10 @@ index d568fc92d03c313a782796cc720a1ebb1a5ad8be..4a88fbee3566ba54b615745a2e480169
365365
log.log( Level.SEVERE, "------------------------------" );
366366
- log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Paper!):" ); // Paper
367367
+ log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Purpur!):" ); // Paper // Purpur
368-
com.destroystokyo.paper.io.chunk.ChunkTaskManager.dumpAllChunkLoadInfo(); // Paper
368+
io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler.dumpAllChunkLoadInfo(isLongTimeout); // Paper // Paper - rewrite chunk system
369369
this.dumpTickingInfo(); // Paper - log detailed tick information
370-
WatchdogThread.dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( server.serverThread.getId(), Integer.MAX_VALUE ), log );
371-
@@ -206,7 +206,7 @@ public class WatchdogThread extends Thread
370+
WatchdogThread.dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( MinecraftServer.getServer().serverThread.getId(), Integer.MAX_VALUE ), log );
371+
@@ -206,7 +206,7 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
372372
WatchdogThread.dumpThread( thread, log );
373373
}
374374
} else {

patches/server/0005-Purpur-client-support.patch

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@ Subject: [PATCH] Purpur client support
55

66

77
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
8-
index 3615576c24d5d6790a6894a91180de25fa0e5a9c..266a26d73dd5aec427b64a638693decf70ea36cb 100644
8+
index af7acb628b84539b1ee5ef1934f75f091c4cd91e..63aef471ceba18c2b296f4e287837c6df44809d7 100644
99
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
1010
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
11-
@@ -262,6 +262,7 @@ public class ServerPlayer extends Player {
11+
@@ -261,6 +261,7 @@ public class ServerPlayer extends Player {
1212
public Integer clientViewDistance;
1313
// CraftBukkit end
1414
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
1515
+ public boolean purpurClient = false; // Purpur
1616

17+
public boolean isRealPlayer; // Paper
1718
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
18-
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
1919
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
2020
index cc55cb14f2d0f656213be25a1e428132871ac5dd..184c5540e519edd0430ae586bfae93d3ff798de2 100644
2121
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -43,7 +43,7 @@ index cc55cb14f2d0f656213be25a1e428132871ac5dd..184c5540e519edd0430ae586bfae93d3
4343
try {
4444
byte[] data = new byte[packet.data.readableBytes()];
4545
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
46-
index 099987645142a5a065b5bd377a16d9d6c59dabd9..3a4f2453831eda258ab5f7907204ee5d2bdac4c7 100644
46+
index a508619e6855ee0b96a9bf61526b1b88abf0e732..ea2c76116d8328d2ba6e5e7cc2ed1464f43a8c82 100644
4747
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
4848
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
4949
@@ -2937,4 +2937,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

patches/server/0007-Component-related-conveniences.patch

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ Subject: [PATCH] Component related conveniences
55

66

77
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
8-
index 3300a10b2558651c68fac18939815eb45889152b..a16f72e34af8cfef50622dba18750926ace1008e 100644
8+
index 63aef471ceba18c2b296f4e287837c6df44809d7..5f854b9d25d5965268a089a992ee9bacf7b3aa0f 100644
99
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
1010
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
11-
@@ -1705,6 +1705,26 @@ public class ServerPlayer extends Player {
11+
@@ -1690,6 +1690,26 @@ public class ServerPlayer extends Player {
1212
this.lastSentExp = -1; // CraftBukkit - Added to reset
1313
}
1414

@@ -36,7 +36,7 @@ index 3300a10b2558651c68fac18939815eb45889152b..a16f72e34af8cfef50622dba18750926
3636
public void displayClientMessage(Component message, boolean overlay) {
3737
this.sendSystemMessage(message, overlay);
3838
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
39-
index 5999d85e38951503fc83b40cfe39671921ae5088..263e61b655d0ec58b63da859df46f0962de45ec7 100644
39+
index 06eda955f96b5fe2d08ed0d39229c7a6ebb88931..16154d89a1c67ebc9dc6ecaeb214799e75d16b6f 100644
4040
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
4141
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
4242
@@ -1074,6 +1074,20 @@ public abstract class PlayerList {
@@ -81,10 +81,10 @@ index 67bce77093dcc126098731047447da2031e3388d..c4088446d30c3b25cf196f51fd394cd0
8181
return this.isFireSource;
8282
}
8383
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
84-
index 4971ec79a114fd0d7540eaa0ef54b18c4bfbea57..4a069182f6cc3b40f6b5eabb85f70365bd9bfdcc 100644
84+
index fc4bd8ad4836aa6bdd228885f0aeb22500782af5..d9348a2f58eea3bd1d70851bedf29fd96430e1ff 100644
8585
--- a/src/main/java/net/minecraft/world/entity/Entity.java
8686
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
87-
@@ -3797,6 +3797,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
87+
@@ -3798,6 +3798,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
8888
return SlotAccess.NULL;
8989
}
9090

0 commit comments

Comments
 (0)