{"action":"created","issue":{"url":"https://api.github.com/repos/SpongePowered/Mixin/issues/115","repository_url":"https://api.github.com/repos/SpongePowered/Mixin","labels_url":"https://api.github.com/repos/SpongePowered/Mixin/issues/115/labels{/name}","comments_url":"https://api.github.com/repos/SpongePowered/Mixin/issues/115/comments","events_url":"https://api.github.com/repos/SpongePowered/Mixin/issues/115/events","html_url":"https://github.com/SpongePowered/Mixin/issues/115","id":149644322,"number":115,"title":"Failing to apply mixins doesn't report which injection failed and or why to be exact","user":{"login":"gabizou","id":1203877,"avatar_url":"https://avatars.githubusercontent.com/u/1203877?v=3","gravatar_id":"","url":"https://api.github.com/users/gabizou","html_url":"https://github.com/gabizou","followers_url":"https://api.github.com/users/gabizou/followers","following_url":"https://api.github.com/users/gabizou/following{/other_user}","gists_url":"https://api.github.com/users/gabizou/gists{/gist_id}","starred_url":"https://api.github.com/users/gabizou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabizou/subscriptions","organizations_url":"https://api.github.com/users/gabizou/orgs","repos_url":"https://api.github.com/users/gabizou/repos","events_url":"https://api.github.com/users/gabizou/events{/privacy}","received_events_url":"https://api.github.com/users/gabizou/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-04-20T03:18:54Z","updated_at":"2016-04-20T11:48:48Z","closed_at":null,"body":"For the following error applying a mixin:\r\n```\r\norg.spongepowered.asm.mixin.transformer.InvalidMixinException: Unexpecteded error whilst applying the mixin class\r\n\tat org.spongepowered.asm.mixin.transformer.MixinApplicator.apply(MixinApplicator.java:230) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:174) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinTransformer.apply(MixinTransformer.java:665) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinTransformer.applyMixins(MixinTransformer.java:635) [mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinTransformer.transform(MixinTransformer.java:442) [mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinTransformer$Proxy.transform(MixinTransformer.java:109) [mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) [launchwrapper-1.11.jar:?]\r\n\tat net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) [launchwrapper-1.11.jar:?]\r\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:424) [?:1.8.0_77]\r\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:357) [?:1.8.0_77]\r\n\tat net.minecraft.client.Minecraft.startGame(Minecraft.java:536) [Minecraft.class:?]\r\n\tat net.minecraft.client.Minecraft.run(Minecraft.java:379) [Minecraft.class:?]\r\n\tat net.minecraft.client.main.Main.main(Main.java:115) [Main.class:?]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_77]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_77]\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_77]\r\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_77]\r\n\tat net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?]\r\n\tat net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?]\r\n\tat com.mumfrey.liteloader.debug.Start.main(Start.java:53) [liteloader-1.9-SNAPSHOT.jar:1.9-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_77]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_77]\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_77]\r\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_77]\r\n\tat net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]\r\n\tat GradleStart.main(GradleStart.java:26) [start/:?]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_77]\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_77]\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_77]\r\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_77]\r\n\tat com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) [idea_rt.jar:?]\r\nCaused by: org.spongepowered.asm.mixin.injection.struct.InvalidMemberDescriptorException: Invalid name: net/minecraft/client/renderer/EntityRenderer;setupFog\r\n\tat org.spongepowered.asm.mixin.injection.struct.MemberInfo.validate(MemberInfo.java:297) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.MemberInfo.parseAndValidate(MemberInfo.java:440) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.InjectionPointData.getTarget(InjectionPointData.java:125) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.points.BeforeInvoke.<init>(BeforeInvoke.java:90) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.InjectionPoint.parse(InjectionPoint.java:382) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.InjectionPoint.parse(InjectionPoint.java:353) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:192) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:148) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.RedirectInjectionInfo.<init>(RedirectInjectionInfo.java:39) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:415) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:927) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinApplicator.prepareInjections(MixinApplicator.java:761) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinApplicator.applyMixin(MixinApplicator.java:251) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\tat org.spongepowered.asm.mixin.transformer.MixinApplicator.apply(MixinApplicator.java:220) ~[mixin-0.5.3-SNAPSHOT.jar:0.5.3-SNAPSHOT+unknown-b0.git-unknown]\r\n\t... 30 more\r\n```\r\nThe `@Redirect` was simply reading:\r\n```java\r\n    @Redirect(method = \"renderWorldPass\", at = @At(value = \"INVOKE\", target = \"net/minecraft/client/renderer/EntityRenderer;setupFog(IF)V\"))\r\n```\r\n\r\nWhat could be added is simply to say \"here's the found annotation\" and print the entire annotation for which method is being read. In general, this would end up being perfectly valid if an extra `L` was included, but I digress."},"comment":{"url":"https://api.github.com/repos/SpongePowered/Mixin/issues/comments/212393928","html_url":"https://github.com/SpongePowered/Mixin/issues/115#issuecomment-212393928","issue_url":"https://api.github.com/repos/SpongePowered/Mixin/issues/115","id":212393928,"user":{"login":"Mumfrey","id":1147071,"avatar_url":"https://avatars.githubusercontent.com/u/1147071?v=3","gravatar_id":"","url":"https://api.github.com/users/Mumfrey","html_url":"https://github.com/Mumfrey","followers_url":"https://api.github.com/users/Mumfrey/followers","following_url":"https://api.github.com/users/Mumfrey/following{/other_user}","gists_url":"https://api.github.com/users/Mumfrey/gists{/gist_id}","starred_url":"https://api.github.com/users/Mumfrey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Mumfrey/subscriptions","organizations_url":"https://api.github.com/users/Mumfrey/orgs","repos_url":"https://api.github.com/users/Mumfrey/repos","events_url":"https://api.github.com/users/Mumfrey/events{/privacy}","received_events_url":"https://api.github.com/users/Mumfrey/received_events","type":"User","site_admin":false},"created_at":"2016-04-20T11:48:48Z","updated_at":"2016-04-20T11:48:48Z","body":"I can't really give the annotation unless I completely reconstruct it, but I can make the exception itself a bit more descriptive and provide some more context."}}