adoroszlai opened a new pull request, #1317: URL: https://github.com/apache/ratis/pull/1317
## What changes were proposed in this pull request? Similar to https://github.com/apache/ratis-thirdparty/pull/74. - Replace `maven.compiler.source` with `maven.compiler.release`. - Keep `maven.compiler.target`, but set it to the same as `maven.compiler.release`. This is required because Apache parent POM v35 uses `.target` as the source of truth. - Remove custom `java.min.version` and `maven.min.version` properties, and `maven-enforcer-plugin` executions that reference these. Enforcement is inherited from Parent POM ([properties](https://github.com/apache/maven-apache-parent/blob/apache-35/pom.xml#L99-L100), [execution](https://github.com/apache/maven-apache-parent/blob/apache-35/pom.xml#L350-L381)). - Remove reference to non-existent property `javac.source`. https://issues.apache.org/jira/browse/RATIS-2362 ## How was this patch tested? Tested version enforcement with various Java and Maven versions. Exactly minimum required versions: ``` $ mvn -V validate Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Java version: 1.8.0_462, vendor: Private Build, runtime: /usr/lib/jvm/java-8-openjdk-amd64/jre ... [INFO] --- maven-enforcer-plugin:3.5.0:enforce (enforce-maven-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion passed [INFO] [INFO] --- maven-enforcer-plugin:3.5.0:enforce (enforce-java-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireJavaVersion passed ``` Newer versions: ``` $ mvn -V validate Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 ... [INFO] --- enforcer:3.5.0:enforce (enforce-maven-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion passed [INFO] [INFO] --- enforcer:3.5.0:enforce (enforce-java-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireJavaVersion passed ``` Targeting Java 17: ``` $ mvn -V validate -Dmaven.compiler.release=17 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 ... [INFO] --- enforcer:3.5.0:enforce (enforce-maven-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion passed [INFO] [INFO] --- enforcer:3.5.0:enforce (enforce-java-version) @ ratis --- [INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireJavaVersion passed ``` Maven too old: ``` $ mvn -V validate Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T17:06:16+02:00) Java version: 1.8.0_462, vendor: Private Build, runtime: /usr/lib/jvm/java-8-openjdk-amd64/jre ... [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.5.0:enforce (enforce-maven-version) on project ratis: The plugin org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 requires Maven version 3.6.3 ``` Maven older than custom requirement: ``` $ mvn -V validate -DminimalMavenBuildVersion=3.9.0 Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Java version: 21.0.8, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 ... [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.5.0:enforce (enforce-maven-version) on project ratis: [ERROR] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion failed with message: [ERROR] Detected Maven Version: 3.6.3 is not in the allowed range [3.9.0,). ``` Java older than target: ``` $ mvn -V validate -Dmaven.compiler.release=17 Apache Maven 3.9.11 (3e54c93a704957b63ee3494413a2b544fd3d825b) Java version: 1.8.0_462, vendor: Private Build, runtime: /usr/lib/jvm/java-8-openjdk-amd64/jre ... [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.5.0:enforce (enforce-java-version) on project ratis: [ERROR] Rule 0: org.apache.maven.enforcer.rules.version.RequireJavaVersion failed with message: [ERROR] Detected JDK version 1.8.0-462 (JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre) is not in the allowed range [17,). ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
