Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@47650100 Improve error messages when PluginRemapper fails to initialize (#12598)
PaperMC/Paper@6f315356 Add MCUtil#toLocation from Folia
PaperMC/Paper@2ba1675c Replace deprecated Thread#getId usage with Thread#threadId
PaperMC/Paper@4eda045b Backport fix for MC-296337 (Fixes #12617) (#12619)
PaperMC/Paper@7ebc94c2 Add Registry#getTagValues (#12603)
PaperMC/Paper@e87320d5 Fix UOE when using generateTree with pale oak (#12616)
PaperMC/Paper@94f29035 Do not blow up accessing unregistered memories from API (Fixes #12618) (#12639)
PaperMC/Paper@03efecf0 Do not fire PlayerDropItemEvent for /give command
PaperMC/Paper@3527ccdf feat: expose updateDemand and restock on Villager (#12608)
PaperMC/Paper@320f25cb fix sponge-absorb deleting chest content (#12647)
PaperMC/Paper@95565e0f Add missing attribute serialization updater
PaperMC/Paper@519e4224 Fix infinite loop in RegionFile IO
PaperMC/Paper@ba7fb23d Finish moving over to Holderable (#12646)
PaperMC/Paper@39203a65 [ci/skip] Publish PR API and dev bundles (#12672)
PaperMC/Paper@6f139cef 1.21.6 dev
PaperMC/Paper@a0ef7661 tweak mob goal keys, generate missing api
PaperMC/Paper@77834d34 Revert "fix sponge-absorb deleting chest content (#12647)"
PaperMC/Paper@153080f9 Allow cache writes on main and dev branches
PaperMC/Paper@9dcbf0a6 Throw exception for CraftMagicNumbers#getMappingsVersion (#12676)
PaperMC/Paper@16fd59e0 [ci/skip] Fix test results event file
This commit is contained in:
granny
2025-06-16 20:32:44 -07:00
parent a3c11d6845
commit b228e3160d
11 changed files with 29 additions and 52 deletions

View File

@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
version = 1.21.6-R0.1-SNAPSHOT
mcVersion = 1.21.6-rc1
paperCommit = a5f209c60ebc70189918deda6b00ad152b11b3a0
paperCommit = 16fd59e06d232a648dd11e01635e320936eca300
org.gradle.configuration-cache = true
org.gradle.caching = true

View File

@@ -28,7 +28,7 @@
}
}
}
@@ -165,16 +_,18 @@
@@ -165,8 +_,10 @@
val services = objects.newInstance<Services>()
tasks.withType<Javadoc> {
@@ -40,30 +40,6 @@
options.use()
options.isDocFilesSubDirs = true
options.links(
"https://guava.dev/releases/33.3.1-jre/api/docs/",
- "https://javadoc.io/doc/org.yaml/snakeyaml/2.2/",
- "https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/",
- "https://javadoc.io/doc/org.joml/joml/1.10.8/",
- "https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0",
+ // "https://javadoc.io/doc/org.yaml/snakeyaml/2.2/",
+ // "https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/",
+ // "https://javadoc.io/doc/org.joml/joml/1.10.8/",
+ // "https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0",
"https://jspecify.dev/docs/api/",
"https://jd.advntr.dev/api/$adventureVersion/",
"https://jd.advntr.dev/key/$adventureVersion/",
@@ -183,9 +_,9 @@
"https://jd.advntr.dev/text-serializer-legacy/$adventureVersion/",
"https://jd.advntr.dev/text-serializer-plain/$adventureVersion/",
"https://jd.advntr.dev/text-logger-slf4j/$adventureVersion/",
- "https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/",
+ // "https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/",
"https://logging.apache.org/log4j/2.x/javadoc/log4j-api/",
- "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.7.3",
+ // "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.7.3",
)
options.tags("apiNote:a:API Note:")
@@ -199,11 +_,11 @@
}

View File

@@ -1,9 +1,9 @@
--- a/src/main/java/org/bukkit/entity/Villager.java
+++ b/src/main/java/org/bukkit/entity/Villager.java
@@ -391,4 +_,13 @@
* reputation regardless of its impact and the player associated.
@@ -408,4 +_,13 @@
* Demand is still updated even if all events are canceled.
*/
public void clearReputations();
public void restock();
+
+ // Purpur start
+ /**

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Barrels and enderchests 6 rows
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
index 803d022cb325c850f830e2b52cd1917d230807de..5a31e11e72e80e5a5aef211a45370fb293dfd144 100644
index cc26f97e1e72eb077dc60691dadbcd5a52235c0d..1f03fb4c45f0cc97492d3821245cc4c758d258e1 100644
--- a/net/minecraft/server/players/PlayerList.java
+++ b/net/minecraft/server/players/PlayerList.java
@@ -1036,6 +1036,27 @@ public abstract class PlayerList {
@@ -1037,6 +1037,27 @@ public abstract class PlayerList {
player.getBukkitEntity().recalculatePermissions(); // CraftBukkit
this.server.getCommands().sendCommands(player);
} // Paper - Add sendOpLevel API

View File

@@ -104,7 +104,7 @@
@@ -505,7 +_,7 @@
private void updateDemand() {
public void updateDemand() {
for (MerchantOffer merchantOffer : this.getOffers()) {
- merchantOffer.updateDemand();
+ merchantOffer.updateDemand(this.level().purpurConfig.villagerMinimumDemand); // Purpur - Configurable minimum demand for trades

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] API for any mob to burn daylight
Co-authored by: Encode42 <me@encode42.dev>
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index df23fbae231eca494131bf7ec78924669cd5e03d..834389b78d9342e96b3473c9cb6e40ca6cd4e46f 100644
index d00238a0f39c5b19575cd0463b0b5da1f1db1a2e..55ae7d0a5b36ff10880d4e5fb1bb7f7724a743fd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -120,6 +120,13 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -24,10 +24,10 @@ index df23fbae231eca494131bf7ec78924669cd5e03d..834389b78d9342e96b3473c9cb6e40ca
Preconditions.checkArgument(entity != null, "Unknown entity");
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 78846e0abe010997b6a5da04f2be4b5ffba5dd0a..5f30621d717bd0728ddc074072ab7a02c487b253 100644
index 69d92e708bac7925ff30e403e94200236536b670..fc4fa99a993a017676da2be3cb254399d421bce1 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -1165,4 +1165,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -1167,4 +1167,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
public CombatTracker getCombatTracker() {
return this.getHandle().getCombatTracker().paperCombatTracker;
}

View File

@@ -1,13 +1,14 @@
--- a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
+++ b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
@@ -27,6 +_,10 @@
static {
// TODO these kinda should be checked on each release, in case obfuscation changes
deobfuscationMap.put("abstract_skeleton_1", "abstract_skeleton_melee");
+ // Purpur start - Add option to disable zombie aggressiveness towards villagers
+ deobfuscationMap.put("zombie_1", "zombie_attack_villager");
+ deobfuscationMap.put("drowned_1", "drowned_attack_villager");
+ // Purpur end - Add option to disable zombie aggressiveness towards villagers
@@ -143,6 +_,11 @@
private static final Map<String, String> NESTED_CLASS_NAMES = Util.make(new HashMap<>(), map -> {
map.put("AbstractSkeleton$1", "AbstractSkeletonMelee");
ignored.add("goal_selector_1");
ignored.add("goal_selector_2");
+ // Purpur start - Add option to disable zombie aggressiveness towards villagers
+ map.put("Zombie$1", "ZombieAttackVillager");
+ map.put("Drowned$1", "DrownedAttackVillager");
+ // Purpur end - Add option to disable zombie aggressiveness towards villagers
+
// remove duplicate
map.put("TraderLlama$TraderLlamaDefendWanderingTraderGoal", "TraderLlamaDefendWanderingTraderGoal");
map.put("AbstractIllager$RaiderOpenDoorGoal", "RaiderOpenDoorGoal");

View File

@@ -1,6 +1,6 @@
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -513,7 +_,7 @@
@@ -514,7 +_,7 @@
net.minecraft.server.level.ServerPlayer nmsKiller = killer == null ? null : ((CraftPlayer) killer).getHandle();
this.getHandle().setLastHurtByMob(nmsKiller);
if (nmsKiller != null) {

View File

@@ -1,8 +1,8 @@
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
@@ -380,4 +_,11 @@
public void clearReputations() {
getHandle().getGossips().gossips.clear();
@@ -258,4 +_,11 @@
public void restock() {
getHandle().restock();
}
+
+ // Purpur start - Lobotomize stuck villagers

View File

@@ -1,6 +1,6 @@
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java
@@ -91,6 +_,18 @@
@@ -90,6 +_,18 @@
this.getHandle().setSoundVariant(CraftSoundVariant.bukkitToMinecraftHolder(soundVariant));
}
@@ -16,6 +16,6 @@
+ }
+ // Purpur end - Configurable chance for wolves to spawn rabid
+
public static class CraftVariant implements Variant, Handleable<WolfVariant> {
public static class CraftVariant extends HolderableBase<WolfVariant> implements Variant {
public static Variant minecraftToBukkit(WolfVariant minecraft) {

View File

@@ -1,6 +1,6 @@
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -491,7 +_,7 @@
@@ -481,7 +_,7 @@
@Override
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {