From dae2f6c36649de8b462fe91e501207b489236875 Mon Sep 17 00:00:00 2001 From: Brice Dutheil Date: Thu, 24 Sep 2026 11:19:27 +0200 Subject: [PATCH] refactor: default the compiler to the Gradle daemon --- .../datadog/gradle/CompilerConfiguration.kt | 7 +++ dd-java-agent/agent-bootstrap/build.gradle | 2 +- dd-java-agent/agent-installer/build.gradle | 4 +- .../profiling-controller-jfr/build.gradle | 2 +- .../implementation/build.gradle | 2 +- .../profiling-controller-openjdk/build.gradle | 2 +- dd-java-agent/agent-tooling/build.gradle | 4 +- dd-java-agent/build.gradle | 2 +- .../akka-http/akka-http-10.6/build.gradle | 6 +-- .../armeria/armeria-jetty-1.24/build.gradle | 2 +- .../instrumentation/axis2-1.3/build.gradle | 4 +- .../instrumentation/cxf-2.1/build.gradle | 4 +- .../exception-profiling/build.gradle | 1 - .../graal-native-image-20.0/build.gradle | 2 +- .../graphql-java-20.0/build.gradle | 2 +- .../grizzly/grizzly-client-1.9/build.gradle | 2 +- .../instrumentation/ignite-2.0/build.gradle | 2 +- .../java/java-io-1.8/build.gradle | 4 +- .../java-lang/java-lang-11.0/build.gradle | 4 +- .../java-lang/java-lang-15.0/build.gradle | 4 +- .../java-lang/java-lang-17.0/build.gradle | 4 +- .../java-lang/java-lang-21.0/build.gradle | 2 +- .../java-lang/java-lang-22.0/build.gradle | 4 +- .../java/java-lang/java-lang-9.0/build.gradle | 4 +- .../java/java-net/java-net-11.0/build.gradle | 4 +- .../java/java-nio-1.8/build.gradle | 2 +- .../jersey/jersey-2.0/build.gradle | 4 +- .../jetty-client-10.0/build.gradle | 2 +- .../jetty-client-12.0/build.gradle | 2 +- .../jetty-server-10.0/build.gradle | 2 +- .../jetty-server-11.0/build.gradle | 2 +- .../jetty-server-12.0/build.gradle | 4 +- .../jms/jakarta-jms-3.0/build.gradle | 2 +- .../kafka/kafka-clients-3.8/build.gradle | 4 +- .../karate/karate-1.0/build.gradle | 4 +- .../karate/karate-2.0/build.gradle | 4 +- .../build.gradle | 4 +- .../instrumentation/mule-4.5/build.gradle | 4 +- .../play/play-appsec-2.7/build.gradle | 4 +- .../instrumentation/quartz-2.0/build.gradle | 2 +- .../resilience4j-2.0/build.gradle | 2 +- .../resilience4j-reactor-2.0/build.gradle | 2 +- .../jakarta-rs-annotations-3.0/build.gradle | 4 +- .../selenium-3.13/build.gradle | 2 +- .../spring/spring-boot-1.3/build.gradle | 2 +- .../spring/spring-messaging-4.0/build.gradle | 2 +- .../spring/spring-scheduling-3.1/build.gradle | 4 +- .../spring-security-6.0/build.gradle | 4 +- .../spring-webflux-6.0/build.gradle | 2 +- .../spring-webmvc-6.0/build.gradle | 4 +- .../tomcat/tomcat-5.5/build.gradle | 4 +- .../vertx-web/vertx-web-4.0/build.gradle | 4 +- .../jetty-websocket-10.0/build.gradle | 4 +- .../jetty-websocket-11.0/build.gradle | 2 +- .../jetty-websocket-12.0/build.gradle | 2 +- .../instrumentation/wildfly-9.0/build.gradle | 4 +- .../appsec/springboot-security/build.gradle | 2 +- .../concurrent/java-21/build.gradle | 2 +- .../concurrent/java-25/build.gradle | 2 +- .../iast-util/iast-util-11/build.gradle | 2 +- .../iast-util/iast-util-17/build.gradle | 2 +- dd-smoke-tests/java9-modules/build.gradle | 2 +- dd-smoke-tests/rum/tomcat-10/build.gradle | 2 +- dd-smoke-tests/rum/tomcat-11/build.gradle | 2 +- gradle/java_no_deps.gradle | 46 ++++++++++--------- internal-api/internal-api-9/build.gradle.kts | 2 +- .../feature-flagging-api/build.gradle.kts | 2 +- utils/socket-utils/build.gradle.kts | 2 +- 68 files changed, 126 insertions(+), 116 deletions(-) diff --git a/buildSrc/src/main/kotlin/datadog/gradle/CompilerConfiguration.kt b/buildSrc/src/main/kotlin/datadog/gradle/CompilerConfiguration.kt index 85c7792068a..b7837634d8d 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/CompilerConfiguration.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/CompilerConfiguration.kt @@ -5,6 +5,13 @@ import org.gradle.api.JavaVersion import org.gradle.api.tasks.compile.AbstractCompile import org.gradle.kotlin.dsl.extra +fun AbstractCompile.configureCompiler( + targetVersion: JavaVersion, + unsetReleaseFlagReason: String = "", +) { + (project.extra["configureCompiler"] as Closure<*>).call(this, targetVersion, unsetReleaseFlagReason) +} + fun AbstractCompile.configureCompiler( toolchainVersion: Int, targetVersion: JavaVersion, diff --git a/dd-java-agent/agent-bootstrap/build.gradle b/dd-java-agent/agent-bootstrap/build.gradle index 998e197982f..3895cb3cbd9 100644 --- a/dd-java-agent/agent-bootstrap/build.gradle +++ b/dd-java-agent/agent-bootstrap/build.gradle @@ -44,7 +44,7 @@ sourceSets { tasks.named("compileMain_java11Java", JavaCompile) { // Do not lift this offset: these JFR bootstrap classes run on Java 8 JFR backports. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses jdk.jfr module (Java 11+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses jdk.jfr module (Java 11+) at Java 8 bytecode") } dependencies { diff --git a/dd-java-agent/agent-installer/build.gradle b/dd-java-agent/agent-installer/build.gradle index da9a0405dd8..67496f93801 100644 --- a/dd-java-agent/agent-installer/build.gradle +++ b/dd-java-agent/agent-installer/build.gradle @@ -35,13 +35,13 @@ dependencies { tasks.named("compileMain_java11Java", JavaCompile) { // Loaded reflectively only on Java 9+, so this can target Java 9 and restore --release. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses the ClassFileTransformer Module overload (Java 9+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses the ClassFileTransformer Module overload (Java 9+) at Java 8 bytecode") } tasks.named("compileMain_java25Java", JavaCompile) { // Loaded reflectively only on Java 22+, so this can target Java 22 and restore --release // after confirming the implementation uses only the Java 22 FFM surface. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses Foreign Function & Memory API (java.lang.foreign, Java 22+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses Foreign Function & Memory API (java.lang.foreign, Java 22+) at Java 8 bytecode") } dependencies { diff --git a/dd-java-agent/agent-profiling/profiling-controller-jfr/build.gradle b/dd-java-agent/agent-profiling/profiling-controller-jfr/build.gradle index 56adc52c767..aa1d7f6e235 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-jfr/build.gradle +++ b/dd-java-agent/agent-profiling/profiling-controller-jfr/build.gradle @@ -32,7 +32,7 @@ excludedClassesCoverage += ['com.datadog.profiling.controller.jfr.JdkTypeIDs'] // Shared JFR implementation. The earliest Java version JFR is working on is Java 8 tasks.named("compileTestJava", JavaCompile) { // These tests run only on Java 11+, so this can target Java 11 and restore --release. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses jdk.jfr API (Java 11+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses jdk.jfr API (Java 11+) at Java 8 bytecode") // Disable '-processing' because some annotations are not claimed. // Disable '-options' because we are compiling for java8 without specifying bootstrap - intentionally. // Disable '-path' because we do not have some of the paths seem to be missing. diff --git a/dd-java-agent/agent-profiling/profiling-controller-jfr/implementation/build.gradle b/dd-java-agent/agent-profiling/profiling-controller-jfr/implementation/build.gradle index fbd30f08ca1..83372c7404b 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-jfr/implementation/build.gradle +++ b/dd-java-agent/agent-profiling/profiling-controller-jfr/implementation/build.gradle @@ -23,7 +23,7 @@ tasks.named("compileJava", JavaCompile) { tasks.named("compileMain_java11Java", JavaCompile) { // Do not lift this to Java 11 while JFR-capable Java 9/10 distributions remain supported; // --release 9 cannot expose the public JFR API introduced in Java 11. - configureCompiler(it, 25, JavaVersion.VERSION_1_9, "Uses public jdk.jfr APIs (Java 11+) at Java 9 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_9, "Uses public jdk.jfr APIs (Java 11+) at Java 9 bytecode") } dependencies { diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/build.gradle b/dd-java-agent/agent-profiling/profiling-controller-openjdk/build.gradle index d4283d6193e..5e252fc0178 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/build.gradle +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/build.gradle @@ -43,7 +43,7 @@ dependencies { [JavaCompile, GroovyCompile].each { tasks.withType(it).configureEach { // Do not lift this offset: this controller runs on Java 8 distributions that backport JFR. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses public jdk.jfr APIs (Java 11+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses public jdk.jfr APIs (Java 11+) at Java 8 bytecode") // Disable '-processing' because some annotations are not claimed. // Disable '-options' because we are compiling for java8 without specifying bootstrap - intentionally. // Disable '-path' because we do not have some of the paths seem to be missing. diff --git a/dd-java-agent/agent-tooling/build.gradle b/dd-java-agent/agent-tooling/build.gradle index 98545ab7b85..4a86b649556 100644 --- a/dd-java-agent/agent-tooling/build.gradle +++ b/dd-java-agent/agent-tooling/build.gradle @@ -68,13 +68,13 @@ tasks.named("forbiddenApisJmh") { ignoreFailures = true } tasks.named("compileTestJava") { dependsOn('generateTestClassNameTries') } tasks.named("compileTest_java11Java") { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileTest_java21Java") { // Relies on the daemon JDK (>= 18/19) so javac emits `invokeinterface` for `java.lang.Object` // methods on an interface type. See https://bugs.openjdk.org/browse/JDK-8272715. - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.named("jmh") { diff --git a/dd-java-agent/build.gradle b/dd-java-agent/build.gradle index 43d9e5c44d2..3fe773b73a4 100644 --- a/dd-java-agent/build.gradle +++ b/dd-java-agent/build.gradle @@ -57,7 +57,7 @@ def java6CompileTask = tasks.named("compileMain_java6Java") { } def java11CompileTask = tasks.named("compileMain_java11Java") { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileJava") { diff --git a/dd-java-agent/instrumentation/akka/akka-http/akka-http-10.6/build.gradle b/dd-java-agent/instrumentation/akka/akka-http/akka-http-10.6/build.gradle index cb8107ce40d..623c8efdfd2 100644 --- a/dd-java-agent/instrumentation/akka/akka-http/akka-http-10.6/build.gradle +++ b/dd-java-agent/instrumentation/akka/akka-http/akka-http-10.6/build.gradle @@ -40,7 +40,7 @@ repositories { addTestSuiteForDir('latestDepTest', 'test') tasks.named("compileMain_java11Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } ["compileTestScala", "compileLatestDepTestScala"].each { @@ -51,12 +51,12 @@ tasks.named("compileMain_java11Java", JavaCompile) { } tasks.named("compileTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) classpath += files(tasks.named('compileTestScala').map { it.destinationDirectory }) } tasks.named("compileLatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) classpath += files(tasks.named('compileLatestDepTestScala').map { it.destinationDirectory }) } diff --git a/dd-java-agent/instrumentation/armeria/armeria-jetty-1.24/build.gradle b/dd-java-agent/instrumentation/armeria/armeria-jetty-1.24/build.gradle index c09adb510ea..b0b4961b5bd 100644 --- a/dd-java-agent/instrumentation/armeria/armeria-jetty-1.24/build.gradle +++ b/dd-java-agent/instrumentation/armeria/armeria-jetty-1.24/build.gradle @@ -30,7 +30,7 @@ tasks.named("jetty11Test", Test) { ["compileJetty11TestGroovy", "compileJetty11LatestDepTestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/axis2-1.3/build.gradle b/dd-java-agent/instrumentation/axis2-1.3/build.gradle index c0fa94f46a2..62e5da3eb5b 100644 --- a/dd-java-agent/instrumentation/axis2-1.3/build.gradle +++ b/dd-java-agent/instrumentation/axis2-1.3/build.gradle @@ -36,13 +36,13 @@ configurations.configureEach { ["compileLatestDepForkedTestGroovy", "compileLatestDepTestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } ["compileLatestDepForkedTestJava", "compileLatestDepTestJava"].each { tasks.named(it, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/cxf-2.1/build.gradle b/dd-java-agent/instrumentation/cxf-2.1/build.gradle index b997f6da5b0..34acd96b0a2 100644 --- a/dd-java-agent/instrumentation/cxf-2.1/build.gradle +++ b/dd-java-agent/instrumentation/cxf-2.1/build.gradle @@ -34,7 +34,7 @@ tasks.named("latestDepTest", Test) { } tasks.named("compileCxf3LatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("latestDepTest", Test) { @@ -42,7 +42,7 @@ tasks.named("latestDepTest", Test) { } tasks.named("compileLatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.named("cxf3LatestDepTest", Test) { diff --git a/dd-java-agent/instrumentation/datadog/profiling/exception-profiling/build.gradle b/dd-java-agent/instrumentation/datadog/profiling/exception-profiling/build.gradle index c5cf798eecd..0eb7d0211d2 100644 --- a/dd-java-agent/instrumentation/datadog/profiling/exception-profiling/build.gradle +++ b/dd-java-agent/instrumentation/datadog/profiling/exception-profiling/build.gradle @@ -30,7 +30,6 @@ dependencies { // Do not lift this offset: exception profiling runs on Java 8 distributions that backport JFR. configureCompiler( it, - 25, JavaVersion.VERSION_1_8, "Uses public jdk.jfr APIs (Java 11+) at Java 8 bytecode" ) diff --git a/dd-java-agent/instrumentation/graal/graal-native-image-20.0/build.gradle b/dd-java-agent/instrumentation/graal/graal-native-image-20.0/build.gradle index b8a83c9f120..4ad8f2f3f66 100644 --- a/dd-java-agent/instrumentation/graal/graal-native-image-20.0/build.gradle +++ b/dd-java-agent/instrumentation/graal/graal-native-image-20.0/build.gradle @@ -17,7 +17,7 @@ tracerJava { ["compileMain_java11Java", "compileTestJava"].each { tasks.named(it, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11, "Uses --add-exports to access jdk.internal.vm.ci, which is incompatible with --release") + configureCompiler(it, JavaVersion.VERSION_11, "Uses --add-exports to access jdk.internal.vm.ci, which is incompatible with --release") it.options.compilerArgs.addAll([ '-Xlint:all,-processing,-options,-path', '--add-modules', diff --git a/dd-java-agent/instrumentation/graphql-java/graphql-java-20.0/build.gradle b/dd-java-agent/instrumentation/graphql-java/graphql-java-20.0/build.gradle index dc24e821192..c479d466f40 100644 --- a/dd-java-agent/instrumentation/graphql-java/graphql-java-20.0/build.gradle +++ b/dd-java-agent/instrumentation/graphql-java/graphql-java-20.0/build.gradle @@ -60,7 +60,7 @@ dependencies { "compileGraphql21LatestDepForkedTestGroovy" ].each { tasks.named(it) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/grizzly/grizzly-client-1.9/build.gradle b/dd-java-agent/instrumentation/grizzly/grizzly-client-1.9/build.gradle index 26e0705782b..ddb51434718 100644 --- a/dd-java-agent/instrumentation/grizzly/grizzly-client-1.9/build.gradle +++ b/dd-java-agent/instrumentation/grizzly/grizzly-client-1.9/build.gradle @@ -37,7 +37,7 @@ tasks.named("latest5DepTest", Test) { } tasks.named("compileLatest5DepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_21) + configureCompiler(it, JavaVersion.VERSION_21) } configurations.named("muleLatestDepTestRuntimeClasspath") { diff --git a/dd-java-agent/instrumentation/ignite-2.0/build.gradle b/dd-java-agent/instrumentation/ignite-2.0/build.gradle index 13165056317..f934d97c9fc 100644 --- a/dd-java-agent/instrumentation/ignite-2.0/build.gradle +++ b/dd-java-agent/instrumentation/ignite-2.0/build.gradle @@ -44,7 +44,7 @@ dependencies { for (taskName in ['compileLatestDepTestGroovy', 'compileLatestDepForkedTestGroovy']) { tasks.named(taskName, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/java/java-io-1.8/build.gradle b/dd-java-agent/instrumentation/java/java-io-1.8/build.gradle index 1c70d6536e7..24a77cf2f8a 100644 --- a/dd-java-agent/instrumentation/java/java-io-1.8/build.gradle +++ b/dd-java-agent/instrumentation/java/java-io-1.8/build.gradle @@ -16,10 +16,10 @@ addTestSuiteForDir('java11Test', 'java11Test') ext.java11TestMinJavaVersionForTests = JavaVersion.VERSION_11 tasks.named("compileJava11TestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileJava11TestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } dependencies { diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-11.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-11.0/build.gradle index 6f8b7fb0ccd..7c6ec2abab7 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-11.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-11.0/build.gradle @@ -33,9 +33,9 @@ dependencies { project.tasks.withType(AbstractCompile).configureEach { switch (it.name) { case 'compileCsiJava': - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) break default: - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-15.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-15.0/build.gradle index 6c3822f41f9..37eb711face 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-15.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-15.0/build.gradle @@ -34,9 +34,9 @@ dependencies { tasks.withType(AbstractCompile).configureEach { switch (it.name) { case 'compileCsiJava': - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) break default: - configureCompiler(it, 25, JavaVersion.VERSION_15) + configureCompiler(it, JavaVersion.VERSION_15) } } diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-17.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-17.0/build.gradle index 9efdf3d72ac..e1afdff2569 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-17.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-17.0/build.gradle @@ -33,9 +33,9 @@ dependencies { project.tasks.withType(AbstractCompile).configureEach { switch (it.name) { case 'compileCsiJava': - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) break default: - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-21.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-21.0/build.gradle index 9e2536b496f..9fbe0263a3c 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-21.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-21.0/build.gradle @@ -23,7 +23,7 @@ idea { // Set test compile task to use JDK 21 to use the virtual threads API tasks.named("compileTestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_21) + configureCompiler(it, JavaVersion.VERSION_21) } dependencies { diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-22.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-22.0/build.gradle index b9c81a91bc5..73a34687af5 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-22.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-22.0/build.gradle @@ -27,14 +27,14 @@ idea { tasks.named("compileMain_java25Java", JavaCompile) { // This advice is loaded only on Java 25, so a follow-up can target Java 25 and restore --release. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses Foreign Function & Memory API (java.lang.foreign, Java 22+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses Foreign Function & Memory API (java.lang.foreign, Java 22+) at Java 8 bytecode") } // TODO Drop Groovy here tasks.named("compileTestGroovy", GroovyCompile) { // Groovy 3 cannot emit bytecode newer than Java 17. Keep the existing Java 8 bytecode while // compiling against the Java 25 Foreign Function & Memory API used by this Java 25-only test. - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } dependencies { implementation project(':dd-java-agent:instrumentation:datadog:tracing:trace-annotation') diff --git a/dd-java-agent/instrumentation/java/java-lang/java-lang-9.0/build.gradle b/dd-java-agent/instrumentation/java/java-lang/java-lang-9.0/build.gradle index be5a9c7a5f5..5c4b26a86da 100644 --- a/dd-java-agent/instrumentation/java/java-lang/java-lang-9.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-lang/java-lang-9.0/build.gradle @@ -36,9 +36,9 @@ project.tasks.withType(AbstractCompile).configureEach { case 'compileJava': // Do not lift this offset without splitting the API-specific classes: this instrumentation // is discovered by the Java 8-compatible agent before its Java 9 applicability is known. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses StringConcatFactory / java.lang.module APIs (Java 9+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses StringConcatFactory / java.lang.module APIs (Java 9+) at Java 8 bytecode") break default: - configureCompiler(it, 25, JavaVersion.VERSION_1_9) + configureCompiler(it, JavaVersion.VERSION_1_9) } } diff --git a/dd-java-agent/instrumentation/java/java-net/java-net-11.0/build.gradle b/dd-java-agent/instrumentation/java/java-net/java-net-11.0/build.gradle index 7845ee92b10..97eab9cee6e 100644 --- a/dd-java-agent/instrumentation/java/java-net/java-net-11.0/build.gradle +++ b/dd-java-agent/instrumentation/java/java-net/java-net-11.0/build.gradle @@ -18,11 +18,11 @@ dependencies { } tasks.named("compileMain_java11Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } idea { diff --git a/dd-java-agent/instrumentation/java/java-nio-1.8/build.gradle b/dd-java-agent/instrumentation/java/java-nio-1.8/build.gradle index 06008ab0b5d..43aa70cb975 100644 --- a/dd-java-agent/instrumentation/java/java-nio-1.8/build.gradle +++ b/dd-java-agent/instrumentation/java/java-nio-1.8/build.gradle @@ -20,7 +20,7 @@ testJvmConstraints { ["compileMain_java11Java", "compileTestJava"].each { name -> tasks.named(name, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) it.options.compilerArgs.addAll(['-Xlint:all,-processing,-options,-path']) } } diff --git a/dd-java-agent/instrumentation/jersey/jersey-2.0/build.gradle b/dd-java-agent/instrumentation/jersey/jersey-2.0/build.gradle index cc9ecf21dec..0bb3e609294 100644 --- a/dd-java-agent/instrumentation/jersey/jersey-2.0/build.gradle +++ b/dd-java-agent/instrumentation/jersey/jersey-2.0/build.gradle @@ -23,11 +23,11 @@ addTestSuiteForDir('jersey3JettyTest', 'jersey3JettyTest') addTestSuiteForDir('latestDepTest', 'test') tasks.named("compileJersey3JettyTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileTestJava") { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("jersey3JettyTest", Test) { diff --git a/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-10.0/build.gradle b/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-10.0/build.gradle index 741ca9f8a8c..08f7f4a5760 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-10.0/build.gradle +++ b/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-10.0/build.gradle @@ -31,7 +31,7 @@ addTestSuiteForDir('jetty11Test', 'test') addTestSuiteForDir('jetty10LatestDepTest', 'test') tasks.named("compileMain_java11Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } dependencies { diff --git a/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-12.0/build.gradle b/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-12.0/build.gradle index 965e9a80750..947bcc529b0 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-12.0/build.gradle +++ b/dd-java-agent/instrumentation/jetty/jetty-client/jetty-client-12.0/build.gradle @@ -19,7 +19,7 @@ tracerJava { addTestSuiteForDir('latestDepTest', 'test') tasks.named("compileMain_java17Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } configurations.matching { it.name.startsWith('test') || it.name.startsWith('latestDepTest') }.configureEach { diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/build.gradle b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/build.gradle index d89f5143ce7..bc104ad4eb5 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/build.gradle +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/build.gradle @@ -125,7 +125,7 @@ configurations.named('latestDepForkedTestRuntimeClasspath') { tasks.named("compileMain_java11Java", JavaCompile) { // Java 8 bytecode — override addSourceSetFor(11)'s Java 11 default - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } idea { diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/build.gradle b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/build.gradle index 8c90058c002..a41d9941a33 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/build.gradle +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/build.gradle @@ -77,7 +77,7 @@ dependencies { tasks.named("compileMain_java11Java", JavaCompile) { // Java 8 bytecode — override addSourceSetFor(11)'s Java 11 default - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.withType(Test).configureEach { diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/build.gradle b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/build.gradle index 6a17b42f2de..38c587096b8 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/build.gradle +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/build.gradle @@ -38,7 +38,7 @@ addTestSuiteExtendingForDir('ee10LatestDepForkedTest', 'ee10LatestDepTest', 'tes ["compileMain_java17Java", "compileTestJava"].each { tasks.named(it, JavaCompile) { // Jetty 12 requires Java 17, so these classes can target Java 17 and restore --release. - configureCompiler(it, 25, JavaVersion.VERSION_1_8, "Uses java.lang.Record (Java 16+) at Java 8 bytecode") + configureCompiler(it, JavaVersion.VERSION_1_8, "Uses java.lang.Record (Java 16+) at Java 8 bytecode") } } ["ee8LatestDepTest", "ee9LatestDepTest", "ee10LatestDepTest"].each { @@ -48,7 +48,7 @@ addTestSuiteExtendingForDir('ee10LatestDepForkedTest', 'ee10LatestDepTest', 'tes } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-java-agent/instrumentation/jms/jakarta-jms-3.0/build.gradle b/dd-java-agent/instrumentation/jms/jakarta-jms-3.0/build.gradle index 1a13683db61..74b4f6e2c5f 100644 --- a/dd-java-agent/instrumentation/jms/jakarta-jms-3.0/build.gradle +++ b/dd-java-agent/instrumentation/jms/jakarta-jms-3.0/build.gradle @@ -26,7 +26,7 @@ repositories { } tasks.named("compileTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-java-agent/instrumentation/kafka/kafka-clients-3.8/build.gradle b/dd-java-agent/instrumentation/kafka/kafka-clients-3.8/build.gradle index cb7c42cfc25..19219039198 100644 --- a/dd-java-agent/instrumentation/kafka/kafka-clients-3.8/build.gradle +++ b/dd-java-agent/instrumentation/kafka/kafka-clients-3.8/build.gradle @@ -23,11 +23,11 @@ addTestSuiteExtendingForDir('latestDepForkedTest', 'latestDepTest', 'test') // Java 8 bytecode — override addSourceSetFor(17)'s Java 17 default tasks.named("compileMain_java17Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-java-agent/instrumentation/karate/karate-1.0/build.gradle b/dd-java-agent/instrumentation/karate/karate-1.0/build.gradle index a1263c1650f..1d1c87cf04d 100644 --- a/dd-java-agent/instrumentation/karate/karate-1.0/build.gradle +++ b/dd-java-agent/instrumentation/karate/karate-1.0/build.gradle @@ -114,14 +114,14 @@ sourceSets { // karate 1.4.0+ requires Java 11: https://github.com/karatelabs/karate/releases/tag/v1.4.0 tasks.named("compileKarate141TestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.named("karate141Test", Test) { onlyIf { javaVersion.isJava11Compatible() } } tasks.named("compileLatestDepTestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.named("latestDepTest", Test) { diff --git a/dd-java-agent/instrumentation/karate/karate-2.0/build.gradle b/dd-java-agent/instrumentation/karate/karate-2.0/build.gradle index 4e6fb795e34..53d43047c19 100644 --- a/dd-java-agent/instrumentation/karate/karate-2.0/build.gradle +++ b/dd-java-agent/instrumentation/karate/karate-2.0/build.gradle @@ -19,12 +19,12 @@ muzzle { ["compileMain_java21Java", "compileTestJava"].each { tasks.named(it, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_21) + configureCompiler(it, JavaVersion.VERSION_21) } } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_21) + configureCompiler(it, JavaVersion.VERSION_21) } dependencies { diff --git a/dd-java-agent/instrumentation/micronaut/micronaut-http-server-netty/micronaut-http-server-netty-4.0/build.gradle b/dd-java-agent/instrumentation/micronaut/micronaut-http-server-netty/micronaut-http-server-netty-4.0/build.gradle index 28596946568..e740bf90d57 100644 --- a/dd-java-agent/instrumentation/micronaut/micronaut-http-server-netty/micronaut-http-server-netty-4.0/build.gradle +++ b/dd-java-agent/instrumentation/micronaut/micronaut-http-server-netty/micronaut-http-server-netty-4.0/build.gradle @@ -19,13 +19,13 @@ addTestSuiteForDir('latestDepTest', 'test') ["compileMain_java17Java", "compileTestJava", "compileLatestDepTestJava"].each { tasks.named(it, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } } ["compileTestGroovy", "compileLatestDepTestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/mule-4.5/build.gradle b/dd-java-agent/instrumentation/mule-4.5/build.gradle index 0feb20b1d75..107f589016b 100644 --- a/dd-java-agent/instrumentation/mule-4.5/build.gradle +++ b/dd-java-agent/instrumentation/mule-4.5/build.gradle @@ -114,11 +114,11 @@ tasks.named("compileMule46ForkedTestGroovy", GroovyCompile) { tasks.named("compileLatestDepForkedTestGroovy", GroovyCompile) { dependsOn 'mvnPackage', 'extractLatestMuleServices' - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.named("compileLatestDepForkedTestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.named("mule46ForkedTest", Test) { diff --git a/dd-java-agent/instrumentation/play/play-appsec-2.7/build.gradle b/dd-java-agent/instrumentation/play/play-appsec-2.7/build.gradle index db331643cf8..3bef364502c 100644 --- a/dd-java-agent/instrumentation/play/play-appsec-2.7/build.gradle +++ b/dd-java-agent/instrumentation/play/play-appsec-2.7/build.gradle @@ -57,7 +57,7 @@ def configureRoutesCompilation(String sourceSetName) { } tasks.named("compile${capitalizedName}Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compile${capitalizedName}Scala", ScalaCompile) { @@ -66,7 +66,7 @@ def configureRoutesCompilation(String sourceSetName) { } tasks.named("compile${capitalizedName}Groovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) classpath += files(tasks.named("compile${capitalizedName}Scala")) } } diff --git a/dd-java-agent/instrumentation/quartz-2.0/build.gradle b/dd-java-agent/instrumentation/quartz-2.0/build.gradle index a3c5b79d7b9..0da101cb66c 100644 --- a/dd-java-agent/instrumentation/quartz-2.0/build.gradle +++ b/dd-java-agent/instrumentation/quartz-2.0/build.gradle @@ -36,7 +36,7 @@ dependencies { "compileVersion40TestJava" ].each { tasks.named(it, AbstractCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/build.gradle b/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/build.gradle index 5ae536dea70..3ba0bc67e1e 100644 --- a/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/build.gradle +++ b/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/build.gradle @@ -24,7 +24,7 @@ idea { } project.tasks.withType(AbstractCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } addTestSuiteForDir('latestDepTest', 'test') diff --git a/dd-java-agent/instrumentation/resilience4j/resilience4j-reactor-2.0/build.gradle b/dd-java-agent/instrumentation/resilience4j/resilience4j-reactor-2.0/build.gradle index 8936c9f4bba..7a1453e23e1 100644 --- a/dd-java-agent/instrumentation/resilience4j/resilience4j-reactor-2.0/build.gradle +++ b/dd-java-agent/instrumentation/resilience4j/resilience4j-reactor-2.0/build.gradle @@ -25,7 +25,7 @@ idea { // Set all compile tasks to use JDK17 but let instrumentation code target 1.8 compatibility project.tasks.withType(AbstractCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } addTestSuiteForDir('latestDepTest', 'test') diff --git a/dd-java-agent/instrumentation/rs/jakarta-rs-annotations-3.0/build.gradle b/dd-java-agent/instrumentation/rs/jakarta-rs-annotations-3.0/build.gradle index b4a07caceb5..b368ce62f9a 100644 --- a/dd-java-agent/instrumentation/rs/jakarta-rs-annotations-3.0/build.gradle +++ b/dd-java-agent/instrumentation/rs/jakarta-rs-annotations-3.0/build.gradle @@ -14,11 +14,11 @@ addTestSuiteForDir('latestDepTest', 'test') addTestSuiteExtendingForDir('latestDepJava11Test', 'latestDepTest', 'test') tasks.named("compileLatestDepJava11TestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileLatestDepJava11TestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("latestDepJava11Test", Test) { diff --git a/dd-java-agent/instrumentation/selenium-3.13/build.gradle b/dd-java-agent/instrumentation/selenium-3.13/build.gradle index 610594de6b9..9c2956d4b37 100644 --- a/dd-java-agent/instrumentation/selenium-3.13/build.gradle +++ b/dd-java-agent/instrumentation/selenium-3.13/build.gradle @@ -47,7 +47,7 @@ configurations.matching({ it.name.startsWith('test') || it.name.startsWith('late }) tasks.named("compileLatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.named("latestDepTest", Test) { diff --git a/dd-java-agent/instrumentation/spring/spring-boot-1.3/build.gradle b/dd-java-agent/instrumentation/spring/spring-boot-1.3/build.gradle index e5d62940a93..7f77401b34b 100644 --- a/dd-java-agent/instrumentation/spring/spring-boot-1.3/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-boot-1.3/build.gradle @@ -29,7 +29,7 @@ addTestSuiteExtendingForDir("latestDepForkedTest", "latestDepTest", "test") ["compileLatestDepTestGroovy", "compileBoot3TestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/spring/spring-messaging-4.0/build.gradle b/dd-java-agent/instrumentation/spring/spring-messaging-4.0/build.gradle index 6a6ca323003..fd8d86e0326 100644 --- a/dd-java-agent/instrumentation/spring/spring-messaging-4.0/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-messaging-4.0/build.gradle @@ -27,7 +27,7 @@ addTestSuiteForDir('latestDepTest', 'test') ["compileTestGroovy", "compileLatestDepTestGroovy"].each { name -> tasks.named(name, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/build.gradle b/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/build.gradle index dd9821bfb94..adbcba6ce29 100644 --- a/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/build.gradle @@ -25,13 +25,13 @@ addTestSuiteForDir('latestSpring5Test', 'test') ["compileSpring6TestJava", "compileLatestDepTestJava"].each { name -> tasks.named(name, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } ["compileSpring6TestGroovy", "compileLatestDepTestGroovy"].each { name -> tasks.named(name, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/spring/spring-security/spring-security-6.0/build.gradle b/dd-java-agent/instrumentation/spring/spring-security/spring-security-6.0/build.gradle index 22d4f989791..e7fc94efb57 100644 --- a/dd-java-agent/instrumentation/spring/spring-security/spring-security-6.0/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-security/spring-security-6.0/build.gradle @@ -11,11 +11,11 @@ addTestSuiteForDir('latestDepTest', 'test') final springBootVersion = '3.0.0' tasks.withType(AbstractCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-java-agent/instrumentation/spring/spring-webflux/spring-webflux-6.0/build.gradle b/dd-java-agent/instrumentation/spring/spring-webflux/spring-webflux-6.0/build.gradle index a262b9615e3..3616298eb31 100644 --- a/dd-java-agent/instrumentation/spring/spring-webflux/spring-webflux-6.0/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-webflux/spring-webflux-6.0/build.gradle @@ -14,7 +14,7 @@ addTestSuiteExtendingForDir('latestDepForkedTest', 'latestDepTest', 'test') addTestSuiteExtendingForDir('latestDepBootTest', 'latestDepTest', 'bootTest') tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.named("iastTest", Test) { diff --git a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/build.gradle b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/build.gradle index 579ecbb15cb..3f3513896b4 100644 --- a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/build.gradle +++ b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/build.gradle @@ -20,12 +20,12 @@ addTestSuiteForDir("latestDepTest", "test") ["compileMain_java17Java", "compileTestJava", "compileLatestDepTestJava"].each { tasks.named(it, JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) groovyOptions.setParameters(true) } diff --git a/dd-java-agent/instrumentation/tomcat/tomcat-5.5/build.gradle b/dd-java-agent/instrumentation/tomcat/tomcat-5.5/build.gradle index 93e06260ecb..51c2ce2fb50 100644 --- a/dd-java-agent/instrumentation/tomcat/tomcat-5.5/build.gradle +++ b/dd-java-agent/instrumentation/tomcat/tomcat-5.5/build.gradle @@ -68,12 +68,12 @@ configurations.configureEach { ["compileLatest10TestGroovy", "compileLatest10ForkedTestGroovy"].each { name -> tasks.named(name, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } tasks.named("compileLatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/build.gradle b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/build.gradle index 684d838c0b7..3956b76d36a 100644 --- a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/build.gradle +++ b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/build.gradle @@ -57,10 +57,10 @@ dependencies { } tasks.named("compileLatestDepTestJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("compileLatestDepTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.named("latestDepTest", Test) { diff --git a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/build.gradle b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/build.gradle index 5397b79a7af..b9a9acc3038 100644 --- a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/build.gradle +++ b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/build.gradle @@ -20,11 +20,11 @@ tracerJava { addTestSuite("latestDepTest") tasks.named("compileMain_java11Java", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_1_8) + configureCompiler(it, JavaVersion.VERSION_1_8) } ["compileTestGroovy", "compileLatestDepTestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-11.0/build.gradle b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-11.0/build.gradle index d2c6ebe5f72..c189d68f39f 100644 --- a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-11.0/build.gradle +++ b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-11.0/build.gradle @@ -21,7 +21,7 @@ addTestSuite("latestDepTest") ["compileTestGroovy", "compileLatestDepTestGroovy"].each { name -> tasks.named(name, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } } diff --git a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-12.0/build.gradle b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-12.0/build.gradle index 7aaa8c90483..295e18d7d71 100644 --- a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-12.0/build.gradle +++ b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-12.0/build.gradle @@ -34,7 +34,7 @@ addTestSuiteForDir("latestDepTest", "test") ["compileTestGroovy", "compileLatestDepTestGroovy"].each { name -> tasks.named(name, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-java-agent/instrumentation/wildfly-9.0/build.gradle b/dd-java-agent/instrumentation/wildfly-9.0/build.gradle index 71b64cb746b..3f5a00ae0e7 100644 --- a/dd-java-agent/instrumentation/wildfly-9.0/build.gradle +++ b/dd-java-agent/instrumentation/wildfly-9.0/build.gradle @@ -128,12 +128,12 @@ tasks.named("latestDepTest", Test) { } tasks.named("compileTestGroovy", GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } ["compileLatestDepTestGroovy", "compileLatestDepForkedTestGroovy"].each { tasks.named(it, GroovyCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } } diff --git a/dd-smoke-tests/appsec/springboot-security/build.gradle b/dd-smoke-tests/appsec/springboot-security/build.gradle index 86e25a021f4..370cb633f82 100644 --- a/dd-smoke-tests/appsec/springboot-security/build.gradle +++ b/dd-smoke-tests/appsec/springboot-security/build.gradle @@ -17,7 +17,7 @@ tasks.named("jar", Jar) { } tasks.withType(JavaCompile).configureEach { - configureCompiler(delegate, 25, JavaVersion.VERSION_17) + configureCompiler(delegate, JavaVersion.VERSION_17) } dependencies { diff --git a/dd-smoke-tests/concurrent/java-21/build.gradle b/dd-smoke-tests/concurrent/java-21/build.gradle index 669102fc4bc..8d5556d4eed 100644 --- a/dd-smoke-tests/concurrent/java-21/build.gradle +++ b/dd-smoke-tests/concurrent/java-21/build.gradle @@ -20,7 +20,7 @@ java { } tasks.withType(JavaCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_21) + configureCompiler(it, JavaVersion.VERSION_21) } application { diff --git a/dd-smoke-tests/concurrent/java-25/build.gradle b/dd-smoke-tests/concurrent/java-25/build.gradle index f7d58e6d59e..8aeb5484287 100644 --- a/dd-smoke-tests/concurrent/java-25/build.gradle +++ b/dd-smoke-tests/concurrent/java-25/build.gradle @@ -28,7 +28,7 @@ javaToolchains { } tasks.named('compileJava', JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_25) + configureCompiler(it, 25, JavaVersion.VERSION_25, "Java preview features must be compiled with the matching JDK 25 toolchain") options.compilerArgs.add("--enable-preview") } diff --git a/dd-smoke-tests/iast-util/iast-util-11/build.gradle b/dd-smoke-tests/iast-util/iast-util-11/build.gradle index fde0a5318d1..65dc557e9ff 100644 --- a/dd-smoke-tests/iast-util/iast-util-11/build.gradle +++ b/dd-smoke-tests/iast-util/iast-util-11/build.gradle @@ -23,5 +23,5 @@ dependencies { } tasks.named("compileJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } diff --git a/dd-smoke-tests/iast-util/iast-util-17/build.gradle b/dd-smoke-tests/iast-util/iast-util-17/build.gradle index 25613084c86..139ad6397bd 100644 --- a/dd-smoke-tests/iast-util/iast-util-17/build.gradle +++ b/dd-smoke-tests/iast-util/iast-util-17/build.gradle @@ -24,5 +24,5 @@ dependencies { } tasks.named("compileJava", JavaCompile) { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } diff --git a/dd-smoke-tests/java9-modules/build.gradle b/dd-smoke-tests/java9-modules/build.gradle index 0022c1fb64c..d5e02df21fe 100644 --- a/dd-smoke-tests/java9-modules/build.gradle +++ b/dd-smoke-tests/java9-modules/build.gradle @@ -13,7 +13,7 @@ tasks.named("jar", Jar) { } tasks.withType(JavaCompile).configureEach { JavaCompile jc -> - configureCompiler(jc, 25, JavaVersion.VERSION_1_9, "Need Java module support") + configureCompiler(jc, JavaVersion.VERSION_1_9, "Need Java module support") // read up classpath lazily to avoid early locking of gradle settings jc.options.compilerArgumentProviders.add(new CommandLineArgumentProvider() { @Override diff --git a/dd-smoke-tests/rum/tomcat-10/build.gradle b/dd-smoke-tests/rum/tomcat-10/build.gradle index 7964feb4a08..b2f6dac3e41 100644 --- a/dd-smoke-tests/rum/tomcat-10/build.gradle +++ b/dd-smoke-tests/rum/tomcat-10/build.gradle @@ -31,7 +31,7 @@ java { } } tasks.withType(JavaCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_11) + configureCompiler(it, JavaVersion.VERSION_11) } tasks.withType(Test).configureEach { diff --git a/dd-smoke-tests/rum/tomcat-11/build.gradle b/dd-smoke-tests/rum/tomcat-11/build.gradle index efdce475304..7f9da9fa386 100644 --- a/dd-smoke-tests/rum/tomcat-11/build.gradle +++ b/dd-smoke-tests/rum/tomcat-11/build.gradle @@ -32,7 +32,7 @@ java { } tasks.withType(JavaCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_17) + configureCompiler(it, JavaVersion.VERSION_17) } tasks.withType(Test).configureEach { diff --git a/gradle/java_no_deps.gradle b/gradle/java_no_deps.gradle index 7413a7ebb03..d2154d39dad 100644 --- a/gradle/java_no_deps.gradle +++ b/gradle/java_no_deps.gradle @@ -20,9 +20,7 @@ apply from: "$rootDir/gradle/test-suites.gradle" // Glue code for Groovy DSL. // TODO this extension need to go away once we move to convention plugins -ext.configureCompiler = (AbstractCompile it, int toolchainVersion, JavaVersion bytecodeVersion, String unsetReleaseFlagReason = null) -> { - configureCompiler(it, toolchainVersion, bytecodeVersion, unsetReleaseFlagReason) -} as Closure +ext.configureCompiler = this.&configureCompiler @CompileStatic interface TracerSourceSetConfig { @@ -93,14 +91,14 @@ class TracerJavaExtension { // TODO Make 'configureCompiler' a general utility method def configureCompilerCl = project.extensions.getByType(ExtraPropertiesExtension).get("configureCompiler") as Closure project.tasks.named(mainForJavaVersionSourceSet.compileJavaTaskName, JavaCompile) { - configureCompilerCl.call(it, 25, version) + configureCompilerCl.call(it, version) } if (sourceSetConfig.applyForTestSources.orElse(true)) { // configures all test tasks project.tasks.withType(JavaCompile).configureEach { if (it.name.toLowerCase().contains("test")) { - configureCompilerCl.call(it, 25, version) + configureCompilerCl.call(it, version) } } } @@ -162,12 +160,12 @@ tasks.withType(Test).configureEach { } def applyCodeCoverage = !( -project.path.startsWith(":dd-smoke-tests") || -project.path == ":dd-java-agent" || -project.path == ":dd-java-agent:load-generator" || -project.path.startsWith(":dd-java-agent:benchmark") || -project.path.startsWith(":dd-java-agent:instrumentation") || -project.path.startsWith(":dd-java-agent:appsec:weblog:")) + project.path.startsWith(":dd-smoke-tests") || + project.path == ":dd-java-agent" || + project.path == ":dd-java-agent:load-generator" || + project.path.startsWith(":dd-java-agent:benchmark") || + project.path.startsWith(":dd-java-agent:instrumentation") || + project.path.startsWith(":dd-java-agent:appsec:weblog:")) // https://stackoverflow.com/questions/42501869/gradle-skip-jacoco-during-test // https://poetengineer.postach.io/post/how-to-conditionally-enable-disable-jacoco-in-gradle-build @@ -202,11 +200,11 @@ tasks.named("jar", Jar) { manifest { attributes( - "Implementation-Title": project.name, - "Implementation-Version": project.version, - "Implementation-Vendor": "Datadog", - "Implementation-URL": "https://github.com/datadog/dd-trace-java", - ) + "Implementation-Title": project.name, + "Implementation-Version": project.version, + "Implementation-Vendor": "Datadog", + "Implementation-URL": "https://github.com/datadog/dd-trace-java", + ) } } @@ -315,6 +313,11 @@ if (project.hasProperty("removeJarVersionNumbers") && project.findProperty("remo } } +/** Configures compilation with the Gradle daemon's Java version. */ +def configureCompiler(AbstractCompile it, JavaVersion bytecodeVersion, String unsetReleaseFlagReason = null) { + configureCompiler(it, JavaLanguageVersion.current().asInt(), bytecodeVersion, unsetReleaseFlagReason) +} + /** * Customize the compiler config. * Adapts depending on the compile task type (java, groovy, scala covered). @@ -328,10 +331,11 @@ if (project.hasProperty("removeJarVersionNumbers") && project.findProperty("remo * @param bytecodeVersion is the version of emitted bytecode. * @param unsetReleaseFlagReason If not blank, `--release` option will not be applied. */ -def configureCompiler(AbstractCompile it, int toolchainVersion, JavaVersion bytecodeVersion, String unsetReleaseFlagReason) { +def configureCompiler(AbstractCompile it, int toolchainVersion, JavaVersion bytecodeVersion, String unsetReleaseFlagReason = null) { boolean unsetReleaseFlag = unsetReleaseFlagReason != null && !unsetReleaseFlagReason.trim().isEmpty() - if (toolchainVersion != 25 && !unsetReleaseFlag) { - throw new GradleException("$it.path uses Java $toolchainVersion instead of Java 25 without an unsetReleaseFlagReason") + def daemonVersion = JavaLanguageVersion.current().asInt() + if (toolchainVersion != daemonVersion && !unsetReleaseFlag) { + throw new GradleException("$it.path uses Java $toolchainVersion instead of the Gradle daemon's Java $daemonVersion without an unsetReleaseFlagReason") } Provider compiler = javaToolchains.compilerFor { @@ -386,10 +390,10 @@ def configureCompiler(AbstractCompile it, int toolchainVersion, JavaVersion byte // `configureCompiler` is idempotent, so the double pass is safe. // Scala is left out on purpose: scalac always forks a Zinc worker and is configured explicitly per module. tasks.withType(JavaCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_1_8, null) + configureCompiler(it, JavaVersion.VERSION_1_8) } tasks.withType(GroovyCompile).configureEach { - configureCompiler(it, 25, JavaVersion.VERSION_1_8, null) + configureCompiler(it, JavaVersion.VERSION_1_8) } ext.getJavaLauncherFor = (int javaVersionInteger) -> { diff --git a/internal-api/internal-api-9/build.gradle.kts b/internal-api/internal-api-9/build.gradle.kts index ae8ba996797..42165ddf853 100644 --- a/internal-api/internal-api-9/build.gradle.kts +++ b/internal-api/internal-api-9/build.gradle.kts @@ -30,7 +30,7 @@ listOf(JavaCompile::class.java, GroovyCompile::class.java).forEach { compileTask tasks.withType(compileTaskType).configureEach { // These implementations are selected only on Java 9+, so they can target Java 9 and restore // --release after confirming no project output must be loaded during Java 8 discovery. - configureCompiler(25, JavaVersion.VERSION_1_8, "Uses Java 9+ APIs (StackWalker, ProcessHandle, Module) at Java 8 bytecode") + configureCompiler(JavaVersion.VERSION_1_8, "Uses Java 9+ APIs (StackWalker, ProcessHandle, Module) at Java 8 bytecode") } } diff --git a/products/feature-flagging/feature-flagging-api/build.gradle.kts b/products/feature-flagging/feature-flagging-api/build.gradle.kts index d3b5f4c6402..298b39d4092 100644 --- a/products/feature-flagging/feature-flagging-api/build.gradle.kts +++ b/products/feature-flagging/feature-flagging-api/build.gradle.kts @@ -72,7 +72,7 @@ jmh { } tasks.withType().configureEach { - configureCompiler(25, JavaVersion.VERSION_11) + configureCompiler(JavaVersion.VERSION_11) } tasks.withType().configureEach { diff --git a/utils/socket-utils/build.gradle.kts b/utils/socket-utils/build.gradle.kts index 479bbf0032d..7e5e21200e5 100644 --- a/utils/socket-utils/build.gradle.kts +++ b/utils/socket-utils/build.gradle.kts @@ -22,7 +22,7 @@ listOf("compileMain_java17Java", "compileTestJava").forEach { tasks.named(it) { // The Java 17 implementation can lift this offset, but compileTestJava must first be split if // the remaining socket tests still need to run on Java 8. - configureCompiler(25, JavaVersion.VERSION_1_8, "Uses java.net.UnixDomainSocketAddress (Java 16+) at Java 8 bytecode") + configureCompiler(JavaVersion.VERSION_1_8, "Uses java.net.UnixDomainSocketAddress (Java 16+) at Java 8 bytecode") } }