5c7081fecc
* Updated Upstream (Bukkit/CraftBukkit) Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 45690fe9 SPIGOT-5047: Correct slot types for 1.14 inventories CraftBukkit Changes: 4090d01f SPIGOT-5047: Correct slot types for 1.14 inventories e8c08362 SPIGOT-5046: World#getLoadedChunks returning inaccessible cached chunks. d445af3b SPIGOT-5067: Add item meta for 1.14 spawn eggs * Bring Chunk load checks in-line with spigot As of the last upstream merge spigot now checks ticket level status when returning loaded chunks for a world from api. Now our checks will respect that decision. * Fix spawn ticket levels Vanilla would keep the inner chunks of spawn available for ticking, however my changes made all chunks non-ticking. Resolve by changing ticket levels for spawn chunks inside the border to respect this behavior. * Make World#getChunkIfLoadedImmediately return only entity ticking chunks Mojang appears to be using chunks with level > 33 (non-ticking chunks) as cached chunks and not actually loaded chunks. * Bring all loaded checks in line with spigot Loaded chunks must be at least border chunks, or level <= 33
130 lines
5.4 KiB
Diff
130 lines
5.4 KiB
Diff
From d6296efc1c050316fb10c82a548799879957e508 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 24 Mar 2019 18:39:01 -0400
|
|
Subject: [PATCH] Flip some Spigot API null annotations
|
|
|
|
while some of these may of been true, they are extreme cases and cause
|
|
a ton of noise to plugin developers.
|
|
|
|
These do not help plugin developers if they bring moise noise than value.
|
|
|
|
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
|
index 2148a3c26..6db691591 100644
|
|
--- a/src/main/java/org/bukkit/Bukkit.java
|
|
+++ b/src/main/java/org/bukkit/Bukkit.java
|
|
@@ -1153,7 +1153,7 @@ public final class Bukkit {
|
|
*
|
|
* @return the scoreboard manager or null if no worlds are loaded.
|
|
*/
|
|
- @Nullable
|
|
+ @NotNull // Paper
|
|
public static ScoreboardManager getScoreboardManager() {
|
|
return server.getScoreboardManager();
|
|
}
|
|
@@ -1450,7 +1450,7 @@ public final class Bukkit {
|
|
* @param clazz the class of the tag entries
|
|
* @return the tag or null
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
public static <T extends Keyed> Tag<T> getTag(@NotNull String registry, @NotNull NamespacedKey tag, @NotNull Class<T> clazz) {
|
|
return server.getTag(registry, tag, clazz);
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
|
|
index 4e69f277b..2a40da99f 100644
|
|
--- a/src/main/java/org/bukkit/Location.java
|
|
+++ b/src/main/java/org/bukkit/Location.java
|
|
@@ -46,7 +46,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @param y The y-coordinate of this new location
|
|
* @param z The z-coordinate of this new location
|
|
*/
|
|
- public Location(@Nullable final World world, final double x, final double y, final double z) {
|
|
+ public Location(@UndefinedNullability final World world, final double x, final double y, final double z) { // Paper
|
|
this(world, x, y, z, 0, 0);
|
|
}
|
|
|
|
@@ -60,7 +60,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @param yaw The absolute rotation on the x-plane, in degrees
|
|
* @param pitch The absolute rotation on the y-plane, in degrees
|
|
*/
|
|
- public Location(@Nullable final World world, final double x, final double y, final double z, final float yaw, final float pitch) {
|
|
+ public Location(@UndefinedNullability final World world, final double x, final double y, final double z, final float yaw, final float pitch) {
|
|
if (world != null) {
|
|
this.world = new WeakReference<>(world);
|
|
}
|
|
@@ -102,7 +102,7 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
|
* @throws IllegalArgumentException when world is unloaded
|
|
* @see #isWorldLoaded()
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability
|
|
public World getWorld() {
|
|
if (this.world == null) {
|
|
return null;
|
|
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
|
index 1cbb9bc66..27d3b5ad7 100644
|
|
--- a/src/main/java/org/bukkit/Server.java
|
|
+++ b/src/main/java/org/bukkit/Server.java
|
|
@@ -962,7 +962,7 @@ public interface Server extends PluginMessageRecipient {
|
|
*
|
|
* @return the scoreboard manager or null if no worlds are loaded.
|
|
*/
|
|
- @Nullable
|
|
+ @NotNull // Paper
|
|
ScoreboardManager getScoreboardManager();
|
|
|
|
/**
|
|
@@ -1232,7 +1232,7 @@ public interface Server extends PluginMessageRecipient {
|
|
* @param clazz the class of the tag entries
|
|
* @return the tag or null
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability
|
|
<T extends Keyed> Tag<T> getTag(@NotNull String registry, @NotNull NamespacedKey tag, @NotNull Class<T> clazz);
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
index 3cada3487..03ba22659 100644
|
|
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
|
@@ -3,6 +3,7 @@ package org.bukkit.inventory;
|
|
import org.bukkit.Color;
|
|
import org.bukkit.Material;
|
|
import org.bukkit.Server;
|
|
+import org.bukkit.UndefinedNullability;
|
|
import org.bukkit.inventory.meta.BookMeta;
|
|
import org.bukkit.inventory.meta.ItemMeta;
|
|
import org.bukkit.inventory.meta.SkullMeta;
|
|
@@ -25,7 +26,7 @@ public interface ItemFactory {
|
|
* @return a new ItemMeta that could be applied to an item stack of the
|
|
* specified material
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
ItemMeta getItemMeta(@NotNull final Material material);
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
index 6d18de762..495161f62 100644
|
|
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
|
|
@@ -8,6 +8,7 @@ import java.util.Set; // Paper
|
|
import org.apache.commons.lang.Validate;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.Material;
|
|
+import org.bukkit.UndefinedNullability;
|
|
import org.bukkit.Utility;
|
|
import org.bukkit.configuration.serialization.ConfigurationSerializable;
|
|
import org.bukkit.enchantments.Enchantment;
|
|
@@ -528,7 +529,7 @@ public class ItemStack implements Cloneable, ConfigurationSerializable {
|
|
*
|
|
* @return a copy of the current ItemStack's ItemData
|
|
*/
|
|
- @Nullable
|
|
+ @UndefinedNullability // Paper
|
|
public ItemMeta getItemMeta() {
|
|
return this.meta == null ? Bukkit.getItemFactory().getItemMeta(this.type) : this.meta.clone();
|
|
}
|
|
--
|
|
2.21.0
|
|
|