WorldEdit for Bukkit

WorldEdit for Bukkit

21M Downloads

New, undocumented dependency on fabric-permissions-api-v0

thojo0 opened this issue ยท 1 comments

commented

WorldEdit Version

7.3.9+6959-7adf70b

Platform Version

Fabric 0.16.9

Confirmations

  • I am using the most recent Minecraft release.
  • I am using a version of WorldEdit compatible with my Minecraft version.
  • I am using the latest or recommended version of my platform software.
  • I am NOT using a hybrid server, e.g. a server that combines Bukkit and Forge. Examples include Arclight, Mohist, and Cardboard.
  • I am NOT using a fork of WorldEdit, such as FastAsyncWorldEdit (FAWE) or AsyncWorldEdit (AWE)

Bug Description

Server crashes when Player joins.
I got it fixed by installing the newly introduced lucko fabric-permissions-api-v0.

Encountered an unexpected exception
java.lang.NoSuchMethodError: 'net.minecraft.class_2168 net.minecraft.class_1297.method_5671()'
	at knot/me.lucko.fabric.api.permissions.v0.Permissions.getPermissionValue(Permissions.java:147) ~[fabric-permissions-api-v0-0.2-SNAPSHOT-4dccd28795ed08cf.jar:?]
	at knot/com.sk89q.worldedit.fabric.FabricPermissionsProvider$LuckoFabricPermissionsProvider.hasPermission(FabricPermissionsProvider.java:61) ~[worldedit-mod-7.3.9.jar:?]
	at knot/com.sk89q.worldedit.fabric.FabricPlayer.hasPermission(FabricPlayer.java:207) ~[worldedit-mod-7.3.9.jar:?]
	at java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90) ~[?:?]
	at java.base/java.util.Spliterators$IteratorSpliterator.tryAdvance(Spliterators.java:1950) ~[?:?]
	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129) ~[?:?]
	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527) ~[?:?]
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513) ~[?:?]
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
	at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230) ~[?:?]
	at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196) ~[?:?]
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
	at java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:632) ~[?:?]
	at knot/com.sk89q.worldedit.command.util.PermissionCondition.lambda$satisfied$0(PermissionCondition.java:47) ~[worldedit-mod-7.3.9.jar:?]
	at java.base/java.util.Optional.map(Optional.java:260) ~[?:?]
	at knot/com.sk89q.worldedit.command.util.PermissionCondition.satisfied(PermissionCondition.java:47) ~[worldedit-mod-7.3.9.jar:?]
	at knot/com.sk89q.worldedit.fabric.CommandWrapper.lambda$requirementsFor$2(CommandWrapper.java:86) ~[worldedit-mod-7.3.9.jar:?]
	at knot/com.mojang.brigadier.tree.CommandNode.canUse(CommandNode.java:65) ~[brigadier-1.3.10.jar:?]
	at knot/net.minecraft.class_2170.method_9239(class_2170.java:403) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_2170.method_9241(class_2170.java:397) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_3324.method_14596(class_3324.java:623) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_3324.method_14576(class_3324.java:524) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_3324.method_14570(class_3324.java:210) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_8610.method_52408(class_8610.java:152) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_8736.method_53043(class_8736.java:22) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_8736.method_11054(class_8736.java:8) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_2600.method_11072(class_2600.java:27) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_3738.run(class_3738.java:18) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_1255.method_18859(class_1255.java:164) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_4093.method_18859(class_4093.java:23) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_24306(MinecraftServer.java:889) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_18859(MinecraftServer.java:180) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_1255.method_16075(class_1255.java:138) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_20415(MinecraftServer.java:871) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_16075(MinecraftServer.java:865) ~[server-intermediary.jar:?]
	at knot/net.minecraft.class_1255.method_18857(class_1255.java:147) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_18857(MinecraftServer.java:829) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_16208(MinecraftServer.java:836) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:719) ~[server-intermediary.jar:?]
	at knot/net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:292) ~[server-intermediary.jar:?]
	at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]

Expected Behavior

Not needing fabric-permissions-api-v0.
I think this should be optional.

Reproduction Steps

  1. install fabric server
  2. install worldedit
  3. start server
  4. join server

(Fix)

  1. install fabric-permissions-api-v0 mod
  2. start server
  3. join server

Anything Else?

No response

commented

not an issue with worldedit. your repro steps are leaving out a rather important step of installing another mod that bundles an outdated version of fabric perms api.