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 7522c611b5214dd09867c434d5f7cf161f5c04ca..026b1832bcd163ab89668c991bf002e608e36aef 100644
--- a/src/main/java/org/bukkit/FeatureFlag.java
+++ b/src/main/java/org/bukkit/FeatureFlag.java
@@ -13,6 +13,7 @@ public interface FeatureFlag extends Keyed {
 
     public static final FeatureFlag VANILLA = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("vanilla"));
 
+    @ApiStatus.Experimental // Paper - add missing annotation
     public static final FeatureFlag BUNDLE = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("bundle"));
 
     /**
@@ -23,6 +24,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"));
 
     /**
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index c4f067598a40b0381bc9e601a3809e2683c10407..54704da43cf9c429f3914f0580246dde99aa93c0 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -2497,6 +2497,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
     EGG(21603, 16),
     COMPASS(24139),
     RECOVERY_COMPASS(12710),
+    @MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.BUNDLE) // Paper - add missing annotation
+    @ApiStatus.Experimental // Paper - add missing annotation
     BUNDLE(16835, 1),
     FISHING_ROD(4167, 1, 64),
     CLOCK(14980),
diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java
index b2ff1da3386223a544ab5fc363a90c66c8869242..8c7b50906fc5b84c5570408f357410810bbfbded 100644
--- a/src/main/java/org/bukkit/Sound.java
+++ b/src/main/java/org/bukkit/Sound.java
@@ -1506,8 +1506,14 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
     ITEM_BUCKET_FILL_LAVA("item.bucket.fill_lava"),
     ITEM_BUCKET_FILL_POWDER_SNOW("item.bucket.fill_powder_snow"),
     ITEM_BUCKET_FILL_TADPOLE("item.bucket.fill_tadpole"),
+    @MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.BUNDLE) // Paper - add missing annotation
+    @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
     ITEM_BUNDLE_DROP_CONTENTS("item.bundle.drop_contents"),
+    @MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.BUNDLE) // Paper - add missing annotation
+    @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
     ITEM_BUNDLE_INSERT("item.bundle.insert"),
+    @MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.BUNDLE) // Paper - add missing annotation
+    @org.jetbrains.annotations.ApiStatus.Experimental // Paper - add missing annotation
     ITEM_BUNDLE_REMOVE_ONE("item.bundle.remove_one"),
     ITEM_CHORUS_FRUIT_TELEPORT("item.chorus_fruit.teleport"),
     ITEM_CROP_PLANT("item.crop.plant"),
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 fbdbd2f4da5e09d4b111ddcf72e2d7dd59046bd7..126d60a4d0b3b140b922fb24aa425e805892ad32 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java
@@ -146,7 +146,6 @@ public enum InventoryType {
     /**
      * A crafter inventory, with 9 CRAFTING slots.
      */
-    @ApiStatus.Experimental
     CRAFTER(9, "Crafter"),
     /**
      * 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/inventory/meta/BundleMeta.java b/src/main/java/org/bukkit/inventory/meta/BundleMeta.java
index e404cd1e2ba44e4c2d09524bc7cf730d8ffbdabd..cea0ebf50876dd32ab7fba6025b30f297d0a69c4 100644
--- a/src/main/java/org/bukkit/inventory/meta/BundleMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BundleMeta.java
@@ -6,6 +6,7 @@ import org.jetbrains.annotations.ApiStatus;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+@org.bukkit.MinecraftExperimental(org.bukkit.MinecraftExperimental.Requires.BUNDLE) // Paper - add missing annotation
 @ApiStatus.Experimental
 public interface BundleMeta extends ItemMeta {
 
diff --git a/src/main/java/org/bukkit/map/MapCursor.java b/src/main/java/org/bukkit/map/MapCursor.java
index 4d96cf385fa5c6d80097bdf6282be5f0eed73307..fb6b1491202bbc1ea0d5475c9c6574b0c16943b4 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");