Restore some SANITY around nullability annotations

Some of these were wrong (scoreboard manager), others are counter to
everything everyone expects (Locations world being null, which wasnt ever safe EVER)
others are just too noisy.

Replace some with Contract to get rid of the nullability constraint and go back to
the old days of IDE not considering it strictly one way or the other.

Also, stop requiring annotations on package-private.

Introduces the next Developer Perk for Paper-API: Your plugin isn't yellow anymore.

Also fixed random dupe code in ensureServerConversions that got mistakenly set in the update.
This commit is contained in:
Aikar
2019-03-24 19:13:07 -04:00
parent b3005192c9
commit fc271fbed3
6 changed files with 153 additions and 9 deletions

View File

@@ -29,7 +29,7 @@ index cbcbe8c8a..8e602cf51 100644
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
index 7b709457f..e8f97c949 100644
index 7b709457f..4ee01be5f 100644
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
@@ -0,0 +0,0 @@ public class ItemStack implements Cloneable, ConfigurationSerializable {
@@ -37,11 +37,6 @@ index 7b709457f..e8f97c949 100644
}
- return result;
+ // Set damage again incase meta overwrote it
+ if (args.containsKey("damage")) {
+ result.setDurability(damage);
+ }
+
+ return result.ensureServerConversions(); // Paper
}