Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Require Java 11+ for compilation #1596

Open
eamonnmcmanus opened this issue Sep 16, 2023 · 1 comment
Open

Require Java 11+ for compilation #1596

eamonnmcmanus opened this issue Sep 16, 2023 · 1 comment

Comments

@eamonnmcmanus
Copy link
Member

Currently we support Java 8 for compilation. Java 8 was released in 2014 and was superseded by Java 11 in 2018. Continuing to support it imposes constraints: relatively trivial ones like avoiding var and certain newer APIs, but also more serious ones like not being able to reference module APIs except through reflection.

We should drop Java 8 support and require a compiler that is at least Java 11. Users will still be able to compile into Java 8 classfiles with --release 8. (They can even use --release 7.)

@cpovirk
Copy link
Member

cpovirk commented Sep 20, 2023

I don't think I'd actually want to convince you not to do this, but one note: Various of our projects currently rely on building+testing with Java 8 as an easy (and incomplete...) test of Java 8 compatibility. There are apparently better ways to do that, and we'd like to use Java 11 for the reasons you've mentioned, anyway. So we really should change someday. A bump in Auto's Java requirement would just give us a push in that direction, at least for projects that use it (e.g., Truth).

It's very likely that others are doing similar things, and some of them may or may not complain. I look forward to hearing how it goes without having to be on the direct receiving end of any of those complaints ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants