Introduction

PoseStack -> GuiGraphics

All events related to gui rendering in Architectury API now all take in GuiGraphics instead of PoseStack.

LootTables -> LootDataManager

LootEvent now takes in LootDataManager, as LootTables no longer exist.

Migrate creative tabs to the registrar system

Tip: You can also take a look at the new Creative Tabs docs, as it details how to create the tab in 1.20 as well.

Since Minecraft now registers creative tabs as a regular registry, previous TabSupplier interfaces used to defer creative tabs for Forge have been removed. All deferred methods now take in a builtin CreativeModeTab, or ResourceKey<CreativeModeTab> or DeferredSupplier<CreativeModeTab> that RegistrySupplier now extends.

Which means to create a creative tab now, you can use the deferred register:

public static final DeferredRegister<CreativeModeTab> TABS = DeferredRegister.create(TestMod.MOD_ID, Registries.CREATIVE_MODE_TAB);
 
public static final RegistrySupplier<CreativeModeTab> TEST_TAB = TABS.register("test_tab", () ->
            CreativeTabRegistry.create(Component.translatable("category.architectury_test"),
                    () -> new ItemStack(TestRegistries.TEST_ITEM.get())));

The TEST_TAB here acts like a regular register supplier like any other registry entry, moreover, arch$tab methods now take in DeferredSupplier<CreativeModeTab>, that you can directly pass them in.