From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Sat, 9 Dec 2023 11:47:53 -0800
Subject: [PATCH] Experimental annotations change


diff --git a/src/main/java/org/bukkit/FeatureFlag.java b/src/main/java/org/bukkit/FeatureFlag.java
index a96600443a0997c3a696a637422ab66ee1884fb0..20eb27ee041f77f295eb271f878c524ce5592251 100644
--- a/src/main/java/org/bukkit/FeatureFlag.java
+++ b/src/main/java/org/bukkit/FeatureFlag.java
@@ -29,6 +29,7 @@ public interface FeatureFlag extends Keyed {
     @Deprecated
     public static final FeatureFlag UPDATE_1_20 = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("update_1_20"));
 
+    @ApiStatus.Experimental // Paper - add missing annotation
     public static final FeatureFlag TRADE_REBALANCE = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("trade_rebalance"));
 
     /**
@@ -39,10 +40,13 @@ public interface FeatureFlag extends Keyed {
     @Deprecated
     public static final FeatureFlag UPDATE_121 = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("update_1_21"));
 
+    @ApiStatus.Experimental // Paper - add missing annotation
     public static final FeatureFlag WINTER_DROP = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("winter_drop"));
 
+    @ApiStatus.Experimental // Paper - add missing annotation
     public static final FeatureFlag REDSTONE_EXPERIMENTS = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("redstone_experiments"));
 
+    @ApiStatus.Experimental // Paper - add missing annotation
     public static final FeatureFlag MINECART_IMPROVEMENTS = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("minecart_improvements"));
 
 }
diff --git a/src/main/java/org/bukkit/GameRule.java b/src/main/java/org/bukkit/GameRule.java
index 8b6584fae0a9d5cccbe350d889fa8b4a14c78ca3..89f1820ae94c48f51a44df750904bb285013720c 100644
--- a/src/main/java/org/bukkit/GameRule.java
+++ b/src/main/java/org/bukkit/GameRule.java
@@ -287,6 +287,8 @@ public final class GameRule<T> implements net.kyori.adventure.translation.Transl
      * The maximum speed of minecarts (when the new movement algorithm is
      * enabled).
      */
+    @MinecraftExperimental(MinecraftExperimental.Requires.MINECART_IMPROVEMENTS) // Paper - add missing annotation
+    @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
     public static final GameRule<Integer> MINECART_MAX_SPEED = new GameRule<>("minecartMaxSpeed", Integer.class);
 
     /**
diff --git a/src/main/java/org/bukkit/block/Crafter.java b/src/main/java/org/bukkit/block/Crafter.java
index 8d2dd78fc588a6817dfede8040b9909a7d5bde67..f737a2aae3f57a1bfe4cf68ea66f603da4eebd47 100644
--- a/src/main/java/org/bukkit/block/Crafter.java
+++ b/src/main/java/org/bukkit/block/Crafter.java
@@ -6,7 +6,6 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a captured state of a crafter.
  */
