-
-
Notifications
You must be signed in to change notification settings - Fork 201
Conversation
SpecialSource updated ASM5 and ForgeGradle supports ASM5 as well but neither FML or Forge were actually updated to support ASM5 opcodes. This commit resolves this. Signed-off-by: Steven Downer <grinch@outlook.com>
#550 :( |
Because using Java 1.8 is stupid, apparently. |
Minecraft doesn't target it. Except the new launcher does. Except it's not out yet. |
It is out. And Mojang is starting to push people. |
Also this on java 8 today from Dinnerbone: https://twitter.com/Dinnerbone/status/561096484981334016. |
My reasoning still stands, it would require them a new Minecraft version to FORCE java 8 requirement. As such I do not want to ACTIVELY ENCOURAGE modders to preemptively REQUIRE java 8 by doing this. Unless someone wants to go through and write an additional transformer here that prevents loading of mods that use java8 bytecode and throws a giant warning saying that they are using java 8 to early. Which I can remove in MC 1.9/1.10 when java 8 is the standard. At this point in time, any mod that is affected by this is considered a bug in the mod itself, not in Forge. To sumup: |
Should we allow modders to use Java 8? Yes?? |
No, allowing them to use java 8 forces me to actively support their end users who are having crashes because they are targeting java 8. There is nothing in java 8 that can not be emulated by java 6/7. It just provides a bit of cleaner interface. |
You can use Java 8 lambdas in Java 7 using RetroLambda, if that suits your fancy. You won't have access to JDK8 API, obviously. |
I'm guessing the difference between allowing mods to require Java 8, and allowing mods to require Scala, is that the Scala libraries are redistributable and can be automatically downloaded. |
I agree with everyone else. Modders should have the ability to target Java 8 if they wish to. |
I disagree. Lex has a point here. (However, the Java 7 dependency issue was solved by mods like Java7Checker, which HEE and a few other Java 7 dependants relied on - why not make it so that if a Java 8-using mod is detected, it makes a warning message telling the user to either upgrade or use Mojang's new launcher, which is exactly what Mojang is doing?) However, this makes modders who are making mods with a long-term plan somewhat limited. But we're an edge case, and we have solved that edge case for private development. (Also, RetroLambda doesn't solve defaults in interfaces.) |
You know what i'm sick of it. New rule anyone who asks for java 8 help is instantly banned from EVERY FUCKING THING related to Forge. |
Update to ASM5 for Java 8 support, IF ANYONE MAKES A MOD THAT REQUIRES JAVA8 BEFORE MINECRAFT FORCES IT ALL USERS REQUESTING SUPPORT WILL BE BANNED FROM ALL FORGE RELATED SERVICES.
@LexManos - No. It's for private development. NOVA is slated for release in Summer 2015. We want to develop it SOMEHOW until then. I think this was a much better way to do so than forking Forge into a private repository to fix it. |
Private development my ass, public repo advocating fucking around in Forge internals IS NOT PRIVATE. Now I have to spend more time porting this to the 1.8 branch, and then dealing with anything else that pulls in that api. |
@LexManos - It's only public because I can't shell out the money for a big enough GitHub private repo, and I like GitHub. I planned to remove it for the far off public release, this was only so we could actually test the Java 8-dependent API before release. We did not want to release it publicly with this hack in, this was PURELY for development reasons. Otherwise, we wouldn't be able to prepare for the day Forge DOES allow Java 8, and that's not good at all - it would introduce a very long delay in development. |
No actually it wouldn't There are plenty of ways to emulate the systems you want from java 8 without forcing java 8. So you could easily develop whatever the hell you want targeting java 6/7. I still can't understand how people find it so hard, LESS than 1/2 of the users of Minecraft use java 8, Forcing java 8 means you alienate OVER 1/2 of the users... seriously how is this a good idea? I would LOVE to re-write a lot of the shit in Forge to take advantage of some of the Java 8 features such as default implementations but I can't Because Minecraft doesn't target 8. Its a simple concept, how am I the only one who see it... As for these damn PRs bitching about it, at least do the PRs correctly and target the current branches but no, I have to go in and do all that shit. I just hate the fact that nobody seems to understand that doing this crap right now just means tons of hours spent on support that could be saved by waiting for the next minecraft version -.- Seriously this PR was against the main branch which is LEGACY CODE 1.8 is the current version you're wanting to FORCE java 8 on 1.7.10.... How do you think that is gunna work out for you? |
SpecialSource updated ASM5 and ForgeGradle supports ASM5 as well but neither FML or Forge were actually updated to support ASM5 opcodes. This commit resolves this.
Signed-off-by: Steven Downer grinch@outlook.com