diff --git a/.github/scripts/find-instrumentation-with-upper-version-limits.sh b/.github/scripts/find-instrumentation-with-upper-version-limits.sh new file mode 100644 index 000000000000..a1072992cb7b --- /dev/null +++ b/.github/scripts/find-instrumentation-with-upper-version-limits.sh @@ -0,0 +1,6 @@ +#!/bin/bash -e + +grep -r --include build.gradle.kts latestDepTestLibrary instrumentation \ + | grep -v :+\" \ + | grep -v "// see .* module" \ + | grep -v "// documented limitation" diff --git a/docs/supported-libraries.md b/docs/supported-libraries.md index 9d9a85a92b14..b8965fd4aa83 100644 --- a/docs/supported-libraries.md +++ b/docs/supported-libraries.md @@ -60,7 +60,7 @@ These are the supported libraries and frameworks: | [gRPC](https://github.com/grpc/grpc-java) | 1.6+ | | [Guava ListenableFuture](https://guava.dev/releases/snapshot/api/docs/com/google/common/util/concurrent/ListenableFuture.html) | 10.0+ | | [GWT](http://www.gwtproject.org/) | 2.0+ | -| [Hibernate](https://github.com/hibernate/hibernate-orm) | 3.3+ | +| [Hibernate](https://github.com/hibernate/hibernate-orm) | 3.3+ (not including 6.x yet) | | [HikariCP](https://github.com/brettwooldridge/HikariCP) | 3.0+ | | [HttpURLConnection](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/net/HttpURLConnection.html) | Java 8+ | | [Hystrix](https://github.com/Netflix/Hystrix) | 1.4+ | diff --git a/instrumentation/azure-core/azure-core-1.14/javaagent/build.gradle.kts b/instrumentation/azure-core/azure-core-1.14/javaagent/build.gradle.kts index e79af1e34200..ceb066de1a62 100644 --- a/instrumentation/azure-core/azure-core-1.14/javaagent/build.gradle.kts +++ b/instrumentation/azure-core/azure-core-1.14/javaagent/build.gradle.kts @@ -26,5 +26,5 @@ dependencies { // Ensure no cross interference testInstrumentation(project(":instrumentation:azure-core:azure-core-1.19:javaagent")) - latestDepTestLibrary("com.azure:azure-core:1.18.+") // see azure-core-1.19 + latestDepTestLibrary("com.azure:azure-core:1.18.+") // see azure-core-1.19 module } diff --git a/instrumentation/cdi-testing/build.gradle.kts b/instrumentation/cdi-testing/build.gradle.kts index 25d02214738a..55bbe5b4bc8b 100644 --- a/instrumentation/cdi-testing/build.gradle.kts +++ b/instrumentation/cdi-testing/build.gradle.kts @@ -6,8 +6,4 @@ dependencies { testLibrary("org.jboss.weld:weld-core:2.3.0.Final") testLibrary("org.jboss.weld.se:weld-se:2.3.0.Final") testLibrary("org.jboss.weld.se:weld-se-core:2.3.0.Final") - - latestDepTestLibrary("org.jboss.weld:weld-core:2.+") - latestDepTestLibrary("org.jboss.weld.se:weld-se:2.+") - latestDepTestLibrary("org.jboss.weld.se:weld-se-core:2.+") } diff --git a/instrumentation/couchbase/couchbase-3.1.6/javaagent/build.gradle.kts b/instrumentation/couchbase/couchbase-3.1.6/javaagent/build.gradle.kts index 8f88bb6a496d..3e1f204514ef 100644 --- a/instrumentation/couchbase/couchbase-3.1.6/javaagent/build.gradle.kts +++ b/instrumentation/couchbase/couchbase-3.1.6/javaagent/build.gradle.kts @@ -35,11 +35,11 @@ dependencies { testImplementation("org.testcontainers:couchbase") - latestDepTestLibrary("com.couchbase.client:java-client:3.1.+") + latestDepTestLibrary("com.couchbase.client:java-client:3.1.+") // see couchbase-3.2 module } tasks { test { - usesService(gradle.sharedServices.registrations["testcontainersBuildService"].getService()) + usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service) } } diff --git a/instrumentation/couchbase/couchbase-3.1/javaagent/build.gradle.kts b/instrumentation/couchbase/couchbase-3.1/javaagent/build.gradle.kts index cb322a9fd16b..feab46c94526 100644 --- a/instrumentation/couchbase/couchbase-3.1/javaagent/build.gradle.kts +++ b/instrumentation/couchbase/couchbase-3.1/javaagent/build.gradle.kts @@ -35,11 +35,11 @@ dependencies { testImplementation("org.testcontainers:couchbase") - latestDepTestLibrary("com.couchbase.client:java-client:3.1.5") + latestDepTestLibrary("com.couchbase.client:java-client:3.1.5") // see couchbase-3.1.6 module } tasks { test { - usesService(gradle.sharedServices.registrations["testcontainersBuildService"].getService()) + usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service) } } diff --git a/instrumentation/hibernate/hibernate-procedure-call-4.3/javaagent/build.gradle.kts b/instrumentation/hibernate/hibernate-procedure-call-4.3/javaagent/build.gradle.kts index e25697693a40..22e69a8ad86c 100644 --- a/instrumentation/hibernate/hibernate-procedure-call-4.3/javaagent/build.gradle.kts +++ b/instrumentation/hibernate/hibernate-procedure-call-4.3/javaagent/build.gradle.kts @@ -27,8 +27,8 @@ dependencies { testImplementation("javax.xml.bind:jaxb-api:2.3.1") testImplementation("org.glassfish.jaxb:jaxb-runtime:2.3.3") - latestDepTestLibrary("org.hibernate:hibernate-core:5.+") - latestDepTestLibrary("org.hibernate:hibernate-entitymanager:5.+") + latestDepTestLibrary("org.hibernate:hibernate-core:5.+") // documented limitation + latestDepTestLibrary("org.hibernate:hibernate-entitymanager:5.+") // documented limitation } tasks.withType().configureEach { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/build.gradle.kts b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/build.gradle.kts index 93866cff601f..3a84e2219493 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/build.gradle.kts +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/build.gradle.kts @@ -37,10 +37,10 @@ dependencies { testImplementation("javax.xml.bind:jaxb-api:2.2.3") testImplementation("org.eclipse.jetty:jetty-webapp:9.4.6.v20170531") - latestDepTestLibrary("org.glassfish.jersey.core:jersey-server:2.+") - latestDepTestLibrary("org.glassfish.jersey.containers:jersey-container-servlet:2.+") - latestDepTestLibrary("org.glassfish.jersey.containers:jersey-container-servlet:2.+") - latestDepTestLibrary("org.glassfish.jersey.inject:jersey-hk2:2.+") + latestDepTestLibrary("org.glassfish.jersey.core:jersey-server:2.+") // see jaxrs-3.0-jersey-3.0 module + latestDepTestLibrary("org.glassfish.jersey.containers:jersey-container-servlet:2.+") // see jaxrs-3.0-jersey-3.0 module + latestDepTestLibrary("org.glassfish.jersey.containers:jersey-container-servlet:2.+") // see jaxrs-3.0-jersey-3.0 module + latestDepTestLibrary("org.glassfish.jersey.inject:jersey-hk2:2.+") // see jaxrs-3.0-jersey-3.0 module } if (!(findProperty("testLatestDeps") as Boolean)) { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-3.0/javaagent/build.gradle.kts b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-3.0/javaagent/build.gradle.kts index 0b947828f56c..250ecb97d533 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-3.0/javaagent/build.gradle.kts +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-3.0/javaagent/build.gradle.kts @@ -56,9 +56,9 @@ dependencies { testLibrary("io.undertow:undertow-servlet:1.4.28.Final") testLibrary("org.jboss.resteasy:resteasy-servlet-initializer:3.0.4.Final") - latestDepTestLibrary("org.jboss.resteasy:resteasy-servlet-initializer:3.0.+") - latestDepTestLibrary("org.jboss.resteasy:resteasy-jaxrs:3.0.+") - latestDepTestLibrary("org.jboss.resteasy:resteasy-undertow:3.0.+") { + latestDepTestLibrary("org.jboss.resteasy:resteasy-servlet-initializer:3.0.+") // see jaxrs-3.0-resteasy-3.1 module + latestDepTestLibrary("org.jboss.resteasy:resteasy-jaxrs:3.0.+") // see jaxrs-3.0-resteasy-3.1 module + latestDepTestLibrary("org.jboss.resteasy:resteasy-undertow:3.0.+") { // see jaxrs-3.0-resteasy-3.1 module exclude("org.jboss.resteasy", "resteasy-client") } } diff --git a/instrumentation/jetty-httpclient/jetty-httpclient-9.2/javaagent/build.gradle.kts b/instrumentation/jetty-httpclient/jetty-httpclient-9.2/javaagent/build.gradle.kts index e5acf4edd795..00e213117361 100644 --- a/instrumentation/jetty-httpclient/jetty-httpclient-9.2/javaagent/build.gradle.kts +++ b/instrumentation/jetty-httpclient/jetty-httpclient-9.2/javaagent/build.gradle.kts @@ -17,7 +17,8 @@ dependencies { implementation(project(":instrumentation:jetty-httpclient:jetty-httpclient-9.2:library")) library("org.eclipse.jetty:jetty-client:$jettyVers_base9") - latestDepTestLibrary("org.eclipse.jetty:jetty-client:9.+") testImplementation(project(":instrumentation:jetty-httpclient:jetty-httpclient-9.2:testing")) + + latestDepTestLibrary("org.eclipse.jetty:jetty-client:9.+") // documented limitation } diff --git a/instrumentation/ktor/ktor-1.0/library/build.gradle.kts b/instrumentation/ktor/ktor-1.0/library/build.gradle.kts index f48168837728..85102d338c4a 100644 --- a/instrumentation/ktor/ktor-1.0/library/build.gradle.kts +++ b/instrumentation/ktor/ktor-1.0/library/build.gradle.kts @@ -18,8 +18,8 @@ dependencies { testLibrary("io.ktor:ktor-server-netty:1.0.0") - latestDepTestLibrary("io.ktor:ktor-server-core:1.+") - latestDepTestLibrary("io.ktor:ktor-server-netty:1.+") + latestDepTestLibrary("io.ktor:ktor-server-core:1.+") // see ktor-2.0 module + latestDepTestLibrary("io.ktor:ktor-server-netty:1.+") // see ktor-2.0 module } tasks { diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts index 8abd67392792..1bf995beec1d 100644 --- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts +++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts @@ -18,5 +18,5 @@ dependencies { testImplementation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-common:testing")) - latestDepTestLibrary("org.apache.logging.log4j:log4j-core:2.16.+") // see log4j-context-data-2.17 + latestDepTestLibrary("org.apache.logging.log4j:log4j-core:2.16.+") // see log4j-context-data-2.17 module } diff --git a/instrumentation/netty/netty-4.0/javaagent/build.gradle.kts b/instrumentation/netty/netty-4.0/javaagent/build.gradle.kts index b088c23d3d4f..81de747126cf 100644 --- a/instrumentation/netty/netty-4.0/javaagent/build.gradle.kts +++ b/instrumentation/netty/netty-4.0/javaagent/build.gradle.kts @@ -30,7 +30,7 @@ dependencies { testInstrumentation(project(":instrumentation:netty:netty-3.8:javaagent")) testInstrumentation(project(":instrumentation:netty:netty-4.1:javaagent")) - latestDepTestLibrary("io.netty:netty-codec-http:4.0.+") + latestDepTestLibrary("io.netty:netty-codec-http:4.0.+") // see netty-4.1 module } tasks { diff --git a/instrumentation/reactor/reactor-3.1/javaagent/build.gradle.kts b/instrumentation/reactor/reactor-3.1/javaagent/build.gradle.kts index d0aa136e8b25..cf39781e5a0e 100644 --- a/instrumentation/reactor/reactor-3.1/javaagent/build.gradle.kts +++ b/instrumentation/reactor/reactor-3.1/javaagent/build.gradle.kts @@ -35,9 +35,6 @@ dependencies { testImplementation(project(":instrumentation:reactor:reactor-3.1:testing")) testImplementation(project(":instrumentation-annotations")) testImplementation("io.opentelemetry:opentelemetry-extension-annotations") - - // Looks like later versions on reactor need this dependency for some reason even though it is marked as optional. - latestDepTestLibrary("io.micrometer:micrometer-core:1.+") } testing { diff --git a/instrumentation/reactor/reactor-3.1/library/build.gradle.kts b/instrumentation/reactor/reactor-3.1/library/build.gradle.kts index 2b4bdf7fa322..ef973abaa3f9 100644 --- a/instrumentation/reactor/reactor-3.1/library/build.gradle.kts +++ b/instrumentation/reactor/reactor-3.1/library/build.gradle.kts @@ -8,7 +8,4 @@ dependencies { testLibrary("io.projectreactor:reactor-test:3.1.0.RELEASE") testImplementation(project(":instrumentation:reactor:reactor-3.1:testing")) - - // Looks like later versions on reactor need this dependency for some reason even though it is marked as optional. - latestDepTestLibrary("io.micrometer:micrometer-core:1.+") } diff --git a/instrumentation/redisson/redisson-3.0/javaagent/build.gradle.kts b/instrumentation/redisson/redisson-3.0/javaagent/build.gradle.kts index 6ef7cc2b65cc..bc3bdb749e46 100644 --- a/instrumentation/redisson/redisson-3.0/javaagent/build.gradle.kts +++ b/instrumentation/redisson/redisson-3.0/javaagent/build.gradle.kts @@ -22,10 +22,10 @@ dependencies { testImplementation(project(":instrumentation:redisson:redisson-common:testing")) - latestDepTestLibrary("org.redisson:redisson:3.16.+") + latestDepTestLibrary("org.redisson:redisson:3.16.+") // see redisson-3.17 module } tasks.test { systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean) - usesService(gradle.sharedServices.registrations["testcontainersBuildService"].getService()) + usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service) } diff --git a/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts b/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts index 8c303bd13db0..4877ec3fb758 100644 --- a/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts +++ b/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts @@ -29,7 +29,4 @@ dependencies { testInstrumentation(project(":instrumentation:jetty:jetty-8.0:javaagent")) testInstrumentation(project(":instrumentation:servlet:servlet-3.0:javaagent")) testInstrumentation(project(":instrumentation:servlet:servlet-javax-common:javaagent")) - - latestDepTestLibrary("org.restlet:org.restlet:1.1.+") - latestDepTestLibrary("com.noelios.restlet:com.noelios.restlet:1.1.+") } diff --git a/instrumentation/restlet/restlet-1.0/library/build.gradle.kts b/instrumentation/restlet/restlet-1.0/library/build.gradle.kts index 9a223681b67b..b2b45ced5cb7 100644 --- a/instrumentation/restlet/restlet-1.0/library/build.gradle.kts +++ b/instrumentation/restlet/restlet-1.0/library/build.gradle.kts @@ -14,7 +14,4 @@ dependencies { library("com.noelios.restlet:com.noelios.restlet:1.1.5") testImplementation(project(":instrumentation:restlet:restlet-1.0:testing")) - - latestDepTestLibrary("org.restlet:org.restlet:1.1.+") - latestDepTestLibrary("com.noelios.restlet:com.noelios.restlet:1.1.+") }