-@ApiStatus.Experimental
 public interface Crafter extends Container, com.destroystokyo.paper.loottable.LootableBlockInventory { // Paper - LootTable API
 
     /**
diff --git a/src/main/java/org/bukkit/block/TrialSpawner.java b/src/main/java/org/bukkit/block/TrialSpawner.java
index 2d46d85aff243e9b3c6764f0de041fff6b766853..6fc7b5fe1152f739663a4715a1c93246c3ee6df2 100644
--- a/src/main/java/org/bukkit/block/TrialSpawner.java
+++ b/src/main/java/org/bukkit/block/TrialSpawner.java
@@ -10,7 +10,6 @@ import org.jetbrains.annotations.NotNull;
 /**
  * Represents a captured state of a trial spawner.
  */
-@ApiStatus.Experimental
 public interface TrialSpawner extends TileState {
 
     /**
diff --git a/src/main/java/org/bukkit/block/Vault.java b/src/main/java/org/bukkit/block/Vault.java
index f0c5d27f6f1ff56ffe4b88dfdce8d0b7f06d19e1..375f41fe4aebdbf140497b5ba1e54e1c72f0cdfc 100644
--- a/src/main/java/org/bukkit/block/Vault.java
+++ b/src/main/java/org/bukkit/block/Vault.java
@@ -5,6 +5,5 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a captured state of a trial spawner.
  */
-@ApiStatus.Experimental
 public interface Vault extends TileState {
 }
diff --git a/src/main/java/org/bukkit/entity/AbstractWindCharge.java b/src/main/java/org/bukkit/entity/AbstractWindCharge.java
index 60fbacee263e55f91ac977f020e390d46024723a..ecff691c3a0878659fb051926ef769ce1e339c48 100644
--- a/src/main/java/org/bukkit/entity/AbstractWindCharge.java
+++ b/src/main/java/org/bukkit/entity/AbstractWindCharge.java
@@ -5,7 +5,6 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a Wind Charge.
  */
-@ApiStatus.Experimental
 public interface AbstractWindCharge extends Fireball {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Bogged.java b/src/main/java/org/bukkit/entity/Bogged.java
index 6296a6f3f3e794677fd3a626376f357c740ec356..7d993f8bd18ec1d3260d12f0ff8078a86ee4867d 100644
--- a/src/main/java/org/bukkit/entity/Bogged.java
+++ b/src/main/java/org/bukkit/entity/Bogged.java
@@ -5,6 +5,5 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a Bogged Skeleton.
  */
-@ApiStatus.Experimental
 public interface Bogged extends AbstractSkeleton, Shearable, io.papermc.paper.entity.Shearable { // Paper - Shear API
 }
diff --git a/src/main/java/org/bukkit/entity/Breeze.java b/src/main/java/org/bukkit/entity/Breeze.java
index a75e725805c193a408683885cba83ca168347165..254bc6e18961a72f471334cc0535e3c7a9d70012 100644
--- a/src/main/java/org/bukkit/entity/Breeze.java
+++ b/src/main/java/org/bukkit/entity/Breeze.java
@@ -5,6 +5,5 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a Breeze. Whoosh!
  */
-@ApiStatus.Experimental
 public interface Breeze extends Monster {
 }
diff --git a/src/main/java/org/bukkit/entity/BreezeWindCharge.java b/src/main/java/org/bukkit/entity/BreezeWindCharge.java
index 06ca3dc4b0b69cbaefa96464dce484cea93e0717..748e58eb93c7882e15d9cbdd56d11bb14808698b 100644
--- a/src/main/java/org/bukkit/entity/BreezeWindCharge.java
+++ b/src/main/java/org/bukkit/entity/BreezeWindCharge.java
@@ -5,7 +5,6 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a Wind Charge.
  */
-@ApiStatus.Experimental
 public interface BreezeWindCharge extends AbstractWindCharge {
 
 }
diff --git a/src/main/java/org/bukkit/entity/OminousItemSpawner.java b/src/main/java/org/bukkit/entity/OminousItemSpawner.java
index 4aa07d4edb2c81d0ae7999b30ad53ff8bb884ec7..dbd4da4c63b6b1b21c3e638ac4d2c9fdd6716a8e 100644
--- a/src/main/java/org/bukkit/entity/OminousItemSpawner.java
+++ b/src/main/java/org/bukkit/entity/OminousItemSpawner.java
@@ -7,7 +7,6 @@ import org.jetbrains.annotations.Nullable;
 /**
  * Represents an ominous item spawner.
  */
-@ApiStatus.Experimental
 public interface OminousItemSpawner extends Entity {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/WindCharge.java b/src/main/java/org/bukkit/entity/WindCharge.java
index 4adc91ba3dff00ab44303778e9d4499f7808ad00..beb62426490a361af793fb530106d8547a83ae03 100644
--- a/src/main/java/org/bukkit/entity/WindCharge.java
+++ b/src/main/java/org/bukkit/entity/WindCharge.java
@@ -5,7 +5,6 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Represents a Wind Charge.
  */
-@ApiStatus.Experimental
 public interface WindCharge extends AbstractWindCharge {
 
 }
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java
index ae4ae1fa6d407665ef03edcdef683d741668acf1..b4fe8108e8b36b8ce859cdd4a5b557034f923c85 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java
@@ -148,7 +148,6 @@ public enum InventoryType {
     /**
      * A crafter inventory, with 9 CRAFTING slots.
      */
-    @ApiStatus.Experimental
     CRAFTER(9, "Crafter", MenuType.CRAFTER_3X3),
     /**
      * The new smithing inventory, with 3 CRAFTING slots and 1 RESULT slot.
diff --git a/src/main/java/org/bukkit/inventory/CrafterInventory.java b/src/main/java/org/bukkit/inventory/CrafterInventory.java
index bb1fb5e0518c6a62ef8b206733ee51d831f1f85b..49d0a37bbeb0b8fa9207164c74245ef05485467c 100644
--- a/src/main/java/org/bukkit/inventory/CrafterInventory.java
+++ b/src/main/java/org/bukkit/inventory/CrafterInventory.java
@@ -5,5 +5,4 @@ import org.jetbrains.annotations.ApiStatus;
 /**
  * Interface to the inventory of a Crafter.
  */
-@ApiStatus.Experimental
 public interface CrafterInventory extends Inventory { }
diff --git a/src/main/java/org/bukkit/map/MapCursor.java b/src/main/java/org/bukkit/map/MapCursor.java
index 0899981b9ab1f98dacc617156d12779421e4c275..6c33fbf720a2e11655e254aeb516e08831c2adf4 100644
--- a/src/main/java/org/bukkit/map/MapCursor.java
+++ b/src/main/java/org/bukkit/map/MapCursor.java
@@ -314,12 +314,26 @@ public final class MapCursor {
         Type BANNER_RED = getType("banner_red");
         Type BANNER_BLACK = getType("banner_black");
         Type RED_X = getType("red_x");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type VILLAGE_DESERT = getType("village_desert");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type VILLAGE_PLAINS = getType("village_plains");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type VILLAGE_SAVANNA = getType("village_savanna");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type VILLAGE_SNOWY = getType("village_snowy");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type VILLAGE_TAIGA = getType("village_taiga");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type JUNGLE_TEMPLE = getType("jungle_temple");
+        @org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.TRADE_REBALANCE) // Paper - add missing annotation
+        @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
         Type SWAMP_HUT = getType("swamp_hut");
         Type TRIAL_CHAMBERS = getType("trial_chambers");