I disagree with having an open-ended compiler baseline requirement due to 1. It is not a minor task to bump the compiler version. The Java 17 upgrade task was on hold already for several months due to its intricacies. As a matter of fact, you were the one who dropped the ball after the Java 11 upgrade. (It was a rightful decision and I am glad you did the hard work of Java 11 upgrade. 🙇) 2. Fixing the baseline will keep everybody (maintainers, individual contributors, etc.) on the same page due to no moving parts. Less "Are you using Java 17?"-kind questions while troubleshooting. 3. Those who want to test Log4j against new JDKs still can easily: `-Denforcer.skip` 4. `.java-version` doesn't support ranges (AFAIK) 5. I don't find it annoying. On the contrary, several other major projects adopt this pattern: Spring Boot <https://github.com/spring-projects/spring-boot/blob/main/buildSrc/build.gradle#L13>, JUnit <https://github.com/junit-team/junit5/blob/main/gradle/plugins/settings.gradle.kts#L4>, JCTools <https://github.com/JCTools/JCTools/blob/master/pom.xml#L167>, Guava <https://github.com/google/guava/blob/master/pom.xml#L113>, etc. 6. I don't see a compelling use case.
All that said, I am not strongly opinionated about this and I wouldn't stop you from replacing `[17,18)` with `[17,)` in `/pom.xml`. On Tue, Dec 5, 2023 at 1:19 PM Piotr P. Karwasz <piotr.karw...@gmail.com> wrote: > Hi Volkan, > > On Tue, 5 Dec 2023 at 11:50, Volkan Yazıcı <vol...@yazi.ci> wrote: > > > > I have just updated `main` to require Java 17 for compiling and to target > > Java 17. Previously both were Java 11. If you have objections, please > > discuss in this thread. > > I am Ok with bumping the bytecode to Java 17. > > Regarding the build requirements I would give by **default** a larger > spectrum of possible JDKs. > Right now we only accept JDK 17 in the default Maven profile. A Log4j > contributor is forced to install JDK 17 for a build to succeed, which > might be annoying. Therefore it might be better to: > > * set the Enforcer plugin to accept > [minimum_JDK_required_by_Maven_plugins,) > * set [17,18) **only** in the `release` plugin. > > BTW: when we bump BND to 7.x, minimum_JDK_required_by_Maven_plugins will > be 17. > > Piotr >