diff --git a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/build.gradle b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/build.gradle index 4527f4ac710..d926aa9c315 100644 --- a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/build.gradle +++ b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/build.gradle @@ -1,5 +1,6 @@ plugins { id 'dd-trace-java.module.instrumentation' + id 'dd-trace-java.jmh-conventions' } muzzle { @@ -26,6 +27,11 @@ dependencies { testImplementation group: 'io.lettuce', name: 'lettuce-core', version: '5.0.0.RELEASE' testImplementation project(':dd-java-agent:instrumentation:reactor-core-3.1') testImplementation project(':dd-java-agent:instrumentation:reactive-streams-1.0') + // JOL, for LettuceCommandSetFootprintTest + testImplementation libs.jol.core + + // Main declares lettuce-core compileOnly, so the jmh source set needs its own copy. + jmhImplementation group: 'io.lettuce', name: 'lettuce-core', version: '5.0.0.RELEASE' latestDepTestImplementation group: 'io.lettuce', name: 'lettuce-core', version: '+' diff --git a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/gradle.lockfile b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/gradle.lockfile index c91d6fb93a7..4587c99a8b0 100644 --- a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/gradle.lockfile +++ b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/gradle.lockfile @@ -2,73 +2,73 @@ # Manual edits can break the build and are not advised. # This file is expected to be part of source control. # To regenerate this file, run: ./gradlew :dd-java-agent:instrumentation:lettuce:lettuce-5.0:dependencies --write-locks -cafe.cryptography:curve25519-elisabeth:0.1.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -cafe.cryptography:ed25519-elisabeth:0.1.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -ch.qos.logback:logback-classic:1.2.13=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -ch.qos.logback:logback-core:1.2.13=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.blogspot.mydailyjava:weak-lock-free:0.17=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -com.datadoghq.okhttp3:okhttp:3.12.15=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.datadoghq.okio:okio:1.17.6=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.datadoghq:dd-instrument-java:0.0.4=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -com.datadoghq:dd-javac-plugin-client:0.2.2=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -com.datadoghq:java-dogstatsd-client:4.4.5=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.datadoghq:sketches-java:0.8.3=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +cafe.cryptography:curve25519-elisabeth:0.1.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +cafe.cryptography:ed25519-elisabeth:0.1.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +ch.qos.logback:logback-classic:1.2.13=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +ch.qos.logback:logback-core:1.2.13=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.blogspot.mydailyjava:weak-lock-free:0.17=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.datadoghq.okhttp3:okhttp:3.12.15=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.datadoghq.okio:okio:1.17.6=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.datadoghq:dd-instrument-java:0.0.4=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.datadoghq:dd-javac-plugin-client:0.2.2=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.datadoghq:java-dogstatsd-client:4.4.5=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.datadoghq:sketches-java:0.8.3=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath com.fasterxml.jackson.core:jackson-annotations:2.10.3=latestDepForkedTestCompileClasspath,latestDepTestCompileClasspath,lettuce51TestCompileClasspath,lettuce60TestCompileClasspath,lettuce61TestCompileClasspath,lettuce62TestCompileClasspath,testCompileClasspath -com.fasterxml.jackson.core:jackson-annotations:2.13.2=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.fasterxml.jackson.core:jackson-core:2.13.2=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.fasterxml.jackson.core:jackson-databind:2.13.2.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.fasterxml.jackson:jackson-bom:2.13.2.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.docker-java:docker-java-api:3.4.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.github.docker-java:docker-java-transport-zerodep:3.4.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.github.docker-java:docker-java-transport:3.4.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-annotations:2.13.2=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-core:2.13.2=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-databind:2.13.2.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.fasterxml.jackson:jackson-bom:2.13.2.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.docker-java:docker-java-api:3.4.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.github.docker-java:docker-java-transport-zerodep:3.4.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.github.docker-java:docker-java-transport:3.4.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath com.github.javaparser:javaparser-core:3.25.6=codenarc -com.github.jnr:jffi:1.3.15=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-a64asm:1.0.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-constants:0.10.4=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-enxio:0.32.20=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-ffi:2.2.19=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-posix:3.1.22=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-unixsocket:0.38.25=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.jnr:jnr-x86asm:1.0.2=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.github.spotbugs:spotbugs-annotations:4.10.3=compileClasspath,spotbugs +com.github.jnr:jffi:1.3.15=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-a64asm:1.0.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-constants:0.10.4=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-enxio:0.32.20=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-ffi:2.2.19=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-posix:3.1.22=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-unixsocket:0.38.25=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.jnr:jnr-x86asm:1.0.2=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.github.spotbugs:spotbugs-annotations:4.10.3=compileClasspath,jmhCompileClasspath,spotbugs com.github.spotbugs:spotbugs:4.10.3=spotbugs com.github.stephenc.jcip:jcip-annotations:1.0-1=spotbugs -com.google.auto.service:auto-service-annotations:1.1.1=annotationProcessor,compileClasspath,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,testAnnotationProcessor,testCompileClasspath +com.google.auto.service:auto-service-annotations:1.1.1=annotationProcessor,compileClasspath,jmhCompileClasspath,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,testAnnotationProcessor,testCompileClasspath com.google.auto.service:auto-service:1.1.1=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor com.google.auto:auto-common:1.2.1=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor -com.google.code.findbugs:jsr305:3.0.2=annotationProcessor,compileClasspath,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,spotbugs,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath +com.google.code.findbugs:jsr305:3.0.2=annotationProcessor,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,spotbugs,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath com.google.code.gson:gson:2.14.0=spotbugs com.google.errorprone:error_prone_annotations:2.18.0=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor -com.google.errorprone:error_prone_annotations:2.47.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.google.errorprone:error_prone_annotations:2.47.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath com.google.errorprone:error_prone_annotations:2.48.0=spotbugs com.google.guava:failureaccess:1.0.1=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor -com.google.guava:failureaccess:1.0.3=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.google.guava:failureaccess:1.0.3=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath com.google.guava:guava:32.0.1-jre=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor -com.google.guava:guava:33.6.0-jre=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath +com.google.guava:guava:33.6.0-jre=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=annotationProcessor,jmhRuntimeClasspath,latestDepForkedTestAnnotationProcessor,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestAnnotationProcessor,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestAnnotationProcessor,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestAnnotationProcessor,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestAnnotationProcessor,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestAnnotationProcessor,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath com.google.j2objc:j2objc-annotations:2.8=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor -com.google.j2objc:j2objc-annotations:3.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.google.re2j:re2j:1.8=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -com.redis.testcontainers:testcontainers-redis:1.6.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.redis:redis-enterprise-admin:0.3.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.squareup.moshi:moshi:1.11.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.squareup.okhttp3:logging-interceptor:3.12.12=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.squareup.okhttp3:okhttp:3.12.12=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.squareup.okio:okio:1.17.5=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.google.j2objc:j2objc-annotations:3.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.google.re2j:re2j:1.8=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +com.redis.testcontainers:testcontainers-redis:1.6.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.redis:redis-enterprise-admin:0.3.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.squareup.moshi:moshi:1.11.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.squareup.okhttp3:logging-interceptor:3.12.12=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.squareup.okhttp3:okhttp:3.12.12=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +com.squareup.okio:okio:1.17.5=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath com.thoughtworks.qdox:qdox:1.12.1=codenarc -commons-codec:commons-codec:1.15=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -commons-fileupload:commons-fileupload:1.5=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -commons-io:commons-io:2.11.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +commons-codec:commons-codec:1.15=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +commons-fileupload:commons-fileupload:1.5=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +commons-io:commons-io:2.11.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath commons-io:commons-io:2.21.0=spotbugs -de.thetaphi:forbiddenapis:3.10=compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -io.leangen.geantyref:geantyref:1.3.16=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -io.lettuce:lettuce-core:5.0.0.RELEASE=compileClasspath,testCompileClasspath,testRuntimeClasspath +de.thetaphi:forbiddenapis:3.10=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +io.leangen.geantyref:geantyref:1.3.16=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +io.lettuce:lettuce-core:5.0.0.RELEASE=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.lettuce:lettuce-core:5.1.0.RELEASE=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.lettuce:lettuce-core:6.0.0.RELEASE=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.lettuce:lettuce-core:6.1.0.RELEASE=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.lettuce:lettuce-core:6.2.0.RELEASE=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath -io.lettuce:lettuce-core:7.6.0.RELEASE=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.netty:netty-buffer:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.lettuce:lettuce-core:7.7.0.RELEASE=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath +io.netty:netty-buffer:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-buffer:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-buffer:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-buffer:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath @@ -76,25 +76,25 @@ io.netty:netty-buffer:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRu io.netty:netty-buffer:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath io.netty:netty-codec-base:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath io.netty:netty-codec-dns:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.netty:netty-codec:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.netty:netty-codec:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-codec:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-codec:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-codec:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.netty:netty-codec:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath -io.netty:netty-common:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.netty:netty-common:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-common:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-common:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-common:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.netty:netty-common:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath io.netty:netty-common:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.netty:netty-handler:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.netty:netty-handler:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-handler:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-handler:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-handler:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.netty:netty-handler:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath io.netty:netty-handler:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath io.netty:netty-resolver-dns:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.netty:netty-resolver:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.netty:netty-resolver:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-resolver:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-resolver:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-resolver:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath @@ -102,100 +102,108 @@ io.netty:netty-resolver:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62Test io.netty:netty-resolver:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath io.netty:netty-transport-native-unix-common:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath io.netty:netty-transport-native-unix-common:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.netty:netty-transport:4.1.15.Final=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.netty:netty-transport:4.1.15.Final=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.netty:netty-transport:4.1.29.Final=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.netty:netty-transport:4.1.52.Final=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.netty:netty-transport:4.1.60.Final=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.netty:netty-transport:4.1.79.Final=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath io.netty:netty-transport:4.2.13.Final=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.projectreactor:reactor-core:3.1.0.RELEASE=compileClasspath,testCompileClasspath,testRuntimeClasspath +io.projectreactor:reactor-core:3.1.0.RELEASE=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath io.projectreactor:reactor-core:3.2.0.RELEASE=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath io.projectreactor:reactor-core:3.3.10.RELEASE=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath io.projectreactor:reactor-core:3.3.15.RELEASE=lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath io.projectreactor:reactor-core:3.4.21=lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath io.projectreactor:reactor-core:3.6.6=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -io.sqreen:libsqreen:17.5.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -javax.servlet:javax.servlet-api:3.1.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +io.sqreen:libsqreen:17.5.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +javax.servlet:javax.servlet-api:3.1.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath jaxen:jaxen:2.0.6=spotbugs -junit:junit:4.13.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -net.bytebuddy:byte-buddy-agent:1.18.10=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -net.bytebuddy:byte-buddy:1.18.10=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -net.java.dev.jna:jna-platform:5.8.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -net.java.dev.jna:jna:5.13.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +junit:junit:4.13.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +net.bytebuddy:byte-buddy-agent:1.18.10=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +net.bytebuddy:byte-buddy:1.18.10=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +net.java.dev.jna:jna-platform:5.8.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +net.java.dev.jna:jna:5.13.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +net.sf.jopt-simple:jopt-simple:5.0.4=jmh,jmhCompileClasspath,jmhRuntimeClasspath net.sf.saxon:Saxon-HE:12.10=spotbugs org.apache.ant:ant-antlr:1.10.14=codenarc org.apache.ant:ant-junit:1.10.14=codenarc org.apache.bcel:bcel:6.12.0=spotbugs -org.apache.commons:commons-compress:1.24.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.apache.commons:commons-compress:1.24.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.apache.commons:commons-lang3:3.20.0=spotbugs +org.apache.commons:commons-math3:3.2=jmh,jmhCompileClasspath,jmhRuntimeClasspath org.apache.commons:commons-text:1.15.0=spotbugs -org.apache.httpcomponents.client5:httpclient5:5.1.3=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.apache.httpcomponents.core5:httpcore5-h2:5.1.3=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.apache.httpcomponents.core5:httpcore5:5.1.3=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.apache.httpcomponents.client5:httpclient5:5.1.3=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.apache.httpcomponents.core5:httpcore5-h2:5.1.3=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.apache.httpcomponents.core5:httpcore5:5.1.3=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath org.apache.logging.log4j:log4j-api:2.26.1=spotbugs org.apache.logging.log4j:log4j-core:2.26.1=spotbugs org.apiguardian:apiguardian-api:1.1.2=latestDepForkedTestCompileClasspath,latestDepTestCompileClasspath,lettuce51TestCompileClasspath,lettuce60TestCompileClasspath,lettuce61TestCompileClasspath,lettuce62TestCompileClasspath,testCompileClasspath -org.awaitility:awaitility:4.2.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.awaitility:awaitility:4.2.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath org.checkerframework:checker-qual:3.33.0=annotationProcessor,latestDepForkedTestAnnotationProcessor,latestDepTestAnnotationProcessor,lettuce51TestAnnotationProcessor,lettuce60TestAnnotationProcessor,lettuce61TestAnnotationProcessor,lettuce62TestAnnotationProcessor,testAnnotationProcessor org.codehaus.groovy:groovy-ant:3.0.23=codenarc org.codehaus.groovy:groovy-docgenerator:3.0.23=codenarc org.codehaus.groovy:groovy-groovydoc:3.0.23=codenarc org.codehaus.groovy:groovy-json:3.0.23=codenarc -org.codehaus.groovy:groovy-json:3.0.25=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.codehaus.groovy:groovy-json:3.0.25=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.codehaus.groovy:groovy-templates:3.0.23=codenarc org.codehaus.groovy:groovy-xml:3.0.23=codenarc org.codehaus.groovy:groovy:3.0.23=codenarc -org.codehaus.groovy:groovy:3.0.25=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.codehaus.groovy:groovy:3.0.25=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.codenarc:CodeNarc:3.7.0=codenarc org.dom4j:dom4j:2.2.0=spotbugs org.gmetrics:GMetrics:2.1.0=codenarc -org.hamcrest:hamcrest-core:1.3=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.hamcrest:hamcrest:3.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.jctools:jctools-core-jdk11:4.0.6=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.jctools:jctools-core:4.0.6=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.jetbrains:annotations:17.0.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.jspecify:jspecify:1.0.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter-api:5.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter-engine:5.14.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter-params:5.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter:5.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-commons:1.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-engine:1.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-launcher:1.14.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-runner:1.14.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-suite-api:1.14.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-suite-commons:1.14.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.junit:junit-bom:5.14.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.hamcrest:hamcrest-core:1.3=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.hamcrest:hamcrest:3.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.jctools:jctools-core-jdk11:4.0.6=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.jctools:jctools-core:4.0.6=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.jetbrains:annotations:17.0.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.jspecify:jspecify:1.0.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.jupiter:junit-jupiter-api:5.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.jupiter:junit-jupiter-engine:5.14.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.junit.jupiter:junit-jupiter-params:5.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.jupiter:junit-jupiter:5.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-commons:1.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-engine:1.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-launcher:1.14.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-runner:1.14.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-suite-api:1.14.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.junit.platform:junit-platform-suite-commons:1.14.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.junit:junit-bom:5.14.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit:junit-bom:6.1.2=spotbugs -org.mockito:mockito-core:4.4.0=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.objenesis:objenesis:3.3=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.opentest4j:opentest4j:1.3.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.mockito:mockito-core:4.4.0=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.objenesis:objenesis:3.3=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.openjdk.jmh:jmh-core:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath +org.openjdk.jmh:jmh-generator-asm:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath +org.openjdk.jmh:jmh-generator-bytecode:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath +org.openjdk.jmh:jmh-generator-reflection:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath +org.openjdk.jol:jol-core:0.17=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.opentest4j:opentest4j:1.3.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.ow2.asm:asm-analysis:9.10.1=spotbugs -org.ow2.asm:asm-analysis:9.7.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.ow2.asm:asm-commons:9.10.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,spotbugs,testRuntimeClasspath -org.ow2.asm:asm-tree:9.10.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,spotbugs,testRuntimeClasspath +org.ow2.asm:asm-analysis:9.7.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.ow2.asm:asm-commons:9.10.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,spotbugs,testRuntimeClasspath +org.ow2.asm:asm-tree:9.10.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,spotbugs,testRuntimeClasspath org.ow2.asm:asm-util:9.10.1=spotbugs -org.ow2.asm:asm-util:9.7.1=latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath -org.ow2.asm:asm:9.10.1=buildTimeInstrumentationPlugin,compileClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,spotbugs,testCompileClasspath,testRuntimeClasspath -org.reactivestreams:reactive-streams:1.0.1=compileClasspath,testCompileClasspath,testRuntimeClasspath +org.ow2.asm:asm-util:9.7.1=jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,testRuntimeClasspath +org.ow2.asm:asm:9.0=jmh +org.ow2.asm:asm:9.10.1=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,spotbugs,testCompileClasspath,testRuntimeClasspath +org.reactivestreams:reactive-streams:1.0.1=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.reactivestreams:reactive-streams:1.0.2=lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath org.reactivestreams:reactive-streams:1.0.3=lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath org.reactivestreams:reactive-streams:1.0.4=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath -org.rnorth.duct-tape:duct-tape:1.0.8=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:jcl-over-slf4j:1.7.30=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:jul-to-slf4j:1.7.30=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:log4j-over-slf4j:1.7.30=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:slf4j-api:1.7.30=buildTimeInstrumentationPlugin,compileClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath -org.slf4j:slf4j-api:1.7.36=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.rnorth.duct-tape:duct-tape:1.0.8=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.slf4j:jcl-over-slf4j:1.7.30=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.slf4j:jul-to-slf4j:1.7.30=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.slf4j:log4j-over-slf4j:1.7.30=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.slf4j:slf4j-api:1.7.30=buildTimeInstrumentationPlugin,compileClasspath,jmhCompileClasspath,muzzleBootstrap,muzzleTooling,runtimeClasspath +org.slf4j:slf4j-api:1.7.36=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.slf4j:slf4j-api:2.0.17=spotbugsSlf4j org.slf4j:slf4j-api:2.0.18=spotbugs org.slf4j:slf4j-simple:2.0.17=spotbugsSlf4j -org.snakeyaml:snakeyaml-engine:2.9=buildTimeInstrumentationPlugin,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testRuntimeClasspath -org.spockframework:spock-bom:2.4-groovy-3.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.spockframework:spock-core:2.4-groovy-3.0=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.tabletest:tabletest-junit:1.2.2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.tabletest:tabletest-parser:1.2.1=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.testcontainers:testcontainers:1.21.4=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.snakeyaml:snakeyaml-engine:2.9=buildTimeInstrumentationPlugin,jmhRuntimeClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestRuntimeClasspath,lettuce51TestRuntimeClasspath,lettuce60TestRuntimeClasspath,lettuce61TestRuntimeClasspath,lettuce62TestRuntimeClasspath,muzzleTooling,runtimeClasspath,testRuntimeClasspath +org.spockframework:spock-bom:2.4-groovy-3.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.spockframework:spock-core:2.4-groovy-3.0=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.tabletest:tabletest-junit:1.2.2=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.tabletest:tabletest-parser:1.2.1=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath +org.testcontainers:testcontainers:1.21.4=jmhRuntimeClasspath,latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath,lettuce51TestCompileClasspath,lettuce51TestRuntimeClasspath,lettuce60TestCompileClasspath,lettuce60TestRuntimeClasspath,lettuce61TestCompileClasspath,lettuce61TestRuntimeClasspath,lettuce62TestCompileClasspath,lettuce62TestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath org.xmlresolver:xmlresolver:5.3.3=spotbugs redis.clients.authentication:redis-authx-core:0.1.1-beta2=latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath -empty=spotbugsPlugins +empty=jmhAnnotationProcessor,spotbugsPlugins diff --git a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/jmh/java/datadog/trace/instrumentation/lettuce5/LettuceCommandClassificationBenchmark.java b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/jmh/java/datadog/trace/instrumentation/lettuce5/LettuceCommandClassificationBenchmark.java new file mode 100644 index 00000000000..70d85b77371 --- /dev/null +++ b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/jmh/java/datadog/trace/instrumentation/lettuce5/LettuceCommandClassificationBenchmark.java @@ -0,0 +1,205 @@ +package datadog.trace.instrumentation.lettuce5; + +import datadog.trace.util.StringIndex; +import io.lettuce.core.protocol.CommandType; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.TimeUnit; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.BenchmarkMode; +import org.openjdk.jmh.annotations.Fork; +import org.openjdk.jmh.annotations.Measurement; +import org.openjdk.jmh.annotations.Mode; +import org.openjdk.jmh.annotations.OutputTimeUnit; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.annotations.Threads; +import org.openjdk.jmh.annotations.Warmup; + +/** + * Membership cost of the two command-name sets in {@link LettuceInstrumentationUtil}, comparing + * three structures: {@code HashSet} (in use today), a {@link StringIndex} instance, and {@link + * StringIndex.EmbeddingSupport} over {@code static final} arrays. + * + *
Each {@code perCommand} arm performs both lookups, matching what one Redis command does: + * {@code agentCrashingCommands} via {@code LettuceClientDecorator.onCommand}, and {@code + * nonInstrumentingCommands} via {@code expectsResponse}. Ordinary commands ({@code GET}, {@code + * SET}, {@code HGETALL}, {@code INCR}) are in neither set, so the {@code _miss} arms cover the + * common path and the {@code _hit} arms the administrative commands the sets contain. + * + *
All three candidates are declared {@code static final}, as production declares its sets, so + * the comparison reflects the structures rather than static-versus-instance field access. Keys are + * produced the way {@code getCommandName} produces them ({@code getType().toString().trim()}), + * which keeps the interned-constant identity fast path in {@code String.equals} intact. + * + *
{@code nonInstrumentingCommands} declares four entries, of which two are reachable through + * lettuce's built-in commands: {@code CommandType} (174 constants in lettuce 5.0.0) defines {@code + * SHUTDOWN} and {@code DEBUG} but neither {@code OOM} nor {@code SEGFAULT}, and {@code SEGFAULT} is + * a {@code CommandKeyword} rather than a command type. {@code getType()} returns a {@code + * ProtocolKeyword} though, and a custom implementation may report either name, so these entries are + * unreachable via {@code CommandType} rather than unreachable outright. Both arrays are benchmarked + * as declared. + * + *
Results (JDK 17.0.18, Apple M4 Max, {@code @Fork(3)}, {@code @Threads(1)}; ns/op, lower is + * better), with allocation from a separate {@code -Pjmh.profilers=gc} run: + * + *
{@code
+ * Benchmark ns/op alloc B/op
+ * hashSet_perCommand_miss 1.715 +- 0.071 ~0
+ * stringIndexEmbedded_perCommand_miss 1.881 +- 0.295 ~0
+ * stringIndexInstance_perCommand_miss 2.687 +- 0.151 ~0
+ * hashSet_perCommand_hit 1.938 +- 0.158
+ * stringIndexEmbedded_perCommand_hit 1.890 +- 0.117
+ * stringIndexInstance_perCommand_hit 2.286 +- 0.100
+ * }
+ *
+ * Miss-path scores over six runs, since a single run understates the run-to-run spread: + * + *
{@code
+ * run scores mean spread
+ * hashSet 1.708 1.706 1.736 1.707 1.744 1.715 1.719 0.038
+ * stringIndexEmbedded 1.699 1.668 1.698 1.796 1.680 1.881 1.737 0.213
+ * stringIndexInstance 2.667 2.665 2.635 2.682 2.773 2.687 2.685 0.138
+ * }
+ *
+ * Footprint is deterministic, so unlike a throughput benchmark this is safe to run under load. + * + *
Measured at the declared sizes, 4 and 6 entries. {@code capacityFor} rounds to a power of two, + * putting those on 8- and 16-slot tables at the default 0.5 load factor, while {@code new + * HashSet<>(Collection)} floors its table at 16 slots for both. + * + *
All candidates hold the same interned {@code String} instances, so the strings cancel out and + * the comparable figure is overhead above a plain {@code String[]} of the same names. + * + *
Both sets are {@code static final}, built once per classloader the helper is injected into + * ({@code HelperInjector} keys injection by classloader), not per command. Per-lookup allocation is + * zero for all three structures; see {@code LettuceCommandClassificationBenchmark} under {@code + * -Pjmh.profilers=gc}. + * + *
Measured retained bytes (JDK 17.0.18, JOL estimate mode: ordering reliable, exact bytes + * approximate). The combined row measures both structures as simultaneous roots, since the two sets + * share the interned {@code "DEBUG"} instance and summing separate measurements would count it + * twice: + * + *
{@code
+ * set n array hashSet siInstance siEmbedded
+ * nonInstrumentingCommands 4 224 480 312 288
+ * overhead above array (256) (88) (64)
+ * agentCrashingCommands 6 328 640 472 448
+ * overhead above array (312) (144) (120)
+ * TOTAL both sets 1120 784 736
+ * saving vs hashSet 336 384
+ * }
+ *
+ * Both {@code StringIndex} modes undercut {@code HashSet}: structural overhead is 568 B against + * 232 B for the instance and 184 B for the embedded arrays. + */ +class LettuceCommandSetFootprintTest { + + @BeforeAll + static void assumeNotJ9Jvm() { + // JOL's GraphLayout relies on HotSpot-specific Unsafe internals and throws on J9-based JVMs + // (IBM/Semeru) -- same guard as StringIndexFootprintTest. + assumeFalse(JavaVirtualMachine.isJ9()); + } + + static long bytes(final Object... roots) { + return GraphLayout.parseInstance(roots).totalSize(); + } + + @Test + void footprintComparison() { + final String[] nonInstrumenting = LettuceInstrumentationUtil.NON_INSTRUMENTING_COMMAND_WORDS; + final String[] agentCrashing = LettuceInstrumentationUtil.AGENT_CRASHING_COMMANDS_WORDS; + + System.out.printf( + "%-28s %6s %10s %10s %10s %10s%n", + "set", "n", "array", "hashSet", "siInstance", "siEmbedded"); + + for (final String[] words : new String[][] {nonInstrumenting, agentCrashing}) { + final String name = + words == nonInstrumenting ? "nonInstrumentingCommands" : "agentCrashingCommands"; + + final long array = bytes((Object) words); + final long hashSet = bytes(new HashSet<>(Arrays.asList(words))); + final long siInstance = bytes(StringIndex.of(words)); + final StringIndex.Data data = StringIndex.EmbeddingSupport.create(words); + final long siEmbedded = bytes(data.hashes, data.names); + + System.out.printf( + "%-28s %6d %10d %10d %10d %10d%n", + name, words.length, array, hashSet, siInstance, siEmbedded); + System.out.printf( + "%-28s %6s %10s %10d %10d %10d (overhead above array)%n", + "", "", "", hashSet - array, siInstance - array, siEmbedded - array); + + assertTrue( + siInstance < hashSet, + "StringIndex instance should retain fewer bytes than HashSet for " + name); + assertTrue( + siEmbedded < hashSet, + "StringIndex embedded arrays should retain fewer bytes than HashSet for " + name); + } + + // Both structures are measured as simultaneous roots. The two sets share the interned "DEBUG" + // instance, so measuring them separately and adding the results counts that object twice. + final long bothArrays = bytes(nonInstrumenting, agentCrashing); + final long bothHashSets = + bytes( + new HashSet<>(Arrays.asList(nonInstrumenting)), + new HashSet<>(Arrays.asList(agentCrashing))); + final long bothInstances = + bytes(StringIndex.of(nonInstrumenting), StringIndex.of(agentCrashing)); + final StringIndex.Data niData = StringIndex.EmbeddingSupport.create(nonInstrumenting); + final StringIndex.Data acData = StringIndex.EmbeddingSupport.create(agentCrashing); + final long bothEmbedded = bytes(niData.hashes, niData.names, acData.hashes, acData.names); + + System.out.printf( + "%n%-28s %6s %10d %10d %10d %10d%n", + "BOTH SETS (combined graph)", "", bothArrays, bothHashSets, bothInstances, bothEmbedded); + System.out.printf( + "%-28s %6s %10s %10s %10d %10d (saving vs hashSet, per classloader)%n", + "", "", "", "", bothHashSets - bothInstances, bothHashSets - bothEmbedded); + } +}