Mixin
Mixin copied to clipboard
Loader 0.12.12 fails to apply mixin in an installation where 0.11.1 applied correctly
Today I tried to update all my fabric installations to loader 0.12.12 (no specific reason), and when trying to update a 1.16.5 installation that worked correctly using 0.11.1, loader 0.12.12 fails to apply a mixin.
The crash report is the following: https://paste.ee/p/XkImm.
The mixin in question is: https://github.com/TISUnion/Carpet-TIS-Addition/blob/v1.20.0/src/main/java/carpettisaddition/mixins/command/lifetime/spawning/SpawnHelperMixin.java. In case it's important, the comment in the mixin is referring to the one of the redirects in the following carpet mixin (I'm not good enough at mixin or at the codebase to know which one specifically): https://github.com/gnembon/fabric-carpet/blob/1.16.5/src/main/java/carpet/mixins/SpawnHelperMixin.java.
Feel free to ask for more information.
It looks like the ModifyArg is now seeing the descriptor of the Redirect target method instead of the original one.
Does the behavior change if you run with the jvm arg -Dfabric.debug.loadLate=carpet
?
Yes, with that jvm arg the game loads and joins a world without crashes or other exceptions.
Thanks for the info, Loader 0.12 changes mod load order (by mod id in production instead of impl defined), which causes the mixin to fail. https://github.com/SpongePowered/Mixin/issues/544 is the same issue for upstream.