diff --git a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/AbstractCompilersProvider.java b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/AbstractCompilersProvider.java index 4485e767a..82180b67d 100644 --- a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/AbstractCompilersProvider.java +++ b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/AbstractCompilersProvider.java @@ -26,6 +26,7 @@ import java.lang.reflect.InvocationTargetException; import java.util.stream.IntStream; import java.util.stream.Stream; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.ArgumentsProvider; @@ -150,6 +151,7 @@ protected AbstractCompilersProvider() { } @Override + @SuppressWarnings("deprecation") public Stream provideArguments(ExtensionContext context) { return IntStream .rangeClosed(minVersion, maxVersion) @@ -158,6 +160,18 @@ public Stream provideArguments(ExtensionContext context) { .map(Arguments::of); } + // Do not @Override as this does not exist prior to JUnit 5.13. + // Use a generic Object for the ParameterDeclarations argument as that + // also does not exist prior to JUnit 5.13, and we do not want to trigger + // NoClassDefFoundExceptions on older versions of JUnit. + @SuppressWarnings("override") + public Stream provideArguments( + @Nullable Object parameters, + ExtensionContext context + ) { + return provideArguments(context); + } + /** * Configure this provider with parameters from annotations. * diff --git a/pom.xml b/pom.xml index b4e1abccf..26e5ff5db 100644 --- a/pom.xml +++ b/pom.xml @@ -93,7 +93,7 @@ 4.3.0 1.4.0 1.0.0 - 5.12.2 + 5.13.1 2.8.1 5.18.0 2.0.17