This is an automated email from the ASF dual-hosted git repository.
fokko pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/avro.git
The following commit(s) were added to refs/heads/main by this push:
new 589b89365 AVRO-3978: Upgrade main to build with Java 11 minimum (#2855)
589b89365 is described below
commit 589b8936563c7e18e5b25906143c7b5d52c9e0b8
Author: JB Onofré <[email protected]>
AuthorDate: Mon Apr 29 18:09:58 2024 +0200
AVRO-3978: Upgrade main to build with Java 11 minimum (#2855)
---
.github/workflows/test-lang-java.yml | 10 ++++------
doc/examples/java-example/pom.xml | 8 ++++----
doc/examples/mr-example/pom.xml | 4 ++--
lang/java/avro/pom.xml | 20 -------------------
lang/java/interop-data-test/pom.xml | 17 ----------------
lang/java/interop-data-test/src/it/check/pom.xml | 2 +-
.../java/interop-data-test/src/it/generate/pom.xml | 2 +-
lang/java/pom.xml | 1 -
lang/java/thrift/pom.xml | 6 ++++++
pom.xml | 23 +++++-----------------
10 files changed, 23 insertions(+), 70 deletions(-)
diff --git a/.github/workflows/test-lang-java.yml
b/.github/workflows/test-lang-java.yml
index 94e450f23..bca1f0b7a 100644
--- a/.github/workflows/test-lang-java.yml
+++ b/.github/workflows/test-lang-java.yml
@@ -49,12 +49,11 @@ jobs:
restore-keys: |
${{ runner.os }}-maven-
- - name: 'Setup Temurin JDK 8, 11, 17 & 21'
+ - name: 'Setup Temurin JDK 11, 17 & 21'
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 #
v4.2.1
with:
distribution: 'temurin'
java-version: |
- 8
11
17
21
@@ -93,12 +92,11 @@ jobs:
restore-keys: |
${{ runner.os }}-maven-
- - name: 'Setup Temurin JDK 8, 11, 17 & 21'
+ - name: 'Setup Temurin JDK 11, 17 & 21'
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 #
v4.2.1
with:
distribution: 'temurin'
java-version: |
- 8
11
17
21
@@ -149,10 +147,10 @@ jobs:
working-directory: .
run: mvn -B install -PskipQuality
- - name: 'Generate Interop Data using Java 8, 11, 17 & 21'
+ - name: 'Generate Interop Data using Java 11, 17 & 21'
working-directory: lang/java/interop-data-test
run: mvn -B verify -Pgenerate-test-data
- - name: 'Run Interop Tests using Java 8, 11, 17 & 21'
+ - name: 'Run Interop Tests using Java 11, 17 & 21'
working-directory: lang/java/interop-data-test
run: mvn -B verify -Pcheck-test-data
diff --git a/doc/examples/java-example/pom.xml
b/doc/examples/java-example/pom.xml
index ef0d81639..9c7effb7b 100644
--- a/doc/examples/java-example/pom.xml
+++ b/doc/examples/java-example/pom.xml
@@ -49,8 +49,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <source>11</source>
+ <target>11</target>
</configuration>
</plugin>
<plugin>
@@ -75,8 +75,8 @@
<artifactId>maven-plugin</artifactId>
<version>${avro.version}</version>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <source>11</source>
+ <target>11</target>
</configuration>
</plugin>
</plugins>
diff --git a/doc/examples/mr-example/pom.xml b/doc/examples/mr-example/pom.xml
index 9a2a25830..be6b689b0 100644
--- a/doc/examples/mr-example/pom.xml
+++ b/doc/examples/mr-example/pom.xml
@@ -39,8 +39,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <source>11</source>
+ <target>11</target>
</configuration>
</plugin>
<plugin>
diff --git a/lang/java/avro/pom.xml b/lang/java/avro/pom.xml
index 172837b5a..c4770a927 100644
--- a/lang/java/avro/pom.xml
+++ b/lang/java/avro/pom.xml
@@ -150,26 +150,6 @@
</goals>
</execution>
- <execution>
- <id>Run all tests under Java 8</id>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <filterProperties>
- <integrationTestingJDK>8</integrationTestingJDK>
- <!-- Mockito 5 (used in all other cases) requires Java 11 -->
- <!-- This is the last version that still runs on Java 8 -->
- <mockito.version>4.11.0</mockito.version>
- </filterProperties>
- <properties>
- <maven.compiler.release/>
- <maven.compiler.target>8</maven.compiler.target>
- </properties>
-
<cloneProjectsTo>${project.build.directory}/it-jdk-8</cloneProjectsTo>
- </configuration>
- </execution>
-
<execution>
<id>Run all tests under Java 11</id>
<goals>
diff --git a/lang/java/interop-data-test/pom.xml
b/lang/java/interop-data-test/pom.xml
index 4794de97f..16b1c2022 100644
--- a/lang/java/interop-data-test/pom.xml
+++ b/lang/java/interop-data-test/pom.xml
@@ -68,23 +68,6 @@
</goals>
</execution>
- <execution>
- <id>${invoker-action} under Java 8</id>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <filterProperties>
- <integrationTestingJDK>8</integrationTestingJDK>
- </filterProperties>
- <properties>
- <maven.compiler.release/>
- <maven.compiler.target>8</maven.compiler.target>
- </properties>
-
<cloneProjectsTo>${project.build.directory}/it-jdk-8</cloneProjectsTo>
- </configuration>
- </execution>
-
<execution>
<id>${invoker-action} under Java 11</id>
<goals>
diff --git a/lang/java/interop-data-test/src/it/check/pom.xml
b/lang/java/interop-data-test/src/it/check/pom.xml
index f880584dc..40fd8e397 100644
--- a/lang/java/interop-data-test/src/it/check/pom.xml
+++ b/lang/java/interop-data-test/src/it/check/pom.xml
@@ -30,7 +30,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.outputEncoding>UTF-8</project.build.outputEncoding>
- <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.source>11</maven.compiler.source>
<main.basedir>../../../../../..</main.basedir>
<interop.datadir>${main.basedir}/build/interop/data/</interop.datadir>
diff --git a/lang/java/interop-data-test/src/it/generate/pom.xml
b/lang/java/interop-data-test/src/it/generate/pom.xml
index 0464df07d..fe1f1d3f4 100644
--- a/lang/java/interop-data-test/src/it/generate/pom.xml
+++ b/lang/java/interop-data-test/src/it/generate/pom.xml
@@ -30,7 +30,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.outputEncoding>UTF-8</project.build.outputEncoding>
- <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.source>11</maven.compiler.source>
<main.basedir>../../../../../..</main.basedir>
diff --git a/lang/java/pom.xml b/lang/java/pom.xml
index d6a6b70a0..c8557b3ab 100644
--- a/lang/java/pom.xml
+++ b/lang/java/pom.xml
@@ -200,7 +200,6 @@
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<links>
- <link>https://docs.oracle.com/javase/8/docs/api/</link>
<link>https://hadoop.apache.org/docs/current/api/</link>
</links>
<tagletArtifacts>
diff --git a/lang/java/thrift/pom.xml b/lang/java/thrift/pom.xml
index 12a20258b..1140f8ce6 100644
--- a/lang/java/thrift/pom.xml
+++ b/lang/java/thrift/pom.xml
@@ -127,6 +127,12 @@
<artifactId>libthrift</artifactId>
<version>${thrift.version}</version>
</dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>1.3.2</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</project>
diff --git a/pom.xml b/pom.xml
index e40ebef88..486452e70 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,8 +40,8 @@
Java artifacts are copied to the final build destination with a custom
profile.
-->
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.release>8</maven.compiler.release>
+ <maven.compiler.source>11</maven.compiler.source>
+ <maven.compiler.release>11</maven.compiler.release>
<main.basedir>${project.basedir}</main.basedir>
<avro.distDir>dist</avro.distDir>
<avro.docDir>build/avro-doc-${project.version}/api</avro.docDir>
@@ -51,7 +51,7 @@
<checkstyle-plugin.version>3.3.1</checkstyle-plugin.version>
<checkstyle.version>10.15.0</checkstyle.version>
<enforcer-plugin.version>3.4.1</enforcer-plugin.version>
- <extra-enforcer-rules.version>1.7.0</extra-enforcer-rules.version>
+ <extra-enforcer-rules.version>1.8.0</extra-enforcer-rules.version>
<maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version>
<maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
<maven-gpg-plugin.version>3.2.3</maven-gpg-plugin.version>
@@ -180,19 +180,6 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-toolchains-plugin</artifactId>
<executions>
- <execution>
- <id>Ensure ToolChain for JDK 8 is available</id>
- <goals>
- <goal>toolchain</goal>
- </goals>
- <configuration>
- <toolchains>
- <jdk>
- <version>8</version>
- </jdk>
- </toolchains>
- </configuration>
- </execution>
<execution>
<id>Ensure ToolChain for JDK 11 is available</id>
<goals>
@@ -248,13 +235,13 @@
<configuration>
<rules>
<enforceBytecodeVersion>
- <maxJdkVersion>8</maxJdkVersion>
+ <maxJdkVersion>11</maxJdkVersion>
<ignoredScopes>
<ignoredScope>test</ignoredScope>
<ignoredScope>provided</ignoredScope>
</ignoredScopes>
<!--
- Multi release jars that are Java 8 compatible should pass,
+ Multi release jars that are Java 11 compatible should pass,
but the extra-enforcer-plugin does not detect them
correctly so we should ignore them explicitly.
-->