I think it’s fine to drop support for Java 8. Java 11 is a very reasonable minimum requirement.
Harbs > On Feb 15, 2024, at 7:19 PM, Josh Tynjala <joshtynj...@bowlerhat.dev> wrote: > > Hey folks, > > A user recently reported an issue building royale-compiler with Maven and a > newer version of Java (they were trying with Java 19). It resulted in the > following error, which I was able to reproduce if I switched to the latest > Java: > > [ERROR] Failed to execute goal >> org.apache.maven.plugins:maven-antlr-plugin:2.0-beta-1: >> generate (generate-as-parser) on project compiler: >> Execution generate-as-parser of goal >> org.apache.maven.plugins:maven-antlr-plugin:2.0-beta-1:generate failed: >> >> The Security Manager is deprecated and will be removed in a future release >> -> [Help 1] >> > > The reporter determined that the issue was caused by the > org.apache.maven.plugins.maven-antlr-plugin dependency used by the Maven > build for royale-compiler. > > They suggested a different org.omnifaces.antlr-maven-plugin dependency that > is compatible, but doesn't have the Security Manager issue. I confirmed > that this fixed the issue, and things still seemed to be working correctly, > so I merged the updated dependency. > > I didn't notice it at the time, but I just discovered that this new > dependency requires Java 11 at minimum. Until now, we've supported Java 8 > at minimum. Unfortunately, I could not find another alternative Antlr > plugin for Maven that still supports Java 8, so it looks like we'll need to > update our minimum requirements for Royale too. At least for the Maven > build. However, for our sanity, we should probably just require Java 11 > minimum across the board (in the Ant build too). > > For reference, Java 8 was released in 2014. Java 11 was released in 2018. > Both are considered LTS (Long Term Support) versions and continue to > receive updates from OpenJDK vendors. Java 17 and 21 are newer LTS versions > that are also available. > > -- > Josh Tynjala > Bowler Hat LLC <https://bowlerhat.dev>