Roughly Enough Items Fabric/Forge/NeoForge (REI)

Roughly Enough Items Fabric/Forge/NeoForge (REI)

40M Downloads

[Bug] REI does not implement category and catalyst lookups

MaxNeedsSnacks opened this issue ยท 0 comments

commented

What happened?

REI currently does not implement category or catalyst lookups within the JEI 11 API spec, and thus causes mods such as KubeJS that have migrated to the new API (as well as any mods that are now forced to use these methods since the old deprecated ways from JEI 9 have finally been removed) to crash when setting up the compat layer.

The specific LOC affected are:

https://github.com/shedaniel/RoughlyEnoughItems/blob/9.x-1.19/jei-compatibility-layer/src/main/java/me/shedaniel/rei/jeicompat/wrap/JEIRecipeManager.java#L58-L66

It looks like you originally implemented (or not, rather) this when updating to the JEI 9.5 spec, and then forgot to actually implement it when updating to JEI 11 ^^

What mod loaders are you seeing the problem on?

Forge

What do you think this bug is of?

  • Visual
  • Recipe Lookup
  • Cheat Mode
  • Plugin Integration / JEI Plugin Compatibility
  • Others

Relevant log output

[00:59:14] [REI-ReloadPlugins/ERROR] [REI] JEI Plugin [JEIPlugin:kubejs:jei] [rei_plugin_compatibilities] plugin failed to post-register/!
java.lang.NullPointerException: Cannot invoke "mezz.jei.api.recipe.IRecipeCategoriesLookup.get()" because the return value of "mezz.jei.api.recipe.IRecipeManager.createRecipeCategoryLookup()" is null
	at TRANSFORMER/[email protected]/dev.latvian.mods.kubejs.integration.forge.jei.RemoveJEIRecipesEvent.<init>(RemoveJEIRecipesEvent.java:29)
	at TRANSFORMER/[email protected]/dev.latvian.mods.kubejs.integration.forge.jei.JEIPlugin.onRuntimeAvailable(JEIPlugin.java:49)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.jeicompat.JEIPluginDetector$JEIPluginWrapper.postStage(JEIPluginDetector.java:619)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.lambda$post$7(PluginManagerImpl.java:256)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.lambda$pluginSection$4(PluginManagerImpl.java:189)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.lambda$post$8(PluginManagerImpl.java:255)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.pluginSection(PluginManagerImpl.java:187)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.post(PluginManagerImpl.java:253)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.api.common.plugins.PluginView$1.post(PluginView.java:71)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.RoughlyEnoughItemsCore._reloadPlugins(RoughlyEnoughItemsCore.java:145)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.RoughlyEnoughItemsCore._reloadPlugins(RoughlyEnoughItemsCore.java:133)
	at TRANSFORMER/[email protected]/me.shedaniel.rei.RoughlyEnoughItemsCoreClient.lambda$reloadPlugins$24(RoughlyEnoughItemsCoreClient.java:455)
	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)

Anything else?

No response