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

Upgrade to JDK11 #2705

Merged
merged 1 commit into from Jan 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
48 changes: 18 additions & 30 deletions .github/workflows/matrix.js
Expand Up @@ -8,28 +8,25 @@ matrix.addAxis({
title: x => x.version + ', ' + x.group,
values: [
// Zulu
{group: 'Zulu', version: '8', distribution: 'zulu', jit: 'hotspot'},
{group: 'Zulu', version: '11', distribution: 'zulu', jit: 'hotspot'},
{group: 'Zulu', version: '16', distribution: 'zulu', jit: 'hotspot'},
{group: 'Zulu', version: '17', distribution: 'zulu', jit: 'hotspot'},

// Adopt
{group: 'Adopt Hotspot', version: '8', distribution: 'adopt-hotspot', jit: 'hotspot'},
{group: 'Adopt Hotspot', version: '11', distribution: 'adopt-hotspot', jit: 'hotspot'},
{group: 'Adopt Hotspot', version: '16', distribution: 'adopt-hotspot', jit: 'hotspot'},
{group: 'Adopt Hotspot', version: '17', distribution: 'adopt-hotspot', jit: 'hotspot'},

// Adopt OpenJ9
// TODO: Replace these hard coded versions with something that dynamically picks the most recent
{group: 'Adopt OpenJ9', version: '8', distribution: 'adopt-openj9', jit: 'openj9'},
{group: 'Adopt OpenJ9', version: '11', distribution: 'adopt-openj9', jit: 'openj9'},
{group: 'Adopt OpenJ9', version: '16', distribution: 'adopt-openj9', jit: 'openj9'},
{group: 'Adopt OpenJ9', version: '17', distribution: 'adopt-openj9', jit: 'openj9'},

// Amazon Corretto
{
group: 'Corretto',
version: '8',
version: '17',
jit: 'hotspot',
distribution: 'jdkfile',
url: 'https://corretto.aws/downloads/latest/amazon-corretto-8-x64-linux-jdk.tar.gz'
url: 'https://corretto.aws/downloads/latest/amazon-corretto-17-x64-linux-jdk.tar.gz'
},
{
group: 'Corretto',
Expand All @@ -48,32 +45,25 @@ matrix.addAxis({
},
{
group: 'Microsoft',
version: '16',
version: '17',
jit: 'hotspot',
distribution: 'jdkfile',
url: 'https://aka.ms/download-jdk/microsoft-jdk-16.0.1.9.1-linux-x64.tar.gz'
url: 'https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-linux-x64.tar.gz'
},
// Liberica
{
group: 'Liberica',
version: '8',
version: '17',
jit: 'hotspot',
distribution: 'jdkfile',
url: 'https://download.bell-sw.com/java/8u292+10/bellsoft-jdk8u292+10-linux-amd64.tar.gz'
url: 'https://download.bell-sw.com/java/17.0.1+12/bellsoft-jdk17.0.1+12-linux-amd64.tar.gz'
},
{
group: 'Liberica',
version: '11',
jit: 'hotspot',
distribution: 'jdkfile',
url: 'https://download.bell-sw.com/java/11.0.11+9/bellsoft-jdk11.0.11+9-linux-amd64.tar.gz'
},
{
group: 'Liberica',
version: '16',
jit: 'hotspot',
distribution: 'jdkfile',
url: 'https://download.bell-sw.com/java/16.0.1+9/bellsoft-jdk16.0.1+9-linux-amd64.tar.gz'
url: 'https://download.bell-sw.com/java/11.0.13+8/bellsoft-jdk11.0.13+8-linux-amd64.tar.gz'
},
]
});
Expand Down Expand Up @@ -122,8 +112,8 @@ matrix.generateRow({hash: {value: 'same'}});
// Ensure at least one windows and at least one linux job is present (macos is almost the same as linux)
matrix.generateRow({os: 'windows-latest'});
matrix.generateRow({os: 'ubuntu-latest'});
// Ensure there will be at least one job with Java 8
matrix.generateRow({jdk: {version: 8}});
// Ensure there will be at least one job with Java 17
matrix.generateRow({jdk: {version: 17}});
// Ensure there will be at least one job with Java 11
matrix.generateRow({jdk: {version: 11}});
const include = matrix.generateRows(process.env.MATRIX_JOBS || 5);
Expand All @@ -144,14 +134,12 @@ include.forEach(v => {
// so it might reveal missing synchronization in TestNG code
v.name += ', stress JIT';
jvmArgs.push('-XX:+UnlockDiagnosticVMOptions');
if (v.jdk.version >= 8) {
// Randomize instruction scheduling in GCM
// share/opto/c2_globals.hpp
jvmArgs.push('-XX:+StressGCM');
// Randomize instruction scheduling in LCM
// share/opto/c2_globals.hpp
jvmArgs.push('-XX:+StressLCM');
}
// Randomize instruction scheduling in GCM
// share/opto/c2_globals.hpp
jvmArgs.push('-XX:+StressGCM');
// Randomize instruction scheduling in LCM
// share/opto/c2_globals.hpp
jvmArgs.push('-XX:+StressLCM');
if (v.jdk.version >= 16) {
// Randomize worklist traversal in IGVN
// share/opto/c2_globals.hpp
Expand Down
2 changes: 2 additions & 0 deletions CHANGES.txt
@@ -1,4 +1,6 @@
Current
7.6.0
Fixed: GITHUB-2637: Upgrade to JDK11 as the minimum JDK requirements(Krishnan Mahadevan)

7.5
Fixed: GITHUB-2701: Bump gradle version to 7.3.3 to support java17 build (ZhangJian He)
Expand Down
Expand Up @@ -15,8 +15,12 @@ tasks.withType<JavaCompile>().configureEach {
inputs.property("java.vm.version", System.getProperty("java.vm.version"))
options.apply {
encoding = "UTF-8"
compilerArgs.add("-Xlint:deprecation")
compilerArgs.add("-Werror")
//We still are NOT compatible with JDK17 in terms of deprecation.
// But let's not fail builds for that reason
if (JavaVersion.current() != JavaVersion.VERSION_17) {
compilerArgs.add("-Xlint:deprecation")
compilerArgs.add("-Werror")
}
}
}

Expand Down
4 changes: 2 additions & 2 deletions build-logic/jvm/src/main/kotlin/testng.java.gradle.kts
Expand Up @@ -9,8 +9,8 @@ plugins {
}

java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}

tasks.withType<JavaCompile>().configureEach {
Expand Down
Expand Up @@ -6,12 +6,12 @@ plugins {
}

dependencies {
testImplementation(platform("org.jetbrains.kotlin:kotlin-bom:1.5.10"))
testImplementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
testImplementation(platform("org.jetbrains.kotlin:kotlin-bom:1.6.10"))
testImplementation("org.jetbrains.kotlin:kotlin-stdlib")
}

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions {
jvmTarget = "1.8"
jvmTarget = "11"
}
}
2 changes: 1 addition & 1 deletion settings.gradle.kts
Expand Up @@ -6,7 +6,7 @@ rootProject.name = "testng-root"

plugins {
`gradle-enterprise`
id("de.fayard.refreshVersions") version "0.10.0"
id("de.fayard.refreshVersions") version "0.30.1"
}

gradleEnterprise {
Expand Down
Expand Up @@ -2,17 +2,16 @@

import static org.assertj.core.api.Assertions.assertThat;

import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.Map;
import org.testng.DataProviderHolder;
import org.testng.IDataProviderListener;
import org.testng.ITestContext;
import org.testng.ITestNGMethod;
import org.testng.ITestObjectFactory;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import org.testng.collections.Lists;
import org.testng.collections.Maps;
import org.testng.internal.annotations.DefaultAnnotationTransformer;
import org.testng.internal.annotations.IAnnotationFinder;
Expand All @@ -30,7 +29,6 @@ public class ParameterHandlerTest extends SimpleBaseTest {

@BeforeClass
public void beforeClass() {
Collection<IDataProviderListener> listeners = Collections.emptyList();
IAnnotationFinder finder = new JDK15AnnotationFinder(new DefaultAnnotationTransformer());
handler =
new ParameterHandler(new ITestObjectFactory() {}, finder, new DataProviderHolder(), 0);
Expand Down Expand Up @@ -68,7 +66,8 @@ private void runTest(ITestNGMethod testNGMethod, ParameterHolder.ParameterOrigin
assertThat(params.parameterHolder).isNotNull();
assertThat(params.parameterHolder.origin).isEqualByComparingTo(origin);
Iterator<Object[]> iterators = params.parameterHolder.parameters;
assertThat(iterators).containsAll(Collections.singletonList(new Object[] {"bar"}));
assertThat(Lists.newArrayList(iterators))
.containsAll(Collections.singletonList(new Object[] {"bar"}));
}

private ParameterHandler.ParameterBag invokeParameterCreation(ITestNGMethod method) {
Expand Down
Expand Up @@ -7,7 +7,7 @@
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.assertj.core.api.iterable.Extractor;
import java.util.function.Function;
import org.testng.Assert;
import org.testng.IAnnotationTransformer;
import org.testng.ITestResult;
Expand All @@ -32,7 +32,7 @@

public class AnnotationTransformerTest extends SimpleBaseTest {

private static final Extractor<ITestResult, String> NAME_EXTRACTOR = ITestResult::getName;
private static final Function<ITestResult, String> NAME_EXTRACTOR = ITestResult::getName;

/**
* Make sure that without a transformer in place, a class-level annotation invocationCount is
Expand Down
@@ -1,6 +1,6 @@
package test.configuration.github1700;

import static org.assertj.core.api.Java6Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThat;

import org.testng.TestNG;
import org.testng.annotations.Test;
Expand Down
50 changes: 11 additions & 39 deletions versions.properties
@@ -1,5 +1,5 @@
#### Dependencies and Plugin versions with their available updates.
#### Generated by `./gradlew refreshVersions` version 0.10.0
#### Generated by `./gradlew refreshVersions` version 0.30.1
####
#### Don't manually edit or split the comments that start with four hashtags (####),
#### they will be overwritten by refreshVersions.
Expand All @@ -11,17 +11,15 @@ plugin.com.github.johnrengelman.shadow=7.0.0

plugin.com.github.vlsi.gradle-extensions=1.74

plugin.com.github.vlsi.stage-vote-release=1.74
plugin.com.github.vlsi.stage-vote-release=1.77

version.ch.qos.logback..logback-classic=1.2.3

version.ch.qos.logback..logback-core=1.2.3

version.com.beust..jcommander=1.78
## # available=1.81
version.com.beust..jcommander=1.81

version.com.google.code.findbugs..jsr305=3.0.1
## # available=3.0.2
version.com.google.code.findbugs..jsr305=3.0.2

version.com.google.inject..guice-bom=5.0.1

Expand All @@ -31,37 +29,17 @@ version.javax..javaee-api=8.0.1

version.junit.junit=4.13.2

version.mockito=3.10.0
version.mockito=4.2.0

version.org.apache-extras.beanshell..bsh=2.0b6

version.org.apache.ant..ant-testutil=1.10.9
## # available=1.10.10
version.org.apache.ant..ant-testutil=1.10.12

version.org.apache.ant..ant=1.10.9
## # available=1.10.10
version.org.apache.ant..ant=1.10.12

version.org.apache.felix..org.apache.felix.framework=7.0.0

version.org.assertj..assertj-core=3.10.0
## # available=3.11.0
## # available=3.11.1
## # available=3.12.0
## # available=3.12.1
## # available=3.12.2
## # available=3.13.0
## # available=3.13.1
## # available=3.13.2
## # available=3.14.0
## # available=3.15.0
## # available=3.16.0
## # available=3.16.1
## # available=3.17.0
## # available=3.17.1
## # available=3.17.2
## # available=3.18.0
## # available=3.18.1
## # available=3.19.0
version.org.assertj..assertj-core=3.22.0

version.org.codehaus.groovy..groovy-all=2.4.7

Expand All @@ -84,16 +62,10 @@ version.org.spockframework..spock-core=1.0-groovy-2.4
version.org.webjars..jquery=3.5.1
## # available=3.6.0
krmahadevan marked this conversation as resolved.
Show resolved Hide resolved

version.org.xmlunit..xmlunit-assertj=2.8.2
version.org.xmlunit..xmlunit-assertj=2.8.4

version.org.yaml..snakeyaml=1.21
## # available=1.22
## # available=1.23
## # available=1.24
## # available=1.25
## # available=1.26
## # available=1.27
## # available=1.28
version.org.yaml..snakeyaml=1.30

version.org.slf4j..slf4j-simple=1.7.32

version.org.slf4j..slf4j-api=1.7.